1 /***************************************************************************
2
3 Tag Team Wrestling hardware description:
4
5 This hardware is very similar to the BurgerTime/Lock N Chase family of games
6 but there are just enough differences to make it a pain to share the
7 codebase. It looks like this hardware is a bridge between the BurgerTime
8 family and the later Technos games, like Mat Mania and Mysterious Stones.
9
10 The video hardware supports 3 sprite banks instead of 1
11 The sound hardware appears nearly identical to Mat Mania
12
13
14 Stephh's notes :
15
16 - When the "Cabinet" Dip Switch is set to "Cocktail", the screen status
17 depends on which player is the main wrestler on the ring :
18
19 * player 1 : normal screen
20 * player 2 : inverted screen
21
22 TODO:
23 * fix hi-score (reset) bug
24
25 ***************************************************************************/
26
27 #include "driver.h"
28 #include "vidhrdw/generic.h"
29 #include "cpu/m6502/m6502.h"
30
31 extern WRITE_HANDLER( tagteam_videoram_w );
32 extern WRITE_HANDLER( tagteam_colorram_w );
33 extern READ_HANDLER( tagteam_mirrorvideoram_r );
34 extern WRITE_HANDLER( tagteam_mirrorvideoram_w );
35 extern READ_HANDLER( tagteam_mirrorcolorram_r );
36 extern WRITE_HANDLER( tagteam_mirrorcolorram_w );
37 extern WRITE_HANDLER( tagteam_video_control_w );
38 extern WRITE_HANDLER( tagteam_control_w );
39 extern WRITE_HANDLER( tagteam_flipscreen_w );
40
41 extern PALETTE_INIT( tagteam );
42 extern VIDEO_START( tagteam );
43 extern VIDEO_UPDATE( tagteam );
44
WRITE_HANDLER(sound_command_w)45 static WRITE_HANDLER( sound_command_w )
46 {
47 soundlatch_w(offset,data);
48 cpu_set_irq_line(1,M6502_IRQ_LINE,HOLD_LINE);
49 }
50
51
MEMORY_READ_START(readmem)52 static MEMORY_READ_START( readmem )
53 { 0x0000, 0x07ff, MRA_RAM },
54 { 0x2000, 0x2000, input_port_1_r }, /* IN1 */
55 { 0x2001, 0x2001, input_port_0_r }, /* IN0 */
56 { 0x2002, 0x2002, input_port_2_r }, /* DSW2 */
57 { 0x2003, 0x2003, input_port_3_r }, /* DSW1 */
58 { 0x4000, 0x43ff, tagteam_mirrorvideoram_r },
59 { 0x4400, 0x47ff, tagteam_mirrorcolorram_r },
60 { 0x4800, 0x4fff, MRA_RAM },
61 { 0x8000, 0xffff, MRA_ROM },
62 MEMORY_END
63
64 static MEMORY_WRITE_START( writemem )
65 { 0x0000, 0x07ff, MWA_RAM },
66 { 0x2000, 0x2000, tagteam_flipscreen_w },
67 { 0x2001, 0x2001, tagteam_control_w },
68 { 0x2002, 0x2002, sound_command_w },
69 // { 0x2003, 0x2003, MWA_NOP }, /* Appears to increment when you're out of the ring */
70 { 0x4000, 0x43ff, tagteam_mirrorvideoram_w },
71 { 0x4400, 0x47ff, tagteam_mirrorcolorram_w },
72 { 0x4800, 0x4bff, tagteam_videoram_w, &videoram },
73 { 0x4c00, 0x4fff, tagteam_colorram_w, &colorram },
74 { 0x8000, 0xffff, MWA_ROM },
75 MEMORY_END
76
77
78 static MEMORY_READ_START( sound_readmem )
79 { 0x0000, 0x03ff, MRA_RAM },
80 { 0x2007, 0x2007, soundlatch_r },
81 { 0x4000, 0xffff, MRA_ROM },
82 MEMORY_END
83
84 static MEMORY_WRITE_START( sound_writemem )
85 { 0x0000, 0x03ff, MWA_RAM },
86 { 0x2000, 0x2000, AY8910_write_port_0_w },
87 { 0x2001, 0x2001, AY8910_control_port_0_w },
88 { 0x2002, 0x2002, AY8910_write_port_1_w },
89 { 0x2003, 0x2003, AY8910_control_port_1_w },
90 { 0x2004, 0x2004, DAC_0_data_w },
91 { 0x2005, 0x2005, interrupt_enable_w },
92 MEMORY_END
93
94
95
96 static INTERRUPT_GEN( tagteam_interrupt )
97 {
98 static int coin;
99 int port;
100
101 port = readinputport(0) & 0xc0;
102
103 if (port != 0xc0) /* Coin */
104 {
105 if (coin == 0)
106 {
107 coin = 1;
108 cpu_set_irq_line(0, IRQ_LINE_NMI, PULSE_LINE);
109 }
110 }
111 else coin = 0;
112 }
113
114
115 INPUT_PORTS_START( bigprowr )
116 PORT_START /* IN0 */
117 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
118 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
119 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
120 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
121 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
122 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
123 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
124 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
125
126 PORT_START /* IN1 */
127 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
128 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
129 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
130 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
131 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
132 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
133 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
134 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
135
136 PORT_START /* DSW1 */
137 PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) )
138 PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
139 PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
140 PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
141 PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) )
142 PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) )
143 PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
144 PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
145 PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
146 PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) )
147 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
148 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
149 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
150 PORT_DIPNAME( 0x60, 0x00, DEF_STR( Cabinet ) )
151 PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) // "Upright, Single Controls"
152 PORT_DIPSETTING( 0x40, "Upright, Dual Controls" )
153 // PORT_DIPSETTING( 0x20, "Cocktail, Single Controls" ) // IMPOSSIBLE !
154 PORT_DIPSETTING( 0x60, DEF_STR( Cocktail ) ) // "Cocktail, Dual Controls"
155 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
156
157 PORT_START /* DSW2 */
158 PORT_DIPNAME( 0x01, 0x01, DEF_STR( Difficulty ) )
159 PORT_DIPSETTING( 0x01, "Normal" )
160 PORT_DIPSETTING( 0x00, "Hard" )
161 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Demo_Sounds ) )
162 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
163 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
164 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) )
165 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
166 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
167 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
168 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
169 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
170 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
171 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
172 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
173 PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unused ) )
174 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
175 PORT_DIPSETTING( 0x20, DEF_STR( On ) )
176 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unused ) )
177 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
178 PORT_DIPSETTING( 0x40, DEF_STR( On ) )
179 PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) )
180 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
181 PORT_DIPSETTING( 0x80, DEF_STR( On ) )
182 INPUT_PORTS_END
183
184 /* Same as 'bigprowr', but additional "Coin Mode" Dip Switch */
185 INPUT_PORTS_START( tagteam )
186 PORT_START /* IN0 */
187 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY )
188 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY )
189 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY )
190 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY )
191 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
192 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
193 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
194 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
195
196 PORT_START /* IN1 */
197 PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_8WAY | IPF_COCKTAIL )
198 PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_8WAY | IPF_COCKTAIL )
199 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_8WAY | IPF_COCKTAIL )
200 PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_8WAY | IPF_COCKTAIL )
201 PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 | IPF_COCKTAIL )
202 PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 | IPF_COCKTAIL )
203 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
204 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
205
206 PORT_START /* DSW1 */
207 PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) )
208 PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
209 PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
210 PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
211 PORT_DIPSETTING( 0x01, DEF_STR( 1C_3C ) ) // 1C_6C when "Coin Mode 2"
212 PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_B ) )
213 PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
214 PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
215 PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
216 PORT_DIPSETTING( 0x04, DEF_STR( 1C_3C ) ) // 1C_6C when "Coin Mode 2"
217 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
218 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
219 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
220 PORT_DIPNAME( 0x60, 0x00, DEF_STR( Cabinet ) )
221 PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) // "Upright, Single Controls"
222 PORT_DIPSETTING( 0x40, "Upright, Dual Controls" )
223 // PORT_DIPSETTING( 0x20, "Cocktail, Single Controls" ) // IMPOSSIBLE !
224 PORT_DIPSETTING( 0x60, DEF_STR( Cocktail ) ) // "Cocktail, Dual Controls"
225 PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
226
227 PORT_START /* DSW2 */
228 PORT_DIPNAME( 0x01, 0x01, DEF_STR( Difficulty ) )
229 PORT_DIPSETTING( 0x01, "Normal" )
230 PORT_DIPSETTING( 0x00, "Hard" )
231 PORT_DIPNAME( 0x02, 0x00, DEF_STR( Demo_Sounds ) )
232 PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
233 PORT_DIPSETTING( 0x00, DEF_STR( On ) )
234 PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) )
235 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
236 PORT_DIPSETTING( 0x04, DEF_STR( On ) )
237 PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) )
238 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
239 PORT_DIPSETTING( 0x08, DEF_STR( On ) )
240 PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
241 PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
242 PORT_DIPSETTING( 0x10, DEF_STR( On ) )
243 PORT_DIPNAME( 0xe0, 0x00, "Coin Mode" ) // Check code at 0xff5c
244 PORT_DIPSETTING( 0x00, "Mode 1" )
245 PORT_DIPSETTING( 0x80, "Mode 2" )
246 /* Other values (0x20, 0x40, 0x60, 0xa0, 0xc0, 0xe0) : "Mode 1" */
247 INPUT_PORTS_END
248
249
250
251 static struct GfxLayout charlayout =
252 {
253 8,8, /* 8*8 characters */
254 3072, /* 3072 characters */
255 3, /* 3 bits per pixel */
256 { 2*3072*8*8, 3072*8*8, 0 }, /* the bitplanes are separated */
257 { 0, 1, 2, 3, 4, 5, 6, 7 },
258 { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
259 8*8 /* every char takes 8 consecutive bytes */
260 };
261
262
263 static struct GfxLayout spritelayout =
264 {
265 16,16, /* 16*16 sprites */
266 768, /* 768 sprites */
267 3, /* 3 bits per pixel */
268 { 2*768*16*16, 768*16*16, 0 }, /* the bitplanes are separated */
269 { 16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7,
270 0, 1, 2, 3, 4, 5, 6, 7 },
271 { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
272 8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
273 32*8 /* every sprite takes 32 consecutive bytes */
274 };
275
276 static struct GfxDecodeInfo tagteam_gfxdecodeinfo[] =
277 {
278 { REGION_GFX1, 0, &charlayout, 0, 4 }, /* chars */
279 { REGION_GFX1, 0, &spritelayout, 0, 4 }, /* sprites */
280 { -1 } /* end of array */
281 };
282
283
284
285 static struct AY8910interface ay8910_interface =
286 {
287 2, /* 2 chips */
288 1500000, /* 1.5 MHz ?? */
289 { 25, 25 },
290 { 0 },
291 { 0 },
292 { 0 },
293 { 0 }
294 };
295
296 static struct DACinterface dac_interface =
297 {
298 1,
299 { 255 }
300 };
301
302 static MACHINE_DRIVER_START( tagteam )
303
304 /* basic machine hardware */
305 MDRV_CPU_ADD(M6502, 1500000) /* 1.5 MHz ?? */
306 MDRV_CPU_MEMORY(readmem,writemem)
307 MDRV_CPU_VBLANK_INT(tagteam_interrupt,1)
308
309 MDRV_CPU_ADD(M6502, 975000)
310 MDRV_CPU_FLAGS(CPU_AUDIO_CPU) /* 975 kHz ?? */
311 MDRV_CPU_MEMORY(sound_readmem,sound_writemem)
312 MDRV_CPU_VBLANK_INT(nmi_line_pulse,16) /* IRQs are triggered by the main CPU */
313
314 MDRV_FRAMES_PER_SECOND(57)
315 MDRV_VBLANK_DURATION(3072)
316
317 /* video hardware */
318 MDRV_VIDEO_ATTRIBUTES(VIDEO_TYPE_RASTER)
319 MDRV_SCREEN_SIZE(32*8, 32*8)
320 MDRV_VISIBLE_AREA(0*8, 32*8-1, 1*8, 31*8-1)
321 MDRV_GFXDECODE(tagteam_gfxdecodeinfo)
322 MDRV_PALETTE_LENGTH(32)
323 MDRV_COLORTABLE_LENGTH(32)
324
325 MDRV_PALETTE_INIT(tagteam)
326 MDRV_VIDEO_START(tagteam)
327 MDRV_VIDEO_UPDATE(tagteam)
328
329 /* sound hardware */
330 MDRV_SOUND_ADD(AY8910, ay8910_interface)
331 MDRV_SOUND_ADD(DAC, dac_interface)
332 MACHINE_DRIVER_END
333
334
335
336 ROM_START( bigprowr )
337 ROM_REGION( 0x10000, REGION_CPU1, 0 ) /* 64k for code */
338 ROM_LOAD( "bf00-1.20", 0x08000, 0x2000, CRC(8aba32c9) SHA1(9228082a8251feaf25849311c3de63ca42cf659e) )
339 ROM_LOAD( "bf01.33", 0x0a000, 0x2000, CRC(0a41f3ae) SHA1(1b82cd864f0bd7f16f961fec0b88307996abb166) )
340 ROM_LOAD( "bf02.34", 0x0c000, 0x2000, CRC(a28b0a0e) SHA1(50b40048a3e2efb2afb7acfb4efde6dbc25fc009) )
341 ROM_LOAD( "bf03.46", 0x0e000, 0x2000, CRC(d4cf7ec7) SHA1(cfabe40adb05f6239c3e2f002a78efb50150d27d) )
342
343 ROM_REGION( 0x10000, REGION_CPU2, 0 ) /* 64k for audio code */
344 ROM_LOAD( "bf4.8", 0x04000, 0x2000, CRC(0558e1d8) SHA1(317011c0e3a9d5f73c67d044c1fab315ff8049fb) )
345 ROM_LOAD( "bf5.7", 0x06000, 0x2000, CRC(c1073f24) SHA1(0337c259c10fae3067e5e0e0acf54e6d0891b29f) )
346 ROM_LOAD( "bf6.6", 0x08000, 0x2000, CRC(208cd081) SHA1(e5f6379e7f7bc80cdea12de7e0a2bb232bb16b5a) )
347 ROM_LOAD( "bf7.3", 0x0a000, 0x2000, CRC(34a033dc) SHA1(01e4c331233a2337c7c53edd221bb87859278b04) )
348 ROM_LOAD( "bf8.2", 0x0c000, 0x2000, CRC(eafe8056) SHA1(4a2d1c903e4acee962aeb0f0f18333252790f686) )
349 ROM_LOAD( "bf9.1", 0x0e000, 0x2000, CRC(d589ce1b) SHA1(c2aca1cc6867d4d6d6e02ac29a4c53c667bf6d89) )
350
351 ROM_REGION( 0x12000, REGION_GFX1, ROMREGION_DISPOSE )
352 ROM_LOAD( "bf10.89", 0x00000, 0x2000, CRC(b1868746) SHA1(a3eff1b00f9ac2512d6ca81f9223723642d4f06a) )
353 ROM_LOAD( "bf11.94", 0x02000, 0x2000, CRC(c3fe99c1) SHA1(beb3056b37f26a52f3c0907868054b3cc3c4e3ea) )
354 ROM_LOAD( "bf12.103", 0x04000, 0x2000, CRC(c8717a46) SHA1(6de0238071aacb443234d9a7ef250ddfaa9dd1a8) )
355 ROM_LOAD( "bf13.91", 0x06000, 0x2000, CRC(23ee34d3) SHA1(2af79845c2d4f06eb85db14d67ec4a499fc272b1) )
356 ROM_LOAD( "bf14.95", 0x08000, 0x2000, CRC(a6721142) SHA1(200058d7b688dccda0ab0f568ab6c6c215a23e0a) )
357 ROM_LOAD( "bf15.105", 0x0a000, 0x2000, CRC(60ae1078) SHA1(f9c162ff0830aff26d121f04c107dadb060d4bd5) )
358 ROM_LOAD( "bf16.93", 0x0c000, 0x2000, CRC(d33dc245) SHA1(3a40ca7f7e17eaaea6e3f90fcf4cb9a72fc4ba8f) )
359 ROM_LOAD( "bf17.96", 0x0e000, 0x2000, CRC(ccf42380) SHA1(6a8958201125c1b13b1354c98adc573dbea64d56) )
360 ROM_LOAD( "bf18.107", 0x10000, 0x2000, CRC(fd6f006d) SHA1(ad100ac8c0fed24f922a2cc908c88b4fced07eb0) )
361
362 ROM_REGION( 0x0040, REGION_PROMS, 0 )
363 ROM_LOAD( "fko.8", 0x0000, 0x0020, CRC(b6ee1483) SHA1(b2ea7be533e29da6cd7302532da2eb0410490e6a) )
364 ROM_LOAD( "fjo.25", 0x0020, 0x0020, CRC(24da2b63) SHA1(4db7e1ff1b9fd5ae4098cd7ca66cf1fa2574501a) ) /* What is this prom for? */
365 ROM_END
366
367 ROM_START( tagteam )
368 ROM_REGION( 0x10000, REGION_CPU1, 0 ) /* 64k for code */
369 ROM_LOAD( "prowbf0.bin", 0x08000, 0x2000, CRC(6ec3afae) SHA1(8ae11cb41a72bda053ce8b79c383503da5324cd1) )
370 ROM_LOAD( "prowbf1.bin", 0x0a000, 0x2000, CRC(b8fdd176) SHA1(afa8e890ac54101eef0274c8aabe25d188085a18) )
371 ROM_LOAD( "prowbf2.bin", 0x0c000, 0x2000, CRC(3d33a923) SHA1(e6402290fca72f4fa3a76e37957b9d4f5b4aeddb) )
372 ROM_LOAD( "prowbf3.bin", 0x0e000, 0x2000, CRC(518475d2) SHA1(b26bb0bb658bfd5ac24ee8ebb7fc11a79917aeda) )
373
374 ROM_REGION( 0x10000, REGION_CPU2, 0 ) /* 64k for audio code */
375 ROM_LOAD( "bf4.8", 0x04000, 0x2000, CRC(0558e1d8) SHA1(317011c0e3a9d5f73c67d044c1fab315ff8049fb) )
376 ROM_LOAD( "bf5.7", 0x06000, 0x2000, CRC(c1073f24) SHA1(0337c259c10fae3067e5e0e0acf54e6d0891b29f) )
377 ROM_LOAD( "bf6.6", 0x08000, 0x2000, CRC(208cd081) SHA1(e5f6379e7f7bc80cdea12de7e0a2bb232bb16b5a) )
378 ROM_LOAD( "bf7.3", 0x0a000, 0x2000, CRC(34a033dc) SHA1(01e4c331233a2337c7c53edd221bb87859278b04) )
379 ROM_LOAD( "bf8.2", 0x0c000, 0x2000, CRC(eafe8056) SHA1(4a2d1c903e4acee962aeb0f0f18333252790f686) )
380 ROM_LOAD( "bf9.1", 0x0e000, 0x2000, CRC(d589ce1b) SHA1(c2aca1cc6867d4d6d6e02ac29a4c53c667bf6d89) )
381
382 ROM_REGION( 0x12000, REGION_GFX1, ROMREGION_DISPOSE )
383 ROM_LOAD( "prowbf10.bin", 0x00000, 0x2000, CRC(48165902) SHA1(3145fc83f17712b460a08b882677cfcac08fc272) )
384 ROM_LOAD( "bf11.94", 0x02000, 0x2000, CRC(c3fe99c1) SHA1(beb3056b37f26a52f3c0907868054b3cc3c4e3ea) )
385 ROM_LOAD( "prowbf12.bin", 0x04000, 0x2000, CRC(69de1ea2) SHA1(7b696c74e29c0bae33b386da463365e7e796c6a0) )
386 ROM_LOAD( "prowbf13.bin", 0x06000, 0x2000, CRC(ecfa581d) SHA1(1352c6a5f8e6f2d3fbe9f9e74c542ea2467f1438) )
387 ROM_LOAD( "bf14.95", 0x08000, 0x2000, CRC(a6721142) SHA1(200058d7b688dccda0ab0f568ab6c6c215a23e0a) )
388 ROM_LOAD( "prowbf15.bin", 0x0a000, 0x2000, CRC(d0de7e03) SHA1(79267c09621f8f5255c82a69790d5b52b1c5dd6e) )
389 ROM_LOAD( "prowbf16.bin", 0x0c000, 0x2000, CRC(75ee5705) SHA1(95fdea3768f2d5b81ba5dafd3b13a061cd96689a) )
390 ROM_LOAD( "bf17.96", 0x0e000, 0x2000, CRC(ccf42380) SHA1(6a8958201125c1b13b1354c98adc573dbea64d56) )
391 ROM_LOAD( "prowbf18.bin", 0x10000, 0x2000, CRC(e73a4bba) SHA1(6dbc2d741ebf8fcce9144cfe6fe6f35acd25ceef) )
392
393 ROM_REGION( 0x0040, REGION_PROMS, 0 )
394 ROM_LOAD( "fko.8", 0x0000, 0x0020, CRC(b6ee1483) SHA1(b2ea7be533e29da6cd7302532da2eb0410490e6a) )
395 ROM_LOAD( "fjo.25", 0x0020, 0x0020, CRC(24da2b63) SHA1(4db7e1ff1b9fd5ae4098cd7ca66cf1fa2574501a) ) /* What is this prom for? */
396 ROM_END
397
398
399
400 GAME( 1983, bigprowr, 0, tagteam, bigprowr, 0, ROT270, "Technos", "The Big Pro Wrestling!" )
401 GAME( 1983, tagteam, bigprowr, tagteam, tagteam, 0, ROT270, "Technos (Data East license)", "Tag Team Wrestling" )
402