Mega Man 2/RAM map

From Data Crystal
< Mega Man 2
Revision as of 20:54, 8 February 2024 by Hawk (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Chip tiny.png The following article is a RAM map for Mega Man 2.

General

RAM Function Details
$001B Camera state
$00 Default
$01 Changing the nametable (E.g. scrolling within an area, creating the pause menu)
$02 Freeze before and after scrolling to a new area
$80 Scrolling vertically
$001F Camera X position
$0020 Camera X screen When $001F gets larger than $FF, this value increases by $01.
$0022 Camera Y position
$0023 Controller 1 Poll (1)
$0025 Controller 1 Mirror (1)
$0027 Controller 1 Poll Only changes on first frame of state change. Crash Man checks this for jump code. (1)
$0030 Gravity
$004B Invincibility timer When above $00, invincibility frames will start and this will count down at a rate of $01 per frame.
$00CB Difficulty setting When an enemy takes damage, if this value is $00 (Normal) the damage given will be bitshifted left, doubling it.
$002A Stage select cursor position $00 is Dr. Wily, $01-$08 goes clockwise starting from Bubble Man.
$06C1 Boss HP

Sound

RAM Function Details
$0066 Sound effects strobe Write $01 to play the SFX ID in address $0580
$0067 Music strobe Write $01 to play the Music in address $0000
$0580 Sound effect queue

Player properties

RAM Function Details
$06C0 Mega Man's HP
$0460 Mega Man's X location
$04A0 Mega Man's Y location
$0036 Shooting pose timer
$0032 Tile type Mega Man is standing on (feet)
Value Type
$00 Air
$01 Ground
$02 Ladder
$03 Instadeath (Spikes, Lava)
$04 Water
$05 Right Conveyer
$06 Left Conveyer
$07 Ice
$0033 Tile type Mega Man is standing on (center)
$0034 Tile type Mega Man is overlapping
$003D Is Mega Man shooting?
$009A Unlocked Weapons/Stages beaten
Bits Hex Weapon
0000 0001 $01 Atomic Fire
0000 0010 $02 Air Shooter
0000 0100 $04 Leaf Shield
0000 1000 $08 Bubble Lead
0001 0000 $10 Quick Boomerang
0010 0000 $20 Time Stopper
0100 0000 $40 Metal Blade
1000 0000 $80 Crash Bomb
$009B Unlocked Items
Bits Hex Item
0000 0001 $01 Item 1 (Helicopter Platform)
0000 0010 $02 Item 2 (Jet Sled)
0000 0100 $04 Item 3 (Climbing Platform)
$009C Atomic Fire Ammo
$009D Air Shooter Ammo
$009E Leaf Shield Ammo
$009F Bubble Lead Ammo
$00A0 Quick Boomerang Ammo
$00A1 Time Stopper Ammo
$00A2 Metal Blade Ammo
$00A3 Crash Bomb Ammo
$00A4 Item 1 Ammo
$00A5 Item 2 Ammo
$00A6 Item 3 Ammo
$00A7 Number of Energy Tanks Remaining Can go above $04, but will break passwords.
$00A8 Number of Lives remaining Looks glichy on the pause menu if greater than $64.
$0367-0369 Mega Man's Color Palette
RAM Size (in bytes) Description
$0F12 1 Mega Man facing: $00: left, $01: right
$0F15 1 Mega Man X coordinate
$0F16 1 Mega Man Y coordinate
$0F39 1 Frame counter for main gameplay (pauses during pause menu)

Graphics

RAM Function Details
$0200-$2FF Sprite memory These values are constantly read and sent to OAM. (2)
$0354 Palette cycling pattern Values seem level-dependent?
$0355 Palette cycling speed How many frames to wait before cycling the palette, $00 for no cycling. May glitch outside of levels.
$0356-$365 Palette memory (background)
$0366-$375 Palette memory (sprites)

Password Screen

RAM Function Details
$0420 - $0438 If 01, this grid space contains a dot. Goes from left to right, top to bottom.
$0680 Number of dots left on Password entering
$0680 Position of cursor on Password entering

References