/*************************************************************************** Midway MCR systems driver by Christopher Kirmse, Aaron Giles Games supported: * Solar Fox * Kick * Satan's Hollow * Tron * Kozmik Krooz'r * Domino Man * Wacko * Two Tigers * Journey * Tapper * Timber * Discs of Tron (Squawk n' Talk) * NFL Football (Squawk n' Talk + laserdisk) * Demolition Derby (Turbo Chip Squeak) Known bugs: * none at this time **************************************************************************** Early MCR systems have three PCBs, which can be intermixed to a certain degree: CPU board contains: * the main Z80 and program ROMs * the video sync chain * the background generation and background graphics ROMs * the mixing logic and color generation Video generator board contains: * the foreground generation and foreground graphics ROMs Sound I/O board contains: * the Z80 that drivers the sound * two AY-8910s for sound generation * all input/output ports accessed by the main CPU The layout of the PCB is identified by a five-digit number silkscreened on the PCB. This number also matches the number in the bottom-right corner of the schematics. Note, however, that the wiring diagrams in the schematics are generally a horrible cut and paste job and often have incorrect board numbers! Below is the definitive list of MCR games and which boards comprise their stack. Anything with identical boards should be interchangeable without problems. If you want to hook up some of the odd boards, you should look at the board descriptions below to understand the differences between each type of board: CPU Video Sound Others ----- ----- ----- ------------ Kick 90009 91399 90908 Solar Fox 90009 91399 90908 Satan's Hollow 90010 91399 90913 Tron 90010 91399 90913 91418 Kozmik Krooz'r 90010 91399 91483 91458 91482 Domino Man 90010 91399 90913 Wacko 90010 91399 90913 Two Tigers Journey 91475 91464 90913 Tapper 91490 91464 90913 Timber Discs of Tron 91490 91464 91657 91660 NFL Football 91490 91464 91657 91660 91695 Demolition Derby 91490 91464 90913 Spy Hunter 91442 91433 91657/90913 91671 Crater Raider 91721 91464 91657 Turbo Tag 91442 91433 91657 **************************************************************************** Detailed CPU board descriptions: 90009 (Kick, Solar Fox) * 2.5MHz Z80 * up to 7x2k program EPROMs * 2x4k background EPROMs * 32 entry palette RAM * background colors 0-15 * sprite colors 16-31 * sprite pen 8 shows foreground through 90010 (Satan's Hollow, Tron, Kozmik Krooz'r, Domino Man, Wacko) * 2.5MHz Z80 * up to 6x8k program EPROMs * 2x8k background EPROMs * 64 entry palette RAM * background colors 0-63, upper two bits come from tile RAM * sprite colors 0-63, upper two bits come from tile RAM * sprite pen 8 shows foreground through 91442 (Spy Hunter, Turbo Tag) * 5MHz Z80 * up to 6x8k program EPROMs * 4x8k background EPROMs (odd format) * 1x4k alpha EPROM * 64 entry palette RAM * background colors 0-15 on top half of screen, 32-47 on bottom * sprite colors 16-31 on top half of screen, 48-63 on bottom * alpha colors hard coded to green, blue, or white 91475 (Journey) * identical to 90010 except: * sprite colors 0-63, upper two bits come from video gen * sprite colors 48-63 have an extra bit for higher grayscale resolution 91490 (Tapper, Discs of Tron, Demolition Derby) * 5MHz Z80 * up to 3x16k + 1x8k program EPROMs * 2x16k background EPROMs * 64 entry palette RAM * background colors 0-63, upper two bits come from tile RAM * sprite colors 0-63, upper two bits come from either tile RAM or video gen (select via jumpers) 91721 (Crater Raider) * unknown, but expected to be identical to 91442 except: * background colors 0-15 on all scanlines * sprite colors 0-63, upper two bits come from video gen **************************************************************************** Detailed Video board descriptions: 91399 (Kick, Solar Fox, Satan's Hollow, Tron, Kozmik Krooz'r, Domino Man, Wacko) * 4x8k sprite EPROMs * data is ORed into linebuffers * support for hflip, vflip (code bits 6,7) * output is 4 bits: VID0-3 91442 (Spy Hunter, Turbo Tag) * 8x32k sprite EPROMs * data is written to linebuffers if not all F's * support for hflip, vflip (flags bits 4,5) * output is 4 bits: VID0-3 91464 (Journey, Tapper, Discs of Tron, Demolition Derby) * 8x32k sprite EPROMs * data is written to linebuffers if not all F's * support for hflip, vflip (flags bits 4,5) * support for 4 bits of extra data per pixel (flags bits 0-3) * output is 8 bits: VID0-3, COL0-3 **************************************************************************** Detailed Sound Board descriptions: 90908 (Kick, Solar Fox) * 2MHz Z80 * 2x2MHz AY8910 * each AY8910 channel has a duty cycle controlled @ 50kHz by a down counter * each AY8910 has a 3-to-8 demux that controls the left/right panning * anecdotal evidence suggests that this was not stuffed * input port 0 (J4 1-8) * input port 1 (J4 10-13,14-18) * input port 2 (J5 1-8) * DIP switch (10 position, port 3) * DIP switch (8 position, port 4) * output port (J5 10-17) 90913 (Satan's Hollow, Tron, Domino Man, Wacko, Journey, Tapper, Demolition Derby) * 2MHz Z80 * 2x2MHz AY8910 * each AY8910 channel has a duty cycle controlled @ 50kHz by a down counter * removed the panning controls * input port 0 (J4 1-8) * input port 1 (J4 10-13,14-18) * input port 2 (J5 1-8) * DIP switch (10 position, port 3), top bit goes to J6 10 * input port 4 (J6 1-7,9) * output port (J5 10-17) 91483 (Kozmik Krooz'r) * basically identical to 90913 * input port 4 has a set of jumpers between it and the J6 outputs 91657 (NFL Football, Discs of Tron, Spy Hunter) * appears to be identical in every way to 90908 * the panning circuitry is stuffed on these boards **************************************************************************** 90009 = CPU Board (Kick, SolarFox) 90010 = Super CPU (Kroozr, Tron, SHollow) 90908 = Sound I/O (Kick, SolarFox) 90913 = Super Sound I/O (SHollow, Tron) 91399 = Video Gen (Kick, SolarFox, SHollow, Tron, Kroozr) 91418 = Optical Encoder (Tron) 91433 = Video Gen III (SpyHunt) 91434 = Optical Sensor PC (Kroozr) 91442 = CPU Board MCR III (SpyHunt) 91458 = Analog Joystick PC (Kroozr) 91464 = Super Video Gen MCR III (Tapper) 91482 = Optical Sensor PC (Kroozr) 91483 = Super Sound I/O (Kroozr) 91490 = 5MHz CPU (Tapper) 91649 = Absolute Position PC (SpyHunt) 91657 = Super Sound I/O with Panning (DOTron) 91658 = Lamp Sequencer (DOTron) 91659 = Flashing Fluorescent Assembly (DOTron) 91660 = Squawk & Talk (DOTron, NFLFoot) 91671 = Chip Squeak Deluxe (SpyHunt) 91673 = Lamp Driver (SpyHunt) 91695 = IPU laserdisk controller (NFLFoot) 91794 = Optical Encoder Deluxe (DemoDerb) 91799 = Turbo Chip Squeak (DemoDerb) **************************************************************************** SSIO outputs: Output port 4 = J5=10-17 Output port **************************************************************************** Memory map **************************************************************************** ======================================================================== CPU #1 ======================================================================== 0000-6FFF R xxxxxxxx Program ROM 7000-77FF R/W xxxxxxxx NVRAM F000-F1FF R/W xxxxxxxx Sprite RAM F400-F41F W xxxxxxxx Palette RAM blue/green F800-F81F W xxxxxxxx Palette RAM red FC00-FFFF R/W xxxxxxxx Background video RAM ======================================================================== 0000 R x-xxxxxx Input ports R x------- Service switch (active low) R --x----- Tilt R ---xxx-- External inputs R ------x- Right coin R -------x Left coin 0000 W xxxxxxxx Data latch OP0 (coin meters, 2 led's and cocktail 'flip') 0001 R xxxxxxxx External inputs 0002 R xxxxxxxx External inputs 0003 R xxxxxxxx DIP switches 0004 R xxxxxxxx External inputs 0004 W xxxxxxxx Data latch OP4 (comm. with external hardware) 0007 R xxxxxxxx Audio status 001C-001F W xxxxxxxx Audio latches 1-4 00E0 W -------- Watchdog reset 00E8 W xxxxxxxx Unknown (written at initialization time) 00F0-00F3 W xxxxxxxx CTC communications ======================================================================== Interrupts: NMI ??? INT generated by CTC ======================================================================== ======================================================================== CPU #2 (Super Sound I/O) ======================================================================== 0000-3FFF R xxxxxxxx Program ROM 8000-83FF R/W xxxxxxxx Program RAM 9000-9003 R xxxxxxxx Audio latches 1-4 A000 W xxxxxxxx AY-8910 #1 control A001 R xxxxxxxx AY-8910 #1 status A002 W xxxxxxxx AY-8910 #1 data B000 W xxxxxxxx AY-8910 #2 control B001 R xxxxxxxx AY-8910 #2 status B002 W xxxxxxxx AY-8910 #2 data C000 W xxxxxxxx Audio status E000 W xxxxxxxx Unknown F000 R xxxxxxxx Audio board switches ======================================================================== Interrupts: NMI ??? INT generated by external circuitry 780 times/second ======================================================================== ***************************************************************************/ #include "emu.h" #include "cpu/z80/z80.h" #include "deprecat.h" #include "machine/z80ctc.h" #include "machine/z80pio.h" #include "machine/z80sio.h" #include "audio/mcr.h" #include "sound/samples.h" #include "machine/nvram.h" #include "includes/mcr.h" static UINT8 input_mux; static UINT8 last_op4; static UINT8 nflfoot_serial_out_active; static UINT8 nflfoot_serial_out_bits; static UINT8 nflfoot_serial_out_numbits; static UINT8 nflfoot_serial_in_active; static UINT16 nflfoot_serial_in_bits; static UINT8 nflfoot_serial_in_numbits; /************************************* * * Solar Fox input ports * *************************************/ static READ8_HANDLER( solarfox_ip0_r ) { /* This is a kludge; according to the wiring diagram, the player 2 */ /* controls are hooked up as documented below. If you go into test */ /* mode, they will respond. However, if you try it in a 2-player */ /* game in cocktail mode, they don't work at all. So we fake-mux */ /* the controls through player 1's ports */ if (mcr_cocktail_flip) return input_port_read(space->machine(), "SSIO.IP0") | 0x08; else return ((input_port_read(space->machine(), "SSIO.IP0") & ~0x14) | 0x08) | ((input_port_read(space->machine(), "SSIO.IP0") & 0x08) >> 1) | ((input_port_read(space->machine(), "SSIO.IP2") & 0x01) << 4); } static READ8_HANDLER( solarfox_ip1_r ) { /* same deal as above */ if (mcr_cocktail_flip) return input_port_read(space->machine(), "SSIO.IP1") | 0xf0; else return (input_port_read(space->machine(), "SSIO.IP1") >> 4) | 0xf0; } /************************************* * * Kick input ports * *************************************/ static READ8_HANDLER( kick_ip1_r ) { return (input_port_read(space->machine(), "DIAL2") << 4) & 0xf0; } /************************************* * * Wacko input ports * *************************************/ static WRITE8_HANDLER( wacko_op4_w ) { input_mux = data & 1; } static READ8_HANDLER( wacko_ip1_r ) { if (!input_mux) return input_port_read(space->machine(), "SSIO.IP1"); else return input_port_read(space->machine(), "SSIO.IP1.ALT"); } static READ8_HANDLER( wacko_ip2_r ) { if (!input_mux) return input_port_read(space->machine(), "SSIO.IP2"); else return input_port_read(space->machine(), "SSIO.IP2.ALT"); } /************************************* * * Kozmik Krooz'r input ports * *************************************/ static READ8_HANDLER( kroozr_ip1_r ) { int dial = input_port_read(space->machine(), "DIAL"); return ((dial & 0x80) >> 1) | ((dial & 0x70) >> 4); } static WRITE8_HANDLER( kroozr_op4_w ) { /* bit 2 = ship control bit 4 = cargo light cntl 1 bit 5 = cargo light cntl 2 */ } /************************************* * * Journey I/O ports * *************************************/ static WRITE8_HANDLER( journey_op4_w ) { device_t *samples = space->machine().device("samples"); /* if we're not playing the sample yet, start it */ if (!sample_playing(samples, 0)) sample_start(samples, 0, 0, 1); /* bit 0 turns cassette on/off */ sample_set_pause(samples, 0, ~data & 1); } /************************************* * * Discs of Tron I/O ports * *************************************/ static WRITE8_HANDLER( dotron_op4_w ) { /* Flasher Control: A 555 timer is set up in astable mode with R1=R2=56k and C=1uF giving a frequency of 8.5714 Hz. The timer is enabled if J1-3 is high (1). The output of the timer is connected to the input of a D-type flip flop at 1A, which is clocked by the AC sync (since this is a fluorescent light fixture). The J1-4 input is also connected the input of another D-type flip flop on the same chip at 1A. The output of this directly controls the light fixture. Thus: J1-3 enables a strobe effect at 8.5714 Hz (77.616ms high, 38.808ms low) J1-4 directly enables/disables the lamp. The two outputs are wire-ored together. */ /* bit 7 = FL1 (J1-3) on flasher control board */ /* bit 6 = FL0 (J1-4) on flasher control board */ output_set_value("backlight", (data >> 6) & 1); /* Lamp Sequencer: A 556 timer is set up in astable mode with two different frequencies, one using R1=R2=10k and C=10uF giving a frequency of 4.8 Hz, and the second using R1=R2=5.1k and C=10uF giving a frequency of 9.4118 Hz. The outputs of these clocks go into a mux at U4, whose input is selected by the input bit latched from J1-6. The output of the mux clocks a 16-bit binary counter at U3. The output of the binary counter becomes the low 4 address bits of the 82S123 PROM at U2. The upper address bit comes from the input bit latched from J1-5. Each of the 5 output bits from the 82S123 is inverted and connected to one of the lamps. The /CE pin on the 82S123 is connected to the input bit latched from J1-4. Thus: J1-4 enables (0) or disables (1) the lamp sequencing. J1-5 selects one of two 16-entry sequences stored in the 82S123. J1-6 selects one of two speeds (0=4.8 Hz, 1=9.4118 Hz) */ /* bit 5 = SEL1 (J1-1) on the Lamp Sequencer board */ if (((last_op4 ^ data) & 0x20) && (data & 0x20)) { /* bit 2 -> J1-4 = enable */ /* bit 1 -> J1-5 = sequence select */ /* bit 0 -> J1-6 = speed (0=slow, 1=fast) */ logerror("Lamp: en=%d seq=%d speed=%d\n", (data >> 2) & 1, (data >> 1) & 1, data & 1); } last_op4 = data; /* bit 4 = SEL0 (J1-8) on squawk n talk board */ /* bits 3-0 = MD3-0 connected to squawk n talk (J1-4,3,2,1) */ squawkntalk_data_w(space, offset, data); } /************************************* * * NFL Football Tron I/O ports * *************************************/ WRITE8_DEVICE_HANDLER( mcr_ipu_sio_transmit ) { logerror("ipu_sio_transmit: %02X\n", data); /* create a 10-bit value with a '1','0' sequence for the start bit */ nflfoot_serial_in_active = TRUE; nflfoot_serial_in_bits = (data << 2) | 1; nflfoot_serial_in_numbits = 10; } static READ8_HANDLER( nflfoot_ip2_r ) { /* bit 7 = J3-2 on IPU board = TXDA on SIO */ UINT8 val = 0x80; /* we only do this if we have active data */ if (nflfoot_serial_in_active) { val = (nflfoot_serial_in_bits & 1) ? 0x00 : 0x80; nflfoot_serial_in_bits >>= 1; if (--nflfoot_serial_in_numbits == 0) nflfoot_serial_in_active = FALSE; } if (cpu_get_pc(&space->device()) != 0x107) logerror("%04X:ip2_r = %02X\n", cpu_get_pc(&space->device()), val); return val; } static WRITE8_HANDLER( nflfoot_op4_w ) { device_t *sio = space->machine().device("ipu_sio"); /* bit 7 = J3-7 on IPU board = /RXDA on SIO */ logerror("%04X:op4_w(%d%d%d)\n", cpu_get_pc(&space->device()), (data >> 7) & 1, (data >> 6) & 1, (data >> 5) & 1); /* look for a non-zero start bit to go active */ if (!nflfoot_serial_out_active && (data & 0x80)) { nflfoot_serial_out_active = TRUE; nflfoot_serial_out_bits = 0; nflfoot_serial_out_numbits = 0; logerror(" -- serial active\n"); } /* accumulate bits as they are written */ else if (nflfoot_serial_out_active) { /* if we've accumulated less than 8, just add to the pile */ if (nflfoot_serial_out_numbits < 8) { nflfoot_serial_out_bits = (nflfoot_serial_out_bits >> 1) | (~data & 0x80); nflfoot_serial_out_numbits++; logerror(" -- accumulated %d bits\n", nflfoot_serial_out_numbits); } /* once we have 8, the final bit is a stop bit, feed it to the SIO */ else { logerror(" -- stop bit = %d; final value = %02X\n", (data >> 7) & 1, nflfoot_serial_out_bits); nflfoot_serial_out_active = FALSE; z80sio_receive_data(sio, 0, nflfoot_serial_out_bits); } } /* bit 6 = J3-3 on IPU board = CTSA on SIO */ z80sio_set_cts(sio, 0, (data >> 6) & 1); /* bit 4 = SEL0 (J1-8) on squawk n talk board */ /* bits 3-0 = MD3-0 connected to squawk n talk (J1-4,3,2,1) */ squawkntalk_data_w(space, offset, data); } /************************************* * * Demolition Derby I/O ports * *************************************/ static READ8_HANDLER( demoderb_ip1_r ) { return input_port_read(space->machine(), "SSIO.IP1") | (input_port_read(space->machine(), input_mux ? "SSIO.IP1.ALT2" : "SSIO.IP1.ALT1") << 2); } static READ8_HANDLER( demoderb_ip2_r ) { return input_port_read(space->machine(), "SSIO.IP2") | (input_port_read(space->machine(), input_mux ? "SSIO.IP2.ALT2" : "SSIO.IP2.ALT1") << 2); } static WRITE8_HANDLER( demoderb_op4_w ) { if (data & 0x40) input_mux = 1; if (data & 0x80) input_mux = 0; turbocs_data_w(space, offset, data); } /************************************* * * CPU board 90009 memory handlers * *************************************/ /* address map verified from schematics */ static ADDRESS_MAP_START( cpu_90009_map, AS_PROGRAM, 8 ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x6fff) AM_ROM AM_RANGE(0x7000, 0x77ff) AM_MIRROR(0x0800) AM_RAM AM_SHARE("nvram") AM_RANGE(0xf000, 0xf1ff) AM_MIRROR(0x0200) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) AM_RANGE(0xf400, 0xf41f) AM_MIRROR(0x03e0) AM_WRITE(paletteram_xxxxRRRRBBBBGGGG_split1_w) AM_BASE_GENERIC(paletteram) AM_RANGE(0xf800, 0xf81f) AM_MIRROR(0x03e0) AM_WRITE(paletteram_xxxxRRRRBBBBGGGG_split2_w) AM_BASE_GENERIC(paletteram2) AM_RANGE(0xfc00, 0xffff) AM_RAM_WRITE(mcr_90009_videoram_w) AM_BASE_MEMBER(mcr_state, m_videoram) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ static ADDRESS_MAP_START( cpu_90009_portmap, AS_IO, 8 ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS AM_RANGE(0xe0, 0xe0) AM_WRITE(watchdog_reset_w) AM_RANGE(0xe8, 0xe8) AM_WRITENOP AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) ADDRESS_MAP_END /************************************* * * CPU board 90010 memory handlers * *************************************/ /* address map verified from schematics */ static ADDRESS_MAP_START( cpu_90010_map, AS_PROGRAM, 8 ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xbfff) AM_ROM AM_RANGE(0xc000, 0xc7ff) AM_MIRROR(0x1800) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe000, 0xe1ff) AM_MIRROR(0x1600) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) AM_RANGE(0xe800, 0xefff) AM_MIRROR(0x1000) AM_RAM_WRITE(mcr_90010_videoram_w) AM_BASE_MEMBER(mcr_state, m_videoram) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ static ADDRESS_MAP_START( cpu_90010_portmap, AS_IO, 8 ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS AM_RANGE(0xe0, 0xe0) AM_WRITE(watchdog_reset_w) AM_RANGE(0xe8, 0xe8) AM_WRITENOP AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) ADDRESS_MAP_END /************************************* * * CPU board 91490 memory handlers * *************************************/ /* address map verified from schematics */ static ADDRESS_MAP_START( cpu_91490_map, AS_PROGRAM, 8 ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0xdfff) AM_ROM AM_RANGE(0xe000, 0xe7ff) AM_RAM AM_SHARE("nvram") AM_RANGE(0xe800, 0xe9ff) AM_MIRROR(0x0200) AM_RAM AM_BASE_SIZE_GENERIC(spriteram) AM_RANGE(0xf000, 0xf7ff) AM_RAM_WRITE(mcr_91490_videoram_w) AM_BASE_MEMBER(mcr_state, m_videoram) AM_RANGE(0xf800, 0xf87f) AM_MIRROR(0x0780) AM_WRITE(mcr_91490_paletteram_w) AM_BASE_GENERIC(paletteram) ADDRESS_MAP_END /* upper I/O map determined by PAL; only SSIO ports are verified from schematics */ static ADDRESS_MAP_START( cpu_91490_portmap, AS_IO, 8 ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) SSIO_INPUT_PORTS AM_RANGE(0xe0, 0xe0) AM_WRITE(watchdog_reset_w) AM_RANGE(0xe8, 0xe8) AM_WRITENOP AM_RANGE(0xf0, 0xf3) AM_DEVREADWRITE("ctc", z80ctc_r, z80ctc_w) ADDRESS_MAP_END /************************************* * * IPU board 91695 memory handlers * *************************************/ /* address map verified from schematics */ static ADDRESS_MAP_START( ipu_91695_map, AS_PROGRAM, 8 ) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0x0000, 0x3fff) AM_ROM AM_RANGE(0xe000, 0xffff) AM_RAM ADDRESS_MAP_END /* I/O verified from schematics */ static ADDRESS_MAP_START( ipu_91695_portmap, AS_IO, 8 ) ADDRESS_MAP_UNMAP_HIGH ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x00, 0x03) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_pio0", z80pio_cd_ba_r, z80pio_cd_ba_w) AM_RANGE(0x04, 0x07) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_sio", z80sio_cd_ba_r, z80sio_cd_ba_w) AM_RANGE(0x08, 0x0b) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_ctc", z80ctc_r, z80ctc_w) AM_RANGE(0x0c, 0x0f) AM_MIRROR(0xe0) AM_DEVREADWRITE("ipu_pio1", z80pio_cd_ba_r, z80pio_cd_ba_w) AM_RANGE(0x10, 0x13) AM_MIRROR(0xe0) AM_WRITE(mcr_ipu_laserdisk_w) AM_RANGE(0x1c, 0x1f) AM_MIRROR(0xe0) AM_READWRITE(mcr_ipu_watchdog_r, mcr_ipu_watchdog_w) ADDRESS_MAP_END /************************************* * * Port definitions * *************************************/ /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( solarfox ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x03, 0x03, "Bonus" ) PORT_DIPSETTING( 0x02, DEF_STR( None ) ) PORT_DIPSETTING( 0x03, "After 10 racks" ) PORT_DIPSETTING( 0x01, "After 20 racks" ) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_DIPNAME( 0x10, 0x00, DEF_STR( Demo_Sounds )) PORT_DIPSETTING( 0x10, DEF_STR( Off )) PORT_DIPSETTING( 0x00, DEF_STR( On )) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_DIPNAME( 0x40, 0x40, "Ignore Hardware Failure" ) PORT_DIPSETTING( 0x40, DEF_STR( Off )) PORT_DIPSETTING( 0x00, DEF_STR( On )) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet )) PORT_DIPSETTING( 0x80, DEF_STR( Upright )) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail )) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( kick ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(3) PORT_KEYDELTA(50) PORT_REVERSE PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Music" ) PORT_DIPSETTING( 0x01, DEF_STR( Off )) PORT_DIPSETTING( 0x00, DEF_STR( On )) PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("DIAL2") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( kickc ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(3) PORT_KEYDELTA(50) PORT_REVERSE PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Music" ) PORT_DIPSETTING( 0x01, DEF_STR( Off )) PORT_DIPSETTING( 0x00, DEF_STR( On )) PORT_BIT( 0x3e, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet )) PORT_DIPSETTING( 0x00, DEF_STR( Upright )) PORT_DIPSETTING( 0x40, DEF_STR( Cocktail )) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("DIAL2") PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(3) PORT_KEYDELTA(50) PORT_REVERSE PORT_COCKTAIL INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( shollow ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x01, "Coin Meters" ) PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( tron ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Coin Meters" ) PORT_DIPLOCATION("SW1:1") PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:2") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW1:3") PORT_DIPSETTING( 0x04, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) PORT_DIPUNUSED_DIPLOC( 0x08, 0x00, "SW1:4" ) PORT_DIPUNUSED_DIPLOC( 0x10, 0x00, "SW1:5" ) PORT_DIPUNUSED_DIPLOC( 0x20, 0x00, "SW1:6" ) PORT_DIPUNUSED_DIPLOC( 0x40, 0x00, "SW1:7" ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL // According to the manual, SW1 is a bank of *10* switches (9 is unused and 10 is freeze) // Where are the values for the other two bits read? PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_COCKTAIL PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END static INPUT_PORTS_START( tron3 ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY // PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL // PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL // PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL // PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Coin Meters" ) PORT_DIPLOCATION("SW1:1") PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:2") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW1:3") PORT_DIPSETTING( 0x04, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) PORT_DIPUNUSED_DIPLOC( 0x08, 0x00, "SW1:4" ) PORT_DIPUNUSED_DIPLOC( 0x10, 0x00, "SW1:5" ) PORT_DIPUNUSED_DIPLOC( 0x20, 0x00, "SW1:6" ) PORT_DIPUNUSED_DIPLOC( 0x40, 0x00, "SW1:7" ) // PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL // According to the manual, SW1 is a bank of *10* switches (9 is unused and 10 is freeze) // Where are the values for the other two bits read? PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) // PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_COCKTAIL PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( kroozr ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x07, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* low 3 bits of spinner */ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* sensor J1-10 */ PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* sensor J1-9 */ PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* sensor J1-8 */ PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* upper 1 bit of spinner */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0xff, 0x64, IPT_AD_STICK_X ) PORT_MINMAX(48,152) PORT_SENSITIVITY(100) PORT_KEYDELTA(52) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, 0x64, IPT_AD_STICK_Y ) PORT_MINMAX(48,152) PORT_SENSITIVITY(100) PORT_KEYDELTA(52) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("DIAL") PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(40) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( domino ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Music" ) PORT_DIPSETTING( 0x01, DEF_STR( Off )) PORT_DIPSETTING( 0x00, DEF_STR( On )) PORT_DIPNAME( 0x02, 0x02, "Skin Color" ) PORT_DIPSETTING( 0x02, "Light" ) PORT_DIPSETTING( 0x00, "Dark" ) PORT_BIT( 0x3c, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x80, 0x00, "Coin Meters" ) PORT_DIPSETTING( 0x80, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( journey ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x01, "Coin Meters" ) PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPNAME( 0x02, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x02, DEF_STR( Cocktail ) ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( wacko ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x40, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x80, 0x00, "Coin Meters" ) PORT_DIPSETTING( 0x80, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_4WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_4WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_4WAY PORT_COCKTAIL PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP1.ALT") PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_COCKTAIL PORT_START("SSIO.IP2.ALT") PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_COCKTAIL INPUT_PORTS_END /* not verified, no manual found */ static INPUT_PORTS_START( twotiger ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Dogfight Start") PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x67, IPT_AD_STICK_X ) PORT_MINMAX(0, 206) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(2) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0xff, 0x67, IPT_AD_STICK_X ) PORT_MINMAX(0, 206) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x00, "Shot Speed" ) PORT_DIPSETTING( 0x01, "Fast" ) PORT_DIPSETTING( 0x00, "Slow" ) PORT_DIPNAME( 0x02, 0x00, "Dogfight" ) PORT_DIPSETTING( 0x00, "1 Credit" ) PORT_DIPSETTING( 0x02, "2 Credits" ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* not verified, no manual found */ static INPUT_PORTS_START( twotigrc ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Dogfight Start") PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10) PORT_REVERSE PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( tapper ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x38, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x40, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x80, 0x80, "Coin Meters" ) PORT_DIPSETTING( 0x80, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* not verified, no manual found */ static INPUT_PORTS_START( timber ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x38, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x40, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) PORT_DIPNAME( 0x80, 0x80, "Coin Meters" ) PORT_DIPSETTING( 0x80, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( dotron ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x7f, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Aim Down") PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Aim Up") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, "Environmental" ) PORT_DIPSETTING( 0x80, DEF_STR( Upright ) ) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x01, "Coin Meters" ) PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("FAKE") /* fake port to make aiming up & down easier */ PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) INPUT_PORTS_END static INPUT_PORTS_START( dotrone ) PORT_INCLUDE(dotron) PORT_MODIFY("SSIO.IP2") PORT_DIPNAME( 0x80, 0x00, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x00, "Environmental" ) PORT_DIPSETTING( 0x80, DEF_STR( Upright ) ) INPUT_PORTS_END /* verified from wiring diagram, plus DIP switches from manual */ static INPUT_PORTS_START( nflfoot ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BILL1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 ) /* continue game */ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* service */ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) /* new game */ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* left engage */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) /* left select #1 play */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) /* left select #2 play */ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) /* left select #3 play */ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) /* left select #4 play */ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) /* left select #5 play */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1) /* select one player */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP2") /* J5 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) /* right engage */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) /* right select #1 play */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) /* right select #2 play */ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) /* right select #3 play */ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) /* right select #4 play */ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2) /* right select #5 play */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(2) /* select two player */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SPECIAL ) /* connects to IPU board */ PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x01, "Coin Meters" ) PORT_DIPSETTING( 0x01, "1" ) PORT_DIPSETTING( 0x00, "2" ) PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /* "wiring diagram was not available at time of publication" according to the manual */ /* DIPs verified from the manual */ static INPUT_PORTS_START( demoderb ) PORT_START("SSIO.IP0") /* J4 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_SERVICE( 0x20, IP_ACTIVE_LOW ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("SSIO.IP1") /* J4 10-13,15-18 */ /* The high 6 bits contain the steering wheel value */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_START("SSIO.IP1.ALT1") /* J4 10-13,15-18 */ /* The high 6 bits contain the steering wheel value */ PORT_BIT( 0x3f, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) PORT_START("SSIO.IP1.ALT2") /* IN1 (muxed) -- the high 6 bits contain the steering wheel value */ PORT_BIT( 0x3f, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(3) PORT_START("SSIO.IP2") /* J5 1-8 */ /* The high 6 bits contain the steering wheel value */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_START("SSIO.IP2.ALT1") /* J5 1-8 */ /* The high 6 bits contain the steering wheel value */ PORT_BIT( 0x3f, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) PORT_START("SSIO.IP2.ALT2") /* IN2 (muxed) -- the high 6 bits contain the steering wheel value */ PORT_BIT( 0x3f, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(4) PORT_START("SSIO.IP3") /* DIPSW @ B3 */ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x01, "2P Upright" ) PORT_DIPSETTING( 0x00, "4P Cocktail" ) PORT_DIPNAME( 0x02, 0x02, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) PORT_DIPNAME( 0x04, 0x04, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPNAME( 0x08, 0x08, "Reward Screen" ) PORT_DIPSETTING( 0x08, "Expanded" ) PORT_DIPSETTING( 0x00, "Limited" ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coinage ) ) PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 2C_2C ) ) PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x10, DEF_STR( 1C_2C ) ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("SSIO.IP4") /* J6 1-8 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_START("SSIO.DIP") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /************************************* * * Graphics definitions * *************************************/ static GFXDECODE_START( mcr ) GFXDECODE_SCALE( "gfx1", 0, mcr_bg_layout, 0, 4, 2, 2 ) /* colors 0-15, 2x2 */ GFXDECODE_ENTRY( "gfx2", 0, mcr_sprite_layout, 0, 4 ) /* colors 16-31 */ GFXDECODE_END /************************************* * * Sound definitions * *************************************/ static const char *const journey_sample_names[] = { "*journey", "sepways.wav", 0 }; static const samples_interface journey_samples_interface = { 1, journey_sample_names }; /************************************* * * Machine driver * *************************************/ /* 90009 CPU board plus 90908/90913/91483 sound board */ static MACHINE_CONFIG_START( mcr_90009, mcr_state ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", Z80, MAIN_OSC_MCR_I/8) MCFG_CPU_CONFIG(mcr_daisy_chain) MCFG_CPU_PROGRAM_MAP(cpu_90009_map) MCFG_CPU_IO_MAP(cpu_90009_portmap) MCFG_CPU_VBLANK_INT_HACK(mcr_interrupt,2) MCFG_Z80CTC_ADD("ctc", MAIN_OSC_MCR_I/8 /* same as "maincpu" */, mcr_ctc_intf) MCFG_WATCHDOG_VBLANK_INIT(16) MCFG_MACHINE_START(mcr) MCFG_MACHINE_RESET(mcr) MCFG_NVRAM_ADD_1FILL("nvram") /* video hardware */ MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK) MCFG_SCREEN_ADD("screen", RASTER) MCFG_SCREEN_REFRESH_RATE(30) MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500) /* not accurate */) MCFG_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16) MCFG_SCREEN_SIZE(32*16, 30*16) MCFG_SCREEN_VISIBLE_AREA(0*16, 32*16-1, 0*16, 30*16-1) MCFG_SCREEN_UPDATE(mcr) MCFG_GFXDECODE(mcr) MCFG_PALETTE_LENGTH(32) MCFG_VIDEO_START(mcr) /* sound hardware */ MCFG_FRAGMENT_ADD(mcr_ssio) MACHINE_CONFIG_END /* 90010 CPU board plus 90908/90913/91483 sound board */ static MACHINE_CONFIG_DERIVED( mcr_90010, mcr_90009 ) /* basic machine hardware */ MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(cpu_90010_map) MCFG_CPU_IO_MAP(cpu_90010_portmap) /* video hardware */ MCFG_PALETTE_LENGTH(64) MACHINE_CONFIG_END /* 91475 CPU board plus 90908/90913/91483 sound board plus cassette interface */ static MACHINE_CONFIG_DERIVED( mcr_91475, mcr_90010 ) /* video hardware */ MCFG_PALETTE_LENGTH(128) /* sound hardware */ MCFG_SOUND_ADD("samples", SAMPLES, 0) MCFG_SOUND_CONFIG(journey_samples_interface) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 0.25) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.25) MACHINE_CONFIG_END /* 91490 CPU board plus 90908/90913/91483 sound board */ static MACHINE_CONFIG_DERIVED( mcr_91490, mcr_90010 ) /* basic machine hardware */ MCFG_CPU_MODIFY("maincpu") MCFG_CPU_CLOCK(5000000) MCFG_CPU_PROGRAM_MAP(cpu_91490_map) MCFG_CPU_IO_MAP(cpu_91490_portmap) MCFG_DEVICE_MODIFY("ctc") MCFG_DEVICE_CLOCK(5000000 /* same as "maincpu" */) MACHINE_CONFIG_END /* 91490 CPU board plus 90908/90913/91483 sound board plus Squawk n' Talk sound board */ static MACHINE_CONFIG_DERIVED( mcr_91490_snt, mcr_91490 ) /* basic machine hardware */ MCFG_FRAGMENT_ADD(squawk_n_talk) MACHINE_CONFIG_END /* 91490 CPU board plus 90908/90913/91483 sound board plus Squawk n' Talk sound board plus IPU */ static MACHINE_CONFIG_DERIVED( mcr_91490_ipu, mcr_91490_snt ) /* basic machine hardware */ MCFG_MACHINE_START(nflfoot) MCFG_CPU_ADD("ipu", Z80, 7372800/2) MCFG_CPU_CONFIG(mcr_ipu_daisy_chain) MCFG_CPU_PROGRAM_MAP(ipu_91695_map) MCFG_CPU_IO_MAP(ipu_91695_portmap) MCFG_CPU_VBLANK_INT_HACK(mcr_ipu_interrupt,2) MCFG_Z80CTC_ADD("ipu_ctc", 7372800/2 /* same as "ipu" */, nflfoot_ctc_intf) MCFG_Z80PIO_ADD("ipu_pio0", 7372800/2, nflfoot_pio_intf) MCFG_Z80PIO_ADD("ipu_pio1", 7372800/2, nflfoot_pio_intf) MCFG_Z80SIO_ADD("ipu_sio", 7372800/2 /* same as "ipu" */, nflfoot_sio_intf) MACHINE_CONFIG_END /* 91490 CPU board plus 90908/90913/91483 sound board plus Turbo Chip Squeak sound board */ static MACHINE_CONFIG_DERIVED( mcr_91490_tcs, mcr_91490 ) /* basic machine hardware */ MCFG_FRAGMENT_ADD(turbo_chip_squeak) MACHINE_CONFIG_END /************************************* * * ROM definitions * *************************************/ ROM_START( solarfox ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "sfcpu.3b", 0x0000, 0x1000, CRC(8c40f6eb) SHA1(a323897cfa8771edd28d58d806913e62110a2689) ) ROM_LOAD( "sfcpu.4b", 0x1000, 0x1000, CRC(4d47bd7e) SHA1(0cfa09f2c1fe6d662c3a96abc43edf431ccf6d02) ) ROM_LOAD( "sfcpu.5b", 0x2000, 0x1000, CRC(b52c3bd5) SHA1(bc289641830a3c6640303b1a799c378bf456bed1) ) ROM_LOAD( "sfcpu.4d", 0x3000, 0x1000, CRC(bd5d25ba) SHA1(b7be1250dfb6af9cc0f9c6b446fb183528eab7de) ) ROM_LOAD( "sfcpu.5d", 0x4000, 0x1000, CRC(dd57d817) SHA1(059a020313cf929130d1ae9a80f3b91c54fe7699) ) ROM_LOAD( "sfcpu.6d", 0x5000, 0x1000, CRC(bd993cd9) SHA1(c074a6a40d0b9c0f4bf3fc5982263c89549fb338) ) ROM_LOAD( "sfcpu.7d", 0x6000, 0x1000, CRC(8ad8731d) SHA1(ffd19c3fbad3c5a240ab27963812cc300f3d7b89) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "sfsnd.7a", 0x0000, 0x1000, CRC(cdecf83a) SHA1(5acd2709e214408d756b39916bb98cd4ecda7988) ) ROM_LOAD( "sfsnd.8a", 0x1000, 0x1000, CRC(cb7788cb) SHA1(9e86f9131a6f0fc96dd436e21baf45e215ee65f4) ) ROM_LOAD( "sfsnd.9a", 0x2000, 0x1000, CRC(304896ce) SHA1(00ff640eab50022da980cdc5ce8cedebaaebc9cf) ) ROM_REGION( 0x02000, "gfx1", 0 ) ROM_LOAD( "sfcpu.4g", 0x0000, 0x1000, CRC(ba019a60) SHA1(81923f8c51eedfef6f5e9d6ace1d785d7afafc14) ) ROM_LOAD( "sfcpu.5g", 0x1000, 0x1000, CRC(7ff0364e) SHA1(b04034fc076008302931a485e00762dc34660498) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "sfvid.1a", 0x0000, 0x2000, CRC(9d9b5d7e) SHA1(4896c532a3d5763284a4403e8558f634f7b968d8) ) ROM_LOAD( "sfvid.1b", 0x2000, 0x2000, CRC(78801e83) SHA1(23b5811a03fe4ad576c5313d2205203577300159) ) ROM_LOAD( "sfvid.1d", 0x4000, 0x2000, CRC(4d8445cf) SHA1(fbe427da0e758b79eb2230713f2cd12e6f8bdeb7) ) ROM_LOAD( "sfvid.1e", 0x6000, 0x2000, CRC(3da25495) SHA1(e7b703bc8caca7497af92efc869c6f1b7dbc8bf1) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( kick ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "1200a-v2.b3", 0x0000, 0x1000, CRC(65924917) SHA1(4fbc7161f4b03bc395c775fa6239a23bf7357e89) ) ROM_LOAD( "1300b-v2.b4", 0x1000, 0x1000, CRC(27929f52) SHA1(e03a550792df68eeb2a1f5177309fe01b5fcaa3d) ) ROM_LOAD( "1400c-v2.b5", 0x2000, 0x1000, CRC(69107ce6) SHA1(4aedbb9f1072e315f7e5e3c8559f2995146f4b9d) ) ROM_LOAD( "1500d-v2.d4", 0x3000, 0x1000, CRC(04a23aa1) SHA1(9a70ca3dc6db984dbb490076cf0ec11cc213f199) ) ROM_LOAD( "1600e-v2.d5", 0x4000, 0x1000, CRC(1d2834c0) SHA1(176fad90ab14c922a575c3d12a2c8a339d1518d4) ) ROM_LOAD( "1700f-v2.d6", 0x5000, 0x1000, CRC(ddf84ce1) SHA1(6f80b9a5cbd75b6e4af569ca4bcfcde7daaad64f) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "4200-a.a7", 0x0000, 0x1000, CRC(9e35c02e) SHA1(92afd0126dcfb2d4401927b2cf261090e186b6fa) ) ROM_LOAD( "4300-b.a8", 0x1000, 0x1000, CRC(ca2b7c28) SHA1(fdcca3b755822c045c3c321cccc3f58112e2ad11) ) ROM_LOAD( "4400-c.a9", 0x2000, 0x1000, CRC(d1901551) SHA1(fd7d6059f8ac59f95ae6f8ef12fbfce7ed16ec12) ) ROM_LOAD( "4500-d.a10", 0x3000, 0x1000, CRC(d36ddcdc) SHA1(2d3ec83b9fa5a9d309c393a0c3ee45f0ba8192c9) ) ROM_REGION( 0x02000, "gfx1", 0 ) ROM_LOAD( "1800g-v2.g4", 0x0000, 0x1000, CRC(b4d120f3) SHA1(e61ae236f14eb1f519e196046fe8240c10932c2e) ) ROM_LOAD( "1900h-v2.g5", 0x1000, 0x1000, CRC(c3ba4893) SHA1(76998db55519d7f1cf0f6b51d4f8ad7161b3a92e) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "2600a-v2.1e", 0x0000, 0x2000, CRC(2c5d6b55) SHA1(c326b8c7bcb903ea3a1a721443a37e1e8eabe975) ) ROM_LOAD( "2700b-v2.1d", 0x2000, 0x2000, CRC(565ea97d) SHA1(4a30a371ad407bf774cf08bf528f824675383698) ) ROM_LOAD( "2800c-v2.1b", 0x4000, 0x2000, CRC(f3be56a1) SHA1(eb3eb0379a918a2959565572d88f9b0f021d1c2a) ) ROM_LOAD( "2900d-v2.1a", 0x6000, 0x2000, CRC(77da795e) SHA1(ebebc8551e7a7534d89bb8458eb2576713cfbeaf) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( kickman ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "1200-a-ur.b3", 0x0000, 0x1000, CRC(d8cd9f0f) SHA1(a55f4423d57510256fb9b20b1bded06636c7bd05) ) ROM_LOAD( "1300-b-ur.b4", 0x1000, 0x1000, CRC(4dee27bb) SHA1(b411d0c05339ae92732c89a4d0b7038d6b360475) ) ROM_LOAD( "1400-c-ur.b5", 0x2000, 0x1000, CRC(06f070c9) SHA1(02eb19296e6c32544041ab5bf3dbb5a4f20c8ace) ) ROM_LOAD( "1500-d-ur.d4", 0x3000, 0x1000, CRC(8d95b740) SHA1(93287324b599ec50dd84cc2dc70e82ccd8314a8a) ) ROM_LOAD( "1600-e-ur.d5", 0x4000, 0x1000, CRC(f24bc0d7) SHA1(31dc996898c01f3427403e396a47444732904674) ) ROM_LOAD( "1700-f-ur.d6", 0x5000, 0x1000, CRC(672361fc) SHA1(010029460c25935f2156eb64c9109c26ce40b752) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "4200-a.a7", 0x0000, 0x1000, CRC(9e35c02e) SHA1(92afd0126dcfb2d4401927b2cf261090e186b6fa) ) ROM_LOAD( "4300-b.a8", 0x1000, 0x1000, CRC(ca2b7c28) SHA1(fdcca3b755822c045c3c321cccc3f58112e2ad11) ) ROM_LOAD( "4400-c.a9", 0x2000, 0x1000, CRC(d1901551) SHA1(fd7d6059f8ac59f95ae6f8ef12fbfce7ed16ec12) ) ROM_LOAD( "4500-d.a10", 0x3000, 0x1000, CRC(d36ddcdc) SHA1(2d3ec83b9fa5a9d309c393a0c3ee45f0ba8192c9) ) ROM_REGION( 0x02000, "gfx1", 0 ) ROM_LOAD( "1800g-v2.g4", 0x0000, 0x1000, CRC(b4d120f3) SHA1(e61ae236f14eb1f519e196046fe8240c10932c2e) ) ROM_LOAD( "1900h-v2.g5", 0x1000, 0x1000, CRC(c3ba4893) SHA1(76998db55519d7f1cf0f6b51d4f8ad7161b3a92e) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "2600a-v2.1e", 0x0000, 0x2000, CRC(2c5d6b55) SHA1(c326b8c7bcb903ea3a1a721443a37e1e8eabe975) ) ROM_LOAD( "2700b-v2.1d", 0x2000, 0x2000, CRC(565ea97d) SHA1(4a30a371ad407bf774cf08bf528f824675383698) ) ROM_LOAD( "2800c-v2.1b", 0x4000, 0x2000, CRC(f3be56a1) SHA1(eb3eb0379a918a2959565572d88f9b0f021d1c2a) ) ROM_LOAD( "2900d-v2.1a", 0x6000, 0x2000, CRC(77da795e) SHA1(ebebc8551e7a7534d89bb8458eb2576713cfbeaf) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( kickc ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "1200-a.b3", 0x0000, 0x1000, CRC(22fa42ed) SHA1(3922ce1f13e21cae9ee8d1af58f2bbe83d5eb979) ) ROM_LOAD( "1300-b.b4", 0x1000, 0x1000, CRC(afaca819) SHA1(383f40d49e4c256e9eb83e778c140b0b97860f69) ) ROM_LOAD( "1400-c.b5", 0x2000, 0x1000, CRC(6054ee56) SHA1(77da5a8d6209c746b233808a452dbf1917da7f3e) ) ROM_LOAD( "1500-d.d4", 0x3000, 0x1000, CRC(263af0f3) SHA1(f8c511852f48b6fb5617d5b3666df53b08584db5) ) ROM_LOAD( "1600-e.d5", 0x4000, 0x1000, CRC(eaaa78a7) SHA1(3c057d486f3938561fb9947e0463b1255ae04ef9) ) ROM_LOAD( "1700-f.d6", 0x5000, 0x1000, CRC(c06c880f) SHA1(d5ac5682de316b9cb09d433e2c02746efadd2a81) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "4200-a.a7", 0x0000, 0x1000, CRC(9e35c02e) SHA1(92afd0126dcfb2d4401927b2cf261090e186b6fa) ) ROM_LOAD( "4300-b.a8", 0x1000, 0x1000, CRC(ca2b7c28) SHA1(fdcca3b755822c045c3c321cccc3f58112e2ad11) ) ROM_LOAD( "4400-c.a9", 0x2000, 0x1000, CRC(d1901551) SHA1(fd7d6059f8ac59f95ae6f8ef12fbfce7ed16ec12) ) ROM_LOAD( "4500-d.a10", 0x3000, 0x1000, CRC(d36ddcdc) SHA1(2d3ec83b9fa5a9d309c393a0c3ee45f0ba8192c9) ) ROM_REGION( 0x02000, "gfx1", 0 ) ROM_LOAD( "1000-g.g4", 0x0000, 0x1000, CRC(acdae4f6) SHA1(8af065a7fe07f5b444314adc0ac69073e7bd5354) ) ROM_LOAD( "1100-h.g5", 0x1000, 0x1000, CRC(dbb18c96) SHA1(a437d5d83b0638ca498e066bab1222bb5f39d5fb) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "2600-a.1e", 0x0000, 0x2000, CRC(74b409d7) SHA1(13769060c02ab514d70e29a2452512f342189fa9) ) ROM_LOAD( "2700-b.1d", 0x2000, 0x2000, CRC(78eda36c) SHA1(5cf9da6f364f586f324e7ac529db0dc273498320) ) ROM_LOAD( "2800-c.1b", 0x4000, 0x2000, CRC(c93e0170) SHA1(a7efdb6fd13dccd8d8d10de61b87585828bde6ac) ) ROM_LOAD( "2900-d.1a", 0x6000, 0x2000, CRC(91e59383) SHA1(bf87642cc747f1abbd80c6f529adfa60a1d9bc9e) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( shollow ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "sh-pro.00", 0x0000, 0x2000, CRC(95e2b800) SHA1(8781295e21e5202288293fb9eb558cb1835b11ea) ) ROM_LOAD( "sh-pro.01", 0x2000, 0x2000, CRC(b99f6ff8) SHA1(575cdba5bf9965c7765ce913a3376c7ba36b8291) ) ROM_LOAD( "sh-pro.02", 0x4000, 0x2000, CRC(1202c7b2) SHA1(ebae4711f124a34f19305da16657ece805e1da26) ) ROM_LOAD( "sh-pro.03", 0x6000, 0x2000, CRC(0a64afb9) SHA1(3ac6660d2b0166c58ec4fecfe37ce36e545064df) ) ROM_LOAD( "sh-pro.04", 0x8000, 0x2000, CRC(22fa9175) SHA1(fd8ea76b3a7ffaf48fc11dd3b7c58e548e3e57c5) ) ROM_LOAD( "sh-pro.05", 0xa000, 0x2000, CRC(1716e2bb) SHA1(771e4c20d63e4e1d99723e6355db67064a278ae5) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "sh-snd.01", 0x0000, 0x1000, CRC(55a297cc) SHA1(b34f37fca61cdba26b5671feee991d133b8697a4) ) ROM_LOAD( "sh-snd.02", 0x1000, 0x1000, CRC(46fc31f6) SHA1(9b1a56962b2d210b1013bc35de780c6d5b3eb4bc) ) ROM_LOAD( "sh-snd.03", 0x2000, 0x1000, CRC(b1f4a6a8) SHA1(ba724f9cc0cc35dd31d4ad8b36a51da9d6cbfbcf) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "sh-bg.00", 0x0000, 0x2000, CRC(3e2b333c) SHA1(b4347d0b3d6149e94da4a38684c0fab931e76cc5) ) ROM_LOAD( "sh-bg.01", 0x2000, 0x2000, CRC(d1d70cc4) SHA1(550e2e8c0bcbf7913b218fe48cd3324622c8d0f4) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "sh-fg.00", 0x0000, 0x2000, CRC(33f4554e) SHA1(88dd803158d3c65429b79d2aaf8334130315aa93) ) ROM_LOAD( "sh-fg.01", 0x2000, 0x2000, CRC(ba1a38b4) SHA1(cee5f0a66e40c779f1bfbb4bfafe5301385e7dae) ) ROM_LOAD( "sh-fg.02", 0x4000, 0x2000, CRC(6b57f6da) SHA1(71165df59dd5ca037116dc0f46fd4f6aac6dbfd1) ) ROM_LOAD( "sh-fg.03", 0x6000, 0x2000, CRC(37ea9d07) SHA1(82e006b01ee12390308be530d4b68fc2404b6b91) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( shollow2 ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "sh-pro.00", 0x0000, 0x2000, CRC(95e2b800) SHA1(8781295e21e5202288293fb9eb558cb1835b11ea) ) ROM_LOAD( "sh-pro.01", 0x2000, 0x2000, CRC(b99f6ff8) SHA1(575cdba5bf9965c7765ce913a3376c7ba36b8291) ) ROM_LOAD( "sh-pro.02", 0x4000, 0x2000, CRC(1202c7b2) SHA1(ebae4711f124a34f19305da16657ece805e1da26) ) ROM_LOAD( "sh-pro.03", 0x6000, 0x2000, CRC(0a64afb9) SHA1(3ac6660d2b0166c58ec4fecfe37ce36e545064df) ) ROM_LOAD( "sh-pro.04", 0x8000, 0x2000, CRC(22fa9175) SHA1(fd8ea76b3a7ffaf48fc11dd3b7c58e548e3e57c5) ) ROM_LOAD( "sh-pro.05", 0xa000, 0x2000, CRC(1716e2bb) SHA1(771e4c20d63e4e1d99723e6355db67064a278ae5) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "snd-0.a7", 0x0000, 0x1000, CRC(9d815bb3) SHA1(51af797e08dbe3921e11ce70c3d0da50979336a4) ) ROM_LOAD( "snd-1.a8", 0x1000, 0x1000, CRC(9f253412) SHA1(a526e864073a2f9e67e2cbe53ab17fe726336241) ) ROM_LOAD( "snd-2.a9", 0x2000, 0x1000, CRC(7783d6c6) SHA1(1fb2117532e7da28afdb9837bcb6848165cf8173) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "sh-bg.00", 0x0000, 0x2000, CRC(3e2b333c) SHA1(b4347d0b3d6149e94da4a38684c0fab931e76cc5) ) ROM_LOAD( "sh-bg.01", 0x2000, 0x2000, CRC(d1d70cc4) SHA1(550e2e8c0bcbf7913b218fe48cd3324622c8d0f4) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "sh-fg.00", 0x0000, 0x2000, CRC(33f4554e) SHA1(88dd803158d3c65429b79d2aaf8334130315aa93) ) ROM_LOAD( "sh-fg.01", 0x2000, 0x2000, CRC(ba1a38b4) SHA1(cee5f0a66e40c779f1bfbb4bfafe5301385e7dae) ) ROM_LOAD( "sh-fg.02", 0x4000, 0x2000, CRC(6b57f6da) SHA1(71165df59dd5ca037116dc0f46fd4f6aac6dbfd1) ) ROM_LOAD( "sh-fg.03", 0x6000, 0x2000, CRC(37ea9d07) SHA1(82e006b01ee12390308be530d4b68fc2404b6b91) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END /* TRON (Set 1 - 8/9) */ ROM_START( tron ) ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "pro0.d2", 0x0000, 0x2000, CRC(0de0471a) SHA1(378847604a6a9c079d887348010ab9539d5f6195) ) ROM_LOAD( "scpu_pgb.d3", 0x2000, 0x2000, CRC(8ddf8717) SHA1(e0c294afa8ba0b0ba89e3e0fb3ff6d8fc4398e32) ) ROM_LOAD( "scpu_pgc.d4", 0x4000, 0x2000, CRC(4241e3a0) SHA1(24c1bd2f31e194542571c391c5dccf21354115c2) ) ROM_LOAD( "scpu_pgd.d5", 0x6000, 0x2000, CRC(035d2fe7) SHA1(1b827ca30a439d2f4cc94fcc0e90ee0cf87e018c) ) ROM_LOAD( "scpu_pge.d6", 0x8000, 0x2000, CRC(24c185d8) SHA1(45ac7c53f6f4eba5c7bf3fc6559cddd3821eddad) ) ROM_LOAD( "scpu_pgf.d7", 0xA000, 0x2000, CRC(38c4bbaf) SHA1(a7cd496ce75199b8279ea963520cf70d5f562bb2) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "ssi_0a.a7", 0x0000, 0x1000, CRC(765e6eba) SHA1(42efeefc8571dfc237c0be3368248f1e56add92e) ) ROM_LOAD( "ssi_0b.a8", 0x1000, 0x1000, CRC(1b90ccdd) SHA1(0876e5eeaa63bb8cc97f3634a6ddd8a29a9b012f) ) ROM_LOAD( "ssi_0c.a9", 0x2000, 0x1000, CRC(3a4bc629) SHA1(ce8452a99a313ae7429de471bbea39de08c9fd4b) ) ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) ) ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) ) ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */ ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) ) ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) ) ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) ) ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) ) ROM_REGION( 0x0020, "proms", 0 ) /* PROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "9860-07axn-axhd.d12", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* N82S123 */ ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */ ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) ROM_END /* TRON (Set 2 - 6/25) */ ROM_START( tron2 ) ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_pga.d2", 0x0000, 0x2000, CRC(5151770b) SHA1(26f4d830de7be228528e462dd628f439629a2641) ) ROM_LOAD( "scpu_pgb.d3", 0x2000, 0x2000, CRC(8ddf8717) SHA1(e0c294afa8ba0b0ba89e3e0fb3ff6d8fc4398e32) ) ROM_LOAD( "scpu_pgc.d4", 0x4000, 0x2000, CRC(4241e3a0) SHA1(24c1bd2f31e194542571c391c5dccf21354115c2) ) ROM_LOAD( "scpu_pgd.d5", 0x6000, 0x2000, CRC(035d2fe7) SHA1(1b827ca30a439d2f4cc94fcc0e90ee0cf87e018c) ) ROM_LOAD( "scpu_pge.d6", 0x8000, 0x2000, CRC(24c185d8) SHA1(45ac7c53f6f4eba5c7bf3fc6559cddd3821eddad) ) ROM_LOAD( "scpu_pgf.d7", 0xa000, 0x2000, CRC(38c4bbaf) SHA1(a7cd496ce75199b8279ea963520cf70d5f562bb2) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "ssi_0a.a7", 0x0000, 0x1000, CRC(765e6eba) SHA1(42efeefc8571dfc237c0be3368248f1e56add92e) ) ROM_LOAD( "ssi_0b.a8", 0x1000, 0x1000, CRC(1b90ccdd) SHA1(0876e5eeaa63bb8cc97f3634a6ddd8a29a9b012f) ) ROM_LOAD( "ssi_0c.a9", 0x2000, 0x1000, CRC(3a4bc629) SHA1(ce8452a99a313ae7429de471bbea39de08c9fd4b) ) ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) ) ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) ) ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */ ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) ) ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) ) ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) ) ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) ) ROM_REGION( 0x0020, "proms", 0 ) /* PROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "9860-07axn-axhd.d12", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* N82S123 */ ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */ ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) ROM_END /* TRON (Set 3 - 6/17) */ ROM_START( tron3 ) ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_pga.d2", 0x0000, 0x2000, CRC(fc33afd7) SHA1(99a2ed972c3db477f35a7162079563367864f207) ) ROM_LOAD( "scpu_pgb.d3", 0x2000, 0x2000, CRC(7d9e22ac) SHA1(16a6e9651d5f764e8762fd8d6e53d13fda7473de) ) ROM_LOAD( "scpu_pgc.d4", 0x4000, 0x2000, CRC(902011c6) SHA1(17ac768a0fd1278ae83414f0d67d6ac8337f4773) ) ROM_LOAD( "scpu_pgd.d5", 0x6000, 0x2000, CRC(86477e89) SHA1(196f0d3930d10bfe4ddee82ce8b28bb99324069e) ) ROM_LOAD( "scpu_pge.d6", 0x8000, 0x2000, CRC(ea198fa8) SHA1(d8c97ea87d504e77edc38c87c2953c8c4f1a405b) ) ROM_LOAD( "scpu_pgf.d7", 0xa000, 0x2000, CRC(4325fb08) SHA1(70727aa37354425315d8a8b3ca07bbe91f7e8f08) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "ssi_0a.a7", 0x0000, 0x1000, CRC(765e6eba) SHA1(42efeefc8571dfc237c0be3368248f1e56add92e) ) ROM_LOAD( "ssi_0b.a8", 0x1000, 0x1000, CRC(1b90ccdd) SHA1(0876e5eeaa63bb8cc97f3634a6ddd8a29a9b012f) ) ROM_LOAD( "ssi_0c.a9", 0x2000, 0x1000, CRC(3a4bc629) SHA1(ce8452a99a313ae7429de471bbea39de08c9fd4b) ) ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) ) ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) ) ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */ ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) ) ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) ) ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) ) ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) ) ROM_REGION( 0x0020, "proms", 0 ) /* PROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "9860-07axn-axhd.d12", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* N82S123 */ ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */ ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) ROM_END /* TRON (Set 4 - 6/16) */ ROM_START( tron4 ) ROM_REGION( 0x10000, "maincpu", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "pga-615.d2", 0x0000, 0x2000, CRC(09d7a95a) SHA1(630f4c43204df0510926c5fc07e0c1b3783cf5e4) ) ROM_LOAD( "pgb-615.d3", 0x2000, 0x2000, CRC(b454337d) SHA1(c2306ad5401a3f60e231be59198610a36b527f1f) ) ROM_LOAD( "pgc-615.d4", 0x4000, 0x2000, CRC(ac1836ff) SHA1(a8d20facf91b4c93082f8e71a663e5da8b036ecb) ) ROM_LOAD( "pgd-615.d5", 0x6000, 0x2000, CRC(1a7bec6d) SHA1(4d47020494e0963db22473a459e97c1c06c4b5ee) ) ROM_LOAD( "pge-615.d6", 0x8000, 0x2000, CRC(ea198fa8) SHA1(d8c97ea87d504e77edc38c87c2953c8c4f1a405b) ) ROM_LOAD( "pgf-615.d7", 0xa000, 0x2000, CRC(790ee743) SHA1(14dc84b2bbaab22772e0579f11fe0bf136a0ddab) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) /* ROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "ssi_oa.a7", 0x0000, 0x1000, CRC(2cbb332b) SHA1(48d1cbb336733588af728a3d0e02c8613d2b5fb2) ) ROM_LOAD( "ssi_ob.a8", 0x1000, 0x1000, CRC(1355b7e6) SHA1(61ed045212da67cd449910ae601058cf209b37e5) ) ROM_LOAD( "ssi_oc.a9", 0x2000, 0x1000, CRC(6dd4b7c9) SHA1(1ce78c242d1a7d9a4524a663a42fc8bc2870053a) ) ROM_REGION( 0x04000, "gfx1", 0 ) /* ROM's located on the Super CPU Board (90010) */ ROM_LOAD( "scpu_bgg.g3", 0x0000, 0x2000, CRC(1a9ed2f5) SHA1(b0d85b47873ac8ad475da18b9540d37232cb2b7c) ) ROM_LOAD( "scpu_bgh.g4", 0x2000, 0x2000, CRC(3220f974) SHA1(a38ea5f1db27f05d9689db838ce7a8de98f34837) ) ROM_REGION( 0x08000, "gfx2", 0 ) /* ROM's located on the MCR/II Video Gen Board (91399) */ ROM_LOAD( "vga.e1", 0x0000, 0x2000, CRC(bc036d1d) SHA1(c5d54d0b80ac768ccf6fdd32cad1ef6359fa324c) ) ROM_LOAD( "vgb.dc1", 0x2000, 0x2000, CRC(58ee14d3) SHA1(5fb4268c9c73bdfc3b1e866618979aea3f219bbc) ) ROM_LOAD( "vgc.cb1", 0x4000, 0x2000, CRC(3329f9d4) SHA1(11f4d744374e475d2c5b195a9f70888414529dd3) ) ROM_LOAD( "vga.a1", 0x6000, 0x2000, CRC(9743f873) SHA1(71ed80ecd8caaf9fce1d7010f95c4678c9bd7102) ) ROM_REGION( 0x0020, "proms", 0 ) /* PROM's located on the Super Sound I/O Board (90913) */ ROM_LOAD( "9860-07axn-axhd.d12", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* N82S123 */ ROM_REGION( 0x0005, "scpu_pals", 0) /* PAL's located on the Super CPU Board (90010) */ ROM_LOAD( "0066-313bx-xxqx.a12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-315bx-xxqx.b12.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-322bx-xx0x.e3.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-316bx-xxqx.g11.bin", 0x0000, 0x0001, NO_DUMP) ROM_LOAD( "0066-314bx-xxqx.g12.bin", 0x0000, 0x0001, NO_DUMP) ROM_END ROM_START( kroozr ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "kozmkcpu.2d", 0x0000, 0x2000, CRC(61e02045) SHA1(42ba00f28466870407be96e864fadba5d6908648) ) ROM_LOAD( "kozmkcpu.3d", 0x2000, 0x2000, CRC(caabed57) SHA1(1effe2285939ad55b5ff254c7e5ea3512e843f84) ) ROM_LOAD( "kozmkcpu.4d", 0x4000, 0x2000, CRC(2bc83fc7) SHA1(71a3b32309e368f4afb650444d6427ac4e05b5fa) ) ROM_LOAD( "kozmkcpu.5d", 0x6000, 0x2000, CRC(a0ec38c1) SHA1(adf3ef36355d255e4ebc0d4dc86b9d7910e26b03) ) ROM_LOAD( "kozmkcpu.6d", 0x8000, 0x2000, CRC(7044f2b6) SHA1(55b64c9233fe0c8b351688fab29aad049d49faf2) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "kozmksnd.7a", 0x0000, 0x1000, CRC(6736e433) SHA1(d43216ef34a67f047b7c35001767d838386add7d) ) ROM_LOAD( "kozmksnd.8a", 0x1000, 0x1000, CRC(ea9cd919) SHA1(a1533b2857c881c83adce2c7bbfaa4a3148ead8e) ) ROM_LOAD( "kozmksnd.9a", 0x2000, 0x1000, CRC(9dfa7994) SHA1(0a2d824e9fe1d48c43027f5f10f4c43476f08e07) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "kozmkcpu.3g", 0x0000, 0x2000, CRC(eda6ed2d) SHA1(c999b2aa31a83800ff205cf665f344d67eb149a0) ) ROM_LOAD( "kozmkcpu.4g", 0x2000, 0x2000, CRC(ddde894b) SHA1(b2fe32196e947e992a959af806d6684227aaf3a2) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "kozmkvid.1e", 0x0000, 0x2000, CRC(ca60e2cc) SHA1(e26bf1284a0e74933ac193178ac8b834e5cf0146) ) ROM_LOAD( "kozmkvid.1d", 0x2000, 0x2000, CRC(4e23b35b) SHA1(322221ea207ad0eeb0e711f3af473f71b70f7128) ) ROM_LOAD( "kozmkvid.1b", 0x4000, 0x2000, CRC(c6041ba7) SHA1(9bd55f06d360657af5c56062053221dd24027978) ) ROM_LOAD( "kozmkvid.1a", 0x6000, 0x2000, CRC(b57fb0ff) SHA1(e4dde9fb09a0e5051352ba05d776ebbe0cd81504) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( domino ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "dmanpg0.bin", 0x0000, 0x2000, CRC(3bf3bb1c) SHA1(0dc38b47fc1f6828cd1dc2e14f43448d878ccd8a) ) ROM_LOAD( "dmanpg1.bin", 0x2000, 0x2000, CRC(85cf1d69) SHA1(32198a2b8fbfb5b9593f083034ef4762b7ab1a27) ) ROM_LOAD( "dmanpg2.bin", 0x4000, 0x2000, CRC(7dd2177a) SHA1(b4b17e2580679fbe340d8b8d8cb7171c49ae0a21) ) ROM_LOAD( "dmanpg3.bin", 0x6000, 0x2000, CRC(f2e0aa44) SHA1(2f04dc74c69dfe3847d5e4330e560b0a9f18c33a) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "dm-a7.snd", 0x0000, 0x1000, CRC(fa982dcc) SHA1(970340bfa0ac13ad8c2bf5adc21d7ca7aa9e525a) ) ROM_LOAD( "dm-a8.snd", 0x1000, 0x1000, CRC(72839019) SHA1(4aa278cfb00fac76cba88600bb300ee88ec3f7ee) ) ROM_LOAD( "dm-a9.snd", 0x2000, 0x1000, CRC(ad760da7) SHA1(024fce0f5d46e82b66c4283925556130735b863e) ) ROM_LOAD( "dm-a10.snd", 0x3000, 0x1000, CRC(958c7287) SHA1(0dd1ae1b6073f19925d0ec1ba1090d736e0a7cf6) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "dmanbg0.bin", 0x0000, 0x2000, CRC(9163007f) SHA1(a7b2e3ed68105ff99841776e8114279f557c90ed) ) ROM_LOAD( "dmanbg1.bin", 0x2000, 0x2000, CRC(28615c56) SHA1(d4b91c092f594b1216d9a135345ba8955e5e5ec5) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "dmanfg0.bin", 0x0000, 0x2000, CRC(0b1f9f9e) SHA1(051d0b126d060300283a5572e1179c7624cedbbf) ) ROM_LOAD( "dmanfg1.bin", 0x2000, 0x2000, CRC(16aa4b9b) SHA1(700f7dc3ce20dacce38dc40783b28fc9b4c1443a) ) ROM_LOAD( "dmanfg2.bin", 0x4000, 0x2000, CRC(4a8e76b8) SHA1(563b9db39940060265b771f3b0c4a2055963cf2b) ) ROM_LOAD( "dmanfg3.bin", 0x6000, 0x2000, CRC(1f39257e) SHA1(645f9b7e8bd2254167d15567c3bd577d3a574f7d) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( wacko ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "wackocpu.2d", 0x0000, 0x2000, CRC(c98e29b6) SHA1(38fbb663c238b354925b34b67de246d8ba3356e1) ) ROM_LOAD( "wackocpu.3d", 0x2000, 0x2000, CRC(90b89774) SHA1(1f9cbe8134e7d7f797d88c0cb4be3d8c39ca03a3) ) ROM_LOAD( "wackocpu.4d", 0x4000, 0x2000, CRC(515edff7) SHA1(9288cb5efb51086ef8610eecf8e3feae1da9fc2a) ) ROM_LOAD( "wackocpu.5d", 0x6000, 0x2000, CRC(9b01bf32) SHA1(d209ba2503d7b54786f74107bb399313a08a09ba) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "wackosnd.7a", 0x0000, 0x1000, CRC(1a58763f) SHA1(37f0870d67d52c86ae2d188e9beaa56a3a8fa130) ) ROM_LOAD( "wackosnd.8a", 0x1000, 0x1000, CRC(a4e3c771) SHA1(fe677090423e1d80cde07d2e74be8380d8c55e95) ) ROM_LOAD( "wackosnd.9a", 0x2000, 0x1000, CRC(155ba3dd) SHA1(51aaeeb68b2b7eb8238c7c3b06e84dcf44683ee9) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "wackocpu.3g", 0x0000, 0x2000, CRC(33160eb1) SHA1(7d66198cb84294cc3689d7f51365566f252d6252) ) ROM_LOAD( "wackocpu.4g", 0x2000, 0x2000, CRC(daf37d7c) SHA1(37fe68b0a5984828ec03886860f84a20461713fc) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "wackovid.1e", 0x0000, 0x2000, CRC(dca59be7) SHA1(c78af8e0c99a6f58a35f8aa73bcee15ee8fda372) ) ROM_LOAD( "wackovid.1d", 0x2000, 0x2000, CRC(a02f1672) SHA1(1d1b7eada4dae5e31dc1474b13cefd71926cbfc7) ) ROM_LOAD( "wackovid.1b", 0x4000, 0x2000, CRC(7d899790) SHA1(aa320f4ac41d2a1acec4880a8d95dfe6406e210e) ) ROM_LOAD( "wackovid.1a", 0x6000, 0x2000, CRC(080be3ad) SHA1(ead2be17d749a15841123e42d434aab573870fba) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( twotiger ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "cpu_d2", 0x0000, 0x2000, CRC(a682ed24) SHA1(e4418143b02739e417c44e6b4089354778e8d77f) ) ROM_LOAD( "cpu_d3", 0x2000, 0x2000, CRC(5b48fde9) SHA1(52e07ffdd360631ea322935af5fb560afe3006ea) ) ROM_LOAD( "cpu_d4", 0x4000, 0x2000, CRC(f1ab8c4d) SHA1(0c410ddd2e1cd8a19c73bc0c7aca70d8c4308eeb) ) ROM_LOAD( "cpu_d5", 0x6000, 0x2000, CRC(d7129900) SHA1(af5093082cfbc9fa4b42cfc74e62adbf9b6c63db) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "ssio_a7", 0x0000, 0x1000, CRC(64ddc16c) SHA1(e119e1702ea00ffb86d413ed8e68b4e9dfefa79e) ) ROM_LOAD( "ssio_a8", 0x1000, 0x1000, CRC(c3467612) SHA1(c968776d9561a7ac67e95a987b6d826ec2dc748e) ) ROM_LOAD( "ssio_a9", 0x2000, 0x1000, CRC(c50f7b2d) SHA1(0f4779d4955d500c50b544d945fa78a5428b86ce) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "2tgrbg0.bin", 0x0000, 0x2000, CRC(52f69068) SHA1(30422e66ae1a6fe8c10494037758758dcd1211d1) ) ROM_LOAD( "2tgrbg1.bin", 0x2000, 0x2000, CRC(758d4f7d) SHA1(272127f802bccf47958b5dcc949b7468b1ba4512) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "vid_d1", 0x0000, 0x2000, CRC(da5f49da) SHA1(9396d708d5771ec19f7abdadd8c8f874af68ab10) ) ROM_LOAD( "vid_c1", 0x2000, 0x2000, CRC(62ed737b) SHA1(954c1f17da2ceb77e710faf0822d29381b873a07) ) ROM_LOAD( "vid_b1", 0x4000, 0x2000, CRC(0939921e) SHA1(f52d3475232557959e501f70765a4ad472300e84) ) ROM_LOAD( "vid_a1", 0x6000, 0x2000, CRC(ef515824) SHA1(983af762733405b96351ef4910f4f4be40c4880e) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( twotigerc ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "2tgrpg0.bin", 0x0000, 0x2000, CRC(e77a924b) SHA1(c1720a8a6ca8e6551ef38d565d5f18db7fbd5d2e) ) ROM_LOAD( "2tgrpg1.bin", 0x2000, 0x2000, CRC(2699ebdc) SHA1(bed7c5fe8783dab79e7563f6b2348b9a980bdcc7) ) ROM_LOAD( "2tgrpg2.bin", 0x4000, 0x2000, CRC(b5ca3f17) SHA1(ac51eefe9ff49bc358daf58525e529070684ed1b) ) ROM_LOAD( "2tgrpg3.bin", 0x6000, 0x2000, CRC(8aa82049) SHA1(6e42d082d29986f5c0698ae39750fb8f9eb1e6cd) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "2tgra7.bin", 0x0000, 0x1000, CRC(4620d970) SHA1(2c2c1da84199b846575a6291dc235f30539959fa) ) ROM_LOAD( "2tgra8.bin", 0x1000, 0x1000, CRC(e95d8cfe) SHA1(846d5543596bb86cf08f998056c1fc695cb4f62c) ) ROM_LOAD( "2tgra9.bin", 0x2000, 0x1000, CRC(81e6ce0e) SHA1(77e145e150763bfe5760ac3e4f68218a65b9bfe0) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "2tgrbg0.bin", 0x0000, 0x2000, CRC(52f69068) SHA1(30422e66ae1a6fe8c10494037758758dcd1211d1) ) ROM_LOAD( "2tgrbg1.bin", 0x2000, 0x2000, CRC(758d4f7d) SHA1(272127f802bccf47958b5dcc949b7468b1ba4512) ) ROM_REGION( 0x08000, "gfx2", 0 ) ROM_LOAD( "2tgrfg0.bin", 0x0000, 0x2000, CRC(4abf3ca0) SHA1(8cef27a1c91d32473a95e9da76db061466977559) ) ROM_LOAD( "2tgrfg1.bin", 0x2000, 0x2000, CRC(fbcaffa5) SHA1(5145cd7cc08552388b8662b5d159b3af6344c51a) ) ROM_LOAD( "2tgrfg2.bin", 0x4000, 0x2000, CRC(08e3e1a6) SHA1(c9c5ce072b235a299a3151f984d73bab97289e19) ) ROM_LOAD( "2tgrfg3.bin", 0x6000, 0x2000, CRC(9b22697b) SHA1(4c3fa30ce1b645ab18c0e53ce0f3754133a267ad) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( journey ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "d2", 0x0000, 0x2000, CRC(f2618913) SHA1(eee323ac502cedefef0675a90c3c9c17f9610fc9) ) ROM_LOAD( "d3", 0x2000, 0x2000, CRC(2f290d2e) SHA1(b672064969326e594b6a4225e73bf51d25f33871) ) ROM_LOAD( "d4", 0x4000, 0x2000, CRC(cc6c0150) SHA1(83b00b137e0c343db9b61c90469d5e2392444fc3) ) ROM_LOAD( "d5", 0x6000, 0x2000, CRC(c3023931) SHA1(e591a18c5fc8befcd9f2b93d9131374c572cdbcd) ) ROM_LOAD( "d6", 0x8000, 0x2000, CRC(5d445c99) SHA1(df2bce203f510b4bda42bb7114b79eb0b2b4e2e0) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "a", 0x0000, 0x1000, CRC(2524a2aa) SHA1(4bd78b4fb42c2506fa6734419b42cbbe4c240e94) ) ROM_LOAD( "b", 0x1000, 0x1000, CRC(b8e35814) SHA1(379308431d1204d6cb5ae8a13e378ec7b3fab0a9) ) ROM_LOAD( "c", 0x2000, 0x1000, CRC(09c488cf) SHA1(7aa3321db748f2612693f8348e590369e8d48140) ) ROM_LOAD( "d", 0x3000, 0x1000, CRC(3d627bee) SHA1(42239ee73ba88206d28fd9cff9787b11c40bb2f1) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "g3", 0x0000, 0x2000, CRC(c14558de) SHA1(f47624ec235f782559eff076758ff28366dbf21d) ) ROM_LOAD( "g4", 0x2000, 0x2000, CRC(9104c1d0) SHA1(9ae732d6f1edb8656c54ac9b8fa6b35b342adc4b) ) ROM_REGION( 0x10000, "gfx2", 0 ) ROM_LOAD( "a7", 0x0000, 0x2000, CRC(4ca2bb2d) SHA1(62ae3b30a2c52649d4c8f1264b9f8726c3ac81ce) ) ROM_LOAD( "a8", 0x2000, 0x2000, CRC(4fb7925d) SHA1(a1f4a2bdd6e80a3a9e5f1e698c014b6f91dfb000) ) ROM_LOAD( "a5", 0x4000, 0x2000, CRC(560c474f) SHA1(bb44fb5f1bd14b92bff110e74d8c9f22df07b47f) ) ROM_LOAD( "a6", 0x6000, 0x2000, CRC(b1f31583) SHA1(3ebedacc75d031525d166b3265c136f0f7407d0f) ) ROM_LOAD( "a3", 0x8000, 0x2000, CRC(f295afda) SHA1(de8086ca5750736eba939f80c089ba96b7e53300) ) ROM_LOAD( "a4", 0xa000, 0x2000, CRC(765876a7) SHA1(9c477f5fae068f7e424939652e959711b3ad3a80) ) ROM_LOAD( "a1", 0xc000, 0x2000, CRC(4af986f8) SHA1(56af9525a404bcf6d76b19318efe541189844210) ) ROM_LOAD( "a2", 0xe000, 0x2000, CRC(b30cd2a7) SHA1(df1b36a3481fdec49f73d504f23951070c121291) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( tapper ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "tappg0.bin", 0x00000, 0x4000, CRC(127171d1) SHA1(373e9a9d73b71e100c02862662d025f5ead2f94d) ) ROM_LOAD( "tappg1.bin", 0x04000, 0x4000, CRC(9d6a47f7) SHA1(e493e46fc70a765e54bfdd7ba7ca570e6a5c79d6) ) ROM_LOAD( "tappg2.bin", 0x08000, 0x4000, CRC(3a1f8778) SHA1(cb46a2248289ced7282b1463f433dcb970c42c1a) ) ROM_LOAD( "tappg3.bin", 0x0c000, 0x2000, CRC(e8dcdaa4) SHA1(45bf1571a2418c7dc00ccc7061a3e04e65cb6bff) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "tapsnda7.bin", 0x0000, 0x1000, CRC(0e8bb9d5) SHA1(9e281c340b7702523c86d56317efad9e3688e585) ) ROM_LOAD( "tapsnda8.bin", 0x1000, 0x1000, CRC(0cf0e29b) SHA1(14334b9d2bfece3fe5bda0cbd53158ead8d27e53) ) ROM_LOAD( "tapsnda9.bin", 0x2000, 0x1000, CRC(31eb6dc6) SHA1(b38bba5f12516d899e023f99147868e3402fbd7b) ) ROM_LOAD( "tapsda10.bin", 0x3000, 0x1000, CRC(01a9be6a) SHA1(0011407c1e886071282808c0a561789b1245a789) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "tapbg1.bin", 0x00000, 0x4000, CRC(2a30238c) SHA1(eb30b9bb654324340f0fc5b44776ac2440c1e869) ) ROM_LOAD( "tapbg0.bin", 0x04000, 0x4000, CRC(394ab576) SHA1(23e29ec942e1e7516ae8068837af2d1c79592378) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "tapfg1.bin", 0x00000, 0x4000, CRC(32509011) SHA1(a38667573d235efe2dc515e52af05825fe4e0f30) ) ROM_LOAD( "tapfg0.bin", 0x04000, 0x4000, CRC(8412c808) SHA1(2077f79177fda26f9c674b2ab525ec3833802059) ) ROM_LOAD( "tapfg3.bin", 0x08000, 0x4000, CRC(818fffd4) SHA1(930142dd73fb30c4d3ec09a1e37517c6c6774024) ) ROM_LOAD( "tapfg2.bin", 0x0c000, 0x4000, CRC(67e37690) SHA1(d553b8517c1d03a2be0b065f4da2fa99d9e6fb30) ) ROM_LOAD( "tapfg5.bin", 0x10000, 0x4000, CRC(800f7c8a) SHA1(8aead89e1adaee5f0b679661c4bfba36e0d639e8) ) ROM_LOAD( "tapfg4.bin", 0x14000, 0x4000, CRC(32674ee6) SHA1(402c166d50b4a693959b3f0706a7931a5daef6ce) ) ROM_LOAD( "tapfg7.bin", 0x18000, 0x4000, CRC(070b4c81) SHA1(95879a455ecfe2e3de7fe2a75078f9e6934960f5) ) ROM_LOAD( "tapfg6.bin", 0x1c000, 0x4000, CRC(a37aef36) SHA1(a24696f16d467d9eea4f25aef5f4c5ff55bf51ff) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "5784", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( tappera ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "pr00_1c.128", 0x00000, 0x4000, CRC(bb060bb0) SHA1(ff5a729e36faea3758c8c7b345a42dd8bb465f44) ) ROM_LOAD( "pr01_2c.128", 0x04000, 0x4000, CRC(fd9acc22) SHA1(b9f0396e2eba5772deec4725c41fa9de49658e72) ) ROM_LOAD( "pr02_3c.128", 0x08000, 0x4000, CRC(b3755d41) SHA1(434d3c27b9f1e43def081d79b9f56dbce93a9207) ) ROM_LOAD( "pr03_4c.64", 0x0c000, 0x2000, CRC(77273096) SHA1(5e4e2dc1703b39f588ba374f6a610f273d710532) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "tapsnda7.bin", 0x0000, 0x1000, CRC(0e8bb9d5) SHA1(9e281c340b7702523c86d56317efad9e3688e585) ) ROM_LOAD( "tapsnda8.bin", 0x1000, 0x1000, CRC(0cf0e29b) SHA1(14334b9d2bfece3fe5bda0cbd53158ead8d27e53) ) ROM_LOAD( "tapsnda9.bin", 0x2000, 0x1000, CRC(31eb6dc6) SHA1(b38bba5f12516d899e023f99147868e3402fbd7b) ) ROM_LOAD( "tapsda10.bin", 0x3000, 0x1000, CRC(01a9be6a) SHA1(0011407c1e886071282808c0a561789b1245a789) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "tapbg1.bin", 0x00000, 0x4000, CRC(2a30238c) SHA1(eb30b9bb654324340f0fc5b44776ac2440c1e869) ) ROM_LOAD( "tapbg0.bin", 0x04000, 0x4000, CRC(394ab576) SHA1(23e29ec942e1e7516ae8068837af2d1c79592378) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "fg1_a7.128", 0x00000, 0x4000, CRC(bac70b69) SHA1(7fd26cc8ff2faab86d04fcee2b5ec49ecf6b8143) ) ROM_LOAD( "fg0_a8.128", 0x04000, 0x4000, CRC(c300925d) SHA1(45df1ac033512be942460d678a7c1ba9dcef1937) ) ROM_LOAD( "fg3_a5.128", 0x08000, 0x4000, CRC(ecff6c23) SHA1(0b28e7e59eba983bc1929758f8dcaf315b7134a1) ) ROM_LOAD( "fg2_a6.128", 0x0c000, 0x4000, CRC(a4f2d1be) SHA1(faf631d4ee96edf6b2c4349780e2d89eaedf70ab) ) ROM_LOAD( "fg5_a3.128", 0x10000, 0x4000, CRC(16ce38cb) SHA1(9829c9574fff0803973246f9d22311ca76be4e58) ) ROM_LOAD( "fg4_a4.128", 0x14000, 0x4000, CRC(082a4059) SHA1(52672b853d67432fd80e4612fa54208c225d2444) ) ROM_LOAD( "fg7_a1.128", 0x18000, 0x4000, CRC(3b476abe) SHA1(6fe170695386fc77310384a5590a7cc3671ae853) ) ROM_LOAD( "fg6_a2.128", 0x1c000, 0x4000, CRC(6717264c) SHA1(5a6d30974e73f952694b8c09fb3a5393a76db4f2) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "5784", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( sutapper ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "5791", 0x0000, 0x4000, CRC(87119cc4) SHA1(155dc1df977a474f3f1bd238d851c2ff8fe1faba) ) ROM_LOAD( "5792", 0x4000, 0x4000, CRC(4c23ad89) SHA1(0eebe98be6c21d701c7b7fc6547b5c94f934f5ab) ) ROM_LOAD( "5793", 0x8000, 0x4000, CRC(fecbf683) SHA1(de365f4e567d93a9ed9672fabbc739a3a0d47d59) ) ROM_LOAD( "5794", 0xc000, 0x2000, CRC(5bdc1916) SHA1(ee038443ae55598568bd1a53c0a671a2828d3949) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "5788", 0x00000, 0x1000, CRC(5c1d0982) SHA1(c2c94ab26ebce30ce4efc239e555c6368794d265) ) ROM_LOAD( "5787", 0x01000, 0x1000, CRC(09e74ed8) SHA1(f5c8585d443bca67d4065314a06431d1f104c553) ) ROM_LOAD( "5786", 0x02000, 0x1000, CRC(c3e98284) SHA1(2a4dc0deca48f4d2ac9fe673ecb9548415c996a9) ) ROM_LOAD( "5785", 0x03000, 0x1000, CRC(ced2fd47) SHA1(a41323149c50adcae7675efcef69fd7d8365e527) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "5790", 0x00000, 0x4000, CRC(ac1558c1) SHA1(f976889b529937948043460679f84b962b4c12bc) ) ROM_LOAD( "5789", 0x04000, 0x4000, CRC(fa66cab5) SHA1(96b89dc08f2feeb9950fbbba43d0ee57a9e31804) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "5795", 0x00000, 0x4000, CRC(5d987c92) SHA1(3c26b0b0d903fb6782c6a1d72e32cd8c57ecad1f) ) ROM_LOAD( "5796", 0x04000, 0x4000, CRC(de5700b4) SHA1(c613c2225eeff5cc65dc6ec301e616e54755b1c2) ) ROM_LOAD( "5797", 0x08000, 0x4000, CRC(f10a1d05) SHA1(ca54d1fa6704d38e65a4d2a94449ed8dd56cc94b) ) ROM_LOAD( "5798", 0x0c000, 0x4000, CRC(614990cd) SHA1(1a6eac2a8fa99d86889d5042c6b64f828b3c5d65) ) ROM_LOAD( "5799", 0x10000, 0x4000, CRC(02c69432) SHA1(7f4260f4a4e8b33842355e9d8e859ffb9278c3c2) ) ROM_LOAD( "5800", 0x14000, 0x4000, CRC(ebf1f948) SHA1(251cf018da8db11c3844123255082146b22507e5) ) ROM_LOAD( "5801", 0x18000, 0x4000, CRC(d70defa7) SHA1(e8ceabe94080eb28aa393b97ec54729cf8aba001) ) ROM_LOAD( "5802", 0x1c000, 0x4000, CRC(d4f114b9) SHA1(58ae647b4fd0f48af4158b85e29c813605d930d3) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "5784", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( rbtapper ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "rbtpg0.bin", 0x00000, 0x4000, CRC(20b9adf4) SHA1(31b583c98e7c2cecab42223df8b5400004c9f3d3) ) ROM_LOAD( "rbtpg1.bin", 0x04000, 0x4000, CRC(87e616c2) SHA1(7de10632b2538524fee418175e2cc41be9c8c0e8) ) ROM_LOAD( "rbtpg2.bin", 0x08000, 0x4000, CRC(0b332c97) SHA1(b9878c8a61a98e787e547bb6ab81c809875891f3) ) ROM_LOAD( "rbtpg3.bin", 0x0c000, 0x2000, CRC(698c06f2) SHA1(ddb21e39ede2222cb2286ec9dba06341fe1c9db7) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "5788", 0x00000, 0x1000, CRC(5c1d0982) SHA1(c2c94ab26ebce30ce4efc239e555c6368794d265) ) ROM_LOAD( "5787", 0x01000, 0x1000, CRC(09e74ed8) SHA1(f5c8585d443bca67d4065314a06431d1f104c553) ) ROM_LOAD( "5786", 0x02000, 0x1000, CRC(c3e98284) SHA1(2a4dc0deca48f4d2ac9fe673ecb9548415c996a9) ) ROM_LOAD( "5785", 0x03000, 0x1000, CRC(ced2fd47) SHA1(a41323149c50adcae7675efcef69fd7d8365e527) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "rbtbg1.bin", 0x00000, 0x4000, CRC(44dfa483) SHA1(9e96a3ff0b66a4b1d07fe86059f7dfab0d53231c) ) ROM_LOAD( "rbtbg0.bin", 0x04000, 0x4000, CRC(510b13de) SHA1(a4b24fffbbe299e0c2058abe372f00954e5edf98) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "rbtfg1.bin", 0x00000, 0x4000, CRC(1c0b8791) SHA1(532239605b74b137cd0f6035a6bc7ac43f559d82) ) ROM_LOAD( "rbtfg0.bin", 0x04000, 0x4000, CRC(e99f6018) SHA1(3a8e3e927b0fd2d49222e417e4c1f28b5a45c6ca) ) ROM_LOAD( "rbtfg3.bin", 0x08000, 0x4000, CRC(3e725e77) SHA1(3811f499aa076fb81af42f7cb522879b0af50e37) ) ROM_LOAD( "rbtfg2.bin", 0x0c000, 0x4000, CRC(4ee8b624) SHA1(d02a306f8b32b3a097fc51e75e106a40fe942d35) ) ROM_LOAD( "rbtfg5.bin", 0x10000, 0x4000, CRC(9eeca46e) SHA1(523efaba9a3cbe871868ee09caea062382f31fad) ) ROM_LOAD( "rbtfg4.bin", 0x14000, 0x4000, CRC(8c79e7d7) SHA1(e2a427324fc1d4422e50a1ab79822aff0290e109) ) ROM_LOAD( "rbtfg7.bin", 0x18000, 0x4000, CRC(8dbf0c36) SHA1(dab52db0bca13b9f3470060bc3babe4a6c2cdcc8) ) ROM_LOAD( "rbtfg6.bin", 0x1c000, 0x4000, CRC(441201a0) SHA1(400d390729601610b152e21da55399399830221f) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "5784", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( timber ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "timpg0.bin", 0x00000, 0x4000, CRC(377032ab) SHA1(7b6c6e9c5088651720990c49296ddccb5416a729) ) ROM_LOAD( "timpg1.bin", 0x04000, 0x4000, CRC(fd772836) SHA1(ce5266f7b1ab7dc8c1af864bc8afe33d724649fc) ) ROM_LOAD( "timpg2.bin", 0x08000, 0x4000, CRC(632989f9) SHA1(9e9dc343746299bb0dc7ada206211366c5a05075) ) ROM_LOAD( "timpg3.bin", 0x0c000, 0x2000, CRC(dae8a0dc) SHA1(f065fa3184efa6524d4f950616f3fbae4ea17513) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "tima7.bin", 0x00000, 0x1000, CRC(c615dc3e) SHA1(664d5e3ac3936fd04a855ee0c88f1c1b4d1dea5b) ) ROM_LOAD( "tima8.bin", 0x01000, 0x1000, CRC(83841c87) SHA1(bd5a2e567e015e10e45651e15b42ffb3b69d2305) ) ROM_LOAD( "tima9.bin", 0x02000, 0x1000, CRC(22bcdcd3) SHA1(69cedc8cec52ca310f828dfe73d7de04729b06d3) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "timbg1.bin", 0x00000, 0x4000, CRC(b1cb2651) SHA1(799efcc35b08a3432ee2c13de3f6c65477a6de07) ) ROM_LOAD( "timbg0.bin", 0x04000, 0x4000, CRC(2ae352c4) SHA1(8039f09cdba6ce43005f98dcff91958ba16363bb) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "timfg1.bin", 0x00000, 0x4000, CRC(81de4a73) SHA1(38e06b67004aa44dc58d205793ae83d3707472a6) ) ROM_LOAD( "timfg0.bin", 0x04000, 0x4000, CRC(7f3a4f59) SHA1(2723cb93c1b7b229b370d069651cf83ecb1cff3a) ) ROM_LOAD( "timfg3.bin", 0x08000, 0x4000, CRC(37c03272) SHA1(2f5793b6a148af43c5b6efe718714942ce7d271b) ) ROM_LOAD( "timfg2.bin", 0x0c000, 0x4000, CRC(e2c2885c) SHA1(618dab8cf2ee189343210d0e20dd246447c4c542) ) ROM_LOAD( "timfg5.bin", 0x10000, 0x4000, CRC(eb636216) SHA1(c347a64933f547cf1925e5fa187deda6e0bf713c) ) ROM_LOAD( "timfg4.bin", 0x14000, 0x4000, CRC(b7105eb7) SHA1(913687f0e5dd105a3dfdc0afd1b5610b27124451) ) ROM_LOAD( "timfg7.bin", 0x18000, 0x4000, CRC(d9c27475) SHA1(24a7e6200e4f3514d4d3f25b2ffe3338c0c2a495) ) ROM_LOAD( "timfg6.bin", 0x1c000, 0x4000, CRC(244778e8) SHA1(494bc1e627997cd4f1d5267c5fafd0779ccf9255) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( dotron ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "loc-pg0.1c", 0x00000, 0x4000, CRC(ba0da15f) SHA1(c0dfac2e5d6549620525b9e3d64b7c5494164dbd) ) ROM_LOAD( "loc-pg1.2c", 0x04000, 0x4000, CRC(dc300191) SHA1(417e964f38bfbdd84cae79939c23a7de41cd7bae) ) ROM_LOAD( "loc-pg2.3c", 0x08000, 0x4000, CRC(ab0b3800) SHA1(457a18bd98a3c4a9f893a3704dbc7d0fde4ef8ba) ) ROM_LOAD( "loc-pg1.4c", 0x0c000, 0x2000, CRC(f98c9f8e) SHA1(a215f0fd6cd9e8cacbe06cb7bfe4e2cced150c86) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "sound0.a7", 0x00000, 0x1000, CRC(6d39bf19) SHA1(3d27466fcb6d41133f16119cddb815833c8b4eda) ) ROM_LOAD( "sound1.a8", 0x01000, 0x1000, CRC(ac872e1d) SHA1(c2833b20e124c505be3d5be2c885b9cf9927ca4c) ) ROM_LOAD( "sound2.a9", 0x02000, 0x1000, CRC(e8ef6519) SHA1(261b0463a73b403bc46df3e04f3d12173787d6e7) ) ROM_LOAD( "sound3.a10", 0x03000, 0x1000, CRC(6b5aeb02) SHA1(039d8d664f067bc0d085ad7730ef63dbd6dc387e) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "loc-bg2.6f", 0x00000, 0x2000, CRC(40167124) SHA1(782c8192dd58a3f23ff2338452dd03206d79030a) ) ROM_LOAD( "loc-bg1.5f", 0x02000, 0x2000, CRC(bb2d7a5d) SHA1(8044be9ffca9520fd77e0da492147e553f9f7da3) ) ROM_REGION( 0x10000, "gfx2", 0 ) ROM_LOAD( "loc-g.cp4", 0x00000, 0x2000, CRC(57a2b1ff) SHA1(b97539ffd2f5fc8b86fc2f8f233cc26ba16f82ee) ) ROM_LOAD( "loc-h.cp3", 0x02000, 0x2000, CRC(3bb4d475) SHA1(3795ba1640790041da51ebeac8517cc7d32e243e) ) ROM_LOAD( "loc-e.cp6", 0x04000, 0x2000, CRC(ce957f1a) SHA1(24177a8dd6dcb377cf8aee7c7b47b26f29e77e20) ) ROM_LOAD( "loc-f.cp5", 0x06000, 0x2000, CRC(d26053ce) SHA1(b7fb3d1df9b80c056cf131574565addb529645e1) ) ROM_LOAD( "loc-c.cp8", 0x08000, 0x2000, CRC(ef45d146) SHA1(6cd83909b4376abce287e435a10e5bc25e18b265) ) ROM_LOAD( "loc-d.cp7", 0x0a000, 0x2000, CRC(5e8a3ef3) SHA1(74983c922eae1326ecd0ff14000851e0b424cc61) ) ROM_LOAD( "loc-a.cp0", 0x0c000, 0x2000, CRC(b35f5374) SHA1(3f330ffde52ac57c02dfdf8e105aefcc10f87a0b) ) ROM_LOAD( "loc-b.cp9", 0x0e000, 0x2000, CRC(565a5c48) SHA1(9dfafd58bd552bfda4e1799a175735ecc1369ba3) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( dotrona ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "aloc-pg0.1c", 0x00000, 0x4000, CRC(40d00195) SHA1(e06a8097f02b9f445df0dd5c0ec13f9a0a1dcd8a) ) ROM_LOAD( "aloc-pg1.2c", 0x04000, 0x4000, CRC(5a7d1300) SHA1(8a1f088de9289cd902e72b55d3e72c3f07246778) ) ROM_LOAD( "aloc-pg2.3c", 0x08000, 0x4000, CRC(cb89c9be) SHA1(c773a68891fbf94808a2ee0036928c0c48d6673d) ) ROM_LOAD( "aloc-pg1.4c", 0x0c000, 0x2000, CRC(5098faf4) SHA1(9f861f99cb170513b68aee48bbfd60ee439d7fa9) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "asound0.a7", 0x00000, 0x1000, CRC(7fb54293) SHA1(6d538a3e48f98e269623850f1f6774848a89fd59) ) ROM_LOAD( "asound1.a8", 0x01000, 0x1000, CRC(edef7326) SHA1(5c9a64604252eea0628bf9d6221e8add82f66abe) ) ROM_LOAD( "sound2.a9", 0x02000, 0x1000, CRC(e8ef6519) SHA1(261b0463a73b403bc46df3e04f3d12173787d6e7) ) ROM_LOAD( "sound3.a10", 0x03000, 0x1000, CRC(6b5aeb02) SHA1(039d8d664f067bc0d085ad7730ef63dbd6dc387e) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "loc-bg2.6f", 0x00000, 0x2000, CRC(40167124) SHA1(782c8192dd58a3f23ff2338452dd03206d79030a) ) ROM_LOAD( "loc-bg1.5f", 0x02000, 0x2000, CRC(bb2d7a5d) SHA1(8044be9ffca9520fd77e0da492147e553f9f7da3) ) ROM_REGION( 0x10000, "gfx2", 0 ) ROM_LOAD( "loc-g.cp4", 0x00000, 0x2000, CRC(57a2b1ff) SHA1(b97539ffd2f5fc8b86fc2f8f233cc26ba16f82ee) ) ROM_LOAD( "loc-h.cp3", 0x02000, 0x2000, CRC(3bb4d475) SHA1(3795ba1640790041da51ebeac8517cc7d32e243e) ) ROM_LOAD( "loc-e.cp6", 0x04000, 0x2000, CRC(ce957f1a) SHA1(24177a8dd6dcb377cf8aee7c7b47b26f29e77e20) ) ROM_LOAD( "loc-f.cp5", 0x06000, 0x2000, CRC(d26053ce) SHA1(b7fb3d1df9b80c056cf131574565addb529645e1) ) ROM_LOAD( "loc-c.cp8", 0x08000, 0x2000, CRC(ef45d146) SHA1(6cd83909b4376abce287e435a10e5bc25e18b265) ) ROM_LOAD( "loc-d.cp7", 0x0a000, 0x2000, CRC(5e8a3ef3) SHA1(74983c922eae1326ecd0ff14000851e0b424cc61) ) ROM_LOAD( "loc-a.cp0", 0x0c000, 0x2000, CRC(b35f5374) SHA1(3f330ffde52ac57c02dfdf8e105aefcc10f87a0b) ) ROM_LOAD( "loc-b.cp9", 0x0e000, 0x2000, CRC(565a5c48) SHA1(9dfafd58bd552bfda4e1799a175735ecc1369ba3) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END ROM_START( dotrone ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "loc-cpu1", 0x00000, 0x4000, CRC(eee31b8c) SHA1(c05ad1d10588a6c1050c608f1a473685ebe4daad) ) ROM_LOAD( "loc-cpu2", 0x04000, 0x4000, CRC(75ba6ad3) SHA1(d02c3d731073fb6083bd8f771f76338939384a07) ) ROM_LOAD( "loc-cpu3", 0x08000, 0x4000, CRC(94bb1a0e) SHA1(af4769fac39e67eff840675bf93cc4304f2875fd) ) ROM_LOAD( "loc-cpu4", 0x0c000, 0x2000, CRC(c137383c) SHA1(ccf7cf9c7c0528aa819cfca34c1c0e89ab2d586a) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "loc-a", 0x00000, 0x1000, CRC(2de6a8a8) SHA1(6bba00daed8836297f3189db4e4fe8e158adc465) ) ROM_LOAD( "loc-b", 0x01000, 0x1000, CRC(4097663e) SHA1(afb5224529550cec378415a5cd81b47f6c6c101b) ) ROM_LOAD( "loc-c", 0x02000, 0x1000, CRC(f576b9e7) SHA1(4ff39c46c390aa93d900f5f7a0b35fa71f066863) ) ROM_LOAD( "loc-d", 0x03000, 0x1000, CRC(74b0059e) SHA1(1fe393721446538036fb6110fdc3920959ebd596) ) ROM_REGION( 0x10000, "sntcpu", 0 ) ROM_LOAD( "pre.u3", 0x09000, 0x1000, CRC(c3d0f762) SHA1(a1857641c35b5bcb33f29fe79a1a581c4cbf129b) ) ROM_LOAD( "pre.u4", 0x0a000, 0x1000, CRC(7ca79b43) SHA1(c995e1e67d70706a090eb777e9fec0f1ba03f82d) ) ROM_LOAD( "pre.u5", 0x0b000, 0x1000, CRC(24e9618e) SHA1(eb245ff381a76b314a0ed3519e140444afae341c) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "loc-bg2.6f", 0x00000, 0x2000, CRC(40167124) SHA1(782c8192dd58a3f23ff2338452dd03206d79030a) ) ROM_LOAD( "loc-bg1.5f", 0x02000, 0x2000, CRC(bb2d7a5d) SHA1(8044be9ffca9520fd77e0da492147e553f9f7da3) ) ROM_REGION( 0x10000, "gfx2", 0 ) ROM_LOAD( "loc-g.cp4", 0x00000, 0x2000, CRC(57a2b1ff) SHA1(b97539ffd2f5fc8b86fc2f8f233cc26ba16f82ee) ) ROM_LOAD( "loc-h.cp3", 0x02000, 0x2000, CRC(3bb4d475) SHA1(3795ba1640790041da51ebeac8517cc7d32e243e) ) ROM_LOAD( "loc-e.cp6", 0x04000, 0x2000, CRC(ce957f1a) SHA1(24177a8dd6dcb377cf8aee7c7b47b26f29e77e20) ) ROM_LOAD( "loc-f.cp5", 0x06000, 0x2000, CRC(d26053ce) SHA1(b7fb3d1df9b80c056cf131574565addb529645e1) ) ROM_LOAD( "loc-c.cp8", 0x08000, 0x2000, CRC(ef45d146) SHA1(6cd83909b4376abce287e435a10e5bc25e18b265) ) ROM_LOAD( "loc-d.cp7", 0x0a000, 0x2000, CRC(5e8a3ef3) SHA1(74983c922eae1326ecd0ff14000851e0b424cc61) ) ROM_LOAD( "loc-a.cp0", 0x0c000, 0x2000, CRC(b35f5374) SHA1(3f330ffde52ac57c02dfdf8e105aefcc10f87a0b) ) ROM_LOAD( "loc-b.cp9", 0x0e000, 0x2000, CRC(565a5c48) SHA1(9dfafd58bd552bfda4e1799a175735ecc1369ba3) ) ROM_REGION( 0x0040, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_LOAD( "edotlamp.u2", 0x0020, 0x0020, CRC(fb58b867) SHA1(45beb55f2c2e9197f091fc06e9a2f595e57e5c93) ) /* lamp sequencer PROM */ ROM_END ROM_START( nflfoot ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "nflcpupg.1c", 0x00000, 0x4000, CRC(d76a7a41) SHA1(591c1f530469ac2131f2c0fb4c3350546f44c358) ) ROM_LOAD( "nflcpupg.2c", 0x04000, 0x4000, CRC(2aa76168) SHA1(608df883f5e960153a963404d5cc4b4ce4ec435d) ) ROM_LOAD( "nflcpupg.3c", 0x08000, 0x4000, CRC(5ec01e09) SHA1(2bf60ab7d47f53583b677195976d6f6a9e90c55c) ) ROM_REGION( 0x10000, "ssiocpu", 0 ) ROM_LOAD( "nflsnd.a7", 0x0000, 0x1000, CRC(1339be2e) SHA1(5c1743f4d20f94053eb306d3749057608df4a6a2) ) ROM_LOAD( "nflsnd.a8", 0x1000, 0x1000, CRC(8630b560) SHA1(0c537f48184d3a7a9ee51c30d7c33dc39c46e823) ) ROM_LOAD( "nflsnd.a9", 0x2000, 0x1000, CRC(1e0fe4c8) SHA1(718dfaced2d8d84dab4c32265bed422e07af0f9e) ) ROM_REGION( 0x10000, "sntcpu", 0 ) ROM_LOAD( "nfl-sqtk-11-15-83.u2", 0x08000, 0x1000, CRC(aeddda31) SHA1(8ebe9d8606c4328b1b3f4633db30d7636acf210b) ) ROM_LOAD( "nfl-sqtk-11-15-83.u3", 0x09000, 0x1000, CRC(36229d13) SHA1(d174098ce1e4bc89ded15a08db37933ab9532f2b) ) ROM_LOAD( "nfl-sqtk-11-15-83.u4", 0x0a000, 0x1000, CRC(b202439b) SHA1(b09e94b0b176f80b12fb4cefa6efd5b2cccb6192) ) ROM_LOAD( "nfl-sqtk-11-15-83.u5", 0x0b000, 0x1000, CRC(bbfe4d39) SHA1(161ed211701e576978d6ef8b9766eb7742a29eb3) ) ROM_REGION( 0x10000, "ipu", 0 ) /* 64k for the IPU CPU */ ROM_LOAD( "ipu-7-9.a2", 0x0000, 0x2000, CRC(0e083adb) SHA1(b799568ff851f7320869fb84821a90eb1156556f) ) ROM_LOAD( "ipu-7-9.a4", 0x2000, 0x2000, CRC(5c9c4764) SHA1(ee9fe1d85dbfb1089bc8ed106a28fe5f3c36fb42) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "nflcpubg.6f", 0x00000, 0x2000, CRC(6d116cd9) SHA1(72acbb593e011b7732915c05fd2376eb5a9c5078) ) ROM_LOAD( "nflcpubg.5f", 0x02000, 0x2000, CRC(5f1b0b67) SHA1(90b223ce65f814de26507d45a6db257ceaa932b1) ) ROM_REGION( 0x10000, "gfx2", 0 ) ROM_LOAD( "nflvidfg.cp4", 0x00000, 0x2000, CRC(eb6b808d) SHA1(e81580959710ecfd2f56a661c61b681ac22887cf) ) ROM_LOAD( "nflvidfg.cp3", 0x02000, 0x2000, CRC(be21580a) SHA1(f057635a0a4d7fd99d50e0496fe0af8c6ed27ed9) ) ROM_LOAD( "nflvidfg.cp6", 0x04000, 0x2000, CRC(54a0bff8) SHA1(1a4de884a1a43b97d402d068d3281696c7b48904) ) ROM_LOAD( "nflvidfg.cp5", 0x06000, 0x2000, CRC(6aeba0ab) SHA1(2d99a28bc8bd8289ac12824258b16118c808d6c7) ) ROM_LOAD( "nflvidfg.cp8", 0x08000, 0x2000, CRC(112ee67b) SHA1(fc9ca6cd87f84f7f033729ca0a06978ec0bb7c32) ) ROM_LOAD( "nflvidfg.cp7", 0x0a000, 0x2000, CRC(73f62392) SHA1(18f28be7264f8edff38f8a6aa067eeb1970f544c) ) ROM_LOAD( "nflvidfg.c10", 0x0c000, 0x2000, CRC(1766dcc7) SHA1(df499e3c66ae702d2d56e6cd095a754665569fcd) ) ROM_LOAD( "nflvidfg.cp9", 0x0e000, 0x2000, CRC(46558146) SHA1(4bedfae8cf0fcb9d837706ee13fbe3944ab47216) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "5784", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) ROM_END ROM_START( demoderb ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "dd_pro", 0x00000, 0x4000, CRC(8781b367) SHA1(52fe4f4e3fa0370284845d88bc7b30a95c962b22) ) ROM_LOAD( "dd_pro1", 0x04000, 0x4000, CRC(4c713bfe) SHA1(493b6ba01e86e7586ad123c53cf7f0a0c191d670) ) ROM_LOAD( "dd_pro2", 0x08000, 0x4000, CRC(c2cbd2a4) SHA1(fa642b2f61ff5529ab688a43c1dc14357a4eba6f) ) ROM_REGION( 0x10000, "ssiocpu", ROMREGION_ERASE00 ) /* 64k for the audio CPU, not populated */ ROM_REGION( 0x10000, "tcscpu", 0 ) /* 64k for the Turbo Cheap Squeak */ ROM_LOAD( "tcs_u5.bin", 0x0c000, 0x2000, CRC(eca33b2c) SHA1(938b021ea3b0f23aed7a98a930a58af371a02303) ) ROM_LOAD( "tcs_u4.bin", 0x0e000, 0x2000, CRC(3490289a) SHA1(a9d56ea60bb901267da41ab408f8e1ed3742b0ac) ) ROM_REGION( 0x04000, "gfx1", 0 ) ROM_LOAD( "dd_bg0.6f", 0x00000, 0x2000, CRC(cf80be19) SHA1(a2ab09ee2dc76fab472fec7520ed972ccc10e826) ) ROM_LOAD( "dd_bg1.5f", 0x02000, 0x2000, CRC(4e173e52) SHA1(ac5ae8007a63f9c074444783c1058109327dd118) ) ROM_REGION( 0x20000, "gfx2", 0 ) ROM_LOAD( "dd_fg-0.a4", 0x00000, 0x4000, CRC(e57a4de6) SHA1(d1b2396a85b984e171d751ef8e1cf970ac4ff9fb) ) ROM_LOAD( "dd_fg-4.a3", 0x04000, 0x4000, CRC(55aa667f) SHA1(d611dbf9e8ef383d02514b0edb9ea36670193bf0) ) ROM_LOAD( "dd_fg-1.a6", 0x08000, 0x4000, CRC(70259651) SHA1(55967aaf2a7617c8f5a199d1e07128d79ce16970) ) ROM_LOAD( "dd_fg-5.a5", 0x0c000, 0x4000, CRC(5fe99007) SHA1(9d640b4715333efdc6300dc353991d6934929399) ) ROM_LOAD( "dd_fg-2.a8", 0x10000, 0x4000, CRC(6cab7b95) SHA1(8faff7458ab5ff2dd096dd78b1449a4096cc6345) ) ROM_LOAD( "dd_fg-6.a7", 0x14000, 0x4000, CRC(abfb9a8b) SHA1(14ab416bc76db25ad97353c9072048c64ec95344) ) ROM_LOAD( "dd_fg-3.a10", 0x18000, 0x4000, CRC(801d9b86) SHA1(5a8c72d1060eea1a3ad67b98aa6eff13f6837af6) ) ROM_LOAD( "dd_fg-7.a9", 0x1c000, 0x4000, CRC(0ec3f60a) SHA1(4176b246b0ea7bce9498c20e12678f16f7173529) ) ROM_REGION( 0x0020, "proms", 0 ) ROM_LOAD( "82s123.12d", 0x0000, 0x0020, CRC(e1281ee9) SHA1(9ac9b01d24affc0ee9227a4364c4fd8f8290343a) ) /* from shollow, assuming it's the same */ ROM_END /************************************* * * Driver initialization * *************************************/ static void mcr_init(running_machine &machine, int cpuboard, int vidboard, int ssioboard) { mcr_cpu_board = cpuboard; mcr_sprite_board = vidboard; mcr12_sprite_xoffs = 0; mcr12_sprite_xoffs_flip = 0; state_save_register_global(machine, input_mux); state_save_register_global(machine, last_op4); } static DRIVER_INIT( solarfox ) { mcr_init(machine, 90009, 91399, 90908); mcr_sound_init(machine, MCR_SSIO); ssio_set_custom_input(0, 0x1c, solarfox_ip0_r); ssio_set_custom_input(1, 0xff, solarfox_ip1_r); mcr12_sprite_xoffs = 16; } static DRIVER_INIT( kick ) { mcr_init(machine, 90009, 91399, 90908); mcr_sound_init(machine, MCR_SSIO); ssio_set_custom_input(1, 0xf0, kick_ip1_r); mcr12_sprite_xoffs_flip = 16; } static DRIVER_INIT( mcr_90010 ) { mcr_init(machine, 90010, 91399, 90913); mcr_sound_init(machine, MCR_SSIO); } static DRIVER_INIT( wacko ) { mcr_init(machine, 90010, 91399, 90913); mcr_sound_init(machine, MCR_SSIO); ssio_set_custom_input(1, 0xff, wacko_ip1_r); ssio_set_custom_input(2, 0xff, wacko_ip2_r); ssio_set_custom_output(4, 0x01, wacko_op4_w); } static DRIVER_INIT( twotiger ) { mcr_init(machine, 90010, 91399, 90913); mcr_sound_init(machine, MCR_SSIO); machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0xe800, 0xefff, 0, 0x1000, FUNC(twotiger_videoram_r), FUNC(twotiger_videoram_w)); } static DRIVER_INIT( kroozr ) { mcr_init(machine, 90010, 91399, 91483); mcr_sound_init(machine, MCR_SSIO); ssio_set_custom_input(1, 0x47, kroozr_ip1_r); ssio_set_custom_output(4, 0x34, kroozr_op4_w); } static DRIVER_INIT( journey ) { mcr_init(machine, 91475, 91464, 90913); mcr_sound_init(machine, MCR_SSIO); ssio_set_custom_output(4, 0x01, journey_op4_w); } static DRIVER_INIT( mcr_91490 ) { mcr_init(machine, 91490, 91464, 90913); mcr_sound_init(machine, MCR_SSIO); } static DRIVER_INIT( dotrone ) { mcr_init(machine, 91490, 91464, 91657); mcr_sound_init(machine, MCR_SSIO | MCR_SQUAWK_N_TALK); ssio_set_custom_output(4, 0xff, dotron_op4_w); } static DRIVER_INIT( nflfoot ) { mcr_init(machine, 91490, 91464, 91657); mcr_sound_init(machine, MCR_SSIO | MCR_SQUAWK_N_TALK); ssio_set_custom_input(2, 0x80, nflfoot_ip2_r); ssio_set_custom_output(4, 0xff, nflfoot_op4_w); nflfoot_serial_out_active = FALSE; nflfoot_serial_in_active = FALSE; state_save_register_global(machine, nflfoot_serial_out_active); state_save_register_global(machine, nflfoot_serial_out_bits); state_save_register_global(machine, nflfoot_serial_out_numbits); state_save_register_global(machine, nflfoot_serial_in_active); state_save_register_global(machine, nflfoot_serial_in_bits); state_save_register_global(machine, nflfoot_serial_in_numbits); } static DRIVER_INIT( demoderb ) { mcr_init(machine, 91490, 91464, 90913); mcr_sound_init(machine, MCR_SSIO | MCR_TURBO_CHIP_SQUEAK); ssio_set_custom_input(1, 0xfc, demoderb_ip1_r); ssio_set_custom_input(2, 0xfc, demoderb_ip2_r); ssio_set_custom_output(4, 0xff, demoderb_op4_w); /* the SSIO Z80 doesn't have any program to execute */ machine.device("tcscpu")->suspend(SUSPEND_REASON_DISABLE, 1); } /************************************* * * Game drivers * *************************************/ /* 90009 CPU board + 91399 video gen + 90908 sound I/O */ GAME( 1981, solarfox, 0, mcr_90009, solarfox, solarfox, ROT90 ^ ORIENTATION_FLIP_Y, "Bally Midway", "Solar Fox (upright)", GAME_SUPPORTS_SAVE ) GAME( 1981, kick, 0, mcr_90009, kick, kick, ORIENTATION_SWAP_XY, "Midway", "Kick (upright)", GAME_SUPPORTS_SAVE ) GAME( 1981, kickman, kick, mcr_90009, kick, kick, ORIENTATION_SWAP_XY, "Midway", "Kickman (upright)", GAME_SUPPORTS_SAVE ) GAME( 1981, kickc, kick, mcr_90009, kickc, kick, ROT90, "Midway", "Kick (cocktail)", GAME_SUPPORTS_SAVE ) /* 90010 CPU board + 91399 video gen + 90913 sound I/O */ GAME( 1981, shollow, 0, mcr_90010, shollow, mcr_90010, ROT90, "Bally Midway", "Satan's Hollow (set 1)", GAME_SUPPORTS_SAVE ) GAME( 1981, shollow2, shollow, mcr_90010, shollow, mcr_90010, ROT90, "Bally Midway", "Satan's Hollow (set 2)", GAME_SUPPORTS_SAVE ) GAME( 1982, tron, 0, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (8/9)", GAME_SUPPORTS_SAVE ) GAME( 1982, tron2, tron, mcr_90010, tron, mcr_90010, ROT90, "Bally Midway", "Tron (6/25)", GAME_SUPPORTS_SAVE ) GAME( 1982, tron3, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/17)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) GAME( 1982, tron4, tron, mcr_90010, tron3, mcr_90010, ROT90, "Bally Midway", "Tron (6/15)", GAME_SUPPORTS_SAVE | GAME_NO_COCKTAIL ) GAME( 1982, domino, 0, mcr_90010, domino, mcr_90010, ROT0, "Bally Midway", "Domino Man", GAME_SUPPORTS_SAVE ) GAME( 1982, wacko, 0, mcr_90010, wacko, wacko, ROT0, "Bally Midway", "Wacko", GAME_SUPPORTS_SAVE ) GAME( 1984, twotigerc,twotiger, mcr_90010, twotigrc, mcr_90010, ROT0, "Bally Midway", "Two Tigers (Tron conversion)", GAME_SUPPORTS_SAVE ) /* hacked 90010 CPU board + 91399 video gen + 90913 sound I/O + 8-track interface */ GAME( 1984, twotiger, 0, mcr_90010, twotiger, twotiger, ROT0, "Bally Midway", "Two Tigers (dedicated)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) /* 90010 CPU board + 91399 video gen + 91483 sound I/O */ GAME( 1982, kroozr, 0, mcr_90010, kroozr, kroozr, ROT0, "Bally Midway", "Kozmik Kroozr", GAME_SUPPORTS_SAVE ) /* 91475 CPU board + 91464 video gen + 90913 sound I/O + cassette interface */ GAME( 1983, journey, 0, mcr_91475, journey, journey, ROT90, "Bally Midway", "Journey", GAME_SUPPORTS_SAVE ) /* 91490 CPU board + 91464 video gen + 90913 sound I/O */ GAME( 1983, tapper, 0, mcr_91490, tapper, mcr_91490, ROT0, "Bally Midway", "Tapper (Budweiser, set 1)", GAME_SUPPORTS_SAVE ) GAME( 1983, tappera, tapper, mcr_91490, tapper, mcr_91490, ROT0, "Bally Midway", "Tapper (Budweiser, set 2)", GAME_SUPPORTS_SAVE ) GAME( 1983, sutapper, tapper, mcr_91490, tapper, mcr_91490, ROT0, "Bally Midway", "Tapper (Suntory)", GAME_SUPPORTS_SAVE ) GAME( 1984, rbtapper, tapper, mcr_91490, tapper, mcr_91490, ROT0, "Bally Midway", "Tapper (Root Beer)", GAME_SUPPORTS_SAVE ) GAME( 1984, timber, 0, mcr_91490, timber, mcr_91490, ROT0, "Bally Midway", "Timber", GAME_SUPPORTS_SAVE ) GAME( 1983, dotron, 0, mcr_91490, dotron, mcr_91490, ORIENTATION_FLIP_X, "Bally Midway", "Discs of Tron (Upright)", GAME_SUPPORTS_SAVE ) GAME( 1983, dotrona, dotron, mcr_91490, dotron, mcr_91490, ORIENTATION_FLIP_X, "Bally Midway", "Discs of Tron (Upright alternate)", GAME_SUPPORTS_SAVE ) /* 91490 CPU board + 91464 video gen + 91657 sound I/O + Squawk n' Talk */ GAME( 1983, dotrone, dotron, mcr_91490_snt, dotrone, dotrone, ORIENTATION_FLIP_X, "Bally Midway", "Discs of Tron (Environmental)", GAME_SUPPORTS_SAVE ) /* 91490 CPU board + 91464 video gen + 91657 sound I/O + Squawk n' Talk + IPU laserdisk interface */ GAME( 1983, nflfoot, 0, mcr_91490_ipu, nflfoot, nflfoot, ROT0, "Bally Midway", "NFL Football", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) /* 91490 CPU board + 91464 video gen + 90913 sound I/O + Turbo Chip Squeak */ GAME( 1984, demoderb, 0, mcr_91490_tcs, demoderb, demoderb, ROT0, "Bally Midway", "Demolition Derby", GAME_SUPPORTS_SAVE )