Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- MM JP VC save file manipulation - Documentation
- --------------------------------------------------
- The save data is stored in the EEP_NZSJ file.
- The game ID is 000100014e41524a - the folder in sd:\savegames\ must be
- named like that for SaveGame Manager GX to be able to install it.
- All 3 save slots are twice in that file, probably as a backup copy.
- Each save slot is 0x4000 bytes long (=16 kilobytes).
- If you want to edit a save slot, you have to edit both the "real" one and the "copy".
- --------------------------------------------------
- Addresses of save slots (0x4000 bytes each):
- Slot #1: 0x00000 to 0x03FFF
- Slot #2: 0x04000 to 0x07FFF
- Slot #3: 0x08000 to 0x0BFFF
- Slot #1 copy: 0x10000 to 0x13FFF
- Slot #2 copy: 0x14000 to 0x17FFF
- Slot #3 copy: 0x18000 to 0x1BFFF
- Address of filename (0x8 bytes):
- Slot offset + 0x0002C to 0x00033
- Addresses of Lottery, Spiderhouse, Bomber code, checksum (0x32 bytes total):
- Slot offset + 0x01370 to 0x0138F
- Address of settings (targetting, audio, ...):
- 0x0C000 to 0x0C005
- (unsure on this one, didn't take a closer look)
- --------------------------------------------------
- Filename details:
- The filename is 8 bytes. Each byte is 1 character of the file name.
- The characters are stored in the same order as ingame, so 0x0002C is the first character.
- HEX codes for characters are:
- 0 - 9: 00 to 09
- A - Z: AB to C4
- a - z: C5 to DE
- Space: DF
- Dot: EA
- Hyphen: E4
- --------------------------------------------------
- Lottery, Spiderhouse, Bomber code, checksum details:
- The Lottery code is 9 bytes. Each byte is 1 digit of a Lottery number.
- The Lottery digits are stored in the same order as ingame, so 0x01370 is the first digit on the first day.
- The Spiderhouse code is 6 bytes. Each byte is 1 color of the code. The colors are 0123 = RBYG.
- The Spiderhouse colors are stored in the same order as ingame, so 0x01379 is the first color to hit.
- The Bomber code is 5 bytes. Each byte is 1 digit of the Bomber code.
- The Bomber code digits are stored in the same order as ingame, so 0x0137F is the first digit of the code.
- The checksum is 2 bytes. It is an unsigned short.
- The checksum is the sum of all bytes prior to the checksum in the save slot.
- --> This means it's the sum of all bytes from 0x00000 to 0x0138D.
- --> For a completely new, untouched slot it is 77D0 + filename + codes (lottery, spider, bomber).
- --------------------------------------------------
- Example (save slot #1, fresh file):
- _____________________________________________________________
- | ... |
- | 0x00020: 04 00 00 00 5A 45 4C 44 41 33 00 00 B6 CD D2 CF |
- | 0x00030: DF DF DF DF 00 30 00 30 00 30 00 00 00 00 00 00 |
- | ... |
- | 0x01370: 01 02 03 01 02 03 01 02 03 00 01 02 03 02 03 05 |
- | 0x01380: 04 03 02 01 00 35 FA 74 01 01 FA FB 8A AC 7E 9C |
- | ... |
- ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
- The filename here is "Link ". (Hex: B6 CD D2 CF DF DF DF DF)
- ...
- The Lottery codes are "123, 123, 123". (Hex: 01 02 03 01 02 03 01 02 03)
- The Spiderhouse code is "R B Y G Y G". (Hex: 00 01 02 03 02 03)
- The Bomber code is "5 4 3 2 1". (Hex: 05 04 03 02 01)
- [The following part is static, don't change that: 00 35 FA 74 01 01 FA FB 8A AC]
- The checksum is "7E 9C" (77D0 + filename + the three codes).
- That means you can switch around the Bomber code without modyfying the checksum!
- The checksum can be easily calculated using the Windows calculator in scientific mode.
- Don't forget that everything you change in save slot #1 also has to be changed in the COPY!
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement