S3K Music Modifier

Discussion in 'Utilities' started by MarkeyJester, Apr 3, 2010.

Thread Status:
Not open for further replies.
  1. MarkeyJester

    MarkeyJester ! % # @ Member

    Joined:
    Jun 27, 2009
    Messages:
    2,791
    Copy/Paste from SonicRetro

     
  2. DeoxysKyogre

    DeoxysKyogre No idea what to put here .-. Member

    Joined:
    Jan 31, 2009
    Messages:
    298
    Brilliant program! Now S3K hacks will have remixes of songs from this game ;). This gives me a lot of possibilities to make a Sonic 3K ROM hack. This possibly will be an useful tool with a lot of people that are viewing this topic. As always, awesome! But, one quick and small question... Will this music editor have a voice editor or a note editor? Those are just suggestions.


    -DeoxysKyogre
     
  3. FireRat

    FireRat "The grand imitator..." Member

    Joined:
    Oct 31, 2009
    Messages:
    541
    Good program! but i need a editor of voices and notes if is possible
     
  4. Caleb

    Caleb Newcomer Trialist

    Joined:
    Jul 9, 2011
    Messages:
    3
    The Links are down.
     
  5. Blazefirelp

    Blazefirelp Spiritualistic Spriter....Wait what? Member

    Joined:
    Oct 9, 2009
    Messages:
    209
    Location:
    England
    Yeah, this seems like a handy tool. I wonder if it is on SSRG's main site though.


    Edit: Surprisingly not...
     
  6. Spanner

    Spanner The Tool Administrator

    Joined:
    Aug 9, 2007
    Messages:
    2,387
    Nothing in terms of submissions have been updated to the main site in a long time. The issue is that the site database can be problematic in a few ways. We're looking at alternative solutions however, but it may take some time.
     
    Last edited by a moderator: Aug 2, 2011
  7. Clowd

    Clowd Love truce, Correct errors. Member

    Joined:
    Dec 13, 2008
    Messages:
    364
    Although the link is down. Modifying tempo, pitch, and volumes of music in a Sonic 3 & Knuckles ROM isn't very hard to do. It's quite simple really, I'm not going to go too much into detail but basically all you have to do is:


    1.) Open the Sonic 3 & Knuckles ROM with a hexadecimal editor of your choice.


    2.) Find the location of whatever track in Sonic 3 & Knuckles you want to edit. (Music locations are here.)


    3.) For example, let's modify the tempo, pitch, and volumes of Hydrocity (Act 2). First, find the location of this particular track. Which, in this example is: $2CC0C6.


    4.) Once you found it, read this and read it well. (Well, the Header format part at least.)


    5.) Now, lets start with editing tempo. If you read the Header format part correctly you would know that the byte offset to edit tempo in some SMPS 68k or SMPS Z80 games (like Sonic 1, 2, 3K, etc.) is $04-$05. In this case that would be located at $2CC0CA-$2CC0CB.

    ^ Remember, the lower you make the first byte, the faster the song will play. And the higher you make the second byte the faster it will play. Now, on to pitch and volumes...


    6.) Now, personally I would recommend you getting the emulator DGen or some kind of Mega Drive emulator that can mute individual FM channels, PSG, and DAC. So, you can hear what you want to edit. This is how Hydrocity (Act 2) is originally set up:


    FM1: Lead


    FM2: Bass


    FM3: Lead (Echo)


    FM4: Background-Trumpets (Higher Octave.)


    FM5: Background-Trumpets (Lower Octave.)


    And yes, the song has a DAC channel, PSG channels, and a PSG-Noise channel.


    Now, to edit a particular FM or PSG channel you have to find the channel's modifier. For example, lets edit FM1's pitch and volume. Find FM1's channel modifier byte offset, $0C-$0D. Which in this case would be located at $2CC0D2-$2CC0D3. As said in the Header format part of the SCHG: Music Hacking guide:

    ^ So to edit the pitch and volumes is basically this. This goes for any channel's modifier. Such as FM2, 3, 4, 5, 6, PSG1, PSG2, PSG3, etc.

    Experiment a bit and you'll start getting the hang of it. It may look a bit confusing but if you read carefully you'll understand what I'm talking about and how simple it is.


    I hope this little explanation helped everyone. =)
     
    Last edited by a moderator: Aug 5, 2011
Thread Status:
Not open for further replies.