Hack64 Wiki
Other Titles
Hack64 Wiki
Other Titles
Below is a high level ROM map of Extreme-G (US). Most of the game's assets are compressed using either LZHUF or LZSS.
Offset | Description |
---|---|
00 | 32-bit integer indicating number of files in the archive |
04 | 4 padding bytes |
08 | Array of file reference structures |
Offset | Description |
---|---|
00 | 32-bit offset of the LZSS-compressed data |
04 | 32-bit Magic number “LZSS” |
08 | 32-bit destination size |
0C | 32-bit source size |
Offset | Address | Source size | Destination size | (Compression) Description |
---|---|---|---|---|
00000018 | 000014B8 | 0002DFC4 | 0004FFF8 | (LZSS) Main assembly code segment |
Address | Source size | Destination size | (Compression) Description |
---|---|---|---|
007A3118 | 0000246A | 00003AA0 | (LZSS) ? |
007A5588 | 000013DC | 00002268 | (LZSS) ? |
007A6968 | 00001832 | 00002E04 | (LZSS) ? |
007A81A0 | 00001A0E | 000023FC | (LZSS) ? |
007A9BB0 | 00000C7C | 00001A90 | (LZSS) ? |
007AA830 | 00001EE7 | 00003AF8 | (LZSS) ? |
007AC718 | 00001057 | 0000294A | (LZSS) ? |
007AD770 | 00000FA5 | 00002620 | (LZSS) ? |
007AE718 | 000010FB | 00002A2C | (LZSS) ? |
007AF818 | 00001136 | 00002BC0 | (LZSS) ? |
007B0950 | 0000107A | 000028BC | (LZSS) ? |
007B19D0 | 00000FA5 | 00002620 | (LZSS) ? |
007B2978 | 0000115E | 00002BFA | (LZSS) ? |
007B3AD8 | 00006554 | 0000A31C | (LZSS) ? |
007BA030 | 00001DA5 | 00004F60 | (LZSS) ? |
007BBDD8 | 000047BF | 00007CF8 | (LZSS) ? |
007C0598 | 00001D44 | 000037A4 | (LZSS) ? |
007C22E0 | 000007DE | 00000800 | (LZSS) ? |
007C2AC0 | 000000D4 | 00000160 | (LZSS) ? |
007C2B98 | 0000009F | 000000F0 | (LZSS) ? |
007C2C38 | 000000BC | 00000128 | (LZSS) ? |
007C2CF8 | 00000094 | 000000F0 | (LZSS) ? |
007C2D90 | 000000BB | 00000128 | (LZSS) ? |
007C2E50 | 00004898 | 000062E8 | (LZSS) ? |
007C76E8 | 0000014D | 00000328 | (LZSS) ? |
007C7838 | 00000A51 | 000025C8 | (LZSS) ? |
007C8290 | 000024C4 | 00003C90 | (LZSS) ? |
007CA758 | 00000EB5 | 00001140 | (LZSS) ? |
007CB610 | 00000517 | 00000688 | (LZSS) ? |
007CBB28 | 000002C3 | 000009F8 | (LZSS) ? |
007CBDF0 | 00000CFD | 00004308 | (LZSS) ? |
007CCAF0 | 00003C84 | 00007808 | (LZSS) ? |
007D0778 | 0000034F | 00000690 | (LZSS) ? |
007D0AC8 | 00000C53 | 00001000 | (LZSS) ? |
007D1720 | 000000E3 | 00000200 | (LZSS) ? |
007D1808 | 00000D85 | 00001000 | (LZSS) ? |
007D2590 | 00000136 | 00000200 | (LZSS) ? |
007D26C8 | 00000A11 | 00001000 | (LZSS) ? |
007D30E0 | 000000C5 | 00000200 | (LZSS) ? |
007D31A8 | 00000A12 | 00001000 | (LZSS) ? |
007D3BC0 | 00000131 | 00000200 | (LZSS) ? |
007D3CF8 | 00000A4C | 00001000 | (LZSS) ? |
007D4748 | 00000194 | 00000200 | (LZSS) ? |
007D48E0 | 000001BB | 00000488 | (LZSS) ? |
007D4AA0 | 000001FC | 00000420 | (LZSS) ? |
007D4CA0 | 00000145 | 00000348 | (LZSS) ? |
007D4DE8 | 0000DB93 | 00011988 | (LZSS) ? |
007E2980 | 00002CAE | 000041C0 | (LZSS) ? |
007E5630 | 0000527C | 0000A7C4 | (LZSS) ? |
007EA8B0 | 0000081B | 00000A70 | (LZSS) ? |
This table does not use the same structure as the two LSZZ archives described above.
Offset | Description |
---|---|
00 | 32-bit ROM address of the 32-bit destination size followed by LZSS-compressed data |
04 | 32-bit source size |
08 | 32-bit value (unknown purpose) |
0C | 32-bit value (unknown purpose) |
Address | Source size | Destination size | (Compression) Description |
---|---|---|---|
0010EC90 | 000012E0 | 00001CFC | (LZSS) ? |
006AF2C0 | 00001540 | 00004C8C | (LZSS) ? |
000F0E30 | 00017340 | 0002A584 | (LZSS) ? |
00109620 | 00003160 | 000059E4 | (LZSS) ? |
00108170 | 000014B0 | 00001DD4 | (LZSS) ? |
0010C780 | 00002510 | 000030D4 | (LZSS) ? |
00092F70 | 00007010 | 0000F2E8 | (LZSS) ? |
000AFF00 | 00006760 | 0000D6B8 | (LZSS) ? |
00088000 | 00006710 | 0000CAF8 | (LZSS) ? |
000A17D0 | 00006830 | 0000D390 | (LZSS) ? |
00099F80 | 00007850 | 0000DD30 | (LZSS) ? |
000B9DB0 | 00004AD0 | 00009DC8 | (LZSS) ? |
0008E710 | 00004860 | 00009C20 | (LZSS) ? |
000BE880 | 00004B80 | 0000AAB8 | (LZSS) ? |
000A8000 | 00007F00 | 0000DA30 | (LZSS) ? |
000B6660 | 00003750 | 000075A8 | (LZSS) ? |
000DF030 | 00002640 | 00004F18 | (LZSS) ? |
000E1670 | 00002570 | 00004FC0 | (LZSS) ? |
000E3BE0 | 000025C0 | 00004F50 | (LZSS) ? |
000E61A0 | 000026E0 | 00004F80 | (LZSS) ? |
000E8880 | 00002540 | 00004C18 | (LZSS) ? |
000EADC0 | 000025D0 | 00004BB8 | (LZSS) ? |
000ED390 | 00002640 | 00004BB8 | (LZSS) ? |
000EF9D0 | 00001460 | 00002654 | (LZSS) ? |
Note: The source sizes noted above are +4 to account for the destination size value that precedes each compressed file.
Each address in the table below points to a level header structure.
Index | Address |
---|---|
00 | 0010FF70 |
01 | 0017C6F0 |
02 | 001DD8B0 |
03 | 0024FDB0 |
04 | 002C2970 |
05 | 00332A30 |
06 | 003A5630 |
07 | 004185F0 |
08 | 0048DB70 |
09 | 00502FF0 |
0A | 00576C70 |
0B | 005EB9F0 |
0C | 006819F0 |
0D | 006604F0 |
0E | 00668A70 |
0F | 0066FCF0 |
10 | 00676DF0 |
11 | 006819F0 |
Offsets defined in this structure are relative to the position of the structure in ROM.
Offset | Description |
---|---|
00 | 32-bit offset of GFX transformations table |
04 | 32-bit number of transformations |
08 | Unknown |
0C | 32-bit offset of LZHUF-compressed texture meta table |
10 | 32-bit number of entries in the texture meta table |
14 | 32-bit offset of LZHUF-compressed texture data |
18 | 32-bit destination size of the texture data |
1C | 32-bit offset of LZHUF-compressed misc data |
20 | 32-bit destination size of misc data |
24 | Unknown |
28 | Unknown |
2C | Unknown |
30 | Unknown |
34 | 32-bit offset of LZHUF-compressed texture coordinate table |
38 | 32-bit destination size of the texture coordinate table |
3C | 32-bit offset of LZHUF-compressed GFX/Collision commands |
40 | 32-bit destination size of the GFX/Collision commands |
44-7F | Unknown |
Below is a list of files referenced the level headers.
Address | Source size | Destination size | (Compression) Description |
---|---|---|---|
0010FFF0 | 000000D6 | 000002A0 | (LZHUF) Level 00 texture meta |
001100F0 | 0000A445 | 0000D5E0 | (LZHUF) Level 00 textures |
0011A570 | 00024333 | 0005592D | (LZHUF) Level 00 misc data |
0013E8B0 | 00000048 | 00000074 | (LZHUF) Level 00 texture coordinates |
0013E930 | 00001DB0 | N/A | Level 00 GFX transformation table |
001406F0 | 0003BFC3 | 0005F90E | (LZHUF) Level 00 GFX/Collision commands |
0017C770 | 00000085 | 000001E0 | (LZHUF) Level 01 texture meta |
0017C830 | 000055E1 | 00008100 | (LZHUF) Level 01 textures |
00181E30 | 00020477 | 000460B9 | (LZHUF) Level 01 misc data |
001A22B0 | 00000037 | 0000004C | (LZHUF) Level 01 texture coordinates |
001A22F0 | 00001D38 | N/A | Level 01 GFX transformation table |
001A4030 | 0003987B | 0005BD41 | (LZHUF) Level 01 GFX/Collision commands |
001DD930 | 000000D2 | 000002A0 | (LZHUF) Level 02 texture meta |
001DDA30 | 00009908 | 0000E2A0 | (LZHUF) Level 02 textures |
001E7370 | 000253F7 | 00052D09 | (LZHUF) Level 02 misc data |
0020C770 | 00000053 | 00000084 | (LZHUF) Level 02 texture coordinates |
0020C7F0 | 00002940 | N/A | Level 02 GFX transformation table |
0020F130 | 00040C7F | 00063DED | (LZHUF) Level 02 GFX/Collision commands |
0024FE30 | 0000009A | 000001F8 | (LZHUF) Level 03 texture meta |
0024FEF0 | 00006DC4 | 0000A040 | (LZHUF) Level 03 textures |
00256CF0 | 00025496 | 00051409 | (LZHUF) Level 03 misc data |
0027C1B0 | 00000055 | 00000088 | (LZHUF) Level 03 texture coordinates |
0027C230 | 00001AE0 | N/A | Level 03 GFX transformation table |
0027DD30 | 00044C03 | 0006D2EF | (LZHUF) Level 03 GFX/Collision commands |
002C29F0 | 000000C3 | 00000258 | (LZHUF) Level 04 texture meta |
002C2AF0 | 00009371 | 0000BEA0 | (LZHUF) Level 04 textures |
002CBE70 | 00029C0E | 000585AD | (LZHUF) Level 04 misc data |
002F5AB0 | 0000002C | 00000044 | (LZHUF) Level 04 texture coordinates |
002F5AF0 | 00002300 | N/A | Level 04 GFX transformation table |
002F7DF0 | 0003AC30 | 000600DE | (LZHUF) Level 04 GFX/Collision commands |
00332AB0 | 0000008E | 000001B0 | (LZHUF) Level 05 texture meta |
00332B70 | 00006CA3 | 00008C60 | (LZHUF) Level 05 textures |
00339830 | 0002BF48 | 00059985 | (LZHUF) Level 05 misc data |
003657B0 | 00000047 | 00000074 | (LZHUF) Level 05 texture coordinates |
00365830 | 00001F18 | N/A | Level 05 GFX transformation table |
00367770 | 0003DEAE | 0005E91F | (LZHUF) Level 05 GFX/Collision commands |
003A56B0 | 000000C4 | 00000264 | (LZHUF) Level 06 texture meta |
003A57B0 | 00007A2D | 0000BA80 | (LZHUF) Level 06 textures |
003AD1F0 | 00021886 | 00048E61 | (LZHUF) Level 06 misc data |
003CEAB0 | 00000073 | 000000C4 | (LZHUF) Level 06 texture coordinates |
003CEB30 | 00001F40 | N/A | Level 06 GFX transformation table |
003D0A70 | 00047B62 | 000748F1 | (LZHUF) Level 06 GFX/Collision commands |
00418670 | 000000D5 | 000002C4 | (LZHUF) Level 07 texture meta |
00418770 | 000074C0 | 0000C8C0 | (LZHUF) Level 07 textures |
0041FC30 | 00028454 | 00053A21 | (LZHUF) Level 07 misc data |
004480B0 | 000000A2 | 00000110 | (LZHUF) Level 07 texture coordinates |
00448170 | 00001E78 | N/A | Level 07 GFX transformation table |
00449FF0 | 00043B45 | 00070C49 | (LZHUF) Level 07 GFX/Collision commands |
0048DBF0 | 000000DC | 00000288 | (LZHUF) Level 08 texture meta |
0048DCF0 | 00008649 | 0000C900 | (LZHUF) Level 08 textures |
00496370 | 0002A379 | 0005F209 | (LZHUF) Level 08 misc data |
004C06F0 | 000000B9 | 00000138 | (LZHUF) Level 08 texture coordinates |
004C07B0 | 000020F8 | N/A | Level 08 GFX transformation table |
004C28B0 | 00040728 | 000677FA | (LZHUF) Level 08 GFX/Collision commands |
00503070 | 000000CF | 00000264 | (LZHUF) Level 09 texture meta |
00503170 | 00008F11 | 0000BEC0 | (LZHUF) Level 09 textures |
0050C0B0 | 00027A9A | 00050B51 | (LZHUF) Level 09 misc data |
00533B70 | 0000005E | 0000009C | (LZHUF) Level 09 texture coordinates |
00533BF0 | 00001C20 | N/A | Level 09 GFX transformation table |
00535830 | 00041402 | 0006CBF6 | (LZHUF) Level 09 GFX/Collision commands |
00576CF0 | 000000D9 | 0000024C | (LZHUF) Level 0A texture meta |
00576DF0 | 00007F60 | 0000B4E0 | (LZHUF) Level 0A textures |
0057ED70 | 00025E0C | 00049109 | (LZHUF) Level 0A misc data |
005A4BB0 | 0000006B | 000000B8 | (LZHUF) Level 0A texture coordinates |
005A4C30 | 00002FF8 | N/A | Level 0A GFX transformation table |
005A7C30 | 00043DAF | 0006E823 | (LZHUF) Level 0A GFX/Collision commands |
005EBA70 | 000000FA | 000002E8 | (LZHUF) Level 0B texture meta |
005EBB70 | 00008A3E | 0000E3E0 | (LZHUF) Level 0B textures |
005F45B0 | 0002AC96 | 0005DEE9 | (LZHUF) Level 0B misc data |
0061F270 | 0000006F | 000000C0 | (LZHUF) Level 0B texture coordinates |
0061F2F0 | 000023C8 | N/A | Level 0B GFX transformation table |
006216F0 | 0003EDFE | 0005E93B | (LZHUF) Level 0B GFX/Collision commands |
00681A70 | 0000001D | 00000054 | (LZHUF) Level 0C texture meta |
00681AB0 | 00001A60 | 00001E00 | (LZHUF) Level 0C textures |
00683530 | 00009634 | 00013A51 | (LZHUF) Level 0C misc data |
0068CB70 | 0000001B | 00000028 | (LZHUF) Level 0C texture coordinates |
0068CBB0 | 00000CF8 | N/A | Level 0C GFX transformation table |
0068D8B0 | 0000F082 | 00018044 | (LZHUF) Level 0C GFX/Collision commands |
00660570 | 0000004B | 000000B4 | (LZHUF) Level 0D texture meta |
006605F0 | 00001A66 | 00003680 | (LZHUF) Level 0D textures |
00662070 | 000046FA | 0000B9CD | (LZHUF) Level 0D misc data |
00666770 | 00000024 | 00000030 | (LZHUF) Level 0D texture coordinates |
006667B0 | 00000320 | N/A | Level 0D GFX transformation table |
00666AF0 | 00001F5B | 00003380 | (LZHUF) Level 0D GFX/Collision commands |
00668AF0 | 0000004C | 000000A8 | (LZHUF) Level 0E texture meta |
00668B70 | 000020D8 | 00003A40 | (LZHUF) Level 0E textures |
0066AC70 | 0000311C | 00007529 | (LZHUF) Level 0E misc data |
0066DDB0 | 00000023 | 00000034 | (LZHUF) Level 0E texture coordinates |
0066DDF0 | 000000F0 | N/A | Level 0E GFX transformation table |
0066DEF0 | 00001DE1 | 000040B5 | (LZHUF) Level 0E GFX/Collision commands |
0066FD70 | 0000003B | 00000090 | (LZHUF) Level 0F texture meta |
0066FDB0 | 000017A4 | 00002E40 | (LZHUF) Level 0F textures |
00671570 | 00003416 | 00007CFD | (LZHUF) Level 0F misc data |
006749B0 | 0000001B | 00000024 | (LZHUF) Level 0F texture coordinates |
006749F0 | 000002F8 | N/A | Level 0F GFX transformation table |
00674CF0 | 000020C5 | 00003A8E | (LZHUF) Level 0F GFX/Collision commands |
00676E70 | 0000003F | 0000009C | (LZHUF) Level 10 texture meta |
00676EB0 | 0000184B | 00003240 | (LZHUF) Level 10 textures |
00678730 | 00005AD3 | 0000DD71 | (LZHUF) Level 10 misc data |
0067E230 | 00000016 | 00000024 | (LZHUF) Level 10 texture coordinates |
0067E270 | 000004B0 | N/A | Level 10 GFX transformation table |
0067E730 | 000032A0 | 000067AF | (LZHUF) Level 10 GFX/Collision commands |
00681A70 | 0000001D | 00000054 | (LZHUF) Level 11 texture meta |
00681AB0 | 00001A60 | 00001E00 | (LZHUF) Level 11 textures |
00683530 | 00009634 | 00013A51 | (LZHUF) Level 11 misc data |
0068CB70 | 0000001B | 00000028 | (LZHUF) Level 11 texture coordinates |
0068CBB0 | 00000CF8 | N/A | Level 11 GFX transformation table |
0068D8B0 | 0000F082 | 00018044 | (LZHUF) Level 11 GFX/Collision commands |
Note: Level 0C and level 11 reference the same group of files.
This table runs parallel to the level table.
Index | Address |
---|---|
00 | 000C6690 |
01 | 000C6690 |
02 | 000C6690 |
03 | 000D5C40 |
04 | 000D5C40 |
05 | 000D5C40 |
06 | 000CE500 |
07 | 000CE500 |
08 | 000CE500 |
09 | 000DC550 |
0A | 000DC550 |
0B | 000DC550 |
0C | 000C6690 |
0D | 000C6690 |
0E | 000D5C40 |
0F | 000CE500 |
10 | 000DC550 |
11 | 000C6690 |
Address | Source size | Destination size | (Compression) Description |
---|---|---|---|
000C6690 | 00007E6A | 0000A348 | (LZHUF) Common level mesh texture bank |
000CE500 | 0000773D | 00010420 | (LZHUF) Common level mesh texture bank |
000D5C40 | 00006907 | 0000A358 | (LZHUF) Common level mesh texture bank |
000DC550 | 00002ADD | 00008318 | (LZHUF) Common level mesh texture bank |
Note: The source sizes noted above are +4 to account for the destination size value that precedes each compressed file.
The addresses of these two files (000C3400, 0002F480) are defined at 00001280 and 00001490 respectively.
Address | Source size | Destination size | (Compression) Description |
---|---|---|---|
000C3400 | 00003284 | 00008318 | (LZHUF) Global level mesh texture bank |
0002F480 | 00057D3A | 000B8120 | (LZHUF) ? |
Note: The source sizes noted above are +4 to account for the destination size value that precedes each compressed file.