Mega Man 3 (NES)/ROM map

From Data Crystal
< Mega Man 3 (NES)
Revision as of 14:02, 5 June 2023 by NES Boy (talk | contribs) (Added missing frame data locations.)
Jump to navigation Jump to search

Chip tiny.png The following article is a ROM map for Mega Man 3 (NES).

Robot Master Selected Screen Text

Note for template.png
Note:
If you modified 0x60F0, you need to modify 0x612F so the text displays properly. If you added 40 to the value at 0x60F0, add 40 to the value at 0x612F as well.


  • 0x60F0 = Where the name will be displayed (default 2B)
  • 0x612F = Ends the text drawing (default 35)

Layers

  • 0x006241 to 0x00630F = Sprite layer of boss select screen
  • 0x026F10 to 0x026F4F = Layer of title screen
  • 0x026F50 to 0x026F8F = Layer of stage selection screen
  • 0x026F90 to 0x026FCF = Layer of password screen
  • 0x026FD0 to 0x02700F = Boss intro sliding layer after stage selection
  • 0x027010 to 0x02704F = Opening sliding layer of stage select screen (make same as layer of title screen for smooth transition)

Makeup of Tiles

  • 0x027B30 to 0x02800F = Tiles making up title and stage select screen (8x8)
  • 0x027710 to 0x------ = 16x16 blocks that make up the 32x32 tiles for the title and stage select screen
  • 0x027F10 to 0x28000F = Palettes for each stage select tile
  • 0x028010 to 0x------ = Palettes for each title screen tile

Graphic Banks

Title Screen Banks

  • 0x031C07 = ??? bank 1
  • 0x031C08 = ??? bank 2
  • 0x031C09 = Sprite bank 1
  • 0x031C0A = Sprite bank 2
  • 0x031C0B = Sprite bank 3
  • 0x031C0C = Sprite bank 4

Palettes

  • 0x031C13 to 0x031C32 = Palettes for title screen

Megaman's color schemes

  • 0x03C8A8 to 0x03C8AB = Default (e.g. after death) (0F 0F 2C 11)
  • 0x004650 to 0x004653 = P.Buster (0F 0F 2C 11)
  • 0x004654 to 0x004657 = Gemini Laser (0F 0F 30 21)
  • 0x004658 to 0x00465B = Needle Cannon (0F 0F 30 17)
  • 0x00465C to 0x00465F = Hard Knuckle (0F 0F 10 01)
  • 0x004660 to 0x004663 = Magnet Missile (0F 0F 10 16)
  • 0x004664 to 0x004667 = Top Spin (0F 0F 36 00)
  • 0x004668 to 0x00466B = Search Snake (0F 0F 30 19)
  • 0x00466C to 0x00466F = Rush Coil (0F 0F 30 15)
  • 0x004670 to 0x004673 = Spark Shock (0F 0F 30 26)
  • 0x004674 to 0x004677 = Rush Marine (0F 0F 30 15)
  • 0x004678 to 0x00467B = Shadow Blade (0F 0F 34 14)
  • 0x00467C to 0x00467F = Rush Jet (0F 0F 30 15)

Stage Selector

  • 0x031D03 to 0x031D0B = Vertical row to show box
  • 0x031D0C to 0x031D14 = Horizontal row to show box
  • 0x031D15 to 0x031D18 = Y axis location for selection box dots
  • 0x031D19 to 0x031D1D = X axis location for selection box dots

Weapon Usage

Bars Used

  • 0x03DF2C = Gemini Laser (2 bars)
  • 0x03DF2D = Needle Cannon (1 bar)
  • 0x03DF2E = Hard Knuckle (2 bars)
  • 0x03DF2F = Magnet Missile (2 bars)
  • 0x03DF30 = Top Spin (0 bars)
  • 0x03DF31 = Search Snake (1 bar)
  • 0x03DF32 = Rush Coil (3 bars)
  • 0x03DF33 = Spark Shot (1 bar)
  • 0x03DF34 = Spark Shock
  • 0x03DF35 = Shadow Blade
  • 0x03DF36 = Rush Jet (1 bar)

Shots required for bar to decrease

  • 0x03DF38 = Gemini Laser (1 shot)
  • 0x03DF39 = Needle Cannon (3 shots)
  • 0x03DF3A = Hard Knuckle (1 shot)
  • 0x03DF3B = Magnet Missile (1 shot)
  • 0x03DF3C = Top Spin (0 shots (inf until attack connects))
  • 0x03DF3D = Search Snake (2 shots)
  • 0x03DF3E = Rush Coil (1 shot)
  • 0x03DF3F = Spark Shot (1 shot)
  • 0x03DF40 = Rush Marine (how many frames/1 bar, default: 1E)
  • 0x03DF41 = Shadow Blade (2 shots)
  • 0x03DF42 = Rush Jet (how many frames/1 bar, default: 1E)

Number of Maximum Shots on the Screen

Note for template.png
Note:
More than 03 results in "blanks" being fired, except for Gemini laser and Hard Knuckle that are limited to 01.


  • 0x03D34D = Mega Buster (default 03)
  • 0x03D34E = Gemini Laser (default 01)
  • 0x03D34F = Needle Cannon (default 03)
  • 0x03D350 = Hard Knuckle (default 01)
  • 0x03D351 = Magnet Missile (default 02)
  • 0x03D352 = Top Spin (default 00)
  • 0x03D353 = Search Snake (default 03)
  • 0x03D354 = Rush Coil (default 03)
  • 0x03D355 = Spark Shock (default 02)
  • 0x03D356 = Rush Marine (default 03)
  • 0x03D357 = Shadow Blade (default 01)
  • 0x03D358 = Rush Jet (default 03)

Music

  • 0x3CD1C to 0x3CD2D = Music pointers
01 = Needle Man
02 = Magnet Man
03 = Gemini Man
04 = Hard Man
05 = Top Man
06 = Snake Man
07 = Spark Man
08 = Shadow Man
09 = Dr. Wily Stage 1 & 2
0A = Dr. Wily Stage 3 & 4
0B = Dr. Wily Stage 5 & 6
  • 0x2CCAD to 0x2D0ED = Title screen
  • 0x2E0EA to 0x2E422 = Top Man
  • 0x2FEBF to 0x2FFDD = Stage Select

Sprite Data

Note for template.png
Note:
The following information is helpful while using Capcom Sprite Assembler.


Sprite Bank 0x2A010

Sprite ID Description Default Sprite Bank Used Default Frame Data Location Default Frame Data
32 Gemini Man 0x4C010 0x2A409 to 0x2A40E 70 75 71 72 73 71
33 Gemini Man jump 0x4C010 0x2A411 to 0x2A412 71 74
34 Gemini Man shoot 0x4C010 0x2A415 to 0x2A417 75 76 77
35 Gemini Man walk 0x4C010 0x2A41A to 0x2A41D 78 79 7A 79
36 Spark Man 0x4B410 0x2A420 to 0x2A428 65 60 62 67 63 64 63 64 60
37 Spark Man jump 0x4B410 0x2A42B to 0x2A42C 61 62
38 Spark Man charge 0x4B410 0x2A42F to 0x2A434 62 63 64 65 65 65
39 Spark Man shoot 0x4B410 0x2A437 to 0x2A444 63 64 63 64 62 66 67 68 69 69 69 69 69
3F Shadow Man 0x4B010 0x2A459 to 0x2A45C 8D 8F 90 91
40 Shadow Man Jump 0x4B010 0x2A45F to 0x2A460 92 8F
41 Shadow Man throw 0x4B010 0x2A463 to 0x2A469 93 94 95 95 95 95 95
42 Shuriken 0x4B010 0x2A46C to 0x2A472 96 97 98 9A 9A 9A
43 Shuriken twirling 0x4B010 0x2A475 to 0x2A476 9A 9B
44 Top Man 0x4B810* 0x2A479 9C
45 Top Man 0x4B810* 0x2A47C to 0x2A47E 9C A9 A0
46 Top 0x4B810 0x2A481 to 0x2A484 9D 9E 9F 9E
47 Top Man throw 0x4B810* 0x2A487 to 0x2A48A A0 A0 A0 A9
48 Top Man spin 0x4B810* 0x2A48D to 0x2A492 A1 A2 A3 AE AD A4
49 Top Man 0x4B810* 0x2A495 to 0x2A49A A5 A6 A7 A8 A9 A9
* This sprite has tiles from another sprite bank.