The EEPROM is a chip inside the cartridge where the save game data is stored. The game stores the star, coin, cannon, and Mips data for each of the four save files and some main menu state. In order to protect against data corruption, the game stores a duplicate copy of each block and a 4 byte checksum at the end of it. If the checksums of the original and the copy don't match, then the game knows that something bad happened to your save file and will repair the corrupted data with the copied data.
Start | End | Description |
---|---|---|
0x000 | 0x037 | File A data |
0x038 | 0x06F | File A data (Copy) |
0x070 | 0x0A7 | File B data |
0x0A8 | 0x0DF | File B data (Copy) |
0x0E0 | 0x117 | File C data |
0x118 | 0x14F | File C data (Copy) |
0x150 | 0x187 | File D data |
0x188 | 0x1BF | File D data (Copy) |
0x1C0 | 0x1DF | Main Menu data |
0x1E0 | 0x1FF | Main Menu data (Copy) |
The first 8 bytes seem to always be loaded as 0x00, even if you try to save those bytes as something else. The secret stars at 0x08 are for Toads/Mips. The flags at bytes 0x09 to 0x0B are there to determine if you done a specific action like unlock a door, lost your hat, drained the water, etc. Bytes 0x1B to 0x24 are for the stars in the secret courses/bowser levels. 0x25 to 0x33 are your coin scores. Because each level only gets 1 byte to store the coin score, the maximum possible score you can get is 255. The final 4 bytes contain the checksum for that file chunk.
Range | Description |
---|---|
0x00 - 0x07 | Always 0x00? |
0x08 | Secret stars in castle (toads, Mips) |
0x09 | Bit 1: Cap stolen by snowman Bit 2: Cap stolen by bird Bit 3: Cap stolen by monkey Bit 5: 3rd floor (50 star) door |
0x0A | Bit 1: Unknown. Seems to be set when opening the DDR/BitFS room? Bit 2: Water level outside the castle Bit 3: Princess secret slide door Bit 4: Whomp's Fortress door Bit 5: Cool, Cool Mountain door Bit 6: Jolly Roger Bay door Bit 7: Bowser in the dark world (8 star) door Bit 8: Bowser in the fire sea (30 star) door |
0x0B | Bit 1: Valid game (Game is empty otherwise) Bit 2: Wing cap switch Bit 3: Metal cap switch Bit 4: Vanish cap switch Bit 5: Bowser in the dark world key (disabled when the door is opened) Bit 6: Bowser in the fire sea key (disabled when the door is opened) Bit 7: Basement door open Bit 8: 2nd floor door open |
0x0C - 0x1C | Course Stars (the 8th bit is for the level's cannon) |
0x1B - 0x24 | Secret stars in courses (secret, bowser levels) |
0x25 - 0x33 | Course Coin scores |
0x34 - 0x37 | Checksum |
This is data that is used in the file menu. Bytes 0x10-0x11 store the sound select option. Bytes 0x12 - 0x1B seem to be unused, you can write data here and not have it affect anything.
Range | Description |
---|---|
0x00 - 0x0F | Related to high scores? |
0x10 - 0x11 | Sound Select option: 0x0000 = Stereo, 0x0001 = Mono, 0x0002 = Headset |
0x12 - 0x1B | Unused? |
0x1C - 0x1F | Checksum |