Announcement

Collapse
No announcement yet.

NES Game Genie Starting Offset

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • NES Game Genie Starting Offset

    So this may be completely arbitrary, but I'd like to start making more codes for the NES and I wanted to ask.

    What offset do folks normally start at when posting NES Game Genie codes?

    To use an example, my code in hex needs to change 52F0D from DE to BD. In adhearing to NES rules/limitations:

    "Note that NES address space is 15 bits, in a ROM file this is 0000-7FFF (switched with mappers), in the NES CPU architecture this is 8000-FFFF. Any raw code outside this range can be converted by adding or subtracting 0x8000."

    Per spec, I'm looking for an address outside of range.

    I ding 10 for the header to 52EFD. And after I've whittled down I have any of these potentially valid values I can use as my address.

    EEFD - SUNVSVVS
    CEFD - SUNKSVVS
    AEFD - SUNXSVVS
    8EFD - SUNESVVS
    6EFD - SUNVSVVS
    4EFD - SUNKSVVS
    2EFD - SUNXSVVS

    I'm inclined to go with the lowest - 2EFD. And having decoded a number of codes on the site it looks like most people use this one... until they don't. Galoob seem to at least be consistent on a title. But they vary from game to game. Different hackers vary as well.

    So for the sake of my sanity. Does this matter at all? If the code is valid should I give this much thought to this?

  • #2
    Rom lives in 0x8000-0xFFFF, so you'll only find it in that range.

    To make it easy on yourself, download the ghtool, click on the nes, and load your rom. Put your original byte in the compare field, and the value in the value field. Then try 8EFD for the address. If it finds a page with the compare byte, and you can check the ASM window if you are familiar with the code, then it's either 8 or C. If when you try A, it's either A or E. PRG banks are 16K, so you should be able to narrow your choices down to 2.

    Codes aren't usually made this way, this is backwards. Debuggers are used to find Genie codes, which show the address in the CPU's address space. FCEUX also shows the bank number I believe, or the rom offset or something.

    This should be accurate, but I dunno, I just woke up from a nap.
    Please put all complaints in writing and submit them here.

    Above link not working? Try here.

    Comment


    • #3
      Originally posted by rimsky82 View Post
      Codes aren't usually made this way, this is backwards. Debuggers are used to find Genie codes, which show the address in the CPU's address space. FCEUX also shows the bank number I believe, or the rom offset or something.
      Thanks for the reply! I skipped right over that. I was taking the hex from the debugger and finding the real offset in the rom.

      Comment

      Working...
      X