Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

Mega Man 4/RAM map

From Data Crystal
Jump to navigation Jump to search

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

Joypad Memory

$0014 to $---- = Joypad 1 - Button Push Bits
	0 = Not Recently Pushed Down
	1 = Recently Pushed Down
$0015 to $---- = Joypad 2 - Button Push Bits
	0 = Not Recently Pushed Down
	1 = Recently Pushed Down]
$0016 to $---- = Joypad 1 - Button Status Bits
	0 = Not Being Pressed Down
	1 = Being Pressed Down
$0017 to $---- = Joypad 2 - Button Status Bits
	0 = Not Being Pressed Down
	1 = Being Pressed Down

LSB to MSB

0 = Right
1 = Left
2 = Down
3 = Up
4 = Start
5 = Select
6 = B
7 = A

HP / Energy

$00B0 to $---- = Megaman's HP

Weapon Energy - Array

See Arrays List

$00B1 to $---- = Rush Coil
$00B2 to $---- = Rush Jet
$00B3 to $---- = Rush Marine
$00B4 to $---- = Toad - Rain Flush
$00B5 to $---- = Wire Adaptor
$00B6 to $---- = Balloon Adaptor
$00B7 to $---- = Dive - Dive Missile
$00B8 to $---- = Ring - Ring Boomerang
$00B9 to $---- = Drill - Drill Bomb
$00BA to $---- = Dust - Dust Crusher
$00BB to $---- = Pharaoh - Pharaoh Shot
$00BC to $---- = Bright - Flash Stopper
$00BD to $---- = Skull - Skull Barrier
$00BE to $---- = Used for Weapon's menu drawing
$00BF to $---- = Boss HP Amount for drawing

Sprite/Object Arrays

See Arrays List

$0300 to $0317 = Object ID
$0318 to $032F = X Coordinate Ratio Counter
$0330 to $0347 = X Coordinate
$0348 to $035F = X Screen (Level Screen)
$0360 to $0377 = Y Coordinate Ratio Counter
$0378 to $038F = Y Coordinate
$0390 to $03A7 = Y Screen
          $00 	 	On visible screen
          $01 to $7F 	On screen below visible screen
          $80 to $FF 	On screen above visible screen 
$03A8 to $03BF = Horizontal Speed Low
$03C0 to $03D7 = Horizontal Speed High
$03D8 to $03EF = Vertical Speed Low
$03F0 to $0407 = Vertical Speed High
$0408 to $041F = Substance and Shape
$0420 to $0437 = Direction Bits
$0438 to $044F = Enemy Number# in Level
                 Useful to FC9E / 7FCAE
$0450 to $0467 = Enemy HP
$0468 to $047F = Object ASM Private Memory 1
$0480 to $0497 = Object ASM Private Memory 2
$0498 to $04AF = Object ASM Private Memory 3
$04B0 to $04C7 = Object ASM Private Memory 4
$04C8 to $04DF = Object ASM Private Memory 5
$04E0 to $04F7 = Object ASM Private Memory 6
$04F8 to $050F = Object ASM Private Memory 7
$0510 to $0527 = Object ASM Private Memory 8
$0528 to $053F = Sprite Flags
$0540 to $0557 = Sprite's Animation
$0558 to $056F = Sprite ID
$0570 to $0587 = Animation Frame Counter
$0588 to $059F = ASM - Low Address
$05A0 to $05B7 = ASM - High Address
$05B8 to $05CF = Invincibility Blink / Freeze Action Status
$05D0 to $05FF = Unused