Both sides previous revisionPrevious revisionNext revision | Previous revision |
super:data_maps:ram_map [2016/09/06 19:17] – black_falcon | super:data_maps:ram_map [2018/10/18 00:22] (current) – mentlegen |
---|
7E:0994 - 7E:0995 Current X position of block(s) in VRAM BG1 or 2 tilemap to update? | 7E:0994 - 7E:0995 Current X position of block(s) in VRAM BG1 or 2 tilemap to update? |
7E:0996 - 7E:0997 Current Y position of block(s) in VRAM BG1 or 2 tilemap to update? | 7E:0996 - 7E:0997 Current Y position of block(s) in VRAM BG1 or 2 tilemap to update? |
7E:0998 - 7E:0999 Game state. \\ 01 = Title screen \\ 04 = menus \\ 05 = Load area \\ 06 = Loading game \\ 07 = Samus being electrified in save capsule \\ 08 = normal gameplay \\ 0C = pausing \\ 0F = paused \\ 12 = unpausing \\ 15, 17, 18, 19, 1A = Dead or dying \\ 22 = Landing on Zebes \\ 23 = Timer up \\ 24 = blackout and gameover (Ceres explodes if not escaping Zebes) \\ 2A = intro demos | 7E:0998 - 7E:0999 Game state. |
| 01 = Title screen |
| 04 = menus |
| 05 = Load area |
| 06 = Loading game |
| 07 = Samus being electrified in save capsule |
| 08 = normal gameplay |
| 0C = pausing |
| 0F = paused |
| 12 = unpausing |
| 15, 17, 18, 19, 1A = Dead or dying |
| 22 = Landing on Zebes |
| 23 = Timer up |
| 24 = blackout and gameover (Ceres explodes if not escaping Zebes) |
| 2A = intro demos |
7E:099C - 7E:099D Pointer to next frame of code in bank 82 for room transitions | 7E:099C - 7E:099D Pointer to next frame of code in bank 82 for room transitions |
7E:099E - 7E:099F Which option in the title screen menus Samus has selected | 7E:099E - 7E:099F Which option in the title screen menus Samus has selected |
7E:0ACA - 7E:0ACB Which tileset for Samus's bottom half to save to VRAM? Written to, but virtually never used. | 7E:0ACA - 7E:0ACB Which tileset for Samus's bottom half to save to VRAM? Written to, but virtually never used. |
7E:0ACC - 7E:0ACD What kind of timer to use for 0A68? 2*this = JSL index for 91:D72D. | 7E:0ACC - 7E:0ACD What kind of timer to use for 0A68? 2*this = JSL index for 91:D72D. |
7E:0ACE - 7E:0ACF Some unknown related to running (0 if running with speed boots) | 7E:0ACE - 7E:0ACF Increments up by two's when samus is speedboosting. Some sort of counter |
7E:0AD0 - 7E:0AD1 Some unknown related to running (1 if running with speed boots) | 7E:0AD0 - 7E:0AD1 Counter until blue-suit is given (also cycles from 1-4 when speed boosting) |
7E:0AD4 - 7E:0ADB Atmospheric graphics animation timers (1-4). 8000+ means 'don't run related code during timer' | 7E:0AD4 - 7E:0ADB Atmospheric graphics animation timers (1-4). 8000+ means 'don't run related code during timer' |
7E:0ADC - 7E:0AE3 Atmospheric graphics X position (1-4) | 7E:0ADC - 7E:0AE3 Atmospheric graphics X position (1-4) |
7E:0B4A - 7E:0B4B Something to do with momentum and speed. Cause of mockball. (0 = increasing momentum, !0(always 1?) = decreasing momentum) | 7E:0B4A - 7E:0B4B Something to do with momentum and speed. Cause of mockball. (0 = increasing momentum, !0(always 1?) = decreasing momentum) |
7E:0B4C 1/256 Multiplier for momentum subtraction (0 = normal momentum subtraction) | 7E:0B4C 1/256 Multiplier for momentum subtraction (0 = normal momentum subtraction) |
| 7E:0B4D - 7E:0B55 Unused in the normal game |
7E:0B56 - 7E:0B57 Moves Samus this distance horizontally, in subpixels. | 7E:0B56 - 7E:0B57 Moves Samus this distance horizontally, in subpixels. |
7E:0B58 - 7E:0B59 Moves Samus this distance horizontally, in pixels. | 7E:0B58 - 7E:0B59 Moves Samus this distance horizontally, in pixels. |
7E:1E9D - 7E:1EAC Used for glow colors. | 7E:1E9D - 7E:1EAC Used for glow colors. |
7E:1EAD - 7E:1EBC Pointer to code. Like pre-PLM code, I guess. | 7E:1EAD - 7E:1EBC Pointer to code. Like pre-PLM code, I guess. |
7E:1EBD - 7E:1ECC Pointer to current PLM-like instruction. If positive, store in delay and put 1E8D,X into X. If the argument is also positive, put it into 7E:C000,X and INC X and Y twice. Repeat until the next argument is negative, put a value onto the stack to loop at RTS, and JMP to the argument. Similar to the normal instruction loop, except Y is not incremented, and points to 2 bytes *before* the current instruction, not just after it. | 7E:1EBD - 7E:1ECC Pointer to current PLM-like instruction. If positive, store in delay and put 1E8D,X into X. |
| If the argument is also positive, put it into 7E:C000,X and INC X and Y twice. |
| Repeat until the next argument is negative, put a value onto the stack to loop at RTS, and JMP to the argument. |
| Similar to the normal instruction loop, except Y is not incremented, and points to 2 bytes *before* the current instruction, not just after it. |
7E:1ECD - 7E:1EDC Delay counter. | 7E:1ECD - 7E:1EDC Delay counter. |
7E:1EF1 - 7E:1EF2 Flag, disables misc. animations if positive (spikes, FX1) | 7E:1EF1 - 7E:1EF2 Flag, disables misc. animations if positive (spikes, FX1) |