If you are still using the old URL (datacrystal.romhacking.net), please update your bookmarks! The old URL may stop working soon.
The current URL is datacrystal.tcrf.net.
The current URL is datacrystal.tcrf.net.
Wario Land: Super Mario Land 3/RAM map: Difference between revisions
Jump to navigation
Jump to search
m (new addresses) |
No edit summary |
||
Line 1: | Line 1: | ||
{| border="1" cellpadding="1" | {| border="1" cellpadding="1" | ||
|'''RAM''' || '''Purpose''' | |'''RAM''' || '''Purpose''' | ||
|- | |||
|A100-A1FF || related to active actors on screen like A200-A2FF | |||
|- | |- | ||
|A200-A2FF || active actors on the screen (enemies, bonuses, throwed coins, ...). | |A200-A2FF || active actors on the screen (enemies, bonuses, throwed coins, ...). | ||
Line 7: | Line 9: | ||
enemies with throwable items (eg : boomerang) need a second actor to manage the item. | enemies with throwable items (eg : boomerang) need a second actor to manage the item. | ||
actors slots that are not used anymore (status = 00) are reused when need of a new actor. | |||
actors that are not used anymore (status = 00) are | |||
only actors that have status = 02 are drawn. | only actors that have status = 02 are drawn. | ||
Line 24: | Line 24: | ||
|- | |- | ||
|A375 || writing something here terminate level | |A375 || writing something here terminate level (player is teleported to bonus screen) | ||
|- | |- | ||
|A376 || indicate if level exit is open (00 : closed, 01 : rising up, 02 : open) | |A376 || indicate if level exit (skull) is open (00 : closed, 01 : rising up, 02 : open) | ||
|- | |- | ||
|A600 || | |A600-A6?? || trigger sound effects and music | ||
|- | |- | ||
|A805-A807 || total player money | |A805-A807 || total player money | ||
Line 39: | Line 39: | ||
|- | |- | ||
|A80B || rice beach completion. | |A80B || rice beach completion. | ||
each bit indicate if a specific level have been completed | each bit indicate if a specific level of the map have been completed | ||
total number of bits used can be different for each world. | total number of bits used can be different for each world. | ||
Line 47: | Line 47: | ||
|A80C || mt. teapot completion | |A80C || mt. teapot completion | ||
|- | |- | ||
|A80D || numbers of levels completed | |A80D || numbers of levels completed (shown on pipe at file selection screen) | ||
|- | |- | ||
|A80E-A80F || treasures collected (1 bit per treasure, since there is 15 treasures one bit is unused) | |A80E-A80F || treasures collected (1 bit per treasure, since there is 15 treasures one bit is unused) | ||
Line 61: | Line 61: | ||
|A814 || syrup castle completion | |A814 || syrup castle completion | ||
|- | |- | ||
|A815 || indicate if level check point has been activated (00 : inactive, 01 : active) | |A815 || indicate if level check point (skull) has been activated (00 : inactive, 01 : active). to use with A816. | ||
|- | |- | ||
|A816 || this value is overwritten everytime a level check point is activated. value | |A816 || this value is overwritten everytime a level check point is activated. value seems different for each level. | ||
|- | |- | ||
|A817 || indicate if game have been completed at least once | |A817 || indicate if game have been completed at least once (pipe at file selection screen will blink) | ||
|- | |- | ||
|A8C4 || control level transition | |A8C4 || control level transition | ||
Line 91: | Line 91: | ||
|A917 || player blinking eyes timer (reset to zero if player make any move) | |A917 || player blinking eyes timer (reset to zero if player make any move) | ||
|- | |- | ||
|A93A || screen | |A93A || screen shaking countdown timer | ||
|- | |- | ||
|A94B || wario invicibility timer | |A94B || wario invicibility countdown timer | ||
|- | |- | ||
|A964-A965 || remaining level time | |A964-A965 || remaining level time | ||
Line 99: | Line 99: | ||
|A97A-A97B || level coins collected | |A97A-A97B || level coins collected | ||
|- | |- | ||
|A998 || wario flying timer | |A998 || wario flying countdown timer | ||
|- | |- | ||
|AA0A || flame thrower timer | |AA0A || flame thrower countdown timer | ||
|- | |- | ||
|AC88 || level animation counter (moving platform, water, ...) | |AC88 || level animation counter (moving platform, water, ...) | ||
Line 109: | Line 109: | ||
there is 128 blocks in total, each defined by the 4 indexes of 8x8 tiles. | there is 128 blocks in total, each defined by the 4 indexes of 8x8 tiles. | ||
|- | |- | ||
|C000-DFFF || level | |AF00-AFFF || 8x8 visible sprites for actors (4 bytes for each). wario seems to be always the first. | ||
+00 : x position | |||
+01 : y position | |||
+02 : sprite index | |||
+03 : h/v flip / palette | |||
|- | |||
|C000-DFFF || all indexes of 16x16 blocks (for current level) are decompressed here. level is 256 x 32 blocks. | |||
|} | |} |
Revision as of 21:20, 21 January 2013
RAM | Purpose |
A100-A1FF | related to active actors on screen like A200-A2FF |
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. actors slots that are not used anymore (status = 00) are reused 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 (player is teleported to bonus screen) |
A376 | indicate if level exit (skull) is open (00 : closed, 01 : rising up, 02 : open) |
A600-A6?? | trigger sound effects and music |
A805-A807 | total player money |
A808 | hearts |
A809 | lives |
A80A | wario status (00 : small, 01 : normal, 02 : bull, 03 : eagle, 04 : dragon) |
A80B | rice beach completion.
each bit indicate if a specific level of the map 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 (shown on pipe at file selection screen) |
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 (skull) has been activated (00 : inactive, 01 : active). to use with A816. |
A816 | this value is overwritten everytime a level check point is activated. value seems different for each level. |
A817 | indicate if game have been completed at least once (pipe at file selection screen will blink) |
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 shaking countdown timer |
A94B | wario invicibility countdown timer |
A964-A965 | remaining level time |
A97A-A97B | level coins collected |
A998 | wario flying countdown timer |
AA0A | flame thrower countdown 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. |
AF00-AFFF | 8x8 visible sprites for actors (4 bytes for each). wario seems to be always the first.
+00 : x position +01 : y position +02 : sprite index +03 : h/v flip / palette |
C000-DFFF | all indexes of 16x16 blocks (for current level) are decompressed here. level is 256 x 32 blocks. |