Posted 08 November 2008 - 11:26 AM
- Everything is going to the beat.
-
-
Posts:
459
-
Joined:
03-November 08
-
Gender:Male
-
Location:Yesterday.

00
I should point out that I have knowledge of implementing Action Replay/Game Genie hacks permanently into rom images by hex-editing the appropriate sections.
So I was interested in trying to use this knowledge to implement the Japanese Credits cheat into Sonic 1 by default, and got an address from
this thread, but it seems that goes way beyond the size of the rom itself. Searching around seems to associate FFFFxx addresses heavily with savestates. So can such codes only be hacked into savestates? I tried calculating an alternative address with the tip from
this page, but to no avail.
Thanks for reading.
This post has been edited by MarzSyndrome: 08 November 2008 - 11:36 AM
Posted 08 November 2008 - 12:34 PM
-
Posts:
12389
-
Joined:
27-June 04
-
Gender:Male

00
FFxxxx patch codes work by editing RAM, not ROM. It isn't possible to apply any changes that occur by editing the RAM outside of hooking certain routines where you want and adding some machine code to edit certain RAM values. ROM-based patch codes, however (xxxxxx codes) can be applied permanently by simply editing the relevant offset inside the ROM.
Posted 08 November 2008 - 12:41 PM
- 3rd top wiki contributor
-
-
Posts:
1902
-
Joined:
09-November 05
-
Gender:Male
-
Wiki edits:14,865

00
Yeah, to be able to convert RAM addresses/PAR codes to ROM addresses would require a debugger with breakpoints I think. And I don't know if any have ever been released yet.
Posted 08 November 2008 - 02:07 PM
-
Posts:
1735
-
Joined:
07-September 06
-
Gender:Male
-
Location:Frankfurt, Germany
-
Wiki edits:3

00
Tweaker, on Nov 8 2008, 06:34 PM, said:
ROM-based patch codes, however (xxxxxx codes) can be applied permanently by simply editing the relevant offset inside the ROM.
Correct.
Posted 09 November 2008 - 07:19 PM
- Everything is going to the beat.
-
-
Posts:
459
-
Joined:
03-November 08
-
Gender:Male
-
Location:Yesterday.

00
Ahhh, so I see - kinda thought it was strictly a RAM issue but needed detailed clarification. Cheers.
So there's pretty much no way to get the Japanese credits to appear upon bootup like with the Level Select and Debug Mode without, indeed, having to use a breakpoint-supporting debugger program?
Although I'm puzzled that two different codes for the Level Select seemingly exist - one for ROM (AJ3A-AA4G) and another for RAM (FFFFE0:0001).
Posted 09 November 2008 - 09:31 PM
-
Posts:
579
-
Joined:
24-January 04
-
Gender:Male
-
Location:United States

00
Well, the Game Genie and Pro Action Replay were two separate devices that were sold separately. It's easy to decrypt the GG code to hex and edit that in.
Posted 09 November 2008 - 09:52 PM
-
Posts:
659
-
Joined:
09-January 08
-
Gender:Male
-
Location:Québec, Canada
-
Project:an assembler
-
Wiki edits:6

07
MarzSyndrome, on Nov 9 2008, 07:19 PM, said:
So there's pretty much no way to get the Japanese credits to appear upon bootup like with the Level Select and Debug Mode without, indeed, having to use a breakpoint-supporting debugger program?
That's silly. All you have to do is add or change a line that will set the flag in the code where it's cleared. If it's cleared in a loop, you'll have to add a line after the loop; if it's cleared separately, you'll have to change the line to set the flag instead of clearing it.
Posted 09 November 2008 - 10:16 PM
- Everything is going to the beat.
-
-
Posts:
459
-
Joined:
03-November 08
-
Gender:Male
-
Location:Yesterday.

00
King, on Nov 10 2008, 02:31 AM, said:
Well, the Game Genie and Pro Action Replay were two separate devices that were sold separately. It's easy to decrypt the GG code to hex and edit that in.
No, I mean it is seemingly possible to unlock the Level Select either through ROM or RAM - I know how to decode GG codes into PAR/hex code.
FraGag, on Nov 10 2008, 02:52 AM, said:
MarzSyndrome, on Nov 9 2008, 07:19 PM, said:
So there's pretty much no way to get the Japanese credits to appear upon bootup like with the Level Select and Debug Mode without, indeed, having to use a breakpoint-supporting debugger program?
That's silly. All you have to do is add or change a line that will set the flag in the code where it's cleared. If it's cleared in a loop, you'll have to add a line after the loop; if it's cleared separately, you'll have to change the line to set the flag instead of clearing it.
Hmmm, I don't think I'm that knowledgeable in working out what flags are related to what in the game. Unless you mean use any debugger tool, and just keep an eye on what changes in the code after unlocking Japanese credits?
Posted 10 November 2008 - 12:33 AM
-
Posts:
659
-
Joined:
09-January 08
-
Gender:Male
-
Location:Québec, Canada
-
Project:an assembler
-
Wiki edits:6

07
MarzSyndrome, on Nov 9 2008, 10:16 PM, said:
Hmmm, I don't think I'm that knowledgeable in working out what flags are related to what in the game. Unless you mean use any debugger tool, and just keep an eye on what changes in the code after unlocking Japanese credits?
You could simply use an existing disassembly of Sonic 1 (available on the wiki here:
Disassemblies) and search for "Japanese Credits".
Posted 10 November 2008 - 05:36 AM
-
Posts:
863
-
Joined:
27-March 05
-
Gender:Male
-
Location:Karachi, Pakistan
-
Wiki edits:4,411

00
MarzSyndrome, on Nov 10 2008, 08:16 AM, said:
No, I mean it is seemingly possible to unlock the Level Select either through ROM or RAM - I know how to decode GG codes into PAR/hex code.
A lot of things can be done either through ROM or RAM, but the method to make them happen usually differs vastly between the two. As an example, I'll take one of the most famous GG codes, ACLA-ATD4, which is the code for accessing HPZ. Off the top of my head, that translates to 00947A:0800, and what it does is changes the level select entry pointer for Death Egg Zone to point to Hidden Palace Zone instead. If you wanted to access HPZ through RAM, you could instead use FFFE10:0800, which directly changes the level number flag in RAM to point to HPZ. The end result is obviously the same, you end up in HPZ, but the way in which that result is achieved is quite different.
Posted 26 November 2008 - 04:23 PM
- Pheer the baby EggRobo!
-
-
Posts:
291
-
Joined:
18-August 03
-
Gender:Male
-
Location:UK

00
Both the Game Genie and Action Replay work by intercepting ROM reads, in effect changing some of the data that's going from the cartridge to the MD console. The Game Genie simply does ROM patch codes, but the Action Replay must do something like hooking the VSync routine or other code in the ROM. AR works on any cartridge game, so modifying the RAM constantly isn't game-dependent.
Sadly, I don't know any more about the internal workings of the AR to know how it works, or how it can still run the game as normal while there's effectively an extra ROM in the way.