Punch-Out/ROM map: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Added some information I had gathered, some work still needs to be done, but I have been double checking to ensure accuracy.)
 
m (Xkeeper moved page Punch-Out:ROM map to Punch-Out/ROM map: normalize subpages and titles)
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<div id="catlinks">[[Image:Chip_tiny.png]]The following article is a [[ROM map]] for [[Punch-Out]].</div>
{{rommap|game=Punch-Out!!}}
{{clear}}
 
<includeonly>[[Category:ROM maps]][[Category:Punch-Out|ROM map]]</includeonly>
==Opponents==
=Opponents=
<pre>
0x001326 to 0x001385 = Glass Joe (Minor Circuit)
0x001326 to 0x001385 = Glass Joe (Minor Circuit)
  0x00132C = Stamina
  0x00132C = Stamina
Line 56: Line 56:
0x00BB48 to 0x00BBA7 = Piston Honda (Minor Circuit)
0x00BB48 to 0x00BBA7 = Piston Honda (Minor Circuit)
  0x00BB4E = Stamina
  0x00BB4E = Stamina
 
</pre>
=Sound effect=
==Sound effect==
<pre>
0x00D210 to 0x00DD0F = Cheering sound
0x00D210 to 0x00DD0F = Cheering sound
</pre>


=Passwords=
==Passwords==
<pre>
0x00EDB2 to 0x00EDBB = Password for Busy Signal
0x00EDB2 to 0x00EDBB = Password for Busy Signal
0x00EDBC to 0x00EDC5 = Password for Busy Signal
0x00EDBC to 0x00EDC5 = Password for Busy Signal
Line 73: Line 76:
  * example: 09 06 08 09 09 03 08 00 07 04
  * example: 09 06 08 09 09 03 08 00 07 04
000 000 0000 is now password for World Circuit
000 000 0000 is now password for World Circuit
</pre>


=Song pointers=
==Song pointers==
<pre>
0x01107E to 0x011085 = Opening credits song
0x01107E to 0x011085 = Opening credits song
0x0110EE to 0x0110F5 = Coming to center ring song
0x0110EE to 0x0110F5 = Coming to center ring song
0x011106 to 0x01110D = Glass Joe intro song
0x011106 to 0x01110D = Glass Joe intro song
0x01110E to 0x011115 = Don Flamenco intro song
0x01110E to 0x011115 = Don Flamenco intro song
</pre>


=Music data=
==Music data==
==Look Sharp intro==
===Look Sharp intro===
<pre>
0x011176 to 0x0111B5 = Melody
0x011176 to 0x0111B5 = Melody
0x0111B6 to 0x0111D2 = Harmony
0x0111B6 to 0x0111D2 = Harmony
0x0111D3 to 0x0111F0 = Bass
0x0111D3 to 0x0111F0 = Bass
0x0111F1 to 0x01???? = Drums
0x0111F1 to 0x01???? = Drums
</pre>


==Look Sharp main song==
===Look Sharp main song===
<pre>
0x01???? to  
0x01???? to  
</pre>


==Look Sharp tag==
===Look Sharp tag===
<pre>
0x0112A6 to 0x0112BF = Melody
0x0112A6 to 0x0112BF = Melody
0x0112C0 to 0x0112F0 = Harmony
0x0112C0 to 0x0112F0 = Harmony
0x0112F1 to 0x011316 = Bass
0x0112F1 to 0x011316 = Bass
0x011317 to 0x011347 = Drums
0x011317 to 0x011347 = Drums
</pre>


==Glass Joe intro==
===Glass Joe intro===
<pre>
0x0117B0 to 0x0117E0 = Melody
0x0117B0 to 0x0117E0 = Melody
0x0117E1 to 0x011812 = Harmony
0x0117E1 to 0x011812 = Harmony
0x011813 to 0x01183C = Bass
0x011813 to 0x01183C = Bass
0x01183D to 0x011875 = Drums
0x01183D to 0x011875 = Drums
</pre>


==Don Flamenco intro==
===Don Flamenco intro===
<pre>
0x011876 to 0x0118B6 = Melody
0x011876 to 0x0118B6 = Melody
0x0118B7 to 0x0118F7 = Harmony
0x0118B7 to 0x0118F7 = Harmony
0x0118F8 to 0x011908 = Bass
0x0118F8 to 0x011908 = Bass
0x011909 to 0x01194B = Drums
0x011909 to 0x01194B = Drums
</pre>


==King Hippo intro==
===King Hippo intro===
<pre>
0x01194C to 0x01195C = Melody
0x01194C to 0x01195C = Melody
0x01195D to 0x01196C = Harmony
0x01195D to 0x01196C = Harmony
0x01196D to 0x01197E = Bass
0x01196D to 0x01197E = Bass
0x01197F to 0x0????? = Drums
0x01197F to 0x0????? = Drums
</pre>


=Character Profile=
==Character Profile==
0x012CE3 ~ 0x012CEB - Name of Glass Joe
<pre>
0x012CF0 ~ 0x012CF5 - City of Glass Joe
0x012CE3 to 0x012CEB - Name of Glass Joe
0x012CF9 ~ 0x012CFE - Country of Glass Joe
0x012CF0 to 0x012CF5 - City of Glass Joe
0x012D03 ~ 0x012D04 - Age of Glass Joe
0x012CF9 to 0x012CFE - Country of Glass Joe
0x012D09 ~ 0x012D0B - Weight of Glass Joe
0x012D03 to 0x012D04 - Age of Glass Joe
0x012D09 to 0x012D0B - Weight of Glass Joe
</pre>


=Song to play=
==Song to play==
<pre>
0x014AEB - Song to play during Cast
0x014AEB - Song to play during Cast
</pre>


=Pallet=
==Palette==
0x019926 to 0x019945 = Pallet for stat screen after fight
<pre>
0x019926 to 0x019945 = Palette for stat screen after fight
</pre>


=Song to play=
==Song to play==
<pre>
0x01A530 - Song to play after bell dings on opening
0x01A530 - Song to play after bell dings on opening
</pre>
==Opponent Table==
<pre>A0D1, length 3A (NES File 0x180E1)
2 bytes per value.  Match Number (RAM $01) * 2 is used to index into this table.
First Byte: Opponent Body (Also which ROM bank to use) (00-05), stored into RAM $02
00 = Glass Joe / Don Flamenco
01 = King Hippo
02 = Von Kaiser / Great Tiger
03 = Bald Bull / Mr. Sandman
04 = Soda Popinski / Super Macho Man
05 = Piston Honda / Mike Tyson
Second Byte: Opponent Matchup (00-40), stored into RAM $03
00 = Glass Joe, Von Kaiser, King Hippo, Bald Bull (Demo)
10 = Don Flamenco (Major Circuit), Great Tiger, Soda Popinski, Mr. Sandman
20 = Piston Honda (World Circuit), Bald Bull (World Circuit), Don Flamenco (World Circuit)
30 = Piston Honda (Minor Circuit), Bald Bull (Major Circuit), Super Macho Man
40 = Mike Tyson
Any values not expected by the game will crash.
</pre>
==Opponent Rank Table==
<pre>A18D, length 1D (NES File 0x1819D)
Match Number (RAM $01) is used to index into this table.
Lower nibble: Rank number of the opponent (0 for champion, values above 9 display as hex)
Upper nibble: Which circuit for the opponent
0 = Dream Fight
1 = World Circuit
2 = Major Circuit
3 = Minor Circuit
4 = Another World Circuit (Displays as "M  OR CIRCUIT", set RAM 013E to nonzero, and it will display "Another World Circuit" instead)
5-F = Not used (also displays as "M  OR CIRCUIT")
</pre>
==Graphics==
<pre>0x020010 to 0x040010 = Graphics</pre>


=Graphics=
{{Internal Data|game=Punch-Out}}
0x020010 to 0x040010 = graphics

Latest revision as of 02:42, 24 January 2024

Chip tiny.png The following article is a ROM map for Punch-Out.

Opponents

0x001326 to 0x001385 = Glass Joe (Minor Circuit)
 0x00132C = Stamina
 0x001335 = Opponent strength
 0x001353 = Mug shot, etc.
 0x00135C = countdown stat
 0x001360 = clock speed

0x0014D3 to 0x001532 = Don Flamenco (Major Circuit)
 0x0014D9 = Stamina

0x001533 to 0x001592 = Don Flamenco (World Circuit)
 0x001539 = Stamina

0x002C5E to 0x002CBD = King Hippo (Major Circuit, AWC)
 0x002C64 = Stamina
 0x002C6D = Opponent strength
 0x002C8B = Mug shot, etc.
 0x002C94 = countdown stat

0x0053D9 to 0x005438 = Great Tiger (Major Circuit, AWC)
 0x00540F = countdown stat

0x007887 to 0x0078E6 = Bald Bull (Demo play)

0x0078E7 to 0x007946 = Bald Bull (Major Circuit)
 0x0078ED = Stamina
 0x0078F6 = Opponent strength
 0x007914 = Mug shot, etc.
 0x00791D = countdown stat

0x007947 to 0x0079A6 = Bald Bull (World Circuit)
 0x00794D = Stamina
 0x007956 = Opponent strength
 0x007974 = Mug shot, etc.
 0x00797D = countdown stat

0x009A5C to 0x009ABB = Soda Popinski (World Circuit)
 0x009A62 = Stamina
 0x009A6B = Opponent strength
 0x009A89 = Mug shot, etc.
 0x009A92 = countdown stat

0x00B819 to 0x00B878 = Mike Tyson (Dream Fight)
 0x00B81F = Stamina

0x00BAE8 to 0x00BB47 = Piston Honda (World Circuit, AWC)
 0x00BAEE = Stamina
 0x00BAF7 = Opponent strength
 0x00BB15 = Mug shot, etc.
 0x00BB1E = countdown stat

0x00BB48 to 0x00BBA7 = Piston Honda (Minor Circuit)
 0x00BB4E = Stamina

Sound effect

0x00D210 to 0x00DD0F = Cheering sound

Passwords

0x00EDB2 to 0x00EDBB = Password for Busy Signal
0x00EDBC to 0x00EDC5 = Password for Busy Signal
0x00EDC6 to 0x00EDCF = Password for Busy Signal
0x00EDD0 to 0x00EDD8 = Password for Another World Circuit
0x00EDD9 to 0x00EDE3 = Password for Credits
0x00EDE4 to 0x00EDED = Password for Dream Fight

0x00F111 to 0x00F11A = Password encryption
 * example: 06 03 00 00 06 03 06 00 00 05
	000 000 0000 is now password for Major Circuit
 * example: 09 06 08 09 09 03 08 00 07 04
	000 000 0000 is now password for World Circuit

Song pointers

0x01107E to 0x011085 = Opening credits song
0x0110EE to 0x0110F5 = Coming to center ring song
0x011106 to 0x01110D = Glass Joe intro song
0x01110E to 0x011115 = Don Flamenco intro song

Music data

Look Sharp intro

0x011176 to 0x0111B5 = Melody
0x0111B6 to 0x0111D2 = Harmony
0x0111D3 to 0x0111F0 = Bass
0x0111F1 to 0x01???? = Drums

Look Sharp main song

0x01???? to 

Look Sharp tag

0x0112A6 to 0x0112BF = Melody
0x0112C0 to 0x0112F0 = Harmony
0x0112F1 to 0x011316 = Bass
0x011317 to 0x011347 = Drums

Glass Joe intro

0x0117B0 to 0x0117E0 = Melody
0x0117E1 to 0x011812 = Harmony
0x011813 to 0x01183C = Bass
0x01183D to 0x011875 = Drums

Don Flamenco intro

0x011876 to 0x0118B6 = Melody
0x0118B7 to 0x0118F7 = Harmony
0x0118F8 to 0x011908 = Bass
0x011909 to 0x01194B = Drums

King Hippo intro

0x01194C to 0x01195C = Melody
0x01195D to 0x01196C = Harmony
0x01196D to 0x01197E = Bass
0x01197F to 0x0????? = Drums

Character Profile

0x012CE3 to 0x012CEB - Name of Glass Joe
0x012CF0 to 0x012CF5 - City of Glass Joe
0x012CF9 to 0x012CFE - Country of Glass Joe
0x012D03 to 0x012D04 - Age of Glass Joe
0x012D09 to 0x012D0B - Weight of Glass Joe

Song to play

0x014AEB - Song to play during Cast

Palette

0x019926 to 0x019945 = Palette for stat screen after fight

Song to play

0x01A530 - Song to play after bell dings on opening


Opponent Table

A0D1, length 3A (NES File 0x180E1)
2 bytes per value.  Match Number (RAM $01) * 2 is used to index into this table.
First Byte: Opponent Body (Also which ROM bank to use) (00-05), stored into RAM $02
 00 = Glass Joe / Don Flamenco
 01 = King Hippo
 02 = Von Kaiser / Great Tiger
 03 = Bald Bull / Mr. Sandman
 04 = Soda Popinski / Super Macho Man
 05 = Piston Honda / Mike Tyson
Second Byte: Opponent Matchup (00-40), stored into RAM $03
 00 = Glass Joe, Von Kaiser, King Hippo, Bald Bull (Demo)
 10 = Don Flamenco (Major Circuit), Great Tiger, Soda Popinski, Mr. Sandman
 20 = Piston Honda (World Circuit), Bald Bull (World Circuit), Don Flamenco (World Circuit)
 30 = Piston Honda (Minor Circuit), Bald Bull (Major Circuit), Super Macho Man
 40 = Mike Tyson
Any values not expected by the game will crash.

Opponent Rank Table

A18D, length 1D (NES File 0x1819D)
Match Number (RAM $01) is used to index into this table.

Lower nibble: Rank number of the opponent (0 for champion, values above 9 display as hex)
Upper nibble: Which circuit for the opponent
0 = Dream Fight
1 = World Circuit
2 = Major Circuit
3 = Minor Circuit
4 = Another World Circuit (Displays as "M  OR CIRCUIT", set RAM 013E to nonzero, and it will display "Another World Circuit" instead)
5-F = Not used (also displays as "M  OR CIRCUIT")

Graphics

0x020010 to 0x040010 = Graphics