The Little Mermaid/RAM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for The Little Mermaid.

RAM Function Details
0x0016 Controller 1 input
0x0017 Controller 2 input
0x0030 Ariel's current action
  • 0x00 = Still/moving
  • 0x01 = Turning
  • 0x03 = Shooting bubble/throwing object
  • 0x07 = Taking damage/dying
  • 0x09 = Entering stage
0x003A Object being held # of object slot
0x0092 Global timer
0X00B0 Lives
0X00B1 Health
0x00B4 Bubble power
0x00B5 Bubble range
0X00E4 - 0X00E7 RNG Seed Fibonacci LFSR (Function 0xC250)
0x00EF Current object slot Used in Function 0x8000 (Page 6)
0x0100 - 0x01FF Stack
0x0300 - 0x030F Object Phase
  • 0x80 = slot occupied
  • 0x0F = phase within script
0x0310 - 0x031F Object ID Determines object's behavior
0x0320 - 0x032F y-position subpixel
0x0330 - 0x033F x-position low byte (pixel)
0x0340 - 0x034F x-position high byte
0x0350 - 0x035F y-position subpixel
0x0360 - 0x036F y-position low byte (pixel)
0x0370 - 0x037F y-position high byte
0x0380 - 0x038F x-speed low byte (subpixels/frame)
0x0390 - 0x039F x-speed high byte (pixels/frame)
0x03A0 - 0x03AF y-speed low byte (subpixels/frame)
0x03B0 - 0x03BF y-speed high byte (pixels/frame)
0x03C0 - 0x03CF Attributes
  • 0x40 = damage hitbox active
  • 0x20 = able to be bubbled
0x03D0 - 0x03DF Direction of movement Speed values above are scalar. They are used in conjunction with this value to determine velocity.
  • 0x08 = up
  • 0x04 = down
  • 0x02 = right
  • 0x01 = left
0x03F0 - 0x03FF HP
0x0400 - 0x040F Sprite orientation
  • 0x40 = Horizontal flip (face left)
  • 0x04 = invisible
0x0430 - 0x043F Graphic ID Determines object's animation loop
0x0460 - 0x046F Counter 1 Use depends on object
0x0470 - 0x047F Counter 2 Use depends on object
0x0480 - 0x048F Counter 3 Use depends on object
0x0490 - 0x049F Counter 4 Use depends on object
0x04A0 - 0x04AF Stun timer Actions/animation paused while nonzero
0x0620 - 0x063F Current color palettes