Wario Land: Super Mario Land 3:RAM map
|A200-A2FF|| active actors on the screen (enemies, bonuses, throwed coins, ...).
each actor take 32 bytes. there is a maximum of 8 actors.
enemies with throwable items (eg : boomerang) need a second actor to manage the item.
a lot of information is enemy specific.
actors that are not used anymore (status = 00) are recycled when need of a new actor.
only actors that have status = 02 are drawn.
+00 : status 00 : inactive 01 : out of screen (not visible) but still active 02 : visible +01-02 : x position +03-04 : y position +0A : y position (relative to screen) +0B : x position (relative to screen) +0E : orientation (01 : right - 02 : left) +0F : animation counter
|A375||writing something here terminate level|
|A376||indicate if level exit is open (00 : closed, 01 : rising up, 02 : open)|
|A600||writing something here trigger sound effects|
|A805-A807||total player money|
|A80A||wario status (00 : small, 01 : normal, 02 : bull, 03 : eagle, 04 : dragon)|
|A80B|| rice beach completion.
each bit indicate if a specific level have been completed
total number of bits used can be different for each world.
last bit generally indicate if world have been completed (a flag is then show on map)
|A80C||mt. teapot completion|
|A80D||numbers of levels completed|
|A80E-A80F||treasures collected (1 bit per treasure, since there is 15 treasures one bit is unused)|
|A810||stove canyon completion|
|A811||ss tea cup completion|
|A812||parsely woods completion|
|A813||sherbet land completion|
|A814||syrup castle completion|
|A815||indicate if level check point has been activated (00 : inactive, 01 : active)|
|A816||this value is overwritten everytime a level check point is activated. value is different for each level.|
|A817||indicate if game have been completed at least once|
|A8C4|| control level transition
01 : show level title 02 : warp player to start of level 03 : normal gameplay 0A : warp to last door used (if no door entered, crashes)
|A900-A901||level scroll y|
|A902-A903||level scroll x|
|A905||game internal timer|
|A90F||wario animation frame (when walking, swimming, ...)|
|A911-A912||player position y|
|A913-A914||player position x|
|A915||player animation frame (walking, swimming etc...)|
|A916||player horizontal or vertical flip, invert palette or half visible (bit 4-7)|
|A917||player blinking eyes timer (reset to zero if player make any move)|
|A93A||screen shaker timer|
|A94B||wario invicibility timer|
|A964-A965||remaining level time|
|A97A-A97B||level coins collected|
|A998||wario flying timer|
|AA0A||flame thrower timer|
|AC88||level animation counter (moving platform, water, ...)|
|AD00-AEFF|| this array maps level 16x16 blocks to hardware 8x8 tiles.
there is 128 blocks in total, each defined by the 4 indexes of 8x8 tiles.
|C000-DFFF||level 16x16 block indexes are decompressed here. level size is 256 x 32 blocks.|