News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Sonic The Hedgehog: Modify Sonic's top speed?  (Read 4241 times)

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Sonic The Hedgehog: Modify Sonic's top speed?
« on: July 25, 2014, 09:34:37 pm »
Hello community!

I've been getting myself into Genesis/Mega Drive hacks lately and I've been wondering if there is a way to change the top speed that Sonic reaches in-game through HEX, without getting involved into Assembly code.

Does anyone know of a way to do so?
The closest info I could get is that Sonic's top speed in Sonic 1 (since that is the one I am trying to hack) is this:

RAM Offset:
$F760-$F761  --->  Sonic's Top Speed

EDIT:
Upon some further trial and error on my side, I discovered that $F760 is the top speed modifier, the default value is 06 and I want to change it to 07, but the thing is that I am doing all of this in RAM memory and not on the ROM to complete the hack.

Anyone can help out on this?
« Last Edit: July 26, 2014, 11:54:19 am by ShadowOne333 »

Tony H

  • Full Member
  • ***
  • Posts: 122
    • View Profile
    • The Code Hut
Re: Sonic The Hegdehog 2: Modify Sonic's top speed?
« Reply #1 on: July 26, 2014, 12:01:45 am »
You'll find Sonic 2 max speed ROM offset info here: http://info.sonicretro.org/SCHG:Sonic_2
The Code Hut: http://codehut.gshi.org/

Game Genie codes and ROM hacking guides

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Re: Sonic The Hegdehog 2: Modify Sonic's top speed?
« Reply #2 on: July 26, 2014, 12:18:20 am »
You'll find Sonic 2 max speed ROM offset info here: http://info.sonicretro.org/SCHG:Sonic_2
Thanks for that info.

Actually, I am aware of it, but the one I am looking for is for Sonic 1 and not 2.
I did find this:
http://info.sonicretro.org/SCHG:Nem_s1ss

It says top speed is at 11BD8-D9, although I don't know if that is refering to the actual ROM offset or not...
Will try it out.

Tony H

  • Full Member
  • ***
  • Posts: 122
    • View Profile
    • The Code Hut
Re: Sonic The Hegdehog 2: Modify Sonic's top speed?
« Reply #3 on: July 26, 2014, 11:24:35 am »
I gave a link to Sonic 2 info because that's what you put on your subject line for this thread.

Anyways, 11BD8-D9 is a ROM offset.
The Code Hut: http://codehut.gshi.org/

Game Genie codes and ROM hacking guides

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Re: Sonic The Hegdehog 2: Modify Sonic's top speed?
« Reply #4 on: July 26, 2014, 11:55:40 am »
I gave a link to Sonic 2 info because that's what you put on your subject line for this thread.

Anyways, 11BD8-D9 is a ROM offset.

Damn, sorry about that, I didn't realize I wrote Sonic 2 instead of 1.

I already changed the values in those offsets 11BD8 and 11BD9 and the top speed doesn't seem to change at all :/

Tony H

  • Full Member
  • ***
  • Posts: 122
    • View Profile
    • The Code Hut
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #5 on: July 26, 2014, 12:47:02 pm »
I found the correct ROM offset for Sonic's top speed in Sonic 1.

Not sure how many versions there are of this game, but the version I used to find the correct offset was "Sonic The Hedgehog (USA, Europe)" with a CRC-32 Checksum of F9394E97.

At ROM address $012C2E, the normal value is "06". Change this value to raise or lower his top speed. Note that the value is loaded only once when the game first starts.

EDIT: I tried values of 00 and 01. A value of 00 won't let him move at all, and a value of 01 makes him move pretty slow. Higher values seem to make him move faster on top end, but hard to find long areas where he can reach top speed, so it's hard for me to tell.
« Last Edit: July 26, 2014, 01:05:39 pm by Tony H »
The Code Hut: http://codehut.gshi.org/

Game Genie codes and ROM hacking guides

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #6 on: July 26, 2014, 01:12:26 pm »
I found the correct ROM offset for Sonic's top speed in Sonic 1.

Not sure how many versions there are of this game, but the version I used to find the correct offset was "Sonic The Hedgehog (USA, Europe)" with a CRC-32 Checksum of F9394E97.

At ROM address $012C2E, the normal value is "06". Change this value to raise or lower his top speed. Note that the value is loaded only once when the game first starts.

EDIT: I tried values of 00 and 01. A value of 00 won't let him move at all, and a value of 01 makes him move pretty slow. Higher values seem to make him move faster on top end, but hard to find long areas where he can reach top speed, so it's hard for me to tell.

Mmmm weird. At $012C2E I have 0E.
I am not working on a clean rom dump, I am currently working over a hacked rom.
This one:
http://info.sonicretro.org/Shadow_the_Hedgehog_in_Sonic_the_Hedgehog
So that means that maybe the ROM Offset was moved to another place.

According to ROM Hacking's information about this hack, it must be patched over version 1.0 of Sonic The Hedgehog.
Don't know if that one is the same as the checksum you provided since there is no CRC-32 data about that ROM in the hack's site.

And yes, if you change such value from 06 to something like 00 or 01 in the RAM's offset, with 00 you cannot move at all, and 01 makes you move really slow.

Tony H

  • Full Member
  • ***
  • Posts: 122
    • View Profile
    • The Code Hut
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #7 on: July 26, 2014, 01:43:17 pm »
Haven't tested it, but this should be the right offset for your hacked version:

$0131FA.  The value there should be 06.
The Code Hut: http://codehut.gshi.org/

Game Genie codes and ROM hacking guides

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #8 on: July 26, 2014, 01:47:34 pm »
Haven't tested it, but this should be the right offset for your hacked version:

$0131FA.  The value there should be 06.

YES!
That was it!

Thanks for the help!
One question though, how did you manage to know what was the offset for the ROM?

Tony H

  • Full Member
  • ***
  • Posts: 122
    • View Profile
    • The Code Hut
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #9 on: July 26, 2014, 02:35:17 pm »
YES!
That was it!

Thanks for the help!
One question though, how did you manage to know what was the offset for the ROM?

I used a special build of Gens emulator that has a debugger/tracer. I just enter the RAM address for top speed (FFF760), start the game with the tracer running, and it gives me a list of any ROM offsets what either read from, or write to that RAM address.  It will also log every assembly instruction to a text file if needed. There are a few different Genesis debuggers out there that will do more or less the same thing. Here's a download link for the one I use (Gens Tracer): http://gamehacking.org/downloads/Gens2.12aR2Tracer.zip

And here's a guide on how to use it: http://codehut.gshi.org/GensTracerGuide.txt
The Code Hut: http://codehut.gshi.org/

Game Genie codes and ROM hacking guides

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1400
    • View Profile
Re: Sonic The Hedgehog: Modify Sonic's top speed?
« Reply #10 on: July 27, 2014, 02:21:12 pm »
I used a special build of Gens emulator that has a debugger/tracer. I just enter the RAM address for top speed (FFF760), start the game with the tracer running, and it gives me a list of any ROM offsets what either read from, or write to that RAM address.  It will also log every assembly instruction to a text file if needed. There are a few different Genesis debuggers out there that will do more or less the same thing. Here's a download link for the one I use (Gens Tracer): http://gamehacking.org/downloads/Gens2.12aR2Tracer.zip

And here's a guide on how to use it: http://codehut.gshi.org/GensTracerGuide.txt

Awesome!
This emulator will be of great help for the hack I am working on.
Many, many thanks for all your help!