Assembly Hacking Emulators
This is a list of emulators currently available that are capable of being used to change the programming in games reliably, or make assembly hacks with. This list won't be very helpful to casual code makers, or people who strictly make RAM cheats.
I often use my File2File program to find the RAM addresses, across all of the listed emulators.
NES
SNES
Genesis
Gameboy
Gameboy Advance
PSX
N64
NES: FCEUXDSP
http://www.the-interweb.com/serendip...es/9-FCEUXD-SP
Setting breakpoints in ROM/RAM
Tools>Debug
In the breakpoint window, 'Add' the Executable address or Memory address you want.
ROM is 8000-FFFF
RAM is 0000-07FF, 6000-7FFF
0800-3FFF is mirrored from some part of RAM.
4000-4015 can be breakpointed if working on an NSF. If the 'Hex Editor' is opened in a normal game, then an NSF is loaded, you can use it to work on NSF RAM, in conjunction with the debugger.
'Hex Editor' is a memory viewer/modifier.
SNES: Geiger's SNES9X Debugger
http://geigercount.net/crypt/
http://www.zophar.net/snes.html
Setting breakpoints in ROM/RAM
Open ROM, Click 'Breakpoints'
In the breakpoint window, enter the Executable address or Memory address you want.
Standard RAM: 7E0000 - 7FFFFF
SA1 RAM: 400000-407FFF, 303000-3037FF
HiROM - C00000 - FFFFFF
LoROM - 808000-BFFFFF (**0000 - **7FFF doesn't exist)
Genesis: Gens Tracer
http://www.romhacking.net/?Category=...ction=utillist
No breakpoints, but adequate tracing.
I've written a guide on the specific usage of the emulator.
The idea is that you can trace-log writes to and reads from memory, and you can also log all commands, and determine what's happening from the full log, by using what you find from the hook logging.
Gameboy: BGB
http://bgb.bircd.org/
Load a ROM, and right-click the screen.
Other>debug mode enabled: to enable debugging
Other>debugger to enter the debugger
Setting breakpoints in ROM/RAM
In the debugger window:
Debug>breakpoints for execution breakpoints
Debug>access breakpoints for read/write breaks.
Gameboy Advance: Visual Boy Advance
http://vba.ngemu.com/downloads.shtml
Windows - SDL
Unfortunately, no cheat device exists that can change the assembly, so hacking it is more a matter of patching the ROM, and less a matter of using it for simple cheats.
Not documented.
PSX: PCSX 1.5 With Debugger
http://www.romhacking.net/?Category=...ction=utillist
Press F11 to enter the debugger.
On-screen aids should be apparent.
N64: Nemu64 (Project64 debug version for testing, etc.)
http://www.nemu.com/downloads.php
http://www.thegshi.org/downloads/Pro...g%20Binary.zip
Setting execution breakpoints
Plugins>Debugger: Commands...
To set a break on execution, go to the line that you want to break on, and click in the vertical bar to the left(<) of the address you want to breakpoint.
Setting breakpoints in RAM
Plugins>Debugger: Memory...
Enable the read and/or write checkboxes, and right-click the memory space you want to set, unset, or change an access breakpoint on.
Some games don't run in Nemu, so you may have to switch to this hook_log based emulator if you want the codes
http://www.romhacking.net/?Category=...ction=utillist
The hook_log system is a little bit more demanding to use than a visual debugger, but with compatibility issues, it's better than lucky to have a second usable debugging emulator. The save-states can be decompressed, and loaded in their decompressed form if needed
This reality is mine. Go hallucinate your own.