The current URL is datacrystal.tcrf.net.
Adventures of Lolo 3/RAM map: Difference between revisions
(Remainder of ZP filled in) |
(Added $0700 memory and added dollar signs before memory addresses) |
||
Line 9: | Line 9: | ||
This is memory when in the main game (i.e. solving puzzles) | This is memory when in the main game (i.e. solving puzzles) | ||
{| border="1" cellpadding="1" | {| border="1" cellpadding="1" | ||
|'''RAM Address''' || '''Function''' || '''Details''' | |'''RAM Address''' || '''Function''' || '''Details''' | ||
|- | |- | ||
| 0000 || PPU Control Clone || | | $0000 || PPU Control Clone || | ||
|- | |- | ||
| 0001 || PPU Mask Clone || | | $0001 || PPU Mask Clone || | ||
|- | |- | ||
| 0007 || Vblank Flag || Will be 0 when waiting for vblank, non-zero when in vblank | | $0007 || Vblank Flag || Will be 0 when waiting for vblank, non-zero when in vblank | ||
|- | |- | ||
| 0015 || Misc/Scratch memory || | | $0015 || Misc/Scratch memory || | ||
|- | |- | ||
| 0016 || 〃 || | | $0016 || 〃 || | ||
|- | |- | ||
| 0017 || 〃 || | | $0017 || 〃 || | ||
|- | |- | ||
| 0018 || 〃 || | | $0018 || 〃 || | ||
|- | |- | ||
| 0019 || 〃 || | | $0019 || 〃 || | ||
|- | |- | ||
| 001a || 〃 || | | $001a || 〃 || | ||
|- | |- | ||
| 001b || 〃 || | | $001b || 〃 || | ||
|- | |- | ||
| 001c || 〃 || | | $001c || 〃 || | ||
|- | |- | ||
| 001d || 〃 || Generally for backing up A register | | $001d || 〃 || Generally for backing up A register | ||
|- | |- | ||
| 001e || 〃 || Generally for backing up X register | | $001e || 〃 || Generally for backing up X register | ||
|- | |- | ||
| 001f || 〃 || Generally for backing up Y register | | $001f || 〃 || Generally for backing up Y register | ||
|- | |- | ||
| 002b || Frame counter || Is incremented every NMI | | $002b || Frame counter || Is incremented every NMI | ||
|- | |- | ||
| 0049 || Controller Buttons Being Held (Gameplay only) || Buttons that constantly repeat actions when held (D-pad) | | $0049 || Controller Buttons Being Held (Gameplay only) || Buttons that constantly repeat actions when held (D-pad) | ||
|- | |- | ||
| 004a || Controller Buttons Being Pressed (Gameplay only) || Buttons that trigger upon press and require a release/re-press to trigger again | | $004a || Controller Buttons Being Pressed (Gameplay only) || Buttons that trigger upon press and require a release/re-press to trigger again | ||
|- | |- | ||
| 004c || Misc/Scratch memory for interacting with objects || Relates to the X position | | $004c || Misc/Scratch memory for interacting with objects || Relates to the X position | ||
|- | |- | ||
| 004d || Misc/Scratch memory for interacting with objects || Relates to the Y position | | $004d || Misc/Scratch memory for interacting with objects || Relates to the Y position | ||
|- | |- | ||
| 004e || Power Heart Blink Animation flag || When the next heart yields a power, will indicate which hearts should blink. Alternates between columns every frame. | | $004e || Power Heart Blink Animation flag || When the next heart yields a power, will indicate which hearts should blink. Alternates between columns every frame. | ||
|- | |- | ||
| 0051 || Level's Room ID || Acts as a lookup index for the room among all the rooms in the game. (Will be a value of 0-109) | | $0051 || Level's Room ID || Acts as a lookup index for the room among all the rooms in the game. (Will be a value of 0-109) | ||
|- | |- | ||
| 0052 || Character/Misc Flags || Bitwise flags | | $0052 || Character/Misc Flags || Bitwise flags | ||
<tt>%---1----</tt> Set if ally is captured / Clear if both characters active<br> | <tt>%---1----</tt> Set if ally is captured / Clear if both characters active<br> | ||
Line 61: | Line 61: | ||
<tt>%-------1</tt> Set if controlling Lala / Clear if controlling Lolo | <tt>%-------1</tt> Set if controlling Lala / Clear if controlling Lolo | ||
|- | |- | ||
| 0053 || Scripted Button Timer || If giving up in a training level, it's possible to have the game show the solution. This is a timer between scripted button presses | | $0053 || Scripted Button Timer || If giving up in a training level, it's possible to have the game show the solution. This is a timer between scripted button presses | ||
|- | |- | ||
| 0054 || Scripted Button Current Index || Index for the pointer of scripted button presses | | $0054 || Scripted Button Current Index || Index for the pointer of scripted button presses | ||
|- | |- | ||
| 0055 - 0056 || Scripted Button Pointer || Pointer to scripted button press data | | $0055 - $0056 || Scripted Button Pointer || Pointer to scripted button press data | ||
|- | |- | ||
| 0057 || Magic Shot Quantity || | | $0057 || Magic Shot Quantity || | ||
|- | |- | ||
| 0058 || Available Power (Slot 1) || Will be<br>0: None<br>1: Arrow<br>2: Bridge<br>3: Hammer | | $0058 || Available Power (Slot 1) || Will be<br>0: None<br>1: Arrow<br>2: Bridge<br>3: Hammer | ||
|- | |- | ||
| 0059 || Available Power (Slot 2) || 〃 | | $0059 || Available Power (Slot 2) || 〃 | ||
|- | |- | ||
| 005a || Available Power (Slot 3) || 〃 | | $005a || Available Power (Slot 3) || 〃 | ||
|- | |- | ||
| 005b || Hearts Needed for Power (Slot 1) || | | $005b || Hearts Needed for Power (Slot 1) || | ||
|- | |- | ||
| 005c || Hearts Needed for Power (Slot 2) || | | $005c || Hearts Needed for Power (Slot 2) || | ||
|- | |- | ||
| 005d || Hearts Needed for Power (Slot 3) || | | $005d || Hearts Needed for Power (Slot 3) || | ||
|- | |- | ||
| 005e || Treasure Chest X Position || | | $005e || Treasure Chest X Position || | ||
|- | |- | ||
| 005f || Treasure Chest Y Position || | | $005f || Treasure Chest Y Position || | ||
|- | |- | ||
| 0060 || Treasure Chest has Been Taken flag || | | $0060 || Treasure Chest has Been Taken flag || | ||
|- | |- | ||
| 0061 || Level Frame Timer || Unlike the global frame timer, this starts counting once the level actually starts (i.e. Lolo has moved at least once) | | $0061 || Level Frame Timer || Unlike the global frame timer, this starts counting once the level actually starts (i.e. Lolo has moved at least once) | ||
|- | |- | ||
| 0062 || Lolo Has Not Moved flag || Acts as pause until Lolo makes a move. Will be 1 if Lolo hasn't moved or 0 if he has | | $0062 || Lolo Has Not Moved flag || Acts as pause until Lolo makes a move. Will be 1 if Lolo hasn't moved or 0 if he has | ||
|- | |- | ||
| 0063 || Level Timer Paused flag || Acts as a freeze flag for most enemies/objects in the level. Will be 1 if active (i.e. no enemies/objects will move) or 0 if inactive (i.e. enemies/objects will move). Gets set to 0 once Lolo makes his first move. | | $0063 || Level Timer Paused flag || Acts as a freeze flag for most enemies/objects in the level. Will be 1 if active (i.e. no enemies/objects will move) or 0 if inactive (i.e. enemies/objects will move). Gets set to 0 once Lolo makes his first move. | ||
|- | |- | ||
| 0064 || Lolo is Frozen flag || Gets set when entering the line of sight of a Medusa/Don Medusa | | $0064 || Lolo is Frozen flag || Gets set when entering the line of sight of a Medusa/Don Medusa | ||
|- | |- | ||
| 0065 || Lolo State index || Will be<br>0: Standard<br>1: Playing death animation<br>2: Giving up the level | | $0065 || Lolo State index || Will be<br>0: Standard<br>1: Playing death animation<br>2: Giving up the level | ||
|- | |- | ||
| 0066 || Egg is in Water flag || | | $0066 || Egg is in Water flag || | ||
|- | |- | ||
| 0067 || Lolo Riding Egg in Water Enemy index || Will be a value between $00-$1f if true, signifying which enemy is being ridden<br>Will be $ff if false | | $0067 || Lolo Riding Egg in Water Enemy index || Will be a value between $00-$1f if true, signifying which enemy is being ridden<br>Will be $ff if false | ||
|- | |- | ||
| 0068 || Lolo Transitioning to/from egg in water || Will be 0 for false<br>Will be between $01-$10 for getting on an egg and count down until fully on the egg<br>Will be between $81-$90 for getting off an egg and count down until back on land | | $0068 || Lolo Transitioning to/from egg in water || Will be 0 for false<br>Will be between $01-$10 for getting on an egg and count down until fully on the egg<br>Will be between $81-$90 for getting off an egg and count down until back on land | ||
|- | |- | ||
| 0069 || Next Heart will Contain Power flag || Will be $ff if true<br>Non-negative value if false. If non-negative and not zero, will count down to zero and turn off heart flashing after a power is collected. | | $0069 || Next Heart will Contain Power flag || Will be $ff if true<br>Non-negative value if false. If non-negative and not zero, will count down to zero and turn off heart flashing after a power is collected. | ||
|- | |- | ||
| 006a - 0089 || Misc Enemy/Object Memory (slot 1) || Role varies by enemy/object | | $006a - $0089 || Misc Enemy/Object Memory (slot 1) || Role varies by enemy/object | ||
|- | |- | ||
| 008a - 00a9 || Misc Enemy/Object Memory (slot 2) || 〃 | | $008a - $00a9 || Misc Enemy/Object Memory (slot 2) || 〃 | ||
|- | |- | ||
| 00aa - 00c9 || Misc Enemy/Object Memory (slot 2) || 〃 | | $00aa - $00c9 || Misc Enemy/Object Memory (slot 2) || 〃 | ||
|- | |- | ||
| 00ca || Lolo Slow X Speed Value || Normally $80. When in sand gets toggled between $80 and $00 | | $00ca || Lolo Slow X Speed Value || Normally $80. When in sand gets toggled between $80 and $00 | ||
|- | |- | ||
| 00cb || Lolo X Position || Pixel value for where Lolo's sprite is | | $00cb || Lolo X Position || Pixel value for where Lolo's sprite is | ||
|- | |- | ||
| 00cc || Lolo Slow Y Speed Value || | | $00cc || Lolo Slow Y Speed Value || | ||
|- | |- | ||
| 00cd || Lolo Y Position || Pixel value for where Lolo's sprite is | | $00cd || Lolo Y Position || Pixel value for where Lolo's sprite is | ||
|- | |- | ||
| 00ce || Lolo's Occupying X Position || Which square Lolo is occupying on the grid. Lolo moves in increments of $08(8) and this memory aligns with 00cb | | $00ce || Lolo's Occupying X Position || Which square Lolo is occupying on the grid. Lolo moves in increments of $08(8) and this memory aligns with 00cb | ||
|- | |- | ||
| 00cf || Lolo's Occupying Y Position || Same as Occupying X square. Aligns with 00cd | | $00cf || Lolo's Occupying Y Position || Same as Occupying X square. Aligns with 00cd | ||
|- | |- | ||
| 00d0 || Lolo Moving Direction || 0 = up, 1 = right, 2 = down, 3 = left | | $00d0 || Lolo Moving Direction || Will be: 0 = up, 1 = right, 2 = down, 3 = left | ||
|- | |- | ||
| 00d1 || Lolo Facing Direction || 〃 | | $00d1 || Lolo Facing Direction || 〃 | ||
|- | |- | ||
| 00d2 || Lolo Walk Animation Timer || | | $00d2 || Lolo Walk Animation Timer || | ||
|- | |- | ||
| 00d4 || Rocky Push Lolo Direction || $ff if false. If Lolo's being pushed by a Rocky enemy then $00 for up, $02 for down (they only push vertically) | | $00d4 || Rocky Push Lolo Direction || $ff if false. If Lolo's being pushed by a Rocky enemy then $00 for up, $02 for down (they only push vertically) | ||
|- | |- | ||
| 00d5 || Lolo Death Animation Timer 1 || | | $00d5 || Lolo Death Animation Timer 1 || | ||
|- | |- | ||
| 00d6 || Lolo Death Animation Timer 2 || | | $00d6 || Lolo Death Animation Timer 2 || | ||
|- | |- | ||
| 00da || Magic Shot Move Direction || | | $00da || Magic Shot Move Direction || | ||
|- | |- | ||
| 00db || Magic Shot X Position || | | $00db || Magic Shot X Position || | ||
|- | |- | ||
| 00dc || Magic Shot Y Position || | | $00dc || Magic Shot Y Position || | ||
|- | |- | ||
| 00dd - 00de || Magic Hit Enemy Indexes || Temp/scratch memory for magic shots potentially hitting an enemy. Magic shots are divided into two halves and both halves must hit the same enemy in order for it to be egged | | $00dd - $00de || Magic Hit Enemy Indexes || Temp/scratch memory for magic shots potentially hitting an enemy. Magic shots are divided into two halves and both halves must hit the same enemy in order for it to be egged | ||
|- | |- | ||
| 00df || Decode Level Iterator Index || Used when decompressing room data | | $00df || Decode Level Iterator Index || Used when decompressing room data | ||
|- | |- | ||
| 00e1 || Crossed Breaking Bridge X Position || When Lolo goes across breaking bridges | | $00e1 || Crossed Breaking Bridge X Position || When Lolo goes across breaking bridges | ||
|- | |- | ||
| 00e2 || Crossed Breaking Bridge Y Position || 〃 | | $00e2 || Crossed Breaking Bridge Y Position || 〃 | ||
|- | |- | ||
| 00ec || Room Liquid Animation Frame || For animating water/lava palettes in rooms | | $00ec || Room Liquid Animation Frame || For animating water/lava palettes in rooms | ||
|- | |- | ||
| 00ed || Room Liquid Animation Timer || 〃 | | $00ed || Room Liquid Animation Timer || 〃 | ||
|- | |- | ||
| 00ee || Room Liquid Type || 0 = water, 1 = lava | | $00ee || Room Liquid Type || 0 = water, 1 = lava | ||
|- | |- | ||
| 00ef || Use Bridge Power On Lava Count || How many bridges are currently on lava? (only applies to bridge powers Lolo used and not regular bridge tiles) | | $00ef || Use Bridge Power On Lava Count || How many bridges are currently on lava? (only applies to bridge powers Lolo used and not regular bridge tiles) | ||
|- | |- | ||
| 00f0 - 00f2 || Bridges on Lava X/Y Coordinates || | | $00f0 - $00f2 || Bridges on Lava X/Y Coordinates || | ||
|- | |- | ||
| 00f3 - 00f5 || Bridges on Lava Countdown Timers || | | $00f3 - $00f5 || Bridges on Lava Countdown Timers || | ||
|- | |- | ||
| 00f6 - 00f8 || Bridges on Lava Countdown States || 0 = Fully disappeared, 1 = About to disappear, 2 = Active | | $00f6 - $00f8 || Bridges on Lava Countdown States || 0 = Fully disappeared, 1 = About to disappear, 2 = Active | ||
|- | |- | ||
| 00f9 || Heart Frames in the Room || | | $00f9 || Heart Frames in the Room || | ||
|- | |- | ||
| 00fa || Heart Frames Collected || If 00fa = 00f9 then the chest opens, etc. | | $00fa || Heart Frames Collected || If 00fa = 00f9 then the chest opens, etc. | ||
|- | |- | ||
| $00fa || Heart Frames Collected || If 00fa = 00f9 then the chest opens, etc. | |||
|- | |||
| $0700 || Enemy/Object Iteration Index || Used when updating all enemies/objects. Will be a value of $00-$1f | |||
|- | |||
| $0701-$0720 || Enemy/Object IDs || The lowest 2 bytes signify direction moved/faced. 0: Up, 1: Right, 2: Down, 3: Left | |||
Valid Values<br> | |||
$80: Leeper, $84: Rocky, $88: Alma, $8c: Gol, $90: Don Medusa, $94: Medusa, $98: Skull, $9c: Snakey, $a0: Moby, $a4: Gol Fireball, $a8: Medusa Shot, $ac: Don Medusa Shot, $b0: Emerald, $b4: Enemy destroyed explosion | |||
|- | |||
| $0721-$0740 || Enemy/Object Statuses || Role by Value:<br>0-2: Varies by enemy, 3: Is egged, 4: Is egged (cracking), 5: Is egged in the water, 6-8: Is sinking in water, 9: Is egged flying off screen, 10: Is off-screen waiting to respawn, 11: Is respawning square | |||
|- | |||
| $0741-$0760 || Enemy/Object X Positions || Pixel value of where enemy/object is | |||
|- | |||
| $0761-$0780 || Enemy/Object Y Positions || 〃 | |||
|- | |||
| $0781-$07a0 || Enemy/Object Occupying X Positions || Which square is enemy/object occupying? Relates to display position and is in increments of 8. | |||
|- | |||
| $07a1-$07c0 || Enemy/Object Occupying Y Positions || 〃 | |||
|- | |||
|} | |} | ||
=== RAM During Overworld === | === RAM During Overworld === | ||
{| border="1" cellpadding="1" | {| border="1" cellpadding="1" | ||
|'''RAM Address''' || '''Function''' || '''Details''' | |'''RAM Address''' || '''Function''' || '''Details''' | ||
|- | |- | ||
| 0079 || Lolo's X Position (Overworld) || | | $0079 || Lolo's X Position (Overworld) || | ||
|- | |- | ||
| 007A || Lala's X Position (Overworld) || | | $007A || Lala's X Position (Overworld) || | ||
|- | |- | ||
| 0081 || Lolo's Y Position (Overworld) || | | $0081 || Lolo's Y Position (Overworld) || | ||
|- | |- | ||
| 0082 || Lala's Y Position (Overworld) || | | $0082 || Lala's Y Position (Overworld) || | ||
|- | |- | ||
| 008A || Lolo's Sprite Frame (Overworld) || | | $008A || Lolo's Sprite Frame (Overworld) || | ||
|- | |- | ||
| 008B || Lala's Sprite Frame (Overworld) || | | $008B || Lala's Sprite Frame (Overworld) || | ||
|- | |- | ||
|} | |} |
Revision as of 00:28, 9 October 2023
The following article is a RAM map for Adventures of Lolo 3.
Foreword
The role of certain memory addresses varies and depends on whether one is in the main game or is on other screens such as the world map, training levels, etc.
RAM During Gameplay
This is memory when in the main game (i.e. solving puzzles)
RAM Address | Function | Details |
$0000 | PPU Control Clone | |
$0001 | PPU Mask Clone | |
$0007 | Vblank Flag | Will be 0 when waiting for vblank, non-zero when in vblank |
$0015 | Misc/Scratch memory | |
$0016 | 〃 | |
$0017 | 〃 | |
$0018 | 〃 | |
$0019 | 〃 | |
$001a | 〃 | |
$001b | 〃 | |
$001c | 〃 | |
$001d | 〃 | Generally for backing up A register |
$001e | 〃 | Generally for backing up X register |
$001f | 〃 | Generally for backing up Y register |
$002b | Frame counter | Is incremented every NMI |
$0049 | Controller Buttons Being Held (Gameplay only) | Buttons that constantly repeat actions when held (D-pad) |
$004a | Controller Buttons Being Pressed (Gameplay only) | Buttons that trigger upon press and require a release/re-press to trigger again |
$004c | Misc/Scratch memory for interacting with objects | Relates to the X position |
$004d | Misc/Scratch memory for interacting with objects | Relates to the Y position |
$004e | Power Heart Blink Animation flag | When the next heart yields a power, will indicate which hearts should blink. Alternates between columns every frame. |
$0051 | Level's Room ID | Acts as a lookup index for the room among all the rooms in the game. (Will be a value of 0-109) |
$0052 | Character/Misc Flags | Bitwise flags
%---1---- Set if ally is captured / Clear if both characters active |
$0053 | Scripted Button Timer | If giving up in a training level, it's possible to have the game show the solution. This is a timer between scripted button presses |
$0054 | Scripted Button Current Index | Index for the pointer of scripted button presses |
$0055 - $0056 | Scripted Button Pointer | Pointer to scripted button press data |
$0057 | Magic Shot Quantity | |
$0058 | Available Power (Slot 1) | Will be 0: None 1: Arrow 2: Bridge 3: Hammer |
$0059 | Available Power (Slot 2) | 〃 |
$005a | Available Power (Slot 3) | 〃 |
$005b | Hearts Needed for Power (Slot 1) | |
$005c | Hearts Needed for Power (Slot 2) | |
$005d | Hearts Needed for Power (Slot 3) | |
$005e | Treasure Chest X Position | |
$005f | Treasure Chest Y Position | |
$0060 | Treasure Chest has Been Taken flag | |
$0061 | Level Frame Timer | Unlike the global frame timer, this starts counting once the level actually starts (i.e. Lolo has moved at least once) |
$0062 | Lolo Has Not Moved flag | Acts as pause until Lolo makes a move. Will be 1 if Lolo hasn't moved or 0 if he has |
$0063 | Level Timer Paused flag | Acts as a freeze flag for most enemies/objects in the level. Will be 1 if active (i.e. no enemies/objects will move) or 0 if inactive (i.e. enemies/objects will move). Gets set to 0 once Lolo makes his first move. |
$0064 | Lolo is Frozen flag | Gets set when entering the line of sight of a Medusa/Don Medusa |
$0065 | Lolo State index | Will be 0: Standard 1: Playing death animation 2: Giving up the level |
$0066 | Egg is in Water flag | |
$0067 | Lolo Riding Egg in Water Enemy index | Will be a value between $00-$1f if true, signifying which enemy is being ridden Will be $ff if false |
$0068 | Lolo Transitioning to/from egg in water | Will be 0 for false Will be between $01-$10 for getting on an egg and count down until fully on the egg Will be between $81-$90 for getting off an egg and count down until back on land |
$0069 | Next Heart will Contain Power flag | Will be $ff if true Non-negative value if false. If non-negative and not zero, will count down to zero and turn off heart flashing after a power is collected. |
$006a - $0089 | Misc Enemy/Object Memory (slot 1) | Role varies by enemy/object |
$008a - $00a9 | Misc Enemy/Object Memory (slot 2) | 〃 |
$00aa - $00c9 | Misc Enemy/Object Memory (slot 2) | 〃 |
$00ca | Lolo Slow X Speed Value | Normally $80. When in sand gets toggled between $80 and $00 |
$00cb | Lolo X Position | Pixel value for where Lolo's sprite is |
$00cc | Lolo Slow Y Speed Value | |
$00cd | Lolo Y Position | Pixel value for where Lolo's sprite is |
$00ce | Lolo's Occupying X Position | Which square Lolo is occupying on the grid. Lolo moves in increments of $08(8) and this memory aligns with 00cb |
$00cf | Lolo's Occupying Y Position | Same as Occupying X square. Aligns with 00cd |
$00d0 | Lolo Moving Direction | Will be: 0 = up, 1 = right, 2 = down, 3 = left |
$00d1 | Lolo Facing Direction | 〃 |
$00d2 | Lolo Walk Animation Timer | |
$00d4 | Rocky Push Lolo Direction | $ff if false. If Lolo's being pushed by a Rocky enemy then $00 for up, $02 for down (they only push vertically) |
$00d5 | Lolo Death Animation Timer 1 | |
$00d6 | Lolo Death Animation Timer 2 | |
$00da | Magic Shot Move Direction | |
$00db | Magic Shot X Position | |
$00dc | Magic Shot Y Position | |
$00dd - $00de | Magic Hit Enemy Indexes | Temp/scratch memory for magic shots potentially hitting an enemy. Magic shots are divided into two halves and both halves must hit the same enemy in order for it to be egged |
$00df | Decode Level Iterator Index | Used when decompressing room data |
$00e1 | Crossed Breaking Bridge X Position | When Lolo goes across breaking bridges |
$00e2 | Crossed Breaking Bridge Y Position | 〃 |
$00ec | Room Liquid Animation Frame | For animating water/lava palettes in rooms |
$00ed | Room Liquid Animation Timer | 〃 |
$00ee | Room Liquid Type | 0 = water, 1 = lava |
$00ef | Use Bridge Power On Lava Count | How many bridges are currently on lava? (only applies to bridge powers Lolo used and not regular bridge tiles) |
$00f0 - $00f2 | Bridges on Lava X/Y Coordinates | |
$00f3 - $00f5 | Bridges on Lava Countdown Timers | |
$00f6 - $00f8 | Bridges on Lava Countdown States | 0 = Fully disappeared, 1 = About to disappear, 2 = Active |
$00f9 | Heart Frames in the Room | |
$00fa | Heart Frames Collected | If 00fa = 00f9 then the chest opens, etc. |
$00fa | Heart Frames Collected | If 00fa = 00f9 then the chest opens, etc. |
$0700 | Enemy/Object Iteration Index | Used when updating all enemies/objects. Will be a value of $00-$1f |
$0701-$0720 | Enemy/Object IDs | The lowest 2 bytes signify direction moved/faced. 0: Up, 1: Right, 2: Down, 3: Left
Valid Values |
$0721-$0740 | Enemy/Object Statuses | Role by Value: 0-2: Varies by enemy, 3: Is egged, 4: Is egged (cracking), 5: Is egged in the water, 6-8: Is sinking in water, 9: Is egged flying off screen, 10: Is off-screen waiting to respawn, 11: Is respawning square |
$0741-$0760 | Enemy/Object X Positions | Pixel value of where enemy/object is |
$0761-$0780 | Enemy/Object Y Positions | 〃 |
$0781-$07a0 | Enemy/Object Occupying X Positions | Which square is enemy/object occupying? Relates to display position and is in increments of 8. |
$07a1-$07c0 | Enemy/Object Occupying Y Positions | 〃 |
RAM During Overworld
RAM Address | Function | Details |
$0079 | Lolo's X Position (Overworld) | |
$007A | Lala's X Position (Overworld) | |
$0081 | Lolo's Y Position (Overworld) | |
$0082 | Lala's Y Position (Overworld) | |
$008A | Lolo's Sprite Frame (Overworld) | |
$008B | Lala's Sprite Frame (Overworld) |