1
/***************************************************************************
3
Driver by K.Wilkins Jan 1998
15
$0000-$3fff ROM (SF_S19)
16
$4000-$7fff ROM (SF_S20)
17
$8000-$bfff ROM (SF_SH) - This is a 32K ROM - Paged ????? How ????
20
$c800-$cfff READ:Unknown H/W WRITE:Unknown H/W (Upper PCB)
21
$d000-$d7ff Background RAM1
22
$d800-$dfff Background RAM2
23
$e000-$e7ff Sprite RAM
24
$e800-$efff READ:Unknown H/W WRITE:Unknown H/W
25
$f000-$f7ff READ:SF_S16 WRITE:Character RAM
26
$f800-$ffff READ:Unknown H/W WRITE:Attribute RAM
28
$c800-$cfff Appears to be RAM BUT 1st 0x10 bytes are swapped with
29
the sound CPU and visversa for READ OPERATIONS
34
Addr Address based write Data based write
37
$01 Clear sound CPU reset
42
$06 Clear/Disable Hardware interrupt
43
$07 Enable Hardware interrupt
44
$08 LOW Bank select for SF_SH X axis character scroll reg
45
$09 HIGH Bank select for SF_SH X axis pixel scroll reg
48
$0c Select 1st set of sprites colors
49
$0d Select 2nd set of sprites colors
56
$00 Status regsiter - cycle 0xc7, 0x55, 0x00 (Thanks to Dave Spicer for the info)
62
2K Character RAM at write only address $f000-$f7fff looks to be organised
63
64x32 chars with the screen rotated thru 90 degrees clockwise. There
64
appears to be some kind of attribute(?) RAM above at $f800-$ffff organised
67
From the look of data in the buffer it is arranged thus: 37x32 (HxW) which
68
would make the overall frame buffer 296x256.
70
Print function maybe around $09a2 based on info from log file.
72
$e000 looks like sprite ram, setup routines at $0008.
75
Sound System CPU Details
76
------------------------
79
$0000-$1fff ROM(SF_S5)
80
$a080 AY-3-8910(PSG1) Register address
81
$a081 AY-3-8910(PSG1) Read register
82
$a082 AY-3-8910(PSG1) Write register
83
$a090 AY-3-8910(PSG2) Register address
84
$a091 AY-3-8910(PSG2) Read register
85
$a092 AY-3-8910(PSG2) Write register
88
Strangely the RAM hardware registers seem to be overlaid at $c800
89
$00a6 routine here reads I/O ports and stores in, its not a straight
90
copy, the data is mangled before storage:
94
PSG2-F -> $c80a - DIP Switch Bank 2 (Test mode is here)
96
-------------------------------GET STAR------------------------------------
97
following info by Luca Elia (l.elia@tin.it)
100
---------------------
103
c806 used as a watchdog: main cpu reads then writes FF.
104
If FF was read, jp 0000h. Sound cpu zeroes it.
106
c807(1p) left 7 c809 DSW1(cpl'd)
107
c808(2p) down 6 c80a DSW2(cpl'd)
108
active_H right 5 c80b ip 1(cpl'd)
117
Main cpu writes to unmapped ports 0e,0f,05,03 at startup.
118
Before playing, f1 is written to e802 and 00 to port 03.
119
If flip screen dsw is on, ff is written to e802 an 00 to port 02, instead.
121
Interesting routines (main cpu)
122
-------------------------------
124
432 init the Ath sprite
125
569 reads a sequence from e803
126
607 prints the Ath string (FF terminated). String info is stored at
127
65bc in the form of: attribute, dest. address, string address (5 bytes)
128
b73 checks lives. If zero, writes 0 to port 04 then jp 0000h.
129
Before that, sets I to FF as a flag, for the startup ram check
130
routine, to not alter the credit counter.
131
1523 put name in hi-scores?
133
-------------------------------Performan-----------------------------------
134
Interesting RAM locations (Main CPU).
135
-------------------------------------
139
$8006 - $8035 High score table
140
$8609 - $860f High score characters to display to screen for highest score
143
****************************************************************************
145
Stephh's notes (based on the games Z80 code and some tests) :
149
- All these games have a specific way of handling inputs :
150
* when cabinet is set to "Upright", any player can use inputs
151
from player 1 OR from player 2
152
* when cabinet is set to "Cocktail", each player has its own inputs
153
See Mantis bug ID 01746 attached files with Z80 explanations
156
1) 'tigerh' and clones
161
- MCU dumped and emulated
162
- Game inputs aren't working after heliport 4 (area 35);
163
I can't tell at the moment if it's an ingame bug or not.
164
See Mantis bug ID 01785 for more details.
169
- MCU dumped and emulated
170
- Game inputs aren't working after heliport 4 (area 35);
171
I can't tell at the moment if it's an ingame bug or not.
172
See Mantis bug ID 01785 for more details.
176
- Bootleg based on 'tigerhj'
177
- I can't tell if a specific MCU is required for this game :
178
* MCU status doesn't seem to be required
179
(see nop instructions at 0x10da, 0x10db, 0x10e5 and 0x10e6)
180
* there is patched code at 0x0f9c which is called instead of
181
standard call to 0x10cc, and there is no call to 0x0f88
182
* there are writes to unknown ports 0x0e and 0x0f
183
* hardware test is still computed at 0x109d but there is
184
no delay to wait for correct value (0x83) to be returned
185
(thus the need of specific read/write handlers)
186
- Game inputs aren't working after heliport 4 (area 35);
187
I can't tell at the moment if it's an ingame bug or not.
188
See Mantis bug ID 01785 for more details.
192
- Bootleg based on 'tigerhj'
193
- MCU reads/writes are patched.as well as ROM check
194
- Game inputs are still working after heliport 4 (area 35);
195
This is the ONLY set with this behaviour !
196
See Mantis bug ID 01785 for more details.
200
- Bootleg based on 'tigerhj'
201
- MCU reads/writes are patched.
202
- There is extra code at 0x10e2 (where MCU status was checked)
203
that prevents player to get any extra lives (even by collecting
204
10 diamonds) when Dip Switch is set to "20k then every 80k"
205
(see Mantis bug ID 00652 with Z80 explanations).
206
- Game inputs aren't working after heliport 4 (area 35);
207
I can't tell at the moment if it's an ingame bug or not.
208
See Mantis bug ID 01785 for more details.
211
2) 'getstar' and clones
215
- US version, licensed to Kitkorp - name "Guardian".
216
- MCU missing and simulated.
217
- Difficulty determines the number of energy bars you get.
218
- Each hit removes 1 enegy bar.
219
- According to the manual, default difficulty shall be set to "Hard".
220
- You can only get ONE extra life.
221
- I don't know if it's an ingame bug, but you always have to enter
222
your initials after a game ends, even if you score less than 10th place.
226
- Japan version - name "Get Star".
227
- MCU missing and simulated.
228
- You always get 4 energy bars.
229
- Difficulty determines how many energy bars you lose when you get hit.
230
- I don't know what default difficulty shall be, so I set it to "Easy".
231
- You can get multiple extra lives.
235
- Bootleg based on 'getstarj'
236
- MCU reads/writes are patched, but this hasn't been done in the "test mode".
237
- The game seems to have its own protection on startup (check code at 0x6d1a).
241
- Bootleg based on 'getstarj'
242
- MCU reads/writes are patched, but this hasn't been done in the "test mode".
243
- The game seems to have its own protection (check code at 0x0569 and 0x0ac6).
244
- Patches are coded diffrently than in 'gtstarb1' and code isn't always perfect
245
(lazy coding ?) which causes LOTS of ingames bugs or strange behaviours :
246
* patched command 0x20 : NO continue play
247
* patched command 0x21 : as soon as a player loses all his lives,
248
the game is over (even if other player still has lives)
249
* patched command 0x22 : difficulty is ALWAYS set to "Easy" at start
250
so "Difficulty" Dip Switches have no effect when you are playing
251
(it still has an effect in the "test mode" though)
252
* patched command 0x23 : different lives settings
253
(thus the need of a specific INPUT_PORTS definition for this game)
254
* patched command 0x25 : right and down directions are swapped
255
(thus the need of a specific INPUT_PORTS definition for this game)
256
* patched command 0x2a : player flag (which determines if player 1 or
257
player 2 is playing) is NOT updated, causing the following things :
258
. current player score will ALWAYS be dusplayed under player 1
259
. when cabinet is set to "Cocktail", player 2 uses player 1 inputs
260
* patched command 0x38 : laser position does NOT change according to
261
player position (it ALWATS starts from the middle of the screen)
263
***************************************************************************/
266
#include "cpu/z80/z80.h"
267
#include "deprecat.h"
268
#include "cpu/m6805/m6805.h"
269
#include "sound/ay8910.h"
270
#include "includes/slapfght.h"
273
static ADDRESS_MAP_START( perfrman_map, AS_PROGRAM, 8 )
274
AM_RANGE(0x0000, 0x7fff) AM_ROM
275
AM_RANGE(0x8000, 0x87ff) AM_RAM
276
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1")
277
AM_RANGE(0x8810, 0x8fff) AM_RAMBANK("bank1") /* Shared RAM with sound CPU */
278
AM_RANGE(0x9000, 0x97ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_videoram)
279
AM_RANGE(0x9800, 0x9fff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_colorram)
280
AM_RANGE(0xa000, 0xa7ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
283
static ADDRESS_MAP_START( tigerh_map, AS_PROGRAM, 8 )
284
AM_RANGE(0x0000, 0xbfff) AM_ROM
285
AM_RANGE(0xc000, 0xc7ff) AM_RAM
286
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
287
AM_RANGE(0xc810, 0xcfff) AM_RAM
288
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_videoram)
289
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_colorram)
290
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
291
AM_RANGE(0xe800, 0xe800) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_lo)
292
AM_RANGE(0xe801, 0xe801) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_hi)
293
AM_RANGE(0xe802, 0xe802) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrolly)
294
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(slapfight_fixram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixvideoram)
295
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram)
298
static ADDRESS_MAP_START( slapfght_map, AS_PROGRAM, 8 )
299
AM_RANGE(0x0000, 0x7fff) AM_ROM
300
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
301
AM_RANGE(0xc000, 0xc7ff) AM_RAM
302
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
303
AM_RANGE(0xc810, 0xcfff) AM_RAM
304
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_videoram)
305
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_colorram)
306
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
307
AM_RANGE(0xe800, 0xe800) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_lo)
308
AM_RANGE(0xe801, 0xe801) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_hi)
309
AM_RANGE(0xe802, 0xe802) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrolly)
310
// AM_RANGE(0xe803, 0xe803) AM_READWRITE(slapfight_mcu_r, slapfight_mcu_w)
311
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(slapfight_fixram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixvideoram)
312
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram)
315
static ADDRESS_MAP_START( slapfighb2_map, AS_PROGRAM, 8 )
316
AM_RANGE(0x0000, 0x7fff) AM_ROM
317
AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank1")
318
AM_RANGE(0xc000, 0xc7ff) AM_RAM
319
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
320
AM_RANGE(0xc810, 0xcfff) AM_RAM
321
AM_RANGE(0xd000, 0xd7ff) AM_RAM_WRITE(slapfight_videoram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_videoram)
322
AM_RANGE(0xd800, 0xdfff) AM_RAM_WRITE(slapfight_colorram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_colorram)
323
AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_BASE_SIZE_GENERIC(spriteram)
324
AM_RANGE(0xe800, 0xe800) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_hi)
325
AM_RANGE(0xe802, 0xe802) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrolly)
326
AM_RANGE(0xe803, 0xe803) AM_WRITEONLY AM_BASE_MEMBER(slapfght_state, m_slapfight_scrollx_lo)
327
AM_RANGE(0xec00, 0xefff) AM_ROM // it reads a copy of the logo from here!
328
AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(slapfight_fixram_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixvideoram)
329
AM_RANGE(0xf800, 0xffff) AM_RAM_WRITE(slapfight_fixcol_w) AM_BASE_MEMBER(slapfght_state, m_slapfight_fixcolorram)
332
static ADDRESS_MAP_START( slapfght_io_map, AS_IO, 8 )
333
ADDRESS_MAP_GLOBAL_MASK(0xff)
334
AM_RANGE(0x00, 0x00) AM_WRITE(slapfight_port_00_w)
335
AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w)
336
AM_RANGE(0x02, 0x03) AM_WRITE(slapfight_flipscreen_w)
337
// AM_RANGE(0x04, 0x04) AM_WRITE(getstar_port_04_w)
338
AM_RANGE(0x06, 0x06) AM_WRITE(slapfight_port_06_w)
339
AM_RANGE(0x07, 0x07) AM_WRITE(slapfight_port_07_w)
340
AM_RANGE(0x08, 0x08) AM_WRITE(slapfight_port_08_w) /* select bank 0 */
341
AM_RANGE(0x09, 0x09) AM_WRITE(slapfight_port_09_w) /* select bank 1 */
342
AM_RANGE(0x0c, 0x0d) AM_WRITE(slapfight_palette_bank_w)
345
static ADDRESS_MAP_START( slapfight_m68705_map, AS_PROGRAM, 8 )
346
ADDRESS_MAP_GLOBAL_MASK(0x7ff)
347
AM_RANGE(0x0000, 0x0000) AM_READWRITE(slapfight_68705_portA_r, slapfight_68705_portA_w)
348
AM_RANGE(0x0001, 0x0001) AM_READWRITE(slapfight_68705_portB_r, slapfight_68705_portB_w)
349
AM_RANGE(0x0002, 0x0002) AM_READWRITE(slapfight_68705_portC_r, slapfight_68705_portC_w)
350
AM_RANGE(0x0004, 0x0004) AM_WRITE(slapfight_68705_ddrA_w)
351
AM_RANGE(0x0005, 0x0005) AM_WRITE(slapfight_68705_ddrB_w)
352
AM_RANGE(0x0006, 0x0006) AM_WRITE(slapfight_68705_ddrC_w)
353
AM_RANGE(0x0010, 0x007f) AM_RAM
354
AM_RANGE(0x0080, 0x07ff) AM_ROM
357
static READ8_HANDLER(tigerh_status_r)
359
return (slapfight_port_00_r(space, 0) & 0xf9)| ((tigerh_mcu_status_r(space, 0)));
362
static ADDRESS_MAP_START( tigerh_io_map, AS_IO, 8 )
363
ADDRESS_MAP_GLOBAL_MASK(0xff)
364
AM_RANGE(0x00, 0x00) AM_READWRITE(tigerh_status_r, slapfight_port_00_w) /* status register */
365
AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w)
366
AM_RANGE(0x02, 0x03) AM_WRITE(slapfight_flipscreen_w)
367
AM_RANGE(0x06, 0x06) AM_WRITE(slapfight_port_06_w)
368
AM_RANGE(0x07, 0x07) AM_WRITE(slapfight_port_07_w)
371
static ADDRESS_MAP_START( tigerhb_io_map, AS_IO, 8 )
372
ADDRESS_MAP_GLOBAL_MASK(0xff)
373
AM_RANGE(0x00, 0x00) AM_READWRITE(slapfight_port_00_r, slapfight_port_00_w) /* status register */
374
AM_RANGE(0x01, 0x01) AM_WRITE(slapfight_port_01_w)
375
AM_RANGE(0x02, 0x03) AM_WRITE(slapfight_flipscreen_w)
376
AM_RANGE(0x06, 0x06) AM_WRITE(slapfight_port_06_w)
377
AM_RANGE(0x07, 0x07) AM_WRITE(slapfight_port_07_w)
380
static ADDRESS_MAP_START( tigerh_m68705_map, AS_PROGRAM, 8 )
381
ADDRESS_MAP_GLOBAL_MASK(0x7ff)
382
AM_RANGE(0x0000, 0x0000) AM_READWRITE(tigerh_68705_portA_r,tigerh_68705_portA_w)
383
AM_RANGE(0x0001, 0x0001) AM_READWRITE(tigerh_68705_portB_r,tigerh_68705_portB_w)
384
AM_RANGE(0x0002, 0x0002) AM_READWRITE(tigerh_68705_portC_r,tigerh_68705_portC_w)
385
AM_RANGE(0x0004, 0x0004) AM_WRITE(tigerh_68705_ddrA_w)
386
AM_RANGE(0x0005, 0x0005) AM_WRITE(tigerh_68705_ddrB_w)
387
AM_RANGE(0x0006, 0x0006) AM_WRITE(tigerh_68705_ddrC_w)
388
AM_RANGE(0x0010, 0x007f) AM_RAM
389
AM_RANGE(0x0080, 0x07ff) AM_ROM
392
static ADDRESS_MAP_START( perfrman_sound_map, AS_PROGRAM, 8 )
393
AM_RANGE(0x0000, 0x1fff) AM_ROM
394
AM_RANGE(0x8800, 0x880f) AM_RAM AM_SHARE("share1")
395
AM_RANGE(0x8810, 0x8fff) AM_RAMBANK("bank1") /* Shared RAM with main CPU */
396
AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_address_w)
397
AM_RANGE(0xa081, 0xa081) AM_DEVREAD("ay1", ay8910_r)
398
AM_RANGE(0xa082, 0xa082) AM_DEVWRITE("ay1", ay8910_data_w)
399
AM_RANGE(0xa090, 0xa090) AM_DEVWRITE("ay2", ay8910_address_w)
400
AM_RANGE(0xa091, 0xa091) AM_DEVREAD("ay2", ay8910_r)
401
AM_RANGE(0xa092, 0xa092) AM_DEVWRITE("ay2", ay8910_data_w)
402
AM_RANGE(0xa0e0, 0xa0e0) AM_WRITE(getstar_sh_intenable_w) /* maybe a0f0 also -LE */
403
// AM_RANGE(0xa0f0, 0xa0f0) AM_WRITENOP
406
static ADDRESS_MAP_START( slapfght_sound_map, AS_PROGRAM, 8 )
407
AM_RANGE(0x0000, 0x1fff) AM_ROM
408
AM_RANGE(0xa080, 0xa080) AM_DEVWRITE("ay1", ay8910_address_w)
409
AM_RANGE(0xa081, 0xa081) AM_DEVREAD("ay1", ay8910_r)
410
AM_RANGE(0xa082, 0xa082) AM_DEVWRITE("ay1", ay8910_data_w)
411
AM_RANGE(0xa090, 0xa090) AM_DEVWRITE("ay2", ay8910_address_w)
412
AM_RANGE(0xa091, 0xa091) AM_DEVREAD("ay2", ay8910_r)
413
AM_RANGE(0xa092, 0xa092) AM_DEVWRITE("ay2", ay8910_data_w)
414
AM_RANGE(0xa0e0, 0xa0e0) AM_WRITE(getstar_sh_intenable_w) /* maybe a0f0 also -LE */
415
// AM_RANGE(0xa0f0, 0xa0f0) AM_WRITENOP
416
AM_RANGE(0xc800, 0xc80f) AM_RAM AM_SHARE("share1")
417
AM_RANGE(0xc810, 0xcfff) AM_RAM
418
AM_RANGE(0xd000, 0xffff) AM_RAM
423
static INPUT_PORTS_START( slapfght_generic )
425
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
426
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
427
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
428
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
429
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
430
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
431
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
432
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
435
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 )
436
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 )
437
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
438
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
439
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
440
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
441
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
442
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
445
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:8,7,6")
446
// PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
447
PORT_DIPSETTING( 0x02, DEF_STR( 3C_1C ) )
448
PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) )
449
PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
450
PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) )
451
PORT_DIPSETTING( 0x06, DEF_STR( 1C_2C ) )
452
PORT_DIPSETTING( 0x05, DEF_STR( 1C_3C ) )
453
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
454
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW1:5")
455
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
456
PORT_DIPSETTING( 0x08, DEF_STR( On ) )
457
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:4")
458
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
459
PORT_DIPSETTING( 0x10, DEF_STR( Cocktail ) )
460
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW1:3")
461
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
462
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
463
PORT_SERVICE_DIPLOC(0x40, IP_ACTIVE_LOW, "SW1:2" )
464
PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_LOW, "SW1:1" )
467
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:8,7")
468
PORT_DIPSETTING( 0x01, "1" )
469
PORT_DIPSETTING( 0x00, "2" )
470
PORT_DIPSETTING( 0x03, "3" )
471
PORT_DIPSETTING( 0x02, "5" )
472
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,5")
473
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
474
PORT_DIPSETTING( 0x08, DEF_STR( Medium ) )
475
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
476
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
477
/* Filled by "Bonus Lives" settings */
478
PORT_DIPUNUSED_DIPLOC( 0x10, IP_ACTIVE_LOW, "SW2:4" )
479
PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW2:3" )
480
PORT_DIPUNUSED_DIPLOC( 0x40, IP_ACTIVE_LOW, "SW2:2" )
481
PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_LOW, "SW2:1" )
485
static INPUT_PORTS_START( perfrman )
486
PORT_INCLUDE(slapfght_generic)
489
PORT_DIPNAME( 0x20, 0x20, "Intermissions" ) PORT_DIPLOCATION("SW1:3") /* "Screen Test" in the "test mode" */
490
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
491
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
494
PORT_DIPNAME( 0xf0, 0x70, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,3,2,1")
495
PORT_DIPSETTING( 0xb0, "20k, 120k, then every 100k" )
496
PORT_DIPSETTING( 0xa0, "40k, 120k, then every 100k" )
497
PORT_DIPSETTING( 0x90, "60k, 160k, then every 100k" )
498
PORT_DIPSETTING( 0x80, "Every 100k" )
499
PORT_DIPSETTING( 0x70, "20k, 220k, then every 200k" )
500
PORT_DIPSETTING( 0x60, "40k, 240k, then every 200k" )
501
PORT_DIPSETTING( 0x50, "60k, 260k, then every 200k" )
502
PORT_DIPSETTING( 0x40, "Every 200k" )
503
PORT_DIPSETTING( 0x30, "20k, 320k, then every 300k" )
504
PORT_DIPSETTING( 0x20, "40k, 340k, then every 300k" )
505
PORT_DIPSETTING( 0x10, "60k, 360k, then every 300k" )
506
PORT_DIPSETTING( 0x00, "Every 300k" )
507
PORT_DIPSETTING( 0xf0, "20k only" )
508
PORT_DIPSETTING( 0xe0, "40k only" )
509
PORT_DIPSETTING( 0xd0, "60k only" )
510
PORT_DIPSETTING( 0xc0, DEF_STR( None ) )
514
static INPUT_PORTS_START( tigerh )
515
PORT_INCLUDE(slapfght_generic)
518
PORT_DIPNAME( 0x80, 0x80, "Player Speed" ) PORT_DIPLOCATION("SW1:1")
519
PORT_DIPSETTING( 0x80, DEF_STR( Normal ) )
520
PORT_DIPSETTING( 0x00, "Fast" )
523
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:8,7")
524
PORT_DIPSETTING( 0x01, "1" )
525
PORT_DIPSETTING( 0x00, "2" )
526
PORT_DIPSETTING( 0x03, "3" )
527
PORT_DIPSETTING( 0x02, "5" )
528
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:6,5")
529
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
530
PORT_DIPSETTING( 0x08, DEF_STR( Medium ) )
531
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
532
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
533
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:4")
534
PORT_DIPSETTING( 0x10, "20k, 100k, then every 80k" ) // see notes for 'tigerhb3'
535
PORT_DIPSETTING( 0x00, "50k, 170k, then every 120k" )
536
PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW2:3" )
537
PORT_DIPUNUSED_DIPLOC( 0x40, IP_ACTIVE_LOW, "SW2:2" )
538
PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_LOW, "SW2:1" )
542
static INPUT_PORTS_START( slapfigh )
543
PORT_INCLUDE(slapfght_generic)
546
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:8,7")
547
PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
548
PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
549
PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) )
550
PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
551
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:6,5")
552
PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) )
553
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_1C ) )
554
PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) )
555
PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) )
556
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW1:4")
557
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
558
PORT_DIPSETTING( 0x10, DEF_STR( On ) )
559
PORT_DIPNAME( 0x20, 0x20, "Screen Test" ) PORT_CODE(KEYCODE_F1) PORT_TOGGLE PORT_DIPLOCATION("SW1:3")
560
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
561
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
562
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW1:2")
563
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
564
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
565
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) )
566
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
567
PORT_DIPSETTING( 0x80, DEF_STR( Cocktail ) ) PORT_DIPLOCATION("SW1:1")
570
PORT_DIPUNUSED_DIPLOC( 0x01, IP_ACTIVE_LOW, "SW2:8" )
571
PORT_SERVICE_DIPLOC(0x02, IP_ACTIVE_LOW, "SW2:7" )
572
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:6,5")
573
PORT_DIPSETTING( 0x08, "1" )
574
PORT_DIPSETTING( 0x00, "2" )
575
PORT_DIPSETTING( 0x0c, "3" )
576
PORT_DIPSETTING( 0x04, "5" )
577
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,3")
578
PORT_DIPSETTING( 0x30, "30000 100000" )
579
PORT_DIPSETTING( 0x10, "50000 200000" )
580
PORT_DIPSETTING( 0x20, "50000" )
581
PORT_DIPSETTING( 0x00, "100000" )
582
PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1")
583
PORT_DIPSETTING( 0x40, DEF_STR( Easy ) )
584
PORT_DIPSETTING( 0xc0, DEF_STR( Medium ) )
585
PORT_DIPSETTING( 0x80, DEF_STR( Hard ) )
586
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
590
static INPUT_PORTS_START( getstar )
591
PORT_INCLUDE(slapfght_generic)
594
/* harder default difficulty (confirmed by manual) */
595
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,5")
596
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
597
PORT_DIPSETTING( 0x08, DEF_STR( Medium ) )
598
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
599
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
600
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,3")
601
PORT_DIPSETTING( 0x30, "50k only" )
602
PORT_DIPSETTING( 0x20, "100k only" )
603
PORT_DIPSETTING( 0x10, "150k only" )
604
PORT_DIPSETTING( 0x00, "200k only" )
607
static INPUT_PORTS_START( getstarj )
608
PORT_INCLUDE(getstar)
610
/* easier default difficulty (to be confirmed) and different bonus lives settings */
612
PORT_DIPNAME( 0x0c, 0x0c, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,5")
613
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
614
PORT_DIPSETTING( 0x08, DEF_STR( Medium ) )
615
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
616
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
617
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4")
618
PORT_DIPSETTING( 0x10, "30k, 130k, then every 100k" )
619
PORT_DIPSETTING( 0x00, "50k, 200k, then every 150k" )
620
PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW2:3" )
623
static INPUT_PORTS_START( gtstarb2 )
624
PORT_INCLUDE(getstarj)
626
/* RIGHT and DOWN are swapped due to code at 0x0551 */
628
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
629
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
630
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
631
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
633
/* different lives settings due to code at 0x0e36 */
635
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:8,7")
636
PORT_DIPSETTING( 0x02, "3" )
637
PORT_DIPSETTING( 0x01, "4" )
638
PORT_DIPSETTING( 0x00, "5" )
639
PORT_DIPSETTING( 0x03, "240 (Cheat)")
640
/* difficulty settings have no effect due to code at 0x0e7c */
641
/* I don't mark the Dips as "unused" because they are still read in the "test mode" */
645
static const gfx_layout charlayout =
647
8,8, /* 8*8 characters */
648
RGN_FRAC(1,2), /* 1024 characters */
649
2, /* 2 bits per pixel */
650
{ RGN_FRAC(0,2), RGN_FRAC(1,2) },
651
{ 0, 1, 2, 3, 4, 5, 6, 7 },
652
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
653
8*8 /* every char takes 8 consecutive bytes */
656
static const gfx_layout tilelayout =
659
RGN_FRAC(1,4), /* 2048/4096 tiles */
660
4, /* 4 bits per pixel */
661
{ RGN_FRAC(0,4), RGN_FRAC(1,4), RGN_FRAC(2,4), RGN_FRAC(3,4) },
662
{ 0, 1, 2, 3, 4, 5, 6, 7 },
663
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
664
8*8 /* every tile takes 8 consecutive bytes */
667
static const gfx_layout spritelayout =
669
16,16, /* 16*16 sprites */
670
RGN_FRAC(1,4), /* 512/1024 sprites */
671
4, /* 4 bits per pixel */
672
{ RGN_FRAC(0,4), RGN_FRAC(1,4), RGN_FRAC(2,4), RGN_FRAC(3,4) },
673
{ 0, 1, 2, 3, 4, 5, 6, 7, 8,
674
9, 10 ,11, 12, 13, 14, 15 },
675
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
676
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
677
32*8 /* every sprite takes 64 consecutive bytes */
680
static const gfx_layout perfrman_charlayout =
682
8,8, /* 8*8 characters */
683
RGN_FRAC(1,3), /* 1024 characters */
684
3, /* 3 bits per pixel */
685
{ RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) },
686
{ 0, 1, 2, 3, 4, 5, 6, 7 },
687
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
688
8*8 /* every char takes 8 consecutive bytes */
691
static const gfx_layout perfrman_spritelayout =
693
16,16, /* 16*16 sprites */
694
RGN_FRAC(1,3), /* 256 sprites */
695
3, /* 3 bits per pixel */
696
{ RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) },
697
{ 0, 1, 2, 3, 4, 5, 6, 7, 8,
698
9, 10 ,11, 12, 13, 14, 15 },
699
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
700
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
705
static GFXDECODE_START( perfrman )
706
GFXDECODE_ENTRY( "gfx1", 0, perfrman_charlayout, 0, 16 )
707
GFXDECODE_ENTRY( "gfx2", 0, perfrman_spritelayout, 128, 16 )
710
static GFXDECODE_START( slapfght )
711
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 64 )
712
GFXDECODE_ENTRY( "gfx2", 0, tilelayout, 0, 16 )
713
GFXDECODE_ENTRY( "gfx3", 0, spritelayout, 0, 16 )
718
static const ay8910_interface ay8910_interface_1 =
720
AY8910_LEGACY_OUTPUT,
721
AY8910_DEFAULT_LOADS,
722
DEVCB_INPUT_PORT("IN0"),
723
DEVCB_INPUT_PORT("IN1"),
728
static const ay8910_interface ay8910_interface_2 =
730
AY8910_LEGACY_OUTPUT,
731
AY8910_DEFAULT_LOADS,
732
DEVCB_INPUT_PORT("DSW1"),
733
DEVCB_INPUT_PORT("DSW2"),
738
static SCREEN_EOF( perfrman )
740
address_space *space = machine.device("maincpu")->memory().space(AS_PROGRAM);
741
buffer_spriteram_w(space, 0, 0);
744
static MACHINE_CONFIG_START( perfrman, slapfght_state )
746
/* basic machine hardware */
747
MCFG_CPU_ADD("maincpu", Z80,16000000/4) /* 4MHz ???, 16MHz Oscillator */
748
MCFG_CPU_PROGRAM_MAP(perfrman_map)
749
MCFG_CPU_IO_MAP(slapfght_io_map)
750
MCFG_CPU_VBLANK_INT("screen", irq0_line_hold)
752
MCFG_CPU_ADD("audiocpu", Z80,16000000/8) /* 2MHz ???, 16MHz Oscillator */
753
MCFG_CPU_PROGRAM_MAP(perfrman_sound_map)
754
MCFG_CPU_VBLANK_INT_HACK(getstar_interrupt,4) /* music speed, verified */
756
MCFG_QUANTUM_TIME(attotime::from_hz(600)) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
758
MCFG_MACHINE_RESET(slapfight)
761
MCFG_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
763
MCFG_SCREEN_ADD("screen", RASTER)
764
MCFG_SCREEN_REFRESH_RATE(60)
765
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
766
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
767
MCFG_SCREEN_SIZE(64*8, 32*8)
768
MCFG_SCREEN_VISIBLE_AREA(1*8, 34*8-1, 2*8, 32*8-1)
769
MCFG_SCREEN_UPDATE(perfrman)
770
MCFG_SCREEN_EOF(perfrman)
772
MCFG_GFXDECODE(perfrman)
773
MCFG_PALETTE_LENGTH(256)
775
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
776
MCFG_VIDEO_START(perfrman)
779
MCFG_SPEAKER_STANDARD_MONO("mono")
781
MCFG_SOUND_ADD("ay1", AY8910, 16000000/8)
782
MCFG_SOUND_CONFIG(ay8910_interface_1)
783
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
785
MCFG_SOUND_ADD("ay2", AY8910, 16000000/8)
786
MCFG_SOUND_CONFIG(ay8910_interface_2)
787
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
791
static MACHINE_CONFIG_START( tigerhb, slapfght_state )
793
/* basic machine hardware */
794
MCFG_CPU_ADD("maincpu", Z80, 6000000)
795
MCFG_CPU_PROGRAM_MAP(tigerh_map)
796
MCFG_CPU_IO_MAP(tigerhb_io_map)
797
MCFG_CPU_VBLANK_INT("screen", irq0_line_hold)
799
MCFG_CPU_ADD("audiocpu", Z80, 6000000)
800
MCFG_CPU_PROGRAM_MAP(slapfght_sound_map)
801
MCFG_CPU_PERIODIC_INT(nmi_line_pulse,6*60) /* ??? */
803
MCFG_QUANTUM_TIME(attotime::from_hz(600)) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
805
MCFG_MACHINE_RESET(slapfight)
808
MCFG_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
810
MCFG_SCREEN_ADD("screen", RASTER)
811
MCFG_SCREEN_REFRESH_RATE(60)
812
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
813
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
814
MCFG_SCREEN_SIZE(64*8, 32*8)
815
MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
816
MCFG_SCREEN_UPDATE(slapfight)
817
MCFG_SCREEN_EOF(perfrman)
819
MCFG_GFXDECODE(slapfght)
820
MCFG_PALETTE_LENGTH(256)
822
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
823
MCFG_VIDEO_START(slapfight)
826
MCFG_SPEAKER_STANDARD_MONO("mono")
828
MCFG_SOUND_ADD("ay1", AY8910, 1500000)
829
MCFG_SOUND_CONFIG(ay8910_interface_1)
830
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
832
MCFG_SOUND_ADD("ay2", AY8910, 1500000)
833
MCFG_SOUND_CONFIG(ay8910_interface_2)
834
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
837
static MACHINE_CONFIG_START( tigerh, slapfght_state )
839
/* basic machine hardware */
840
MCFG_CPU_ADD("maincpu", Z80, XTAL_36MHz/6) /* verified on pcb */
841
MCFG_CPU_PROGRAM_MAP(tigerh_map)
842
MCFG_CPU_IO_MAP(tigerh_io_map)
843
MCFG_CPU_VBLANK_INT("screen", irq0_line_hold)
845
MCFG_CPU_ADD("audiocpu", Z80, XTAL_36MHz/12) /* verified on pcb */
846
MCFG_CPU_PROGRAM_MAP(slapfght_sound_map)
847
MCFG_CPU_PERIODIC_INT(nmi_line_pulse,6*60) /* ??? */
849
MCFG_CPU_ADD("mcu", M68705,XTAL_36MHz/12) /* verified on pcb */
850
MCFG_CPU_PROGRAM_MAP(tigerh_m68705_map)
852
MCFG_QUANTUM_TIME(attotime::from_hz(600)) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
854
MCFG_MACHINE_RESET(slapfight)
857
MCFG_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
859
MCFG_SCREEN_ADD("screen", RASTER)
860
MCFG_SCREEN_REFRESH_RATE(60)
861
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
862
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
863
MCFG_SCREEN_SIZE(64*8, 32*8)
864
MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
865
MCFG_SCREEN_UPDATE(slapfight)
866
MCFG_SCREEN_EOF(perfrman)
868
MCFG_GFXDECODE(slapfght)
869
MCFG_PALETTE_LENGTH(256)
871
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
872
MCFG_VIDEO_START(slapfight)
875
MCFG_SPEAKER_STANDARD_MONO("mono")
877
MCFG_SOUND_ADD("ay1", AY8910, XTAL_36MHz/24) /* verified on pcb */
878
MCFG_SOUND_CONFIG(ay8910_interface_1)
879
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
881
MCFG_SOUND_ADD("ay2", AY8910, XTAL_36MHz/24) /* verified on pcb */
882
MCFG_SOUND_CONFIG(ay8910_interface_2)
883
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
887
static MACHINE_CONFIG_START( slapfigh, slapfght_state )
889
/* basic machine hardware */
890
MCFG_CPU_ADD("maincpu",Z80, XTAL_36MHz/6) /* verified on pcb */
891
MCFG_CPU_PROGRAM_MAP(slapfght_map)
892
MCFG_CPU_IO_MAP(slapfght_io_map)
893
MCFG_CPU_VBLANK_INT("screen", irq0_line_hold)
895
MCFG_CPU_ADD("audiocpu", Z80, XTAL_36MHz/12) /* verified on pcb */
896
MCFG_CPU_PROGRAM_MAP(slapfght_sound_map)
897
MCFG_CPU_VBLANK_INT_HACK(getstar_interrupt, 3)
899
MCFG_CPU_ADD("mcu", M68705, XTAL_36MHz/12) /* verified on pcb */
900
MCFG_CPU_PROGRAM_MAP(slapfight_m68705_map)
902
MCFG_QUANTUM_TIME(attotime::from_hz(600)) /* 10 CPU slices per frame - enough for the sound CPU to read all commands */
904
MCFG_MACHINE_RESET(slapfight)
907
MCFG_VIDEO_ATTRIBUTES(VIDEO_BUFFERS_SPRITERAM)
909
MCFG_SCREEN_ADD("screen", RASTER)
910
MCFG_SCREEN_REFRESH_RATE(60)
911
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */)
912
MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
913
MCFG_SCREEN_SIZE(64*8, 32*8)
914
MCFG_SCREEN_VISIBLE_AREA(1*8, 36*8-1, 2*8, 32*8-1)
915
MCFG_SCREEN_UPDATE(slapfight)
916
MCFG_SCREEN_EOF(perfrman)
918
MCFG_GFXDECODE(slapfght)
919
MCFG_PALETTE_LENGTH(256)
921
MCFG_PALETTE_INIT(RRRR_GGGG_BBBB)
922
MCFG_VIDEO_START(slapfight)
925
MCFG_SPEAKER_STANDARD_MONO("mono")
927
MCFG_SOUND_ADD("ay1", AY8910, XTAL_36MHz/24) /* verified on pcb */
928
MCFG_SOUND_CONFIG(ay8910_interface_1)
929
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
931
MCFG_SOUND_ADD("ay2", AY8910, XTAL_36MHz/24) /* verified on pcb */
932
MCFG_SOUND_CONFIG(ay8910_interface_2)
933
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
936
static MACHINE_CONFIG_DERIVED( slapfighb1, slapfigh )
938
/* basic machine hardware */
940
MCFG_DEVICE_REMOVE("mcu")
943
/* identical to slapfigh_ but the scroll registers are located elsewhere in memory */
944
static MACHINE_CONFIG_DERIVED( slapfighb2, slapfigh )
946
/* basic machine hardware */
948
MCFG_CPU_MODIFY("maincpu")
949
MCFG_CPU_PROGRAM_MAP(slapfighb2_map)
951
MCFG_DEVICE_REMOVE("mcu")
955
ROM_START( perfrman )
956
ROM_REGION( 0x10000, "maincpu", 0 ) /* Main CPU code */
957
ROM_LOAD( "ci07.0", 0x00000, 0x4000, CRC(7ad32eea) SHA1(e5b29793e9c8c5c9322ca2af468a9810a598c0ae) )
958
ROM_LOAD( "ci08.1", 0x04000, 0x4000, CRC(90a02d5f) SHA1(9f2d2ce70a5bc96fc9d268e2b24533f73361225c) )
960
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound CPU code */
961
ROM_LOAD( "ci06.4", 0x0000, 0x2000, CRC(df891ad0) SHA1(0d33e7d0562831382f48d1588ef20a1bc73be71a) )
963
ROM_REGION( 0x6000, "gfx1", 0 ) /* Tiles */
964
ROM_LOAD( "ci02.7", 0x0000, 0x2000, CRC(8efa960a) SHA1(d547ea23f2dd622500bf3f38cd9aca4e80aa27ca) )
965
ROM_LOAD( "ci01.6", 0x2000, 0x2000, CRC(2e8e69df) SHA1(183c1868f0c94a2a82709f9c38020ee81c283051) )
966
ROM_LOAD( "ci00.5", 0x4000, 0x2000, CRC(79e191f8) SHA1(3a755857dab147b73761aebfcf931dc3c87286a4) )
968
ROM_REGION( 0x6000, "gfx2", 0 ) /* Sprites */
969
ROM_LOAD( "ci05.10", 0x0000, 0x2000, CRC(809a4ccc) SHA1(bca5a27abe205a65e1160d0c0c61e9831a949acc) )
970
ROM_LOAD( "ci04.9", 0x2000, 0x2000, CRC(026f27b3) SHA1(a222d31368fa5117824f5a14a1e52f01326e1f63) )
971
ROM_LOAD( "ci03.8", 0x4000, 0x2000, CRC(6410d9eb) SHA1(7e57de9255cbcacb4610cabb1364e2a4933ec12b) )
973
ROM_REGION( 0x300, "proms", 0 ) /* Color BPROMs */
974
ROM_LOAD( "ci14.16", 0x000, 0x0100, CRC(515f8a3b) SHA1(a99d4c119f6c4c6cd1b3fd208eadfb69ef7e8e2d) )
975
ROM_LOAD( "ci13.15", 0x100, 0x0100, CRC(a9a397eb) SHA1(a84cf23efa0cf3e97b8dd1fff868c85d7eda1253) )
976
ROM_LOAD( "ci12.14", 0x200, 0x0100, CRC(67f86e3d) SHA1(b1240212ea91cf451dbd7c6e2bfccbac76568cf6) )
978
ROM_REGION( 0x220, "user1", 0 )
979
ROM_LOAD( "ci11.11", 0x000, 0x0100, CRC(d492e6c2) SHA1(5789adda3a63ef8656ebd012416fcf3f991241fe) )
980
ROM_LOAD( "ci10.12", 0x100, 0x0100, CRC(59490887) SHA1(c894edecbcfc67972ad893cd7c8197d07862a20a) )
981
ROM_LOAD( "ci09.13", 0x200, 0x0020, CRC(aa0ca5a5) SHA1(4c45be71658f40ebb05634febba5822f1a8a7f79) )
984
ROM_START( perfrmanu )
985
ROM_REGION( 0x10000, "maincpu", 0 ) /* Main CPU code */
986
ROM_LOAD( "ci07.0", 0x00000, 0x4000, CRC(7ad32eea) SHA1(e5b29793e9c8c5c9322ca2af468a9810a598c0ae) )
987
ROM_LOAD( "ci108r5.1", 0x04000, 0x4000, CRC(9d373efa) SHA1(b1d87e033ee3c50cfc56db05891b00b7bc236733) )
989
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound CPU code */
990
ROM_LOAD( "ci06.4", 0x0000, 0x2000, CRC(df891ad0) SHA1(0d33e7d0562831382f48d1588ef20a1bc73be71a) )
992
ROM_REGION( 0x6000, "gfx1", 0 ) /* Tiles */
993
ROM_LOAD( "ci02.7", 0x0000, 0x2000, CRC(8efa960a) SHA1(d547ea23f2dd622500bf3f38cd9aca4e80aa27ca) )
994
ROM_LOAD( "ci01.6", 0x2000, 0x2000, CRC(2e8e69df) SHA1(183c1868f0c94a2a82709f9c38020ee81c283051) )
995
ROM_LOAD( "ci00.5", 0x4000, 0x2000, CRC(79e191f8) SHA1(3a755857dab147b73761aebfcf931dc3c87286a4) )
997
ROM_REGION( 0x6000, "gfx2", 0 ) /* Sprites */
998
ROM_LOAD( "ci05.10", 0x0000, 0x2000, CRC(809a4ccc) SHA1(bca5a27abe205a65e1160d0c0c61e9831a949acc) )
999
ROM_LOAD( "ci04.9", 0x2000, 0x2000, CRC(026f27b3) SHA1(a222d31368fa5117824f5a14a1e52f01326e1f63) )
1000
ROM_LOAD( "ci03.8", 0x4000, 0x2000, CRC(6410d9eb) SHA1(7e57de9255cbcacb4610cabb1364e2a4933ec12b) )
1002
ROM_REGION( 0x300, "proms", 0 ) /* Color BPROMs */
1003
ROM_LOAD( "ci14.16", 0x000, 0x0100, CRC(515f8a3b) SHA1(a99d4c119f6c4c6cd1b3fd208eadfb69ef7e8e2d) )
1004
ROM_LOAD( "ci13.15", 0x100, 0x0100, CRC(a9a397eb) SHA1(a84cf23efa0cf3e97b8dd1fff868c85d7eda1253) )
1005
ROM_LOAD( "ci12.14", 0x200, 0x0100, CRC(67f86e3d) SHA1(b1240212ea91cf451dbd7c6e2bfccbac76568cf6) )
1007
ROM_REGION( 0x220, "user1", 0 )
1008
ROM_LOAD( "ci11.11", 0x000, 0x0100, CRC(d492e6c2) SHA1(5789adda3a63ef8656ebd012416fcf3f991241fe) )
1009
ROM_LOAD( "ci10.12", 0x100, 0x0100, CRC(59490887) SHA1(c894edecbcfc67972ad893cd7c8197d07862a20a) )
1010
ROM_LOAD( "ci09r1.13", 0x200, 0x0020, CRC(d9e92f6f) SHA1(7dc2939267b7d2b1eeeca906cc6151fab2cf1cc4) )
1016
1985 Taito Corporation
1018
The Tiger Heli PCB is almost exactly the same PCB as Slap Fight/Alcon but a few chips
1019
have different placings and there's more EPROM locations on one of the boards
1020
(although they're not populated).
1021
Also, Tiger Heli has a 22-way edge connector, while Alcon/Slap Fight is JAMMA.
1024
PCB Layouts - Top Board
1025
-----------------------
1027
Tiger Heli - M6100111A
1030
GX-511-A MADE IN JAPAN
1031
|--------------------------------------------------|
1032
|VOL ROM21.12Q 2148 |
1040
|2 A47_13.8J A47_12.6J 6264 |
1042
|W A47_11.8H A47_10.6H 6264 |
1048
| A47_03.12D ROM17.1C|
1053
|-----|----------|--------------|----------|-------|
1054
|----------| |----------|
1056
AY3-8910 clock - 3.000MHz (36/12)
1057
Z80A clock - 3.000MHz (36/12)
1061
A47_10 to A47_13 - 27128 EPROM
1063
ROM16, ROM17, ROM19, ROM20, ROM21 - 82S129 PROM
1069
GX-511-B MADE IN JAPAN
1070
|--------------------------------------------------|
1073
| ROM14.2C ROM15.8B |
1086
| A47_09.4M A47_08.6M X |
1088
| 2016 A47_07.6N A47_01.8N |
1090
| 2016 A47_06.6P A47_00.8P |
1092
|-----|----------|--------------|----------|-------|
1093
|----------| |----------|
1095
Z80B clock - 6.000MHz (36/6)
1096
ROM14, ROM15 - 82S129 PROM
1097
A47_00 to A47_02 - 27128 EPROM
1098
A47_06 to A47_09 - 27128 EPROM
1099
A47_04, A47_05 - 2764 EPROM
1100
A47_14 - Motorola DA68237 15-00011-001 (MC68705P3-compatible) Micro-Controller (Not protected). Clock 3.000MHz
1101
X - Unpopulated socket
1105
ROM_REGION( 0x10000, "maincpu", 0 )
1106
ROM_LOAD( "0.4", 0x00000, 0x4000, CRC(4be73246) SHA1(a6f6a36fa7e3d269b87b777c0975b210d8b53483) )
1107
ROM_LOAD( "1.4", 0x04000, 0x4000, CRC(aad04867) SHA1(5e9ff3c982afe104428e936ef417de2d238dc033) )
1108
ROM_LOAD( "2.4", 0x08000, 0x4000, CRC(4843f15c) SHA1(c0c145c9df9d6273171ac64fb7396e65a786f67c) )
1110
ROM_REGION( 0x10000, "audiocpu", 0 )
1111
ROM_LOAD( "a47_03.12d", 0x0000, 0x2000, CRC(d105260f) SHA1(f6a0e393e29354bb37fb723828f3267d030a45ea) )
1113
ROM_REGION( 0x0800, "mcu", 0 )
1114
ROM_LOAD( "a47_14.6a", 0x0000, 0x0800, CRC(4042489f) SHA1(b977e0821b6b1aa5a0a0f349cd78150af1a231df) )
1116
ROM_REGION( 0x04000, "gfx1", 0 )
1117
ROM_LOAD( "a47_05.6f", 0x00000, 0x2000, CRC(c5325b49) SHA1(6df9051e7545dcac4995340f80957510457aaf64) ) /* Chars */
1118
ROM_LOAD( "a47_04.6g", 0x02000, 0x2000, CRC(cd59628e) SHA1(7be6479f20eb51b79b93e6fd65ab219096d54984) )
1120
ROM_REGION( 0x10000, "gfx2", 0 )
1121
ROM_LOAD( "a47_09.4m", 0x00000, 0x4000, CRC(31fae8a8) SHA1(ef8c23776431f00a74b25c5800755b6fa8d585ec) ) /* Tiles */
1122
ROM_LOAD( "a47_08.6m", 0x04000, 0x4000, CRC(e539af2b) SHA1(0c8369a0fac1cbe40c07b51e16e8f8a9b8ed03b8) )
1123
ROM_LOAD( "a47_07.6n", 0x08000, 0x4000, CRC(02fdd429) SHA1(fa392f2e57cfb6af4c124e0c151a4652f83e5577) )
1124
ROM_LOAD( "a47_06.6p", 0x0c000, 0x4000, CRC(11fbcc8c) SHA1(b4fdb9ee00b749e1a54cfc0cdf55cc5e9bee3662) )
1126
ROM_REGION( 0x10000, "gfx3", 0 )
1127
ROM_LOAD( "a47_13.8j", 0x00000, 0x4000, CRC(739a7e7e) SHA1(5fee71d9e1540903a6cf7bcaab30acaa088d35ed) ) /* Sprites */
1128
ROM_LOAD( "a47_12.6j", 0x04000, 0x4000, CRC(c064ecdb) SHA1(fa8d712e2b2bda78b9375d96c93a4d7549c94075) )
1129
ROM_LOAD( "a47_11.8h", 0x08000, 0x4000, CRC(744fae9b) SHA1(b324350469c51043e1d90ce58808d966467435b9) )
1130
ROM_LOAD( "a47_10.6h", 0x0c000, 0x4000, CRC(e1cf844e) SHA1(eeb8eff09f96c693e147d155a8c0a87416d64603) )
1132
ROM_REGION( 0x0300, "proms", 0 )
1133
ROM_LOAD( "82s129.12q", 0x0000, 0x0100, CRC(2c69350d) SHA1(658bf63c6d1e718f99494cd1c9346c3622913beb) )
1134
ROM_LOAD( "82s129.12m", 0x0100, 0x0100, CRC(7142e972) SHA1(4a854c2fdd006077aecb695832110ae6bf5819c1) )
1135
ROM_LOAD( "82s129.12n", 0x0200, 0x0100, CRC(25f273f2) SHA1(2c696745f42fa09b64295a39536aeba08ab58d67) )
1137
ROM_REGION( 0x0200, "plds", 0 )
1138
ROM_LOAD( "pal16r4a.2e", 0x0000, 0x0104, NO_DUMP ) /* PAL is read protected */
1141
ROM_START( tigerhj )
1142
ROM_REGION( 0x10000, "maincpu", 0 )
1143
ROM_LOAD( "a47_00.8p", 0x00000, 0x4000, CRC(cbdbe3cc) SHA1(5badf76cdf4a7f0ae9e85ee602420ba5c128efef) )
1144
ROM_LOAD( "a47_01.8n", 0x04000, 0x4000, CRC(65df2152) SHA1(8e1516905a4af379cb0d0b9d42ff1cc3179c3589) )
1145
ROM_LOAD( "a47_02.8k", 0x08000, 0x4000, CRC(633d324b) SHA1(70a17d17ebe003bfb2246e92e925a343a92553e5) )
1147
ROM_REGION( 0x10000, "audiocpu", 0 )
1148
ROM_LOAD( "a47_03.12d", 0x0000, 0x2000, CRC(d105260f) SHA1(f6a0e393e29354bb37fb723828f3267d030a45ea) )
1150
ROM_REGION( 0x0800, "mcu", 0 )
1151
ROM_LOAD( "a47_14.6a", 0x0000, 0x0800, CRC(4042489f) SHA1(b977e0821b6b1aa5a0a0f349cd78150af1a231df) )
1153
ROM_REGION( 0x04000, "gfx1", 0 )
1154
ROM_LOAD( "a47_05.6f", 0x00000, 0x2000, CRC(c5325b49) SHA1(6df9051e7545dcac4995340f80957510457aaf64) ) /* Chars */
1155
ROM_LOAD( "a47_04.6g", 0x02000, 0x2000, CRC(cd59628e) SHA1(7be6479f20eb51b79b93e6fd65ab219096d54984) )
1157
ROM_REGION( 0x10000, "gfx2", 0 )
1158
ROM_LOAD( "a47_09.4m", 0x00000, 0x4000, CRC(31fae8a8) SHA1(ef8c23776431f00a74b25c5800755b6fa8d585ec) ) /* Tiles */
1159
ROM_LOAD( "a47_08.6m", 0x04000, 0x4000, CRC(e539af2b) SHA1(0c8369a0fac1cbe40c07b51e16e8f8a9b8ed03b8) )
1160
ROM_LOAD( "a47_07.6n", 0x08000, 0x4000, CRC(02fdd429) SHA1(fa392f2e57cfb6af4c124e0c151a4652f83e5577) )
1161
ROM_LOAD( "a47_06.6p", 0x0c000, 0x4000, CRC(11fbcc8c) SHA1(b4fdb9ee00b749e1a54cfc0cdf55cc5e9bee3662) )
1163
ROM_REGION( 0x10000, "gfx3", 0 )
1164
ROM_LOAD( "a47_13.8j", 0x00000, 0x4000, CRC(739a7e7e) SHA1(5fee71d9e1540903a6cf7bcaab30acaa088d35ed) ) /* Sprites */
1165
ROM_LOAD( "a47_12.6j", 0x04000, 0x4000, CRC(c064ecdb) SHA1(fa8d712e2b2bda78b9375d96c93a4d7549c94075) )
1166
ROM_LOAD( "a47_11.8h", 0x08000, 0x4000, CRC(744fae9b) SHA1(b324350469c51043e1d90ce58808d966467435b9) )
1167
ROM_LOAD( "a47_10.6h", 0x0c000, 0x4000, CRC(e1cf844e) SHA1(eeb8eff09f96c693e147d155a8c0a87416d64603) )
1169
ROM_REGION( 0x0300, "proms", 0 )
1170
ROM_LOAD( "82s129.12q", 0x0000, 0x0100, CRC(2c69350d) SHA1(658bf63c6d1e718f99494cd1c9346c3622913beb) )
1171
ROM_LOAD( "82s129.12m", 0x0100, 0x0100, CRC(7142e972) SHA1(4a854c2fdd006077aecb695832110ae6bf5819c1) )
1172
ROM_LOAD( "82s129.12n", 0x0200, 0x0100, CRC(25f273f2) SHA1(2c696745f42fa09b64295a39536aeba08ab58d67) )
1175
ROM_START( tigerhb1 )
1176
ROM_REGION( 0x10000, "maincpu", 0 )
1177
ROM_LOAD( "b0.5", 0x00000, 0x4000, CRC(6ae7e13c) SHA1(47ef34635f8648e883a850293d92a46e95976a50) )
1178
ROM_LOAD( "a47_01.8n", 0x04000, 0x4000, CRC(65df2152) SHA1(8e1516905a4af379cb0d0b9d42ff1cc3179c3589) )
1179
ROM_LOAD( "a47_02.8k", 0x08000, 0x4000, CRC(633d324b) SHA1(70a17d17ebe003bfb2246e92e925a343a92553e5) )
1181
ROM_REGION( 0x10000, "audiocpu", 0 )
1182
ROM_LOAD( "a47_03.12d", 0x0000, 0x2000, CRC(d105260f) SHA1(f6a0e393e29354bb37fb723828f3267d030a45ea) )
1184
ROM_REGION( 0x0800, "cpu2", ROMREGION_ERASEFF ) // probably doesn't have an MCU
1185
/* is this the right mcu for this set? the mcu handling code in the roms seems patched and it doesn't work correctly */
1186
// ROM_LOAD( "a47_14.6a", 0x0000, 0x0800, CRC(4042489f) SHA1(b977e0821b6b1aa5a0a0f349cd78150af1a231df) )
1188
ROM_REGION( 0x04000, "gfx1", 0 )
1189
ROM_LOAD( "a47_05.6f", 0x00000, 0x2000, CRC(c5325b49) SHA1(6df9051e7545dcac4995340f80957510457aaf64) ) /* Chars */
1190
ROM_LOAD( "a47_04.6g", 0x02000, 0x2000, CRC(cd59628e) SHA1(7be6479f20eb51b79b93e6fd65ab219096d54984) )
1192
ROM_REGION( 0x10000, "gfx2", 0 )
1193
ROM_LOAD( "a47_09.4m", 0x00000, 0x4000, CRC(31fae8a8) SHA1(ef8c23776431f00a74b25c5800755b6fa8d585ec) ) /* Tiles */
1194
ROM_LOAD( "a47_08.6m", 0x04000, 0x4000, CRC(e539af2b) SHA1(0c8369a0fac1cbe40c07b51e16e8f8a9b8ed03b8) )
1195
ROM_LOAD( "a47_07.6n", 0x08000, 0x4000, CRC(02fdd429) SHA1(fa392f2e57cfb6af4c124e0c151a4652f83e5577) )
1196
ROM_LOAD( "a47_06.6p", 0x0c000, 0x4000, CRC(11fbcc8c) SHA1(b4fdb9ee00b749e1a54cfc0cdf55cc5e9bee3662) )
1198
ROM_REGION( 0x10000, "gfx3", 0 )
1199
ROM_LOAD( "a47_13.8j", 0x00000, 0x4000, CRC(739a7e7e) SHA1(5fee71d9e1540903a6cf7bcaab30acaa088d35ed) ) /* Sprites */
1200
ROM_LOAD( "a47_12.6j", 0x04000, 0x4000, CRC(c064ecdb) SHA1(fa8d712e2b2bda78b9375d96c93a4d7549c94075) )
1201
ROM_LOAD( "a47_11.8h", 0x08000, 0x4000, CRC(744fae9b) SHA1(b324350469c51043e1d90ce58808d966467435b9) )
1202
ROM_LOAD( "a47_10.6h", 0x0c000, 0x4000, CRC(e1cf844e) SHA1(eeb8eff09f96c693e147d155a8c0a87416d64603) )
1204
ROM_REGION( 0x0300, "proms", 0 )
1205
ROM_LOAD( "82s129.12q", 0x0000, 0x0100, CRC(2c69350d) SHA1(658bf63c6d1e718f99494cd1c9346c3622913beb) )
1206
ROM_LOAD( "82s129.12m", 0x0100, 0x0100, CRC(7142e972) SHA1(4a854c2fdd006077aecb695832110ae6bf5819c1) )
1207
ROM_LOAD( "82s129.12n", 0x0200, 0x0100, CRC(25f273f2) SHA1(2c696745f42fa09b64295a39536aeba08ab58d67) )
1210
ROM_START( tigerhb2 )
1211
ROM_REGION( 0x10000, "maincpu", 0 )
1212
ROM_LOAD( "rom00_09.bin", 0x00000, 0x4000, CRC(ef738c68) SHA1(c78c802d885b7f7c5e312ec079d52b8817590735) )
1213
ROM_LOAD( "a47_01.8n", 0x04000, 0x4000, CRC(65df2152) SHA1(8e1516905a4af379cb0d0b9d42ff1cc3179c3589) )
1214
ROM_LOAD( "rom02_07.bin", 0x08000, 0x4000, CRC(36e250b9) SHA1(79bd86bde81981e4d0dbee420bc0a10c80b5241e) )
1216
ROM_REGION( 0x10000, "audiocpu", 0 )
1217
ROM_LOAD( "a47_03.12d", 0x0000, 0x2000, CRC(d105260f) SHA1(f6a0e393e29354bb37fb723828f3267d030a45ea) )
1219
ROM_REGION( 0x04000, "gfx1", 0 )
1220
ROM_LOAD( "a47_05.6f", 0x00000, 0x2000, CRC(c5325b49) SHA1(6df9051e7545dcac4995340f80957510457aaf64) ) /* Chars */
1221
ROM_LOAD( "a47_04.6g", 0x02000, 0x2000, CRC(cd59628e) SHA1(7be6479f20eb51b79b93e6fd65ab219096d54984) )
1223
ROM_REGION( 0x10000, "gfx2", 0 )
1224
ROM_LOAD( "a47_09.4m", 0x00000, 0x4000, CRC(31fae8a8) SHA1(ef8c23776431f00a74b25c5800755b6fa8d585ec) ) /* Tiles */
1225
ROM_LOAD( "a47_08.6m", 0x04000, 0x4000, CRC(e539af2b) SHA1(0c8369a0fac1cbe40c07b51e16e8f8a9b8ed03b8) )
1226
ROM_LOAD( "a47_07.6n", 0x08000, 0x4000, CRC(02fdd429) SHA1(fa392f2e57cfb6af4c124e0c151a4652f83e5577) )
1227
ROM_LOAD( "a47_06.6p", 0x0c000, 0x4000, CRC(11fbcc8c) SHA1(b4fdb9ee00b749e1a54cfc0cdf55cc5e9bee3662) )
1229
ROM_REGION( 0x10000, "gfx3", 0 )
1230
ROM_LOAD( "a47_13.8j", 0x00000, 0x4000, CRC(739a7e7e) SHA1(5fee71d9e1540903a6cf7bcaab30acaa088d35ed) ) /* Sprites */
1231
ROM_LOAD( "a47_12.6j", 0x04000, 0x4000, CRC(c064ecdb) SHA1(fa8d712e2b2bda78b9375d96c93a4d7549c94075) )
1232
ROM_LOAD( "a47_11.8h", 0x08000, 0x4000, CRC(744fae9b) SHA1(b324350469c51043e1d90ce58808d966467435b9) )
1233
ROM_LOAD( "a47_10.6h", 0x0c000, 0x4000, CRC(e1cf844e) SHA1(eeb8eff09f96c693e147d155a8c0a87416d64603) )
1235
ROM_REGION( 0x0300, "proms", 0 )
1236
ROM_LOAD( "82s129.12q", 0x0000, 0x0100, CRC(2c69350d) SHA1(658bf63c6d1e718f99494cd1c9346c3622913beb) )
1237
ROM_LOAD( "82s129.12m", 0x0100, 0x0100, CRC(7142e972) SHA1(4a854c2fdd006077aecb695832110ae6bf5819c1) )
1238
ROM_LOAD( "82s129.12n", 0x0200, 0x0100, CRC(25f273f2) SHA1(2c696745f42fa09b64295a39536aeba08ab58d67) )
1241
ROM_START( tigerhb3 )
1242
ROM_REGION( 0x10000, "maincpu", 0 )
1243
ROM_LOAD( "14", 0x00000, 0x4000, CRC(ca59dd73) SHA1(c07961fcc209ec10ace3830d79c8ccc1cfda9765) )
1244
ROM_LOAD( "13", 0x04000, 0x4000, CRC(38bd54db) SHA1(75e999f606c410d7481bc4d29c4b523d45847649) )
1245
ROM_LOAD( "a47_02.8k", 0x08000, 0x4000, CRC(633d324b) SHA1(70a17d17ebe003bfb2246e92e925a343a92553e5) )
1247
ROM_REGION( 0x10000, "audiocpu", 0 )
1248
ROM_LOAD( "a47_03.12d", 0x0000, 0x2000, CRC(d105260f) SHA1(f6a0e393e29354bb37fb723828f3267d030a45ea) )
1250
ROM_REGION( 0x04000, "gfx1", 0 )
1251
ROM_LOAD( "a47_05.6f", 0x00000, 0x2000, CRC(c5325b49) SHA1(6df9051e7545dcac4995340f80957510457aaf64) ) /* Chars */
1252
ROM_LOAD( "a47_04.6g", 0x02000, 0x2000, CRC(cd59628e) SHA1(7be6479f20eb51b79b93e6fd65ab219096d54984) )
1254
ROM_REGION( 0x10000, "gfx2", 0 )
1255
ROM_LOAD( "a47_09.4m", 0x00000, 0x4000, CRC(31fae8a8) SHA1(ef8c23776431f00a74b25c5800755b6fa8d585ec) ) /* Tiles */
1256
ROM_LOAD( "a47_08.6m", 0x04000, 0x4000, CRC(e539af2b) SHA1(0c8369a0fac1cbe40c07b51e16e8f8a9b8ed03b8) )
1257
ROM_LOAD( "a47_07.6n", 0x08000, 0x4000, CRC(02fdd429) SHA1(fa392f2e57cfb6af4c124e0c151a4652f83e5577) )
1258
ROM_LOAD( "a47_06.6p", 0x0c000, 0x4000, CRC(11fbcc8c) SHA1(b4fdb9ee00b749e1a54cfc0cdf55cc5e9bee3662) )
1260
ROM_REGION( 0x10000, "gfx3", 0 )
1261
ROM_LOAD( "a47_13.8j", 0x00000, 0x4000, CRC(739a7e7e) SHA1(5fee71d9e1540903a6cf7bcaab30acaa088d35ed) ) /* Sprites */
1262
ROM_LOAD( "a47_12.6j", 0x04000, 0x4000, CRC(c064ecdb) SHA1(fa8d712e2b2bda78b9375d96c93a4d7549c94075) )
1263
ROM_LOAD( "a47_11.8h", 0x08000, 0x4000, CRC(744fae9b) SHA1(b324350469c51043e1d90ce58808d966467435b9) )
1264
ROM_LOAD( "a47_10.6h", 0x0c000, 0x4000, CRC(e1cf844e) SHA1(eeb8eff09f96c693e147d155a8c0a87416d64603) )
1266
ROM_REGION( 0x0300, "proms", 0 )
1267
ROM_LOAD( "82s129.12q", 0x0000, 0x0100, CRC(2c69350d) SHA1(658bf63c6d1e718f99494cd1c9346c3622913beb) )
1268
ROM_LOAD( "82s129.12m", 0x0100, 0x0100, CRC(7142e972) SHA1(4a854c2fdd006077aecb695832110ae6bf5819c1) )
1269
ROM_LOAD( "82s129.12n", 0x0200, 0x0100, CRC(25f273f2) SHA1(2c696745f42fa09b64295a39536aeba08ab58d67) )
1275
1986 Taito Corporation
1277
Slap Fight and Alcon are the same PCBs exactly, with just 4 ROMs changed. The same MCU is
1278
common to Slap Fight and Alcon. There is an alternate "A76" version of Slap Fight with it's
1279
own unique MCU code.
1281
PCB Layouts - Top Board
1282
-----------------------
1287
Slap Fight - M6100179A
1292
|--------------------------------------------------|
1293
|VOL ROM21.12Q 2148 |
1301
|J A77_12.8J A77_11.6J 6264 |
1303
|M A77_10.8H A77_09.6H 6264 |
1309
| A77_02.12D ROM17.1C|
1314
|-----|----------|--------------|----------|-------|
1315
|----------| |----------|
1317
AY3-8910 clock - 1.500MHz (36/24)
1318
Z80A clock - 3.000MHz (36/12)
1322
A77_09 to A77_12 - 27256 EPROM
1324
ROM16, ROM17, ROM19, ROM20, ROM21 - 82S129 PROM
1331
|--------------------------------------------------|
1334
| ROM14.2C ROM15.8B |
1349
| 2016 A77_06.6N A77_01.8N |
1351
| 2016 A77_05.6P A77_00.8P |
1353
|-----|----------|--------------|----------|-------|
1354
|----------| |----------|
1356
Z80B clock - 6.000MHz (36/6)
1357
ROM14, ROM15 - 82S129 PROM
1358
A77_00, A77_01 - 27256 EPROM (replace with A77_00-1, A77_01-1 on Alcon)
1359
A77_05 to A77_08 - 27256 EPROM
1360
A77_03, A77_04 - 2764 EPROM (replace with A77_03-1, A77_04-1 on Alcon)
1361
A77_13 - Motorola MC68705P5S Micro-Controller (protected). Clock 3.000MHz
1365
ROM_REGION( 0x18000, "maincpu", 0 )
1366
ROM_LOAD( "a77_00-1.8p", 0x00000, 0x8000, CRC(2ba82d60) SHA1(b37659aa18a3f96a3cc7fa93db2439f36487b8c8) )
1367
ROM_LOAD( "a77_01-1.8n", 0x10000, 0x8000, CRC(18bb2f12) SHA1(7c16d4bbb8b5e22f227aff170e5e6326c5968968) ) /* banked at 8000 */
1369
ROM_REGION( 0x10000, "audiocpu", 0 )
1370
ROM_LOAD( "a77_02.12d", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1372
ROM_REGION( 0x0800, "mcu", 0 )
1373
ROM_LOAD( "a77_13.6a", 0x0000, 0x0800, CRC(a70c81d9) SHA1(f155ffd25a946b0459216a8f80ded16e6e2f9258) )
1375
ROM_REGION( 0x04000, "gfx1", 0 )
1376
ROM_LOAD( "a77_04-1.6f", 0x00000, 0x2000, CRC(31003483) SHA1(7014ceb6313ac5a3d2dcb735643dfd8bfabaa185) ) /* Chars */
1377
ROM_LOAD( "a77_03-1.6g", 0x02000, 0x2000, CRC(404152c0) SHA1(d05bc9baa1f336475fffc2f19f1018e9f0547f10) )
1379
ROM_REGION( 0x20000, "gfx2", 0 )
1380
ROM_LOAD( "a77_08.6k", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1381
ROM_LOAD( "a77_07.6m", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1382
ROM_LOAD( "a77_06.6n", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1383
ROM_LOAD( "a77_05.6p", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1385
ROM_REGION( 0x20000, "gfx3", 0 )
1386
ROM_LOAD( "a77_12.8j", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1387
ROM_LOAD( "a77_11.7j", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1388
ROM_LOAD( "a77_10.8h", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1389
ROM_LOAD( "a77_09.7h", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1392
ROM_REGION( 0x0300, "proms", 0 )
1393
ROM_LOAD( "21_82s129.12q", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) ) /* Silkscreened as ROM21 */
1394
ROM_LOAD( "20_82s129.12m", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) ) /* Silkscreened as ROM20 */
1395
ROM_LOAD( "19_82s129.12n", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) ) /* Silkscreened as ROM19 */
1398
ROM_START( slapfigh )
1399
ROM_REGION( 0x18000, "maincpu", 0 )
1400
ROM_LOAD( "a77_00.8p", 0x00000, 0x8000, CRC(674c0e0f) SHA1(69fc17881c89cc5e82b0fefec49c4116054f9e3b) )
1401
ROM_LOAD( "a77_01.8n", 0x10000, 0x8000, CRC(3c42e4a7) SHA1(8e4da1e6e73603e484ba4f5609ac9ea92999a526) ) /* banked at 8000 */
1403
ROM_REGION( 0x10000, "audiocpu", 0 )
1404
ROM_LOAD( "a77_02.12d", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1406
ROM_REGION( 0x0800, "mcu", 0 ) /* 2k for the microcontroller */
1407
ROM_LOAD( "a77_13.6a", 0x0000, 0x0800, CRC(a70c81d9) SHA1(f155ffd25a946b0459216a8f80ded16e6e2f9258) )
1409
ROM_REGION( 0x04000, "gfx1", 0 )
1410
ROM_LOAD( "a77_04.6f", 0x00000, 0x2000, CRC(2ac7b943) SHA1(d0c3560bb1f0c2647aeff807cb4b09450237b955) ) /* Chars */
1411
ROM_LOAD( "a77_03.6g", 0x02000, 0x2000, CRC(33cadc93) SHA1(59ffc206c62a651d2ac0ef52f519dd56edf2c021) )
1413
ROM_REGION( 0x20000, "gfx2", 0 )
1414
ROM_LOAD( "a77_08.6k", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1415
ROM_LOAD( "a77_07.6m", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1416
ROM_LOAD( "a77_06.6n", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1417
ROM_LOAD( "a77_05.6p", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1419
ROM_REGION( 0x20000, "gfx3", 0 )
1420
ROM_LOAD( "a77_12.8j", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1421
ROM_LOAD( "a77_11.7j", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1422
ROM_LOAD( "a77_10.8h", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1423
ROM_LOAD( "a77_09.7h", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1425
ROM_REGION( 0x0300, "proms", 0 )
1426
ROM_LOAD( "21_82s129.12q", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) ) /* Silkscreened as ROM21 */
1427
ROM_LOAD( "20_82s129.12m", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) ) /* Silkscreened as ROM20 */
1428
ROM_LOAD( "19_82s129.12n", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) ) /* Silkscreened as ROM19 */
1433
This set comes from a different type of board with unique Taito ID code of "A76"
1434
PCBs are labeled GX-006-A & GX-006-B It has a 22pin edge connector and closely
1435
resembles the Tigher Heli PCB (shown above) with rom placement and components.
1439
ROM_START( slapfigha )
1440
ROM_REGION( 0x18000, "maincpu", 0 )
1441
ROM_LOAD( "a76_00.8p", 0x00000, 0x4000, CRC(ac22bb86) SHA1(3ecff006fc487d494f21adb7bff6f8c56eb5d707) )
1442
ROM_LOAD( "a76_01.8n", 0x04000, 0x4000, CRC(d6b4f02e) SHA1(37f840c444ba7dcc75810580c9da83289670d5cc) )
1443
ROM_LOAD( "a76_02.8k", 0x10000, 0x8000, CRC(9dd0971f) SHA1(92bd0b54635bf5c4118a53e0f897c65f5eb2984a) ) /* banked at 8000 */
1445
ROM_REGION( 0x10000, "audiocpu", 0 )
1446
ROM_LOAD( "a76_03.12d", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1448
ROM_REGION( 0x0800, "mcu", 0 )
1449
ROM_LOAD( "a76_14.6a", 0x0000, 0x0800, NO_DUMP ) /* A77 MCU not compatible with this set */
1451
ROM_REGION( 0x04000, "gfx1", 0 )
1452
ROM_LOAD( "a76_05.6f", 0x00000, 0x2000, CRC(be9a1bc5) SHA1(2fabfd42cd49db67654eac824c9852ed368a6e50) ) /* Chars */
1453
ROM_LOAD( "a76_04.6g", 0x02000, 0x2000, CRC(3519daa4) SHA1(ab77cc1bfe7c394d1a90a4c50d5d4a98158eb86d) )
1455
ROM_REGION( 0x20000, "gfx2", 0 )
1456
ROM_LOAD( "a76_09.4m", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1457
ROM_LOAD( "a76_08.6m", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1458
ROM_LOAD( "a76_07.6n", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1459
ROM_LOAD( "a76_06.6p", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1461
ROM_REGION( 0x20000, "gfx3", 0 )
1462
ROM_LOAD( "a76_13.8j", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1463
ROM_LOAD( "a76_12.6j", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1464
ROM_LOAD( "a76_11.8h", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1465
ROM_LOAD( "a76_10.6h", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1467
ROM_REGION( 0x0300, "proms", 0 )
1468
ROM_LOAD( "a76-17.12q", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) ) /* 82S129 Biploar PROM, Silkscreened as ROM21 */
1469
ROM_LOAD( "a76-15.12m", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) ) /* 82S129 Biploar PROM, Silkscreened as ROM20 */
1470
ROM_LOAD( "a76-16.12n", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) ) /* 82S129 Biploar PROM, Silkscreened as ROM19 */
1474
PCB Details from slapfighb1 boardset:
1476
Upper PCB (Sound board)
1479
Toshiba TMM2016BP-10 (2KB SRAM)
1480
sf_s05 (Fujitsu MBM2764-25 8KB EPROM) - Sound CPU Code
1482
Yamaha YM2149F (Qty 2 - Pin compatible with AY-3-8190)
1483
Hitachi SRAM - HM6464 (8KB - Qty 4)
1485
sf_s01 (OKI M27256-N 32KB PROM) Sprite Data (16x16 4bpp)
1486
sf_s02 (OKI M27256-N 32KB PROM) Sprite Data
1487
sf_s03 (OKI M27256-N 32KB PROM) Sprite Data
1488
sf_s04 (OKI M27256-N 32KB PROM) Sprite Data
1495
Toshiba TMM2016BP-10 (2KB SRAM - Total Qty 6 = 2+2+1+1)
1497
sf_s10 (Fujitsu MBM2764-25 8KB EPROM) Font/Character Data (8x8 2bpp)
1498
sf_s11 (Fujitsu MBM2764-25 8KB EPROM)
1500
sf_s06 (OKI M27256-N 32KB PROM) Tile Data (8x8 4bpp)
1501
sf_s07 (OKI M27256-N 32KB PROM) Tile Data
1502
sf_s08 (OKI M27256-N 32KB PROM) Tile Data
1503
sf_s09 (OKI M27256-N 32KB PROM) Tile Data
1505
sf_s16 (Fujitsu MBM2764-25 8KB EPROM) Colour Tables (512B used?)
1507
sf_sH (OKI M27256-N 32KB PROM) Level Maps ???
1509
sf_s19 (NEC S27128 16KB EPROM) CPU Code $0000-$3fff
1510
sf_s20 (Mitsubishi M5L27128K 16KB EPROM) CPU Code $4000-$7fff
1513
ROM_START( slapfighb1 )
1514
ROM_REGION( 0x18000, "maincpu", 0 )
1515
ROM_LOAD( "sf_r19jb.bin", 0x00000, 0x8000, CRC(9a7ac8b3) SHA1(01fbad9b4fc80f2406eff18db20e196e212d0c17) )
1516
ROM_LOAD( "sf_rh.bin", 0x10000, 0x8000, CRC(3c42e4a7) SHA1(8e4da1e6e73603e484ba4f5609ac9ea92999a526) ) /* banked at 8000 */
1518
ROM_REGION( 0x10000, "audiocpu", 0 )
1519
ROM_LOAD( "sf_r05.bin", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1521
ROM_REGION( 0x04000, "gfx1", 0 )
1522
ROM_LOAD( "sf_r11.bin", 0x00000, 0x2000, CRC(2ac7b943) SHA1(d0c3560bb1f0c2647aeff807cb4b09450237b955) ) /* Chars */
1523
ROM_LOAD( "sf_r10.bin", 0x02000, 0x2000, CRC(33cadc93) SHA1(59ffc206c62a651d2ac0ef52f519dd56edf2c021) )
1525
ROM_REGION( 0x20000, "gfx2", 0 )
1526
ROM_LOAD( "sf_r06.bin", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1527
ROM_LOAD( "sf_r09.bin", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1528
ROM_LOAD( "sf_r08.bin", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1529
ROM_LOAD( "sf_r07.bin", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1531
ROM_REGION( 0x20000, "gfx3", 0 )
1532
ROM_LOAD( "sf_r03.bin", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1533
ROM_LOAD( "sf_r01.bin", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1534
ROM_LOAD( "sf_r04.bin", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1535
ROM_LOAD( "sf_r02.bin", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1537
ROM_REGION( 0x0300, "proms", 0 )
1538
ROM_LOAD( "sf_col21.bin", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) )
1539
ROM_LOAD( "sf_col20.bin", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) )
1540
ROM_LOAD( "sf_col19.bin", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) )
1543
ROM_START( slapfighb2 )
1544
ROM_REGION( 0x18000, "maincpu", 0 )
1545
ROM_LOAD( "sf_r19eb.bin", 0x00000, 0x4000, CRC(2efe47af) SHA1(69ce3e83a0d8fa5ee4737c741d31cf32db6b9919) )
1546
ROM_LOAD( "sf_r20eb.bin", 0x04000, 0x4000, CRC(f42c7951) SHA1(d76e7a72f6ced67b550ba68cd42987f7111f5468) )
1547
ROM_LOAD( "sf_rh.bin", 0x10000, 0x8000, CRC(3c42e4a7) SHA1(8e4da1e6e73603e484ba4f5609ac9ea92999a526) ) /* banked at 8000 */
1549
ROM_REGION( 0x10000, "audiocpu", 0 )
1550
ROM_LOAD( "sf_r05.bin", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1552
ROM_REGION( 0x04000, "gfx1", 0 )
1553
ROM_LOAD( "sf_r11.bin", 0x00000, 0x2000, CRC(2ac7b943) SHA1(d0c3560bb1f0c2647aeff807cb4b09450237b955) ) /* Chars */
1554
ROM_LOAD( "sf_r10.bin", 0x02000, 0x2000, CRC(33cadc93) SHA1(59ffc206c62a651d2ac0ef52f519dd56edf2c021) )
1556
ROM_REGION( 0x20000, "gfx2", 0 )
1557
ROM_LOAD( "sf_r06.bin", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1558
ROM_LOAD( "sf_r09.bin", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1559
ROM_LOAD( "sf_r08.bin", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1560
ROM_LOAD( "sf_r07.bin", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1562
ROM_REGION( 0x20000, "gfx3", 0 )
1563
ROM_LOAD( "sf_r03.bin", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1564
ROM_LOAD( "sf_r01.bin", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1565
ROM_LOAD( "sf_r04.bin", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1566
ROM_LOAD( "sf_r02.bin", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1568
ROM_REGION( 0x0300, "proms", 0 )
1569
ROM_LOAD( "sf_col21.bin", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) )
1570
ROM_LOAD( "sf_col20.bin", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) )
1571
ROM_LOAD( "sf_col19.bin", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) )
1574
/* very similar to slapfighb2, is slapfighb2 missing the logo rom? */
1575
ROM_START( slapfighb3 )
1576
ROM_REGION( 0x18000, "maincpu", 0 )
1577
ROM_LOAD( "k1-10.u90", 0x00000, 0x4000, CRC(2efe47af) SHA1(69ce3e83a0d8fa5ee4737c741d31cf32db6b9919) )
1578
ROM_LOAD( "k1-09.u89", 0x04000, 0x4000, CRC(17c187c5) SHA1(6e1fd651f56036d1c6c830de8479df25fc182c10) )
1579
ROM_LOAD( "k1-08.u88", 0x0e000, 0x2000, CRC(945af97f) SHA1(4d901be477b6101338eb1d86497e1bdc57f9c1b4) ) // contains another copy of the logo tilemap read at ec00!
1580
ROM_LOAD( "k1-07.u87", 0x10000, 0x8000, CRC(3c42e4a7) SHA1(8e4da1e6e73603e484ba4f5609ac9ea92999a526) ) /* banked at 8000 */
1582
ROM_REGION( 0x10000, "audiocpu", 0 )
1583
ROM_LOAD( "k1-11.u89", 0x0000, 0x2000, CRC(87f4705a) SHA1(a90d5644ce268f3321047a4f96df96ac294d2f1b) )
1585
ROM_REGION( 0x04000, "gfx1", 0 )
1586
ROM_LOAD( "k1-02.u57", 0x00000, 0x2000, CRC(2ac7b943) SHA1(d0c3560bb1f0c2647aeff807cb4b09450237b955) ) /* Chars */
1587
ROM_LOAD( "k1-03.u58", 0x02000, 0x2000, CRC(33cadc93) SHA1(59ffc206c62a651d2ac0ef52f519dd56edf2c021) )
1589
ROM_REGION( 0x20000, "gfx2", 0 )
1590
ROM_LOAD( "k1-01.u49", 0x00000, 0x8000, CRC(b6358305) SHA1(c7bb4236a75ec6b88f011bc30f8fb9a718e2ca3e) ) /* Tiles */
1591
ROM_LOAD( "k1-04.u62", 0x08000, 0x8000, CRC(e92d9d60) SHA1(2554617e0e6615ca8c85a49299a4a0e762478339) )
1592
ROM_LOAD( "k1-05.u63", 0x10000, 0x8000, CRC(5faeeea3) SHA1(696fba24bcf1f3a7e914a4403854da5eededaf7f) )
1593
ROM_LOAD( "k1-06.u64", 0x18000, 0x8000, CRC(974e2ea9) SHA1(3840550fc3a833828dad8f3e300d2ea583d69ce7) )
1595
ROM_REGION( 0x20000, "gfx3", 0 )
1596
ROM_LOAD( "k1-15.u60", 0x00000, 0x8000, CRC(8545d397) SHA1(9a1fd5bfd8fb830b8e46643c08eef32ba968fc23) ) /* Sprites */
1597
ROM_LOAD( "k1-13.u50", 0x08000, 0x8000, CRC(b1b7b925) SHA1(199b0b52bbeb384211171eca5c50a1c0ebf6826f) )
1598
ROM_LOAD( "k1-14.u59", 0x10000, 0x8000, CRC(422d946b) SHA1(c251ef9597a11ec8de39be4fcbddaba84e649ef2) )
1599
ROM_LOAD( "k1-12.u49", 0x18000, 0x8000, CRC(587113ae) SHA1(90abe961494a1af7c87693a419fbabf7a58a5dee) )
1601
ROM_REGION( 0x0300, "proms", 0 )
1602
ROM_LOAD( "sf_col21.bin", 0x0000, 0x0100, CRC(a0efaf99) SHA1(5df01663480acad1f89abab8662d437617a66d1c) )
1603
ROM_LOAD( "sf_col20.bin", 0x0100, 0x0100, CRC(a56d57e5) SHA1(bfbd0db52b23fe1b4994e05103be3d412c1c013e) )
1604
ROM_LOAD( "sf_col19.bin", 0x0200, 0x0100, CRC(5cbf9fbf) SHA1(abfa58fa4e44ebc56f2e0fac9bcc36164c845fa3) )
1607
ROM_START( getstar )
1608
ROM_REGION( 0x18000, "maincpu", 0 ) /* Region 0 - main cpu code */
1609
ROM_LOAD( "a68_00-1", 0x00000, 0x4000, CRC(6a8bdc6c) SHA1(c923bca539bd2eb9a34cb9c7a67a199e28bc081a) )
1610
ROM_LOAD( "a68_01-1", 0x04000, 0x4000, CRC(ebe8db3c) SHA1(9046d6e63c33fc9cbd48b90dcbcc0badf1d3b9ba) )
1611
ROM_LOAD( "a68_02-1", 0x10000, 0x8000, CRC(343e8415) SHA1(00b98055277a0ddfb7d0bda6537df10a4049533e) )
1613
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Region 3 - sound cpu code */
1614
ROM_LOAD( "a68-03", 0x0000, 0x2000, CRC(18daa44c) SHA1(1a3d22a186c591321d1b836ee30d89fba4771122) )
1616
ROM_REGION( 0x0800, "mcu", 0 ) /* 2k for the microcontroller */
1617
ROM_LOAD( "a68_14", 0x0000, 0x0800, NO_DUMP )
1619
ROM_REGION( 0x04000, "gfx1", 0 ) /* Region 1 - temporary for gfx */
1620
ROM_LOAD( "a68_05-1", 0x00000, 0x2000, CRC(06f60107) SHA1(c5dcf0c7a5863ea960ee747d2d7ec7ac8bb7d3af) ) /* Chars */
1621
ROM_LOAD( "a68_04-1", 0x02000, 0x2000, CRC(1fc8f277) SHA1(59dc1a0fad23b1e98abca3d0b1685b9d2939b059) )
1623
ROM_REGION( 0x20000, "gfx2", 0 ) /* Region 1 - temporary for gfx */
1624
ROM_LOAD( "a68_09", 0x00000, 0x8000, CRC(a293cc2e) SHA1(a2c2598e92982d13b51cbb6efb4b963142233433) ) /* Tiles */
1625
ROM_LOAD( "a68_08", 0x08000, 0x8000, CRC(37662375) SHA1(46ba8a3f0b553d476ecf431d0d20556896b4ca43) )
1626
ROM_LOAD( "a68_07", 0x10000, 0x8000, CRC(cf1a964c) SHA1(e9223c8d4f3bdafed193a1ded63e377f16f45e17) )
1627
ROM_LOAD( "a68_06", 0x18000, 0x8000, CRC(05f9eb9a) SHA1(a71640a63b259799086d361ef293aa26cec46a0c) )
1629
ROM_REGION( 0x20000, "gfx3", 0 ) /* Region 1 - temporary for gfx */
1630
ROM_LOAD( "a68-13", 0x00000, 0x8000, CRC(643fb282) SHA1(d904d3c27c2b56341929c5eed4ea97e948c53c34) ) /* Sprites */
1631
ROM_LOAD( "a68-12", 0x08000, 0x8000, CRC(11f74e32) SHA1(02d8b4cc679f45a02c4989f2b62cde91b7418235) )
1632
ROM_LOAD( "a68-11", 0x10000, 0x8000, CRC(f24158cf) SHA1(db4c6b68a488b0798ea5f793ac8ced283a8ecab2) )
1633
ROM_LOAD( "a68-10", 0x18000, 0x8000, CRC(83161ed0) SHA1(a6aa28f22f487dc3a2ec07935e6d42bcdd1eff81) )
1635
ROM_REGION( 0x0300, "proms", 0 )
1636
ROM_LOAD( "rom21", 0x0000, 0x0100, CRC(d6360b4d) SHA1(3e64548c82a3378fc091e104cdc2b0c7e592fc44) )
1637
ROM_LOAD( "rom20", 0x0100, 0x0100, CRC(4ca01887) SHA1(2892c89d5e60f1d10593adffff55c1a9654e8209) )
1638
ROM_LOAD( "rom19", 0x0200, 0x0100, CRC(513224f0) SHA1(15b34612206138f6fc5f7478925b1fff2ed56aa8) )
1641
ROM_START( getstarj )
1642
ROM_REGION( 0x18000, "maincpu", 0 ) /* Region 0 - main cpu code */
1643
ROM_LOAD( "a68_00.bin", 0x00000, 0x4000, CRC(ad1a0143) SHA1(0d9adeb12bd4d5ad11e5bada0cd7498bc565c1db) )
1644
ROM_LOAD( "a68_01.bin", 0x04000, 0x4000, CRC(3426eb7c) SHA1(e91db45a650a1bfefd7c12c7553b647bc916c7c8) )
1645
ROM_LOAD( "a68_02.bin", 0x10000, 0x8000, CRC(3567da17) SHA1(29d698606d0bd30abfc3171d79bfad95b0de89fc) )
1647
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Region 3 - sound cpu code */
1648
ROM_LOAD( "a68-03", 0x00000, 0x2000, CRC(18daa44c) SHA1(1a3d22a186c591321d1b836ee30d89fba4771122) )
1650
ROM_REGION( 0x0800, "mcu", 0 ) /* 2k for the microcontroller */
1651
ROM_LOAD( "68705.bin", 0x0000, 0x0800, NO_DUMP )
1653
ROM_REGION( 0x04000, "gfx1", 0 ) /* Region 1 - temporary for gfx */
1654
ROM_LOAD( "a68_05.bin", 0x00000, 0x2000, CRC(e3d409e7) SHA1(0b6be4767f110729f4dd1a472ef8d9a0c718b684) ) /* Chars */
1655
ROM_LOAD( "a68_04.bin", 0x02000, 0x2000, CRC(6e5ac9d4) SHA1(74f90b7a1ceb3b1c2fd92dff100d92dea0155530) )
1657
ROM_REGION( 0x20000, "gfx2", 0 ) /* Region 1 - temporary for gfx */
1658
ROM_LOAD( "a68_09", 0x00000, 0x8000, CRC(a293cc2e) SHA1(a2c2598e92982d13b51cbb6efb4b963142233433) ) /* Tiles */
1659
ROM_LOAD( "a68_08", 0x08000, 0x8000, CRC(37662375) SHA1(46ba8a3f0b553d476ecf431d0d20556896b4ca43) )
1660
ROM_LOAD( "a68_07", 0x10000, 0x8000, CRC(cf1a964c) SHA1(e9223c8d4f3bdafed193a1ded63e377f16f45e17) )
1661
ROM_LOAD( "a68_06", 0x18000, 0x8000, CRC(05f9eb9a) SHA1(a71640a63b259799086d361ef293aa26cec46a0c) )
1663
ROM_REGION( 0x20000, "gfx3", 0 ) /* Region 1 - temporary for gfx */
1664
ROM_LOAD( "a68-13", 0x00000, 0x8000, CRC(643fb282) SHA1(d904d3c27c2b56341929c5eed4ea97e948c53c34) ) /* Sprites */
1665
ROM_LOAD( "a68-12", 0x08000, 0x8000, CRC(11f74e32) SHA1(02d8b4cc679f45a02c4989f2b62cde91b7418235) )
1666
ROM_LOAD( "a68-11", 0x10000, 0x8000, CRC(f24158cf) SHA1(db4c6b68a488b0798ea5f793ac8ced283a8ecab2) )
1667
ROM_LOAD( "a68-10", 0x18000, 0x8000, CRC(83161ed0) SHA1(a6aa28f22f487dc3a2ec07935e6d42bcdd1eff81) )
1669
ROM_REGION( 0x0300, "proms", 0 )
1670
ROM_LOAD( "rom21", 0x0000, 0x0100, CRC(d6360b4d) SHA1(3e64548c82a3378fc091e104cdc2b0c7e592fc44) )
1671
ROM_LOAD( "rom20", 0x0100, 0x0100, CRC(4ca01887) SHA1(2892c89d5e60f1d10593adffff55c1a9654e8209) )
1672
ROM_LOAD( "rom19", 0x0200, 0x0100, CRC(513224f0) SHA1(15b34612206138f6fc5f7478925b1fff2ed56aa8) )
1675
ROM_START( gtstarb1 )
1676
ROM_REGION( 0x18000, "maincpu", 0 ) /* Region 0 - main cpu code */
1677
ROM_LOAD( "gs_rb_1.bin", 0x00000, 0x4000, CRC(9afad7e0) SHA1(6b2e82a6b7fcbfed5f4d250959ecc571fdf0cbc2) )
1678
ROM_LOAD( "gs_rb_2.bin", 0x04000, 0x4000, CRC(5feb0a60) SHA1(b1300055180ddf6ca96475eb3a27a17722273fc6) )
1679
ROM_LOAD( "gs_rb_3.bin", 0x10000, 0x8000, CRC(e3cfb1ba) SHA1(bd21655c82a14e18ff9df4539c4d0bb2484c73f1) )
1681
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Region 3 - sound cpu code */
1682
ROM_LOAD( "a68-03", 0x00000, 0x2000, CRC(18daa44c) SHA1(1a3d22a186c591321d1b836ee30d89fba4771122) )
1684
ROM_REGION( 0x04000, "gfx1", 0 ) /* Region 1 - temporary for gfx */
1685
/* these roms were in the set, but they're corrupt */
1686
// ROM_LOAD( "gs_rb_8.bin", 0x00000, 0x2000, CRC(a30aaf04) SHA1(2509554c3851a68eaec1cadc01f4d69c7aa2c09d) ) /* Chars */
1687
// ROM_LOAD( "gs_rb_7.bin", 0x02000, 0x2000, CRC(f47a93c6) SHA1(441fee1fb195bb2583d220f30dfcff617a31742a) )
1688
/* use the original roms instead */
1689
ROM_LOAD( "a68_05.bin", 0x00000, 0x2000, CRC(e3d409e7) SHA1(0b6be4767f110729f4dd1a472ef8d9a0c718b684) ) /* Chars */
1690
ROM_LOAD( "a68_04.bin", 0x02000, 0x2000, CRC(6e5ac9d4) SHA1(74f90b7a1ceb3b1c2fd92dff100d92dea0155530) )
1693
ROM_REGION( 0x20000, "gfx2", 0 ) /* Region 1 - temporary for gfx */
1694
ROM_LOAD( "a68_09", 0x00000, 0x8000, CRC(a293cc2e) SHA1(a2c2598e92982d13b51cbb6efb4b963142233433) ) /* Tiles */
1695
ROM_LOAD( "a68_08", 0x08000, 0x8000, CRC(37662375) SHA1(46ba8a3f0b553d476ecf431d0d20556896b4ca43) )
1696
ROM_LOAD( "a68_07", 0x10000, 0x8000, CRC(cf1a964c) SHA1(e9223c8d4f3bdafed193a1ded63e377f16f45e17) )
1697
ROM_LOAD( "a68_06", 0x18000, 0x8000, CRC(05f9eb9a) SHA1(a71640a63b259799086d361ef293aa26cec46a0c) )
1699
ROM_REGION( 0x20000, "gfx3", 0 ) /* Region 1 - temporary for gfx */
1700
ROM_LOAD( "a68-13", 0x00000, 0x8000, CRC(643fb282) SHA1(d904d3c27c2b56341929c5eed4ea97e948c53c34) ) /* Sprites */
1701
ROM_LOAD( "a68-12", 0x08000, 0x8000, CRC(11f74e32) SHA1(02d8b4cc679f45a02c4989f2b62cde91b7418235) )
1702
ROM_LOAD( "a68-11", 0x10000, 0x8000, CRC(f24158cf) SHA1(db4c6b68a488b0798ea5f793ac8ced283a8ecab2) )
1703
ROM_LOAD( "a68-10", 0x18000, 0x8000, CRC(83161ed0) SHA1(a6aa28f22f487dc3a2ec07935e6d42bcdd1eff81) )
1705
ROM_REGION( 0x0300, "proms", 0 )
1706
ROM_LOAD( "rom21", 0x0000, 0x0100, CRC(d6360b4d) SHA1(3e64548c82a3378fc091e104cdc2b0c7e592fc44) )
1707
ROM_LOAD( "rom20", 0x0100, 0x0100, CRC(4ca01887) SHA1(2892c89d5e60f1d10593adffff55c1a9654e8209) )
1708
ROM_LOAD( "rom19", 0x0200, 0x0100, CRC(513224f0) SHA1(15b34612206138f6fc5f7478925b1fff2ed56aa8) )
1711
ROM_START( gtstarb2 )
1712
ROM_REGION( 0x18000, "maincpu", 0 ) /* Region 0 - main cpu code */
1713
ROM_LOAD( "gs_14.rom", 0x00000, 0x4000, CRC(1a57a920) SHA1(b1e9d5b29c0e3632eec3ad1ee51bf3392e4b816d) )
1714
ROM_LOAD( "gs_13.rom", 0x04000, 0x4000, CRC(805f8e77) SHA1(c3ad6eae842d2d10f716998d5a803038fa7b338f) )
1715
ROM_LOAD( "a68_02.bin", 0x10000, 0x8000, CRC(3567da17) SHA1(29d698606d0bd30abfc3171d79bfad95b0de89fc) )
1717
ROM_REGION( 0x10000, "audiocpu", 0 ) /* Region 3 - sound cpu code */
1718
ROM_LOAD( "a68-03", 0x0000, 0x2000, CRC(18daa44c) SHA1(1a3d22a186c591321d1b836ee30d89fba4771122) )
1720
ROM_REGION( 0x04000, "gfx1", 0 ) /* Region 1 - temporary for gfx */
1721
ROM_LOAD( "a68_05.bin", 0x00000, 0x2000, CRC(e3d409e7) SHA1(0b6be4767f110729f4dd1a472ef8d9a0c718b684) ) /* Chars */
1722
ROM_LOAD( "a68_04.bin", 0x02000, 0x2000, CRC(6e5ac9d4) SHA1(74f90b7a1ceb3b1c2fd92dff100d92dea0155530) )
1724
ROM_REGION( 0x20000, "gfx2", 0 ) /* Region 1 - temporary for gfx */
1725
ROM_LOAD( "a68_09", 0x00000, 0x8000, CRC(a293cc2e) SHA1(a2c2598e92982d13b51cbb6efb4b963142233433) ) /* Tiles */
1726
ROM_LOAD( "a68_08", 0x08000, 0x8000, CRC(37662375) SHA1(46ba8a3f0b553d476ecf431d0d20556896b4ca43) )
1727
ROM_LOAD( "a68_07", 0x10000, 0x8000, CRC(cf1a964c) SHA1(e9223c8d4f3bdafed193a1ded63e377f16f45e17) )
1728
ROM_LOAD( "a68_06", 0x18000, 0x8000, CRC(05f9eb9a) SHA1(a71640a63b259799086d361ef293aa26cec46a0c) )
1730
ROM_REGION( 0x20000, "gfx3", 0 ) /* Region 1 - temporary for gfx */
1731
ROM_LOAD( "a68-13", 0x00000, 0x8000, CRC(643fb282) SHA1(d904d3c27c2b56341929c5eed4ea97e948c53c34) ) /* Sprites */
1732
ROM_LOAD( "a68-12", 0x08000, 0x8000, CRC(11f74e32) SHA1(02d8b4cc679f45a02c4989f2b62cde91b7418235) )
1733
ROM_LOAD( "a68-11", 0x10000, 0x8000, CRC(f24158cf) SHA1(db4c6b68a488b0798ea5f793ac8ced283a8ecab2) )
1734
ROM_LOAD( "a68-10", 0x18000, 0x8000, CRC(83161ed0) SHA1(a6aa28f22f487dc3a2ec07935e6d42bcdd1eff81) )
1736
ROM_REGION( 0x0300, "proms", 0 )
1737
ROM_LOAD( "rom21", 0x0000, 0x0100, CRC(d6360b4d) SHA1(3e64548c82a3378fc091e104cdc2b0c7e592fc44) )
1738
ROM_LOAD( "rom20", 0x0100, 0x0100, CRC(4ca01887) SHA1(2892c89d5e60f1d10593adffff55c1a9654e8209) )
1739
ROM_LOAD( "rom19", 0x0200, 0x0100, CRC(513224f0) SHA1(15b34612206138f6fc5f7478925b1fff2ed56aa8) )
1743
static DRIVER_INIT( tigerh )
1745
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(tigerh_mcu_r), FUNC(tigerh_mcu_w) );
1748
static DRIVER_INIT( tigerhb )
1750
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(tigerhb_e803_r), FUNC(tigerhb_e803_w) );
1754
static READ8_HANDLER( gtstarb1_port_0_read )
1756
/* The bootleg has it's own 'protection' on startup ?
1757
6D1A: 06 04 ld b,$04
1758
6D1C: DB 00 in a,($00)
1760
6D20: 20 FA jr nz,$6D1C
1761
6D22: DB 00 in a,($00)
1764
6D28: 20 F8 jr nz,$6D22
1765
6D2A: DB 00 in a,($00)
1768
6D30: 20 F8 jr nz,$6D2A
1769
6D32: DB 00 in a,($00)
1772
6D38: 20 F8 jr nz,$6D32
1773
6D3A: 10 E0 djnz $6D1C
1775
if (cpu_get_pc(&space->device()) == 0x6d1e) return 0;
1776
if (cpu_get_pc(&space->device()) == 0x6d24) return 6;
1777
if (cpu_get_pc(&space->device()) == 0x6d2c) return 2;
1778
if (cpu_get_pc(&space->device()) == 0x6d34) return 4;
1780
/* The bootleg hangs in the "test mode" before diplaying (wrong) lives settings :
1781
6AD4: DB 00 in a,($00)
1783
6AD8: 28 FA jr z,$6AD4
1784
6ADA: 3E 23 ld a,$23
1785
6ADC: CD 52 11 call $1152
1786
6ADF: 32 03 E8 ld ($E803),a
1787
6AE2: DB 00 in a,($00)
1789
6AE6: 28 FA jr z,$6AE2
1790
6AE8: 3A 0A C8 ld a,($C80A)
1792
6AED: CD 52 11 call $1152
1793
6AF0: 32 03 E8 ld ($E803),a
1794
6AF3: DB 00 in a,($00)
1796
6AF7: 20 FA jr nz,$6AF3
1797
This seems to be what used to be the MCU status.
1799
if (cpu_get_pc(&space->device()) == 0x6ad6) return 2; /* bit 1 must be ON */
1800
if (cpu_get_pc(&space->device()) == 0x6ae4) return 2; /* bit 1 must be ON */
1801
if (cpu_get_pc(&space->device()) == 0x6af5) return 0; /* bit 2 must be OFF */
1803
logerror("Port Read PC=%04x\n",cpu_get_pc(&space->device()));
1808
static void getstar_init( running_machine &machine )
1810
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(getstar_e803_r), FUNC(getstar_e803_w) );
1811
machine.device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(slapfight_port_00_r) );
1814
static DRIVER_INIT( getstar )
1816
slapfght_state *state = machine.driver_data<slapfght_state>();
1817
state->m_getstar_id = GETSTAR;
1818
getstar_init(machine);
1821
static DRIVER_INIT( getstarj )
1823
slapfght_state *state = machine.driver_data<slapfght_state>();
1824
state->m_getstar_id = GETSTARJ;
1825
getstar_init(machine);
1828
static DRIVER_INIT( gtstarb1 )
1830
slapfght_state *state = machine.driver_data<slapfght_state>();
1831
UINT8 *ROM = machine.region("maincpu")->base();
1833
state->m_getstar_id = GTSTARB1;
1834
getstar_init(machine);
1836
/* specific handlers for this bootleg */
1837
machine.device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x0, 0x0, FUNC(gtstarb1_port_0_read) );
1838
/* requires this or it gets stuck with 'rom test' on screen */
1839
/* it is possible the program roms are slighly corrupt like the gfx roms, or
1840
that the bootleg simply shouldn't execute the code due to the modified roms */
1841
/* TODO: find & fix the cause of the following happening. */
1842
ROM[0x6d56] = 0xc3; //jp instead of jp z
1845
static DRIVER_INIT( gtstarb2 )
1847
slapfght_state *state = machine.driver_data<slapfght_state>();
1848
state->m_getstar_id = GTSTARB2;
1849
getstar_init(machine);
1852
static DRIVER_INIT( slapfigh )
1854
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe803, 0xe803, FUNC(slapfight_mcu_r), FUNC(slapfight_mcu_w) );
1855
machine.device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(slapfight_mcu_status_r) );
1858
static DRIVER_INIT( perfrman )
1860
machine.device("maincpu")->memory().space(AS_IO)->install_legacy_read_handler(0x00, 0x00, FUNC(perfrman_port_00_r) );
1863
/* ( YEAR NAME PARENT MACHINE INPUT INIT MONITOR COMPANY FULLNAME FLAGS ) */
1864
GAME( 1985, perfrman, 0, perfrman, perfrman, perfrman, ROT270, "Toaplan / Data East Corporation", "Performan (Japan)", 0 )
1865
GAME( 1985, perfrmanu, perfrman, perfrman, perfrman, perfrman, ROT270, "Toaplan / Data East USA", "Performan (US)", 0 )
1867
GAME( 1985, tigerh, 0, tigerh, tigerh, tigerh, ROT270, "Toaplan / Taito America Corp.", "Tiger Heli (US)", GAME_NO_COCKTAIL )
1868
GAME( 1985, tigerhj, tigerh, tigerh, tigerh, tigerh, ROT270, "Toaplan / Taito", "Tiger Heli (Japan)", GAME_NO_COCKTAIL )
1869
GAME( 1985, tigerhb1, tigerh, tigerhb, tigerh, tigerhb, ROT270, "bootleg", "Tiger Heli (bootleg set 1)", GAME_NO_COCKTAIL )
1870
GAME( 1985, tigerhb2, tigerh, tigerhb, tigerh, 0, ROT270, "bootleg", "Tiger Heli (bootleg set 2)", GAME_NO_COCKTAIL )
1871
GAME( 1985, tigerhb3, tigerh, tigerhb, tigerh, 0, ROT270, "bootleg", "Tiger Heli (bootleg set 3)", GAME_NO_COCKTAIL )
1873
GAME( 1986, alcon, 0, slapfigh, slapfigh, slapfigh, ROT270, "Toaplan / Taito America Corp.", "Alcon (US)", GAME_NO_COCKTAIL )
1874
GAME( 1986, slapfigh, alcon, slapfigh, slapfigh, slapfigh, ROT270, "Toaplan / Taito", "Slap Fight (Japan set 1)", GAME_NO_COCKTAIL )
1875
GAME( 1986, slapfigha, alcon, slapfigh, slapfigh, slapfigh, ROT270, "Toaplan / Taito", "Slap Fight (Japan set 2)", GAME_NOT_WORKING | GAME_NO_COCKTAIL ) /* MCU code not dumped */
1876
GAME( 1986, slapfighb1, alcon, slapfighb1, slapfigh, 0, ROT270, "bootleg", "Slap Fight (bootleg set 1)", GAME_NO_COCKTAIL )
1877
GAME( 1986, slapfighb2, alcon, slapfighb2, slapfigh, 0, ROT270, "bootleg", "Slap Fight (bootleg set 2)", GAME_NO_COCKTAIL ) // England?
1878
GAME( 1986, slapfighb3, alcon, slapfighb2, slapfigh, 0, ROT270, "bootleg", "Slap Fight (bootleg set 3)", GAME_NO_COCKTAIL ) // PCB labeled 'slap fighter'
1880
GAME( 1986, getstar, 0, slapfigh, getstar, getstar, ROT0, "Toaplan / Taito America Corporation (Kitkorp license)", "Guardian (US)", GAME_NO_COCKTAIL )
1881
GAME( 1986, getstarj, getstar, slapfigh, getstarj, getstarj, ROT0, "Toaplan / Taito", "Get Star (Japan)", GAME_NO_COCKTAIL )
1882
GAME( 1986, gtstarb1, getstar, slapfighb1, getstarj, gtstarb1, ROT0, "bootleg", "Get Star (bootleg set 1)", GAME_NO_COCKTAIL )
1883
GAME( 1986, gtstarb2, getstar, slapfighb1, gtstarb2, gtstarb2, ROT0, "bootleg", "Get Star (bootleg set 2)", GAME_NO_COCKTAIL )