Terms: tilemap Any map consisting of tiles field The actual, 'physical' playfield First is the tilemap's offset, then its dimensions, unit size, and sometimes the pixel size of its individual tiles. All savestate WRAM offsets are given in relative hexadecimal offset (to convert to absolute file positions, simply add 3091). ROM positions are relative to the beginning of the image (after the 512 byte header if is there one). The tile table (found for 'Zelda' and 'Mario World') is the table used by the game to translate level blocks into a graphics tilemap on the screen. Editing it will not change the graphics, but rather the graphic tiles associated with that tile unit. For example, you could substitute all rocks for bushes in Zelda, not by changing the tile pixels, but just the 2x2 tile reference for bushes. Note that this does not affect the physical aspects of the field (you still won't be able to dash through a rock :), but visually things will be different. Most of these locations are found in ZSNES savestates where the tilemaps are uncompressed. To get the memory address as it would be from the SNES's point of view, simply add 7E0000h (useful if you want to do some hacking to the level within ZSNES using the debugger). Donkey Kong Country No wonder I couldn't find any reslembances of a level in WRAM. There are several long levels stored fully expanded in the ROM. I actually realized they were levels a long time ago, but didn't know how they were stored. Compared to normal, they look like they're stored sideways and backwards, with each of 16 words actually being a vertical column in the level. The lowest address is the top left of the level. The highest address is the bottom right. Each word forward is one tile down. Every 16 words forward is a tile to the right. I still don't know how the odd shaped levels are stored, but probably something like "Mario World 2" where pieces are joined together. Most games use 16x16 level tiles, but DKC uses large 32x32 tiles (made of 16 8x8 graphics tiles). B0000h 16x?:word Mine Cart Madness! B3B00h ** Platform Perils! B6960h ** Bonus Room? B6B80h ** Trick Track Trek! 1EA91Ch Rambi graphics 203836h 16x?:word Snow Barrel Blast 220000h 16x?:word What stinkin level is this? 260D88h 16x?:word Mine Cart Carnage! 290000h 64x?:word Pieces of a larger level 2C1800h 16x?:word Another curious level 2D23AEh 32x?:word What is it? 387768h 32x?:word Another weird structure There were several more curiosities and levels that I left out. Mario RPG 10000h Main field, front layer 12000h Main field, back layer 1B000h Physical field (edit this to walk through walls:) Zelda 2000h 64x64:word 16x16 Overworld field (one large piece) 64x64:word 8x8 Underworld tilemap (one large piece) 4000h 64x64:word 8x8 Second story of(if applicable) 128x?:word Overworld pregraphics field? 12000h 64x64:byte 8x8 Underworld field 13000h 64x64:byte 8x8 Second story of underworld (if applicable) 54927h byte 8x8 Overworld map (when X is pressed) Underworld simply refers to anything not above ground, caves, castles, dungeons, and the insides of homes. Modifying the field at 2000h while in the Overworld changes both the tile looks and physical properties. Modifying any tiles at 2000h while in a dungeon only changes the look; the attributes remain the same. Change them at 12000h to change its properties, perhaps to remove a wall or change where a door takes you. 492032 150000h Base of Overworld tile table Note that only the Overworld uses a tile table (since it is so large with varying landscapes), not the dungeons or caves. They instead store the exact units as they would appear in VRAM. Also, they use an 8x8 playfield rather than one 16x16. Mario 1 4371 16x13:byte Main field (2 pieces) 11283 32x?:word 8 Background (8 pieces) The field is loaded in column by column as you walk to the right. Because of this, only a small portion is available at any given time (a total section of 32x13 tiles). Mario 2 2000h 16x15:byte 16x16 Main field (variable pieces) B100h 16x15:byte Mirror of main field The levels in this game are extremely simple to find and map, since it just loads everything in for that level. No matter how many rooms or parts a level has, it simply loads them all. I'm not sure exactly what the mirror field is for, possibly for tile solidity detection. Mario 3 11283 16x27:byte Main field (variable pieces) 19600~16x27:byte Mirror of main field Mario World C800h 16x27:byte 16x16 Main field (variable pieces) 130000h Base of tile table Yoshi's Island 18000h 16x16:word 16x16 Multiple pieces 110000h 256x?:byte Linear graphics 1C0000h 256x?:byte All the level icons Secret of Mana 10000h 128x?:byte Main field 14800h 128x? Secondary field Metroid 10002h *16x?:word 16x16 Main field The field size is variable but is always a multiple of 16. The base is offset two bytes from an even bank (7F). ChronoTrigger ??? StarFox 90000h 256x?:byte Linear graphics Final Fantasy 2 15B00h Main field Final Fantasy 3 F800h 256x? byte Main field Lufia 2 14040 128x? word Main field Cybernator 12B92h #x#:byte Main field Aladdin 10000h 16x#:word Main field