Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
The wiki has recently moved; please report any issues in Discord. Pardon the dust.
Trials of Mana (SNES)/ROM map
Jump to navigation
Jump to search
C239CA-C23CB8 decompression routine A (graphic sets)
C2418D-C2437A decompression routine B (tilesets)
C243DA-C2441C decompression routine C (solidity sets)
C24527-C24876 decompression routine D (tilemaps)
CB040A-CB0B09 palette set pointers (7 pointers each = 14 bytes each) (bank $CD)
CB0B0A-CB49DB tilemap offsets, dynamic data (from 01,00 of level data @ CB73DC)
3 bytes per offset, a string is terminated by FF
2 string are read: 1st for tilemap L1, 2nd for tilemap L2
1st pointer of a string points to the compressed tilemap, the rest are unknown
CB49DC-CB73DB exit fields (4 bytes per field)
00 dest X coord
01 dest Y coord
d6-d7 facing direction
03,02 destination
CB73DC-CB9F5F level data (by level index @ 7E6028, 1114 items, 10 bytes each)
01,00 tilemap pack (+ $CB0000 = dynamic data, terminated by FF)
02 map pack (* 7 + $CD0750)
03 palette set
04
05
07,06 exit field index pack (+ $CB0000)
09,08 monster set
CB9F60-CBFFBF exit field index packs (2 bytes per pointer, packs are dynamic size)
some pointers: & 0x7FF * 2 + $CB49DC = offset of exit field
...yet others (& 0x7FF) look like actual level indexes?
CBFFC0-CBFFFF priority sets (4 bytes each)
00 d0-d4 enable mosaic
01 d0-d4 enable mainscreen
02 d0-d4 enable subscreen
03 d0-d4 color math
d6 half intensity
d7 minus subscreen
CC1000-CC1899 graphics packs (dynamic, each string terminated by FFFF)
* 3 + $CD02D0 = offset of pointer
CC189A-CC60C0 solidity sets (compressed, 2 bytes per tile)
00 d0 SE quadrant
d1 SW quadrant
d2 NE quadrant
d3 NW quadrant
d4 N edge blocked
d5 can slide against
d6 W edge blocked
01 d7 exit trigger enabled
CCFC00-CCFC79 animation string pointers
CCFC7A-CCFFFF animation strings
00 d6,7 if clear, 4-byte length
d6 unknown, 3-byte length if set
d7 unknown, 1-byte length if set
if d6/d7 clear: & 0x0F * 0x80 = offset of VRAM to draw to
01,02 unknown if 00,d6/d7 set
03,02 if d6/d7 clear: + $F70000 = offset of animation graphics
CD0000-CD00D7 tileset L1 pointers (72 items, 3 bytes each)
CD00D8-CD01AF tileset L2 pointers (72 items, 3 bytes each)
CD01B0-CD023F solidity set L1 pointers (bank $CC)(72 items, 2 bytes each)
CD0240-CD02CF solidity set L2 pointers (bank $CC)(72 items, 2 bytes each)
CD02D0-CD060B graphics pointers (276 items, 3 bytes each)
CD0750-CD0A3C map packs (107 items, 7 bytes each)
00 tileset L1 (* 2 + $CD01B0 = offset of pointer)
01 tileset L2 (* 2 + $CD01B0 = offset of pointer)
02 scrolling L2
d0-d2 speed
d3 enable scrolling
03 & 0x0F = priority set
04 animation index
* 2 + CCFC00 = pointer's offset
06,05 graphics pack (bank $CC)
CD0A3D-CD3550 sprite palettes
CD1EB7 palette for Kevin
CD3551-CDA314 palette sets (180 bytes each, 6 palettes p/set, 30 bytes p/palette)
CE0000-CFD284 tilesets (compressed)
D133D0 Monster base HPs (2 bytes each)
D134F2 Werewolf
D1F5E0-?????? monster XPs (3 bytes each)
D1F61C Dark Battum
D12A40-D12B83 sprite mold pointers (2 bytes each, 162 items total)
* 4 + $D50000 = offset of mold pack
Duran, Kevin, Hawk, Angela, Carlie, Lise (the rest are NPCs)
D50000-D72FFF mold packs and mold data for sprites
D52581-D525?? mold pack for Kevin (2 bytes each)
D80000-E3DFFF sprite graphics (uncompressed)
F00000-F4FFFF level graphics (compressed)
F70000-F77FFF animated graphics (uncompressed)