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 3 (NES)/ROM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
Line 136: Line 136:


===Sprite Tile Coordinates===
===Sprite Tile Coordinates===
<table class="msgbox" style="border-color: #DFDFDF; background: #AADEDE;"><td class="msgboximg" style="width:800px;">[[File:Chip_tiny.png|left|40px]]'''Note:'''<br> The coordinates are in '''Y X''' form.</table>
<table class="msgbox" style="border-color: #DFDFDF; background: #AADEDE;"><td class="msgboximg" style="width:800px;">[[File:Chip_tiny.png|left|40px]]'''Note:'''<br> The coordinates are in '''X Y''' form.</table>
* <tt>0x28C2B to 0x28C4D</tt> = Spark Man (2nd frame)
* <tt>0x28C2B to 0x28C4D</tt> = Spark Man (2nd frame)
* <tt>0x28C4E to 0x28CB3</tt> = ???
* <tt>0x28C4E to 0x28CB3</tt> = ???
* <tt>0x28CB4 to 0x28CD9</tt> = Spark Man (1st frame)
* <tt>0x28CB4 to 0x28CD9</tt> = Spark Man (1st frame)

Revision as of 08:49, 1 September 2013

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

Robot Master Selected Screen Text

Chip tiny.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

Chip tiny.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

Sprite Tiles

Chip tiny.png
Note:
Each sprite tile is stored in two bytes. The first byte determines the tile and the second determines the palette and rotation.

The data starts at 0x2A570.

  • 0x2B073 to 0x2B09A = Spark Man (1st frame)

Sprite Tile Coordinates

Chip tiny.png
Note:
The coordinates are in X Y form.
  • 0x28C2B to 0x28C4D = Spark Man (2nd frame)
  • 0x28C4E to 0x28CB3 = ???
  • 0x28CB4 to 0x28CD9 = Spark Man (1st frame)