Skip to content

Commit 71c5599

Browse files
zengfrzengfr
authored and
zengfr
committed
hackromdata_zengfr-2
1 parent 621dab7 commit 71c5599

File tree

179 files changed

+69377
-649
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

179 files changed

+69377
-649
lines changed

6502编程大奥秘.chm

551 KB
Binary file not shown.
Binary file not shown.

CPS1/6800 instruction set.html

+376
Large diffs are not rendered by default.

CPS1/8080_Z80 Instruction Set.html

+2,617
Large diffs are not rendered by default.

CPS1 Capcom System 1 information.html CPS1/CPS1 Capcom System 1 information.html

+256-256
Large diffs are not rendered by default.

Capcom.pin.txt CPS1/Capcom.pin.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
1+
https://github.com/zengfr/romhack
22
Capcom pinouts from [email protected] (Tony Jones)
33

44
Capcom pcb (56pin), not Jamma

CPS1/Captain+Commando Memory Map.txt

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
https://github.com/zengfr/romhack
2+
Captain+Commando Memory Map
3+
Memory Map
4+
The following is a memory map that was generated based on the MAME source code (.180). This information is only as accurate as the MAME driver is. If you see any errors, please let me know what that error is.
5+
6+
The Memory Area is related to where the information is from (CPU, Sound Board, etc..), and it may also reflect what it has in common with other hardware.
7+
Captain Commando (Capcom, 1991)
8+
Memory Area:main_map
9+
Address Range Length Function Description
10+
0x0000-0x3FFFFF 4194304 ROM
11+
0x800000-0x800007 8 Read Port IN1 (/* Player input ports */)
12+
0x800018-0x80001F 8 Read cps1_dsw_r (/* System input ports / Dip Switches */)
13+
0x800020-0x800021 2 Read NOP (/* ? Used by Rockman ? not mapped according to PAL */)
14+
0x800030-0x800037 8 Write cps1_coinctrl_w
15+
0x800100-0x80013F 64 Write, Shared cps1_cps_a_w, cps_a_regs (/* CPS-A custom */)
16+
0x800140-0x80017F 64 Read/Write, Shared cps1_cps_b_r, cps1_cps_b_w, cps_b_regs
17+
0x800180-0x800187 8 Write cps1_soundlatch_w (/* Sound command */)
18+
0x800188-0x80018F 8 Write cps1_soundlatch2_w (/* Sound timer fade */)
19+
0x900000-0x92FFFF 196608 RAM Write, Shared cps1_gfxram_w, gfxram (/* SF2CE executes code from here */)
20+
0xFF0000-0xFFFFFF 65536 RAM, Shared mainram
21+
Memory Area:sub_map
22+
Address Range Length Function Description
23+
0x0000-0x7FFF 32768 ROM
24+
0x8000-0xBFFF 16384 ROM Bank bank1
25+
0xD000-0xD7FF 2048 RAM
26+
0xF000-0xF001 2 Device Read/Write 2151, ym2151_device, read, write
27+
0xF002 1 Device Read/Write oki, okim6295_device, read, write
28+
0xF004 1 Write cps1_snd_bankswitch_w
29+
0xF006 1 Write cps1_oki_pin7_w (/* controls pin 7 of OKI chip */)
30+
0xF008 1 Device Read soundlatch, generic_latch_8_device, read (/* Sound command */)
31+
0xF00A 1 Device Read soundlatch2, generic_latch_8_device, read (/* Sound timer fade */)
32+
33+
ROM Map for this game
34+
35+
This is the ROM map for the game. This should tell you what address the ROM is at, how big it is, what it's used for.
36+
Memory Area:aboardplds
37+
Address Range Length Label/Location Description
38+
0x0000-0x0116 279 "prg1" CRC(f1129744)
39+
0x0000-0x0116 279 "rom1" CRC(41dc73b9)
40+
0x0000-0x0116 279 "sou1" CRC(84f4b2fe)
41+
0x0000-0x0116 279 "buf1" CRC(eb122de7)
42+
0x0000-0x0116 279 "ioa1" CRC(59c7ee3b)
43+
Memory Area:audiocpu
44+
Address Range Length Label/Location Description
45+
0x0000-0x7FFF 32768 "cc_09.11a" CRC(698e8b58)
46+
Memory Area:bboardplds
47+
Address Range Length Label/Location Description
48+
0x0000-0x0116 279 "ccprg1.11d" CRC(e1c225c4)
49+
0x0000-0x0116 279 "cc63b.1a" CRC(cae8f0f9)
50+
0x0000-0x0116 279 "iob1.12d" CRC(3abc0700)
51+
Memory Area:cboardplds
52+
Address Range Length Label/Location Description
53+
0x0000-0x0116 279 "ioc1.ic7" CRC(0d182081)
54+
0x0000-0x0116 279 "c632b.ic1" CRC(0fbd9270)
55+
Memory Area:oki
56+
Address Range Length Label/Location Description
57+
0x0000-0x1FFFF 131072 "cc_18.11c" CRC(6de2c2db)
58+
0x20000-0x3FFFF 131072 "cc_19.12c" CRC(b99091ae)
+236
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,236 @@
1+
<HTML>
2+
<HEAD>
3+
<TITLE>DataEast (16 Bit) information</TITLE>
4+
</HEAD>
5+
<BODY TEXT="#000000" BACKGROUND="bkg.gif" FONT="#EDEDED" LINK="#FF0000" VLINK="#AF0000" ALINK="#FF0000">
6+
<CENTER>
7+
<!--#config timefmt="%I%M%S"-->
8+
<center>
9+
<TABLE BORDER="0" CELLPADDING="5" CELLSPACING="0" WIDTH="468" BGCOLOR="#000000">
10+
<TR>
11+
<TD ALIGN="left">
12+
<iframe src="http://www.vintagegaming.com/sponsors.shtml" width=468 height=60 marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 scrolling=no bordercolor="#000000"></iframe>
13+
</TD>
14+
</TR>
15+
</TABLE>
16+
<A HREF="http://ad.doubleclick.net/jump/vintagegaming.com/;abr=!ie4;abr=!ie5;sz=468x60";ord=27297973?">
17+
<IMG BORDER=0 SRC="http://ad.doubleclick.net/ad/vintagegaming.com/;abr=!ie4;abr=!ie5a;sz=468x60";ord=27297973?"></a>
18+
</center>
19+
20+
21+
<H2>DataEast (16 Bit)</H2>
22+
</CENTER>
23+
<H4>
24+
<PRE>
25+
System Information:
26+
Main CPU: 68000
27+
Sound CPU: 6502
28+
SoundChip: YM3812, YM2203, OKIM6295
29+
30+
68000 Memory Addresses:
31+
$000000 $05FFFF Rom
32+
$240000 $240007 Play Field 1 Control 0 (Text layer)
33+
$240010 $240017 Play Field 1 Control 1
34+
$242000 $24207F Play Field 1 Column Scroll
35+
$242400 $2427FF Play Field 1 Row Scroll
36+
$244000 $245FFF Play Field 1 Data
37+
$246000 $246007 Play Field 2 Control 0 (First tile layer)
38+
$246010 $246017 Play Field 2 Control 1
39+
$248000 $24807F Play Field 2 Column Scroll
40+
$248400 $2487FF Play Field 2 Row Scroll
41+
$24A000 $24A7FF Play Field 2 Data
42+
$24C000 $24C007 Play Field 3 Control 0 (Second tile layer)
43+
$24C010 $24C017 Play Field 3 Control 1
44+
$24C800 $24C87F Play Field 3 Column Scroll
45+
$24CC00 $24CFFF Play Field 3 Row Scroll
46+
$24D000 $24D7FF Play Field 3 Data
47+
$300000 $30001F Rotary Controller
48+
$30C000 $30C00B Controls
49+
$30C010 $30C01F Control Register (Priority, sound, etc.)
50+
$310000 $3107FF Palette Ram (Red & Green bits)
51+
$314000 $3147FF Palette Ram (Blue bits)
52+
$FF8000 $FFBFFF Main ram
53+
$FFC000 $FFC7FF Sprites
54+
55+
Sprite data: The unknown bits seem to be unused.
56+
Byte 0:
57+
Bit 0: Y co-ord hi bit
58+
Bit 1,2: ?
59+
Bit 3,4: Sprite height (1x, 2x, 4x, 8x)
60+
Bit 5: X flip
61+
Bit 6: Y flip
62+
Bit 7: Only display Sprite if set
63+
Byte 1: Y-coords
64+
Byte 2:
65+
Bit 0,1,2,3: Hi bits of sprite number
66+
Bit 4,5,6,7: (Probably unused MSB's of sprite)
67+
Byte 3: Low bits of sprite number
68+
Byte 4:
69+
Bit 0: X co-ords hi bit
70+
Bit 1,2: ?
71+
Bit 3: Sprite flash (sprite is displayed every other frame)
72+
Bit 4,5,6,7: Color
73+
Byte 5: X-coords
74+
Bytes 6-7: Blank
75+
76+
Location $30C012, when written to, causes the sprite data to be DMA'd
77+
from $FFC000 to ?. Must be used to display/change sprites.
78+
Location $30C002, bit 7, indicates if the DMA is complete.
79+
May have to be done during VBlank.
80+
81+
Sprite X and Y coordinates are flipped compared to the normal screen
82+
coordinates. (ie 0, 0 is the lower right corner of the screen, and
83+
255, 239 is the upper left corner).
84+
85+
Sprite Collumns are store in sequential tiles.
86+
(ie 12 would be stored as 1324)
87+
34
88+
89+
Palette data:
90+
16 Entries per palette, 16 palettes for each plane and for sprites.
91+
0x000 - character palettes
92+
0x200 - sprite palettes
93+
0x400 - tiles 1
94+
0x600 - tiles 2
95+
96+
Palettes are split into two banks. Each color is 1 byte (0 - 255).
97+
Bank1:
98+
$GGRR (2 bytes)
99+
100+
Bank2:
101+
$00BB (2 Bytes)
102+
103+
All sprites, tiles, and characters use 0 as a transparent color.
104+
105+
Tile data:
106+
4 bit palette select, 12 bit tile select.
107+
$PTTT P = Palette (0 - $0F) T = Tile (0 - $0FFF)
108+
109+
All games contain three BAC06 background generator chips, usual
110+
(software) configuration is 2 chips of 16 * 16 tiles, 1 of 8 * 8.
111+
112+
VBlank:
113+
The VBlank uses IRQ 6. Interrupt enabled by setting the SR to $2300.
114+
115+
Playfield control registers:
116+
bank 0:
117+
0:
118+
Bit 0: set = 8*8 tiles, else 16*16 tiles
119+
Bit 1: ?
120+
Bit 2: set enables rowscroll
121+
Bit 3: set enables colscroll
122+
Bit 7: set in playfield 1 is reverse screen (set via dip-switch)
123+
Bit 7: in other playfields unknown
124+
2: ? (00 in bg, 03 in fg+text - maybe controls pf transparency?)
125+
4: ? (always 00)
126+
6: playfield shape: 00 = 4x1, 01 = 2x2, 02 = 1x4 (low 4 bits only)
127+
128+
bank 1:
129+
0: horizontal scroll
130+
2: vertical scroll
131+
4: Style of colscroll (low 4 bits, top 4 bits do nothing)
132+
6: Style of rowscroll (low 4 bits, top 4 bits do nothing)
133+
134+
Rowscroll/Colscroll styles:
135+
0: 256 scroll registers (Robocop)
136+
1: 128 scroll registers
137+
2: 64 scroll registers
138+
3: 32 scroll registers (Heavy Barrel, Midres)
139+
4: 16 scroll registers (Bad Dudes, Sly Spy)
140+
5: 8 scroll registers (Hippodrome)
141+
6: 4 scroll registers (Heavy Barrel)
142+
7: 2 scroll registers (Heavy Barrel, used on other games but registers
143+
kept at 0)
144+
8: 1 scroll register (ie, none)
145+
146+
Values above are *multiplied* by playfield shape.
147+
148+
Playfield priority (Bad Dudes, etc):
149+
In the bottommost playfield, pens 8-15 can have priority over the next
150+
playfield.
151+
In that next playfield, pens 8-15 can have priority over sprites.
152+
153+
Bit 0: Playfield inversion
154+
Bit 1: Enable playfield mixing (for palettes 8-15 only)
155+
Bit 2: Enable playfield/sprite mixing (for palettes 8-15 only)
156+
157+
Playfield shape:
158+
Play Field Control 0[6] & $0f
159+
$00 4x1, 256 rows
160+
$01 2x2, 512 rows
161+
$02 1x4, 1024 rows
162+
163+
Scroll X - Play Field Control 1[0] (Word)
164+
Scroll Y - Play Field Control 1[2] (Word)
165+
Row Scroll Enable - Play Field Control 0[0] & $04 (Byte)
166+
167+
Control:
168+
$30C010 Playfield & Sprite priority
169+
$30C012 DMA flag
170+
$30C014 6502 sound cpu
171+
$30C016 Intel 8751 microcontroller
172+
$30C018 Interrupt ack (VBL - IRQ 6)
173+
$30C01A ?
174+
$30C01E Reset Intel 8751? - not sure, all the games write here at startup
175+
176+
Input: ($30C000)
177+
$01 Up
178+
$02 Down
179+
$04 Left
180+
$08 Right
181+
$10 Button 1
182+
$20 Button 2
183+
184+
Start Buttons: ($30C002)
185+
$04 Start 1
186+
$08 Start 2
187+
188+
Graphics:
189+
width = 8
190+
height = 8
191+
total = 2048
192+
planes = 4
193+
planeoffsets = 0 262144 131072 393216
194+
xoffsets = 0 1 2 3 4 5 6 7
195+
yoffsets = 0 8 16 24 32 40 48 56
196+
charincrement = 64
197+
198+
width = 16
199+
height = 16
200+
total = 4096
201+
planes = 4
202+
planeoffsets = 1572864 0 524288 1048576
203+
xoffsets = 128 129 130 131 132 133 134 135 0 1 2 3 4 5 6 7
204+
yoffsets = 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120
205+
charincrement = 256
206+
207+
width = 16
208+
height = 16
209+
total = 1024
210+
planes = 4
211+
planeoffsets = 262144 786432 0 524288
212+
xoffsets = 128 129 130 131 132 133 134 135 0 1 2 3 4 5 6 7
213+
yoffsets = 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120
214+
charincrement = 256
215+
216+
width = 16
217+
height = 16
218+
total = 3072
219+
planes = 4
220+
planeoffsets = 1048576 3145728 0 2097152 (Possibly incorrect)
221+
xoffsets = 128 129 130 131 132 133 134 135 0 1 2 3 4 5 6 7
222+
yoffsets = 0 8 16 24 32 40 48 56 64 72 80 88 96 104 112 120
223+
charincrement = 256
224+
</PRE>
225+
</H4>
226+
<HR>
227+
<CENTER>
228+
<A HREF="http:\\www.vintagegaming.com">
229+
<IMG SRC="pacman_anim.gif" WIDTH=468 HEIGHT=60 BORDER=0><BR>
230+
</A>
231+
<FONT COLOR="#FF0000"><B>Hosted by the Vintage Gaming Network</B></FONT>
232+
</CENTER>
233+
</BODY>
234+
</HTML>
235+
236+

CPS1/Final+Fight Memory Map.txt

+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
https://github.com/zengfr/romhack
2+
Final+Fight Memory Map
3+
Memory Map
4+
The following is a memory map that was generated based on the MAME source code (.180). This information is only as accurate as the MAME driver is. If you see any errors, please let me know what that error is.
5+
6+
The Memory Area is related to where the information is from (CPU, Sound Board, etc..), and it may also reflect what it has in common with other hardware.
7+
Final Fight (Capcom, 1989)
8+
Memory Area:main_map
9+
Address Range Length Function Description
10+
0x0000-0x3FFFFF 4194304 ROM
11+
0x800000-0x800007 8 Read Port IN1 (/* Player input ports */)
12+
0x800018-0x80001F 8 Read cps1_dsw_r (/* System input ports / Dip Switches */)
13+
0x800020-0x800021 2 Read NOP (/* ? Used by Rockman ? not mapped according to PAL */)
14+
0x800030-0x800037 8 Write cps1_coinctrl_w
15+
0x800100-0x80013F 64 Write, Shared cps1_cps_a_w, cps_a_regs (/* CPS-A custom */)
16+
0x800140-0x80017F 64 Read/Write, Shared cps1_cps_b_r, cps1_cps_b_w, cps_b_regs
17+
0x800180-0x800187 8 Write cps1_soundlatch_w (/* Sound command */)
18+
0x800188-0x80018F 8 Write cps1_soundlatch2_w (/* Sound timer fade */)
19+
0x900000-0x92FFFF 196608 RAM Write, Shared cps1_gfxram_w, gfxram (/* SF2CE executes code from here */)
20+
0xFF0000-0xFFFFFF 65536 RAM, Shared mainram
21+
Memory Area:sub_map
22+
Address Range Length Function Description
23+
0x0000-0x7FFF 32768 ROM
24+
0x8000-0xBFFF 16384 ROM Bank bank1
25+
0xD000-0xD7FF 2048 RAM
26+
0xF000-0xF001 2 Device Read/Write 2151, ym2151_device, read, write
27+
0xF002 1 Device Read/Write oki, okim6295_device, read, write
28+
0xF004 1 Write cps1_snd_bankswitch_w
29+
0xF006 1 Write cps1_oki_pin7_w (/* controls pin 7 of OKI chip */)
30+
0xF008 1 Device Read soundlatch, generic_latch_8_device, read (/* Sound command */)
31+
0xF00A 1 Device Read soundlatch2, generic_latch_8_device, read (/* Sound timer fade */)
32+
33+
ROM Map for this game
34+
35+
This is the ROM map for the game. This should tell you what address the ROM is at, how big it is, what it's used for.
36+
Memory Area:aboardplds
37+
Address Range Length Label/Location Description
38+
0x0000-0x0116 279 "prg1" CRC(f1129744)
39+
0x0000-0x0116 279 "rom1" CRC(41dc73b9)
40+
0x0000-0x0116 279 "sou1" CRC(84f4b2fe)
41+
0x0000-0x0116 279 "buf1" CRC(eb122de7)
42+
0x0000-0x0116 279 "ioa1" CRC(59c7ee3b)
43+
Memory Area:audiocpu
44+
Address Range Length Label/Location Description
45+
0x0000-0x7FFF 32768 "ff_09.12b" CRC(b8367eb5)
46+
Memory Area:bboardplds
47+
Address Range Length Label/Location Description
48+
0x0000-0x0116 279 "s224b.1a" CRC(cdc4413e)
49+
0x0000-0x0116 279 "iob1.11e" CRC(3abc0700),seen the same pcb with LWIO.11E
50+
Memory Area:oki
51+
Address Range Length Label/Location Description
52+
0x0000-0x1FFFF 131072 "ff_18.11c" CRC(375c66e7)
53+
0x20000-0x3FFFF 131072 "ff_19.12c" CRC(1ef137f9)

0 commit comments

Comments
 (0)