Start | Size | Description | Notes |
---|---|---|---|
0x00 | 0x4 | 0x00000100 | |
0x04 | 0x4 | File size | Includes the header and footer |
0x08 | 0x4 | Location of ROM | Always 0x00000030 in official files |
0x0C | 0x4 | Location of PCM samples | Comes after end of ROM in official files |
0x10 | 0x4 | Location of PCM footer | Equals file size if PCM data missing |
0x14 | 0x4 | Location of footer (below) | Same as New 3DS's SNES VC header starting from 0x30 |
0x18 | 0x4 | Location of S-DD1 data offset | Footer location + 0x2C |
0x1C | 0x4 | 0x00000000 | |
0x20 | 0x4 | Unknown | Footer location + 0x1B. Some kind of a flag? |
0x24 | 0x8 | Wii U Virtual Console Game ID | WUP-J**X, X — title region (E = USA, J = Japan, P = EUR) |
0x2C | 0x4 | 0x00000000 |
Start | Size | Description | Notes |
---|---|---|---|
0x00 | 0x1 | Emulation speed in FPS | 0x3C == 60 |
0x01 | 0x4 | ROM Size | |
0x05 | 0x4 | Size of PCM samples | 0 if missing |
0x09 | 0x4 | Size of PCM footer | 0 if missing |
0x0D | 0x2 | Game preset ID | Varies between games |
0x0F | 0x1 | # of players? | Usually 0x02. Setting to 0x0 disables the second controller |
0x10 | 0x1 | Sound volume | |
0x11 | 0x1 | ROM Type | 0x15 for HiROM and 0x14 for LoROM |
0x12 | 0x1 | Super-FX flag? | 0x0C if the game uses SFX Chip, 0x00 otherwise |
0x13 | 0x7 | 0x00000000000000 | |
0x1A | 0x4? | Unknown | Usually 0x00000100 |
0x1E | 0x4? | Unknown | Always 0x00000100 |
Who knows...
The footer structure is very inconsistent. That value at 0x4D81B0 does nothing, the game will boot anyway.
You can even set 0x18 to C0 81 4D and 0x4D81B0 to 00 00 00, and there will be no difference.
I wish we'd know more about their preset IDs. I had no luck with S-DD1, and SA1 is really weird.
Some games work with one preset, some games work with other, some display garbled graphics, and some refuse to boot at all...