summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/s11b.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/s11b.cpp')
-rw-r--r--src/mame/drivers/s11b.cpp1032
1 files changed, 1032 insertions, 0 deletions
diff --git a/src/mame/drivers/s11b.cpp b/src/mame/drivers/s11b.cpp
new file mode 100644
index 00000000000..d61ef8cd530
--- /dev/null
+++ b/src/mame/drivers/s11b.cpp
@@ -0,0 +1,1032 @@
+// license:BSD-3-Clause
+// copyright-holders:Miodrag Milanovic
+/*
+ Williams System 11b
+
+ Known issues:
+ - Background music is not working in some games
+ - Black Knight 2000 randomly goes nuts or resets
+ (some bug possibly relating to the 'lighting draws the "Ball 1"' animation???);
+ if you insert 2 or more credits and hit start 2 times quickly so it doesn't
+ play the animation, the game seems more stable afterward; original
+ game bug or 6802 core bug or something else?
+ This bug behaves slightly differently in the different sets, depending on whether
+ nvram is cleared beforehand or not, and whether the last reset was soft or hard.
+ - Black Knight 2000 LG-1 set reports U26 ROM FAILURE. Bad/hacked dump or original bug?
+ - Advance button doesn't seem to work well (TODO: check if this may have been fixed with the irq and diagnostic button masking changes)
+
+ Known keys necessary to get games to start (so the proper number of balls are detected):
+ - Black Knight 2000: Hold "D" "F" "Y" and press "1" after inserting 1 or more credits. press 'x' to get the main music started.
+ - Cyclone: Nothing. The game doesn't bother to check if the ball is ready before allowing start. Insert 1 or more credits first, of course.
+*/
+
+
+#include "machine/genpin.h"
+#include "cpu/m6800/m6800.h"
+#include "cpu/m6809/m6809.h"
+#include "machine/6821pia.h"
+#include "sound/hc55516.h"
+#include "sound/2151intf.h"
+#include "sound/dac.h"
+#include "audio/s11c_bg.h"
+#include "includes/s11.h"
+#include "s11b.lh"
+
+static ADDRESS_MAP_START( s11b_main_map, AS_PROGRAM, 8, s11b_state )
+ AM_RANGE(0x0000, 0x0fff) AM_RAM AM_SHARE("nvram")
+ AM_RANGE(0x2100, 0x2103) AM_MIRROR(0x00fc) AM_DEVREADWRITE("pia21", pia6821_device, read, write) // sound+solenoids
+ AM_RANGE(0x2200, 0x2200) AM_MIRROR(0x01ff) AM_WRITE(sol3_w) // solenoids
+ AM_RANGE(0x2400, 0x2403) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia24", pia6821_device, read, write) // lamps
+ AM_RANGE(0x2800, 0x2803) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia28", pia6821_device, read, write) // display
+ AM_RANGE(0x2c00, 0x2c03) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia2c", pia6821_device, read, write) // alphanumeric display
+ AM_RANGE(0x3000, 0x3003) AM_MIRROR(0x03fc) AM_DEVREADWRITE("pia30", pia6821_device, read, write) // inputs
+ AM_RANGE(0x3400, 0x3403) AM_MIRROR(0x0bfc) AM_DEVREADWRITE("pia34", pia6821_device, read, write) // widget
+ AM_RANGE(0x4000, 0xffff) AM_ROM
+ADDRESS_MAP_END
+
+static ADDRESS_MAP_START( s11b_audio_map, AS_PROGRAM, 8, s11b_state )
+ AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_RAM
+ AM_RANGE(0x1000, 0x1fff) AM_WRITE(bank_w)
+ AM_RANGE(0x2000, 0x2003) AM_MIRROR(0x0ffc) AM_DEVREADWRITE("pias", pia6821_device, read, write)
+ AM_RANGE(0x8000, 0xbfff) AM_ROMBANK("bank0")
+ AM_RANGE(0xc000, 0xffff) AM_ROMBANK("bank1")
+ADDRESS_MAP_END
+
+static ADDRESS_MAP_START( s11b_bg_map, AS_PROGRAM, 8, s11b_state )
+ AM_RANGE(0x0000, 0x07ff) AM_RAM
+ AM_RANGE(0x2000, 0x2001) AM_MIRROR(0x1ffe) AM_DEVREADWRITE("ym2151", ym2151_device, read, write)
+ AM_RANGE(0x4000, 0x4003) AM_MIRROR(0x1ffc) AM_DEVREADWRITE("pia40", pia6821_device, read, write)
+ AM_RANGE(0x6000, 0x67ff) AM_WRITE(bg_speech_digit_w)
+ AM_RANGE(0x6800, 0x6fff) AM_WRITE(bg_speech_clock_w)
+ AM_RANGE(0x7800, 0x7fff) AM_WRITE(bgbank_w)
+ AM_RANGE(0x8000, 0xffff) AM_ROMBANK("bgbank")
+ADDRESS_MAP_END
+
+static INPUT_PORTS_START( s11b )
+ PORT_START("X0")
+ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
+
+ PORT_START("X1")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN3 )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER )
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER )
+
+ PORT_START("X2")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_A)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_S)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_D)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_F)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_G)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_H)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_J)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_K)
+
+ PORT_START("X4")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_L)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Z)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_C)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_V)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_B)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_N)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_M)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_COMMA)
+
+ PORT_START("X8")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_STOP)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_SLASH)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_COLON)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_QUOTE)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_X)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_MINUS)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_EQUALS)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_BACKSPACE)
+
+ PORT_START("X10")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_OPENBRACE)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_CLOSEBRACE)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_BACKSLASH)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_ENTER)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_LEFT)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_RIGHT)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_UP)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_DOWN)
+
+ PORT_START("X20")
+ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("X40")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Q)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_W)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_E)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_R)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_Y)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_U)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_I)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_OTHER ) PORT_CODE(KEYCODE_O)
+
+ PORT_START("X80")
+ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
+
+ PORT_START("DIAGS")
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Audio Diag") PORT_CODE(KEYCODE_1_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, s11b_state, audio_nmi, 1)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Main Diag") PORT_CODE(KEYCODE_4_PAD) PORT_CHANGED_MEMBER(DEVICE_SELF, s11b_state, main_nmi, 1)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Advance") PORT_CODE(KEYCODE_5_PAD)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_OTHER) PORT_NAME("Up/Down") PORT_CODE(KEYCODE_6_PAD) PORT_TOGGLE
+ PORT_CONFNAME( 0x10, 0x10, "Language" )
+ PORT_CONFSETTING( 0x00, "German" )
+ PORT_CONFSETTING( 0x10, "English" )
+INPUT_PORTS_END
+
+MACHINE_RESET_MEMBER( s11b_state, s11b )
+{
+ membank("bank0")->set_entry(0);
+ membank("bank1")->set_entry(0);
+ membank("bgbank")->set_entry(0);
+ // reset the CPUs again, so that the CPUs are starting with the right vectors (otherwise sound may die on reset)
+ m_audiocpu->set_input_line(INPUT_LINE_RESET,PULSE_LINE);
+ if(m_bgcpu)
+ m_bgcpu->set_input_line(INPUT_LINE_RESET,PULSE_LINE);
+}
+
+WRITE8_MEMBER( s11b_state::bg_speech_clock_w )
+{
+ if(m_bg_hc55516)
+ {
+ // pulses clock input?
+ m_bg_hc55516->clock_w(1);
+ m_bg_hc55516->clock_w(0);
+ }
+}
+
+WRITE8_MEMBER( s11b_state::bg_speech_digit_w )
+{
+ if(m_bg_hc55516)
+ m_bg_hc55516->digit_w(data);
+}
+
+WRITE8_MEMBER( s11b_state::dig1_w )
+{
+ UINT32 seg = get_segment2();
+ seg |= data;
+ seg |= 0x20000;
+ if((seg & 0x70000) == 0x30000)
+ {
+ if(m_invert)
+ output_set_digit_value(get_strobe()+16, BITSWAP16(~seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ else
+ output_set_digit_value(get_strobe()+16, BITSWAP16(seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ seg |= 0x40000;
+ }
+ set_segment2(seg);
+}
+
+WRITE8_MEMBER( s11b_state::pia2c_pa_w )
+{
+ UINT32 seg = get_segment1();
+ seg |= (data<<8);
+ seg |= 0x10000;
+ if((seg & 0x70000) == 0x30000)
+ {
+ if(m_invert)
+ output_set_digit_value(get_strobe(), BITSWAP16(~seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ else
+ output_set_digit_value(get_strobe(), BITSWAP16(seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ seg |= 0x40000;
+ }
+ set_segment1(seg);
+}
+
+WRITE8_MEMBER( s11b_state::pia2c_pb_w )
+{
+ UINT32 seg = get_segment1();
+ seg |= data;
+ seg |= 0x20000;
+ if((seg & 0x70000) == 0x30000)
+ {
+ if(m_invert)
+ output_set_digit_value(get_strobe(), BITSWAP16(~seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ else
+ output_set_digit_value(get_strobe(), BITSWAP16(seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ seg |= 0x40000;
+ }
+ set_segment1(seg);
+}
+
+WRITE8_MEMBER( s11b_state::pia34_pa_w )
+{
+ UINT32 seg = get_segment2();
+ seg |= (data<<8);
+ seg |= 0x10000;
+ if((seg & 0x70000) == 0x30000)
+ {
+ if(m_invert)
+ output_set_digit_value(get_strobe()+16, BITSWAP16(~seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ else
+ output_set_digit_value(get_strobe()+16, BITSWAP16(seg, 7, 15, 12, 10, 8, 14, 13, 9, 11, 6, 5, 4, 3, 2, 1, 0));
+ seg |= 0x40000;
+ }
+ set_segment2(seg);
+}
+
+WRITE_LINE_MEMBER( s11b_state::pia40_ca2_w)
+{
+ if(state == ASSERT_LINE)
+ m_ym->reset();
+}
+
+DRIVER_INIT_MEMBER( s11b_state, s11b )
+{
+ s11a_state::init_s11a();
+ m_invert = false;
+}
+
+DRIVER_INIT_MEMBER( s11b_state, s11b_invert )
+{
+ s11a_state::init_s11a();
+ m_invert = true;
+}
+
+static MACHINE_CONFIG_START( s11b, s11b_state )
+ /* basic machine hardware */
+ MCFG_CPU_ADD("maincpu", M6808, XTAL_4MHz)
+ MCFG_CPU_PROGRAM_MAP(s11b_main_map)
+ MCFG_MACHINE_RESET_OVERRIDE(s11b_state, s11b)
+
+ /* Video */
+ MCFG_DEFAULT_LAYOUT(layout_s11b)
+
+ /* Sound */
+ MCFG_FRAGMENT_ADD( genpin_audio )
+
+ /* Devices */
+ MCFG_DEVICE_ADD("pia21", PIA6821, 0)
+ MCFG_PIA_READPA_HANDLER(READ8(s11_state, dac_r))
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11_state, sound_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, sol2_w))
+ MCFG_PIA_CA2_HANDLER(WRITELINE(s11_state, pia21_ca2_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia21_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_DEVICE_ADD("pia24", PIA6821, 0)
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11_state, lamp0_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, lamp1_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia24_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_DEVICE_ADD("pia28", PIA6821, 0)
+ MCFG_PIA_READPA_HANDLER(READ8(s11_state, pia28_w7_r))
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11a_state, dig0_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11b_state, dig1_w))
+ MCFG_PIA_CA2_HANDLER(WRITELINE(s11_state, pia28_ca2_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia28_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_DEVICE_ADD("pia2c", PIA6821, 0)
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11b_state, pia2c_pa_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11b_state, pia2c_pb_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_DEVICE_ADD("pia30", PIA6821, 0)
+ MCFG_PIA_READPA_HANDLER(READ8(s11_state, switch_r))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, switch_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia30_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_DEVICE_ADD("pia34", PIA6821, 0)
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11b_state, pia34_pa_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, pia34_pb_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia34_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(WRITELINE(s11_state, pia_irq))
+ MCFG_PIA_IRQB_HANDLER(WRITELINE(s11_state, pia_irq))
+
+ MCFG_NVRAM_ADD_1FILL("nvram")
+
+ /* Add the soundcard */
+ MCFG_CPU_ADD("audiocpu", M6802, XTAL_4MHz)
+ MCFG_CPU_PROGRAM_MAP(s11b_audio_map)
+
+ MCFG_SPEAKER_STANDARD_MONO("mono")
+ MCFG_DAC_ADD("dac")
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
+
+ MCFG_SPEAKER_STANDARD_MONO("speech")
+ MCFG_SOUND_ADD("hc55516", HC55516, 0)
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speech", 0.50)
+
+ MCFG_DEVICE_ADD("pias", PIA6821, 0)
+ MCFG_PIA_READPA_HANDLER(READ8(s11_state, dac_r))
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11_state, sound_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, dac_w))
+ MCFG_PIA_CA2_HANDLER(WRITELINE(s11_state, pias_ca2_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pias_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("audiocpu", m6802_cpu_device, irq_line))
+ MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("audiocpu", m6802_cpu_device, irq_line))
+
+ /* Add the background music card */
+ MCFG_CPU_ADD("bgcpu", M6809E, XTAL_8MHz) // MC68B09E (note: schematics show this as 8mhz/2, but games crash very quickly with that speed?)
+ MCFG_CPU_PROGRAM_MAP(s11b_bg_map)
+ MCFG_QUANTUM_TIME(attotime::from_hz(50))
+
+ MCFG_SPEAKER_STANDARD_MONO("bg")
+ MCFG_YM2151_ADD("ym2151", 3580000)
+ MCFG_YM2151_IRQ_HANDLER(WRITELINE(s11b_state, ym2151_irq_w))
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.25)
+
+ MCFG_DAC_ADD("dac1")
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "bg", 0.50)
+
+ MCFG_SOUND_ADD("hc55516_bg", HC55516, 0)
+ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speech", 0.50)
+
+ MCFG_DEVICE_ADD("pia40", PIA6821, 0)
+ MCFG_PIA_WRITEPA_HANDLER(WRITE8(s11_state, pia40_pa_w))
+ MCFG_PIA_WRITEPB_HANDLER(WRITE8(s11_state, pia40_pb_w))
+ MCFG_PIA_CA2_HANDLER(WRITELINE(s11b_state, pia40_ca2_w))
+ MCFG_PIA_CB2_HANDLER(WRITELINE(s11_state, pia40_cb2_w))
+ MCFG_PIA_IRQA_HANDLER(DEVWRITELINE("bgcpu", m6809e_device, firq_line))
+ MCFG_PIA_IRQB_HANDLER(DEVWRITELINE("bgcpu", m6809e_device, nmi_line))
+
+MACHINE_CONFIG_END
+
+/*-----------------------
+/ Bad Cats 12/89
+/-----------------------*/
+ROM_START(bcats_l5)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("cats_u26.l5", 0x4000, 0x4000, CRC(32246d12) SHA1(b8aa89d197a6b992501904f5072a10ab1a31db87))
+ ROM_LOAD("cats_u27.l5", 0x8000, 0x8000, CRC(ef842bbf) SHA1(854860db428795d5de5c075aa78496f0c18a380f))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cats_u21.l1", 0x18000, 0x8000, CRC(04110d08) SHA1(4b44b26983cb5d14a93c16a19dc2bdbaa665dc69))
+ ROM_LOAD("cats_u22.l1", 0x10000, 0x8000, CRC(7e152c78) SHA1(b4ab770fdd9420a5d35e55bf8fb84c99ac544b8b))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cats_u4.l1", 0x10000, 0x8000, CRC(18c62813) SHA1(a4fb69cfedd0b92c22b599913df3cdf8b3eef42c))
+ ROM_LOAD("cats_u19.l1", 0x18000, 0x8000, CRC(f2fea68b) SHA1(9a41823e71342b7a162420378f122bba34ce0636))
+ ROM_LOAD("cats_u20.l1", 0x20000, 0x8000, CRC(bf4dc35a) SHA1(9920ce90d93fb6ecf98792c35bb6eb8862a969f3))
+ROM_END
+
+ROM_START(bcats_l2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("bcgu26.la2", 0x4000, 0x4000, CRC(206c7cf8) SHA1(34eb128d46a0e1ba943f4e37aa95fa6d81aefb0e))
+ ROM_LOAD("bcgu27.la2", 0x8000, 0x8000, CRC(911981c6) SHA1(0d5b5c6d8399c6337300c789a0466242f91eaf94))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cats_u21.l1", 0x18000, 0x8000, CRC(04110d08) SHA1(4b44b26983cb5d14a93c16a19dc2bdbaa665dc69))
+ ROM_LOAD("cats_u22.l1", 0x10000, 0x8000, CRC(7e152c78) SHA1(b4ab770fdd9420a5d35e55bf8fb84c99ac544b8b))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cats_u4.l1", 0x10000, 0x8000, CRC(18c62813) SHA1(a4fb69cfedd0b92c22b599913df3cdf8b3eef42c))
+ ROM_LOAD("cats_u19.l1", 0x18000, 0x8000, CRC(f2fea68b) SHA1(9a41823e71342b7a162420378f122bba34ce0636))
+ ROM_LOAD("cats_u20.l1", 0x20000, 0x8000, CRC(bf4dc35a) SHA1(9920ce90d93fb6ecf98792c35bb6eb8862a969f3))
+ROM_END
+
+/*--------------------
+/ Banzai Run 7/88
+/--------------------*/
+ROM_START(bnzai_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("banz_u26.l3", 0x4000, 0x4000, CRC(ca578aa3) SHA1(32c03178cc9d9514f76e084e56f6cf6f82754331))
+ ROM_LOAD("banz_u27.l3", 0x8000, 0x8000, CRC(af66fac4) SHA1(84929aaad8a8e4a312a230b73f206d3b43a04dc3))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u21.l1", 0x18000, 0x8000, CRC(cd06716e) SHA1(b61a0dc017dd4a09296a43a855461c5cee07517b))
+ ROM_LOAD("banz_u22.l1", 0x10000, 0x8000, CRC(e8159033) SHA1(e8f15801feefeb30768e88d685c208108aa134e8))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u4.l1", 0x10000, 0x8000, CRC(8fd69c69) SHA1(c024cda85c6616943c3a12ab5943a7be8709bfe3))
+ ROM_LOAD("banz_u19.l1", 0x18000, 0x8000, CRC(9104248c) SHA1(48a8c41f3a4127f4fb4de37e876c8380e3511e1f))
+ ROM_LOAD("banz_u20.l1", 0x20000, 0x8000, CRC(26b3d15c) SHA1(528084b6c62394f8ed9fc0f90b91d844060fc904))
+ROM_END
+
+ROM_START(bnzai_g3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("banz_u26.l3g", 0x4000, 0x4000, CRC(744b8758) SHA1(0bcd5dfd872656d0261a819e3dbd222754585ec0))
+ ROM_LOAD("banz_u27.l3", 0x8000, 0x8000, CRC(af66fac4) SHA1(84929aaad8a8e4a312a230b73f206d3b43a04dc3))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u21.l1", 0x18000, 0x8000, CRC(cd06716e) SHA1(b61a0dc017dd4a09296a43a855461c5cee07517b))
+ ROM_LOAD("banz_u22.l1", 0x10000, 0x8000, CRC(e8159033) SHA1(e8f15801feefeb30768e88d685c208108aa134e8))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u4.l1", 0x10000, 0x8000, CRC(8fd69c69) SHA1(c024cda85c6616943c3a12ab5943a7be8709bfe3))
+ ROM_LOAD("banz_u19.l1", 0x18000, 0x8000, CRC(9104248c) SHA1(48a8c41f3a4127f4fb4de37e876c8380e3511e1f))
+ ROM_LOAD("banz_u20.l1", 0x20000, 0x8000, CRC(26b3d15c) SHA1(528084b6c62394f8ed9fc0f90b91d844060fc904))
+ROM_END
+
+ROM_START(bnzai_l1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-l1.rom", 0x4000, 0x4000, CRC(556abdc0) SHA1(6de78345e5839a4ae9ff97273b6edb2635e0e8b4))
+ ROM_LOAD("u27-l1.rom", 0x8000, 0x8000, CRC(7fc6de2e) SHA1(a7b42c2cd8c1e3810a319c755e52273454d5ca41))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u21.l1", 0x18000, 0x8000, CRC(cd06716e) SHA1(b61a0dc017dd4a09296a43a855461c5cee07517b))
+ ROM_LOAD("banz_u22.l1", 0x10000, 0x8000, CRC(e8159033) SHA1(e8f15801feefeb30768e88d685c208108aa134e8))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u4.l1", 0x10000, 0x8000, CRC(8fd69c69) SHA1(c024cda85c6616943c3a12ab5943a7be8709bfe3))
+ ROM_LOAD("banz_u19.l1", 0x18000, 0x8000, CRC(9104248c) SHA1(48a8c41f3a4127f4fb4de37e876c8380e3511e1f))
+ ROM_LOAD("banz_u20.l1", 0x20000, 0x8000, CRC(26b3d15c) SHA1(528084b6c62394f8ed9fc0f90b91d844060fc904))
+ROM_END
+
+ROM_START(bnzai_pa)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-pa.rom", 0x4000, 0x4000, CRC(65a73e31) SHA1(0332b51ecfc548f72eaca402d83a5ad6dd223272))
+ ROM_LOAD("u27-pa.rom", 0x8000, 0x8000, CRC(c64e2898) SHA1(b2291e9e65f8392f2f05f116dc47fcaf37500e60))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("banz_u21.l1", 0x18000, 0x8000, CRC(cd06716e) SHA1(b61a0dc017dd4a09296a43a855461c5cee07517b))
+ ROM_LOAD("banz_u22.l1", 0x10000, 0x8000, CRC(e8159033) SHA1(e8f15801feefeb30768e88d685c208108aa134e8))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("u4-p7.rom", 0x10000, 0x8000, CRC(630d1ce9) SHA1(fb7f6004b94bf20281216519f18b53949eef4405))
+ ROM_LOAD("banz_u19.l1", 0x18000, 0x8000, CRC(9104248c) SHA1(48a8c41f3a4127f4fb4de37e876c8380e3511e1f))
+ ROM_LOAD("banz_u20.l1", 0x20000, 0x8000, CRC(26b3d15c) SHA1(528084b6c62394f8ed9fc0f90b91d844060fc904))
+ROM_END
+
+/*--------------------
+/ Big Guns 10/87
+/--------------------*/
+ROM_START(bguns_l8)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("guns_u26.l8", 0x4000, 0x4000, CRC(792dc1e8) SHA1(34586585bbaf579cb522569238e24d9ab891b471))
+ ROM_LOAD("guns_u27.l8", 0x8000, 0x8000, CRC(ac4a1a51) SHA1(d48b5e5b550107df8c6edc2d5f78777d7d408959))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("guns_u21.l1", 0x18000, 0x8000, CRC(35c6bfe4) SHA1(83dbd10311add75f56046de58d315f8a87389703))
+ ROM_LOAD("guns_u22.l1", 0x10000, 0x8000, CRC(091a5cb8) SHA1(db77314241eb6ed7f4385f99312a49b7caad1283))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("gund_u4.l1", 0x10000, 0x8000, CRC(d4a430a3) SHA1(5b44e3f313cc7cb75f51c239013d46e5eb986f9d))
+ ROM_LOAD("guns_u19.l1", 0x18000, 0x8000, CRC(ec1a6c23) SHA1(45bb4f78b89de9e690b5f9741d17f97766e702d6))
+ROM_END
+
+ROM_START(bguns_l7)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("guns_u26.l8", 0x4000, 0x4000, CRC(792dc1e8) SHA1(34586585bbaf579cb522569238e24d9ab891b471))
+ ROM_LOAD("guns_u27.l7", 0x8000, 0x8000, CRC(8ff26d24) SHA1(eab732b401144ad7efc80d336299beae85ca7d24))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("guns_u21.l1", 0x18000, 0x8000, CRC(35c6bfe4) SHA1(83dbd10311add75f56046de58d315f8a87389703))
+ ROM_LOAD("guns_u22.l1", 0x10000, 0x8000, CRC(091a5cb8) SHA1(db77314241eb6ed7f4385f99312a49b7caad1283))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("gund_u4.l1", 0x10000, 0x8000, CRC(d4a430a3) SHA1(5b44e3f313cc7cb75f51c239013d46e5eb986f9d))
+ ROM_LOAD("guns_u19.l1", 0x18000, 0x8000, CRC(ec1a6c23) SHA1(45bb4f78b89de9e690b5f9741d17f97766e702d6))
+ROM_END
+
+ROM_START(bguns_la)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-l-a.rom", 0x4000, 0x4000, CRC(613b4d5c) SHA1(7eed4ddb661cd03839a9a89ca695de9cbd1c4d45))
+ ROM_LOAD("u27-l-a.rom", 0x8000, 0x8000, CRC(eee9e1cc) SHA1(32fbade5cbc9047a61d4ce0ec1e616d5324d507f))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("guns_u21.l1", 0x18000, 0x8000, CRC(35c6bfe4) SHA1(83dbd10311add75f56046de58d315f8a87389703))
+ ROM_LOAD("guns_u22.l1", 0x10000, 0x8000, CRC(091a5cb8) SHA1(db77314241eb6ed7f4385f99312a49b7caad1283))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("gund_u4.l1", 0x10000, 0x8000, CRC(d4a430a3) SHA1(5b44e3f313cc7cb75f51c239013d46e5eb986f9d))
+ ROM_LOAD("guns_u19.l1", 0x18000, 0x8000, CRC(ec1a6c23) SHA1(45bb4f78b89de9e690b5f9741d17f97766e702d6))
+ROM_END
+
+ROM_START(bguns_p1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-p-1.rom", 0x4000, 0x4000, CRC(26b8d58f) SHA1(678d4f706b862f3168d6d15859dba6288912e462))
+ ROM_LOAD("u27-p-1.rom", 0x8000, 0x8000, CRC(2fba9a0d) SHA1(16629a5f009865825207378118a147e3135c51cf))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("guns_u21.l1", 0x18000, 0x8000, CRC(35c6bfe4) SHA1(83dbd10311add75f56046de58d315f8a87389703))
+ ROM_LOAD("guns_u22.l1", 0x10000, 0x8000, CRC(091a5cb8) SHA1(db77314241eb6ed7f4385f99312a49b7caad1283))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("gund_u4.l1", 0x10000, 0x8000, CRC(d4a430a3) SHA1(5b44e3f313cc7cb75f51c239013d46e5eb986f9d))
+ ROM_LOAD("guns_u19.l1", 0x18000, 0x8000, CRC(ec1a6c23) SHA1(45bb4f78b89de9e690b5f9741d17f97766e702d6))
+ROM_END
+
+/*-----------------------
+/ Black Knight 2000 6/89
+/-----------------------*/
+ROM_START(bk2k_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("bk2k_u26.l4", 0x4000, 0x4000, CRC(16c7b9e7) SHA1(b6d5edb5ac2b58da699702ece00534d18c1a9fd7))
+ ROM_LOAD("bk2k_u27.l4", 0x8000, 0x8000, CRC(5cf3ab40) SHA1(ee8cb554d10478b028da4a761476d6ec8c56a042))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u21.l1", 0x18000, 0x8000, CRC(08be36ad) SHA1(0f4c448e003df54ed8ccf0e0c57f6123ce1e2027))
+ ROM_LOAD("bk2k_u22.l1", 0x10000, 0x8000, CRC(9c8becd8) SHA1(9090e8104dad63f14246caabafec428d94d5e18d))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u4.l2", 0x10000, 0x8000, CRC(1d87281b) SHA1(609288b017aac6ce6da8717a35fdf87013adeb3c))
+ ROM_LOAD("bk2k_u19.l1", 0x18000, 0x8000, CRC(58e162b2) SHA1(891f810ae18b46593f570d719f0290a1d08a1a10))
+ROM_END
+
+ROM_START(bk2k_lg1) // the rom at u26 is reported as bad when the game is booted, but appears to run nonetheless; bad dump or original bug in the LG-1 set fixed in LG-2 and LG-3?
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("bk2kgu26.lg1", 0x4000, 0x4000, CRC(f916d163) SHA1(bd8cbac9345a8debd01c8c68110652f591ad9d51))
+ ROM_LOAD("bk2kgu27.lg1", 0x8000, 0x8000, CRC(4132ac5c) SHA1(5636d4e8fb9bf5a5f4ccafe4ef035ab0e8964e8b))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u21.l1", 0x18000, 0x8000, CRC(08be36ad) SHA1(0f4c448e003df54ed8ccf0e0c57f6123ce1e2027))
+ ROM_LOAD("bk2k_u22.l1", 0x10000, 0x8000, CRC(9c8becd8) SHA1(9090e8104dad63f14246caabafec428d94d5e18d))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u4.l2", 0x10000, 0x8000, CRC(1d87281b) SHA1(609288b017aac6ce6da8717a35fdf87013adeb3c))
+ ROM_LOAD("bk2k_u19.l1", 0x18000, 0x8000, CRC(58e162b2) SHA1(891f810ae18b46593f570d719f0290a1d08a1a10))
+ROM_END
+
+ROM_START(bk2k_lg3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lg3.rom", 0x4000, 0x4000, CRC(6f468c85) SHA1(b919b436559a29c43911bd2839c5ae7c03e9b06f))
+ ROM_LOAD("u27-lg3.rom", 0x8000, 0x8000, CRC(27707522) SHA1(37844e2f3c70430ee169e1c369aa8e9d47b2c8f2))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u21.l1", 0x18000, 0x8000, CRC(08be36ad) SHA1(0f4c448e003df54ed8ccf0e0c57f6123ce1e2027))
+ ROM_LOAD("bk2k_u22.l1", 0x10000, 0x8000, CRC(9c8becd8) SHA1(9090e8104dad63f14246caabafec428d94d5e18d))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u4.l2", 0x10000, 0x8000, CRC(1d87281b) SHA1(609288b017aac6ce6da8717a35fdf87013adeb3c))
+ ROM_LOAD("bk2k_u19.l1", 0x18000, 0x8000, CRC(58e162b2) SHA1(891f810ae18b46593f570d719f0290a1d08a1a10))
+ROM_END
+
+ROM_START(bk2k_pu1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-pu1.rom", 0x4000, 0x4000, CRC(2da07403) SHA1(4b48c5d7b0a03aa4593dc6053dc5e94df22d2a64))
+ ROM_LOAD("u27-pu1.rom", 0x8000, 0x8000, CRC(245efbae) SHA1(e6354a6f5029f21aab2343cd90daf6cbfb51e556))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u21.l1", 0x18000, 0x8000, CRC(08be36ad) SHA1(0f4c448e003df54ed8ccf0e0c57f6123ce1e2027))
+ ROM_LOAD("bk2k_u22.l1", 0x10000, 0x8000, CRC(9c8becd8) SHA1(9090e8104dad63f14246caabafec428d94d5e18d))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("bk2k_u4.l2", 0x10000, 0x8000, CRC(1d87281b) SHA1(609288b017aac6ce6da8717a35fdf87013adeb3c))
+ ROM_LOAD("bk2k_u19.l1", 0x18000, 0x8000, CRC(58e162b2) SHA1(891f810ae18b46593f570d719f0290a1d08a1a10))
+ROM_END
+
+/*--------------------
+/ Cyclone 2/88
+/--------------------*/
+ROM_START(cycln_l5)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("cycl_u26.l5", 0x4000, 0x4000, CRC(9ab15e12) SHA1(406f3212269dc42de1f3fabcf179958adbd4b5e8))
+ ROM_LOAD("cycl_u27.l5", 0x8000, 0x8000, CRC(c4b6aac0) SHA1(9058e450dbf9d198b1746c258b0e437d7ee844e9))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cycl_u21.l1", 0x18000, 0x8000, CRC(d4f69a7c) SHA1(da0ce27d92b22583be54a41fc8083cee803c987a))
+ ROM_LOAD("cycl_u22.l1", 0x10000, 0x8000, CRC(28dc8f13) SHA1(bccce3a9b6b2f52da919c6df8db07e5e3de12657))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cycl_u4.l5", 0x10000, 0x8000, CRC(d04b663b) SHA1(f54c6df08ec73b733cfeb2a989e44e5c04da3d9e))
+ ROM_LOAD("cycl_u19.l1", 0x18000, 0x8000, CRC(a20f6519) SHA1(63ded5f76133340fa31d4fe65420f4465866fb85))
+ROM_END
+
+ROM_START(cycln_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("cycl_u26.l4", 0x4000, 0x4000, CRC(7da30995) SHA1(3774004df22ddce508fe0604c0349df3edd513b4))
+ ROM_LOAD("cycl_u27.l4", 0x8000, 0x8000, CRC(8874d65f) SHA1(600e2e8cd21faf8999ebef06fb08c43a1eb2ffd7))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cycl_u21.l1", 0x18000, 0x8000, CRC(d4f69a7c) SHA1(da0ce27d92b22583be54a41fc8083cee803c987a))
+ ROM_LOAD("cycl_u22.l1", 0x10000, 0x8000, CRC(28dc8f13) SHA1(bccce3a9b6b2f52da919c6df8db07e5e3de12657))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("cycl_u4.l5", 0x10000, 0x8000, CRC(d04b663b) SHA1(f54c6df08ec73b733cfeb2a989e44e5c04da3d9e))
+ ROM_LOAD("cycl_u19.l1", 0x18000, 0x8000, CRC(a20f6519) SHA1(63ded5f76133340fa31d4fe65420f4465866fb85))
+ROM_END
+
+/*--------------------
+/ Earthshaker 4/89
+/--------------------*/
+ROM_START(esha_pr4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("eshk_u26.f1", 0x4000, 0x4000, CRC(15e2bfe3) SHA1(57ce7f017a6f9ab88f221870efde91e97efbc8a6))
+ ROM_LOAD("eshk_u27.f1", 0x8000, 0x8000, CRC(ddfa8edd) SHA1(e59ba6c1e8a0087abda218a8922d83ebefd84666))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_la3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("eshk_u26.l3", 0x4000, 0x4000, CRC(5350d132) SHA1(fbc671c89f85375c34c49610943c87336123fdc8))
+ ROM_LOAD("eshk_u27.l3", 0x8000, 0x8000, CRC(91389290) SHA1(3f80b77aa0b7db2409bc6b197feb7a4d289b6ec8))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_ma3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("eshk_u26.ml3", 0x4000, 0x4000, CRC(7b7b1a8a) SHA1(8c1d5e4e0b4217055ad9e1490ff3dba52ef013f4))
+ ROM_LOAD("eshk_u27.ml3", 0x8000, 0x8000, CRC(6197c56c) SHA1(338438e8e4c9a7790977dc8e394f6f032516f755))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_lg1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lg1.rom", 0x4000, 0x4000, CRC(6b1c4d12) SHA1(8e90878ab3b6319e4b81967b4cb8c47e1b6b936c))
+ ROM_LOAD("u27-lg1.rom", 0x8000, 0x8000, CRC(6ee69cda) SHA1(227a4b311b9fa5f34d38bee2b5063572a06809cf))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_lg2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lg2.rom", 0x4000, 0x4000, CRC(e30361c6) SHA1(f5626aaf36348b3aad6b04901c5d84eee1153f51))
+ ROM_LOAD("u27-lg1.rom", 0x8000, 0x8000, CRC(6ee69cda) SHA1(227a4b311b9fa5f34d38bee2b5063572a06809cf))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_la1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-la1.rom", 0x4000, 0x4000, CRC(c9c9a32d) SHA1(cd273198e777b644535836ea5785b0dfe5c792c5))
+ ROM_LOAD("u27-la1.rom", 0x8000, 0x8000, CRC(3433b516) SHA1(5aff6bc72f2d6c0fd00f125ed5b4b6d8035d54bc))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u4.l1", 0x10000, 0x8000, CRC(40069f8c) SHA1(aafdc189259fa9c8dc49e60e978b84775e16c64e))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+ROM_START(esha_pa1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-pa1.rom", 0x4000, 0x4000, CRC(08c0b0d6) SHA1(36c23655e1ae07a3a5c91f68fdb27a78ca272683))
+ ROM_LOAD("u27-pa1.rom", 0x8000, 0x8000, CRC(ddd6e8bb) SHA1(b46da424f9c4ac70e65af3ee7b4e08df38ffdb26))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("eshk_u21.l1", 0x18000, 0x8000, CRC(feac68e5) SHA1(2f12a78398bc3a468e3e0656da91260d45b0663b))
+ ROM_LOAD("eshk_u22.l1", 0x10000, 0x8000, CRC(44f50fe1) SHA1(a8e24dbb0f5cf300118e1ebdcd2bb6b274d87936))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("u4-p1.rom", 0x10000, 0x8000, CRC(7219ffc2) SHA1(b8585b7d12f401d8ba4d95a5e2f20d35ff0ac26a))
+ ROM_LOAD("eshk_u19.l1", 0x18000, 0x8000, CRC(e5593075) SHA1(549b03402e5639b449e35325eb52e78f8810b07a))
+ROM_END
+
+/*--------------------
+/ Elvira and the Party Monsters 10/89
+/--------------------*/
+ROM_START(eatpm_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("elvi_u26.l4", 0x4000, 0x4000, CRC(24e09bf6) SHA1(0ff686c671e8cb2b2c8a9669bf44c3b0ba32ed4d))
+ ROM_LOAD("elvi_u27.l4", 0x8000, 0x8000, CRC(3614f3e2) SHA1(3143fef8ab91ad357803d1e98b8ee953e6a194ef))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+ROM_START(eatpm_l1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-la1.rom", 0x4000, 0x4000, CRC(7a4873e6) SHA1(8e37ba2e428d83f6a84447761d99af12f5677c1d))
+ ROM_LOAD("u27-la1.rom", 0x8000, 0x8000, CRC(d1c80549) SHA1(ab7dd88c460102e7db095a2df58c567ba43d81af))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+ROM_START(eatpm_l2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-la2.rom", 0x4000, 0x4000, CRC(c4dc967d) SHA1(e12d06282176d231ffa0e2895499ebd8dd8e6e4f))
+ ROM_LOAD("u27-la2.rom", 0x8000, 0x8000, CRC(01e7aef5) SHA1(82c07635285ff9efb584043601ff5d811a1ab28b))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+ROM_START(eatpm_4g)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lg4.rom", 0x4000, 0x4000, CRC(5e196382) SHA1(e948993ae100ab3d7e1b771f4ce22e3faaad84b4))
+ ROM_LOAD("elvi_u27.l4", 0x8000, 0x8000, CRC(3614f3e2) SHA1(3143fef8ab91ad357803d1e98b8ee953e6a194ef))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+ROM_START(eatpm_4u)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lu4.rom", 0x4000, 0x4000, CRC(504366c8) SHA1(1ca667208d4dcc8a09e35cad5f57798902611d7e))
+ ROM_LOAD("elvi_u27.l4", 0x8000, 0x8000, CRC(3614f3e2) SHA1(3143fef8ab91ad357803d1e98b8ee953e6a194ef))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+ROM_START(eatpm_p7)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-pa7.rom", 0x4000, 0x4000, CRC(0bcc6639) SHA1(016685f6f0ed144e673846c5d44c81baa273c949))
+ ROM_LOAD("u27-pa7.rom", 0x8000, 0x8000, CRC(c9c2bbf0) SHA1(9d23ccd26dc103edee303759f10b11ce0381223b))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u21.l1", 0x18000, 0x8000, CRC(68d44545) SHA1(8c3ea8521a44b1539cd148f142cca14184174ba7))
+ ROM_LOAD("elvi_u22.l1", 0x10000, 0x8000, CRC(e525b4fe) SHA1(be728ec33a00b93c3346428a9248b588460af945))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("elvi_u4.l1", 0x10000, 0x8000, CRC(b5afa4db) SHA1(59b72dac5301a4befa01b93da5162478682e6021))
+ ROM_LOAD("elvi_u19.l1", 0x18000, 0x8000, CRC(806bc350) SHA1(d170aef11001096da9f2f7240726662009e26f5f))
+ ROM_LOAD("elvi_u20.l1", 0x20000, 0x8000, CRC(3d92d5fd) SHA1(834d40a59be57057103d1d8ab48fdaaf7dc5eda2))
+ROM_END
+
+/*--------------------
+/ Jokerz! 1/89
+/--------------------*/
+ROM_START(jokrz_l6)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("jokeru26.l6", 0x4000, 0x4000, CRC(c748c1ba) SHA1(e74b3be2c5d3e81ff29bc4444384f456846111b3))
+ ROM_LOAD("jokeru27.l6", 0x8000, 0x8000, CRC(612d0ea7) SHA1(35d88de615a15442689e13414117b7dfca6a4614))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("jokeru21.l1", 0x18000, 0x8000, CRC(9e2be4f6) SHA1(6e26b55935d0c8138176b54a11c1a9ab58366628))
+ ROM_LOAD("jokeru22.l1", 0x10000, 0x8000, CRC(2f67160c) SHA1(f1e179fde41f9bf8226069c24b0bd5152a13e518))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("jokeru5.l2", 0x10000, 0x10000, CRC(e9dc0095) SHA1(23a99555e50461ccc8e67de01796642c080294c2))
+ROM_END
+
+ROM_START(jokrz_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-l3.rom", 0x4000, 0x4000, CRC(3bf963df) SHA1(9f7757d96deca8638dbc1fe3669eee78dc222ebb))
+ ROM_LOAD("u27-l3.rom", 0x8000, 0x8000, CRC(32526aff) SHA1(c4ee4b58e90f214012addada114fc9333d2d274c))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("jokeru21.l1", 0x18000, 0x8000, CRC(9e2be4f6) SHA1(6e26b55935d0c8138176b54a11c1a9ab58366628))
+ ROM_LOAD("jokeru22.l1", 0x10000, 0x8000, CRC(2f67160c) SHA1(f1e179fde41f9bf8226069c24b0bd5152a13e518))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("jokeru5.l2", 0x10000, 0x10000, CRC(e9dc0095) SHA1(23a99555e50461ccc8e67de01796642c080294c2))
+ROM_END
+
+/*-----------------------
+/ Mousin' Around! 12/89
+/-----------------------*/
+ROM_START(mousn_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("mous_u26.l4", 0x4000, 0x4000, CRC(a540edc1) SHA1(c0b208369ac770f0d4cd7decfce5f8401ded082f))
+ ROM_LOAD("mous_u27.l4", 0x8000, 0x8000, CRC(ff108148) SHA1(32b44286d43a39d5677c6582c5b09fc3b9833806))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u20.l2", 0x18000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ ROM_LOAD("mous_u22.l1", 0x10000, 0x8000, CRC(00ad198c) SHA1(4f15696909e1f3574ad20b28e31da2c155ed129f))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u4.l2", 0x10000, 0x8000, CRC(643add1e) SHA1(45dea0f4c6f24d17e6f7dda75afaa7caefdc6b96))
+ ROM_LOAD("mous_u19.l2", 0x18000, 0x8000, CRC(7b4941f7) SHA1(2b2fc8e7634b1885b020b2115126d6341172cc91))
+ ROM_LOAD("mous_u20.l2", 0x20000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ROM_END
+
+ROM_START(mousn_l1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-la1.rom", 0x4000, 0x4000, CRC(0fff7946) SHA1(53bd68fd21218128f9311047ac911cff7eea8b23))
+ ROM_LOAD("u27-la1.rom", 0x8000, 0x8000, CRC(a440192b) SHA1(837a9eb290f46d792f7307c569dfc627507420b8))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u20.l2", 0x18000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ ROM_LOAD("mous_u22.l1", 0x10000, 0x8000, CRC(00ad198c) SHA1(4f15696909e1f3574ad20b28e31da2c155ed129f))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u4.l2", 0x10000, 0x8000, CRC(643add1e) SHA1(45dea0f4c6f24d17e6f7dda75afaa7caefdc6b96))
+ ROM_LOAD("mous_u19.l2", 0x18000, 0x8000, CRC(7b4941f7) SHA1(2b2fc8e7634b1885b020b2115126d6341172cc91))
+ ROM_LOAD("mous_u20.l2", 0x20000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ROM_END
+
+ROM_START(mousn_lu)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-la1.rom", 0x4000, 0x4000, CRC(0fff7946) SHA1(53bd68fd21218128f9311047ac911cff7eea8b23))
+ ROM_LOAD("u27-lu1.rom", 0x8000, 0x8000, CRC(6e5b692c) SHA1(20c4b8d105d5df6e1b540c02c1c54bca08ec42e8))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u20.l2", 0x18000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ ROM_LOAD("mous_u22.l1", 0x10000, 0x8000, CRC(00ad198c) SHA1(4f15696909e1f3574ad20b28e31da2c155ed129f))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u4.l2", 0x10000, 0x8000, CRC(643add1e) SHA1(45dea0f4c6f24d17e6f7dda75afaa7caefdc6b96))
+ ROM_LOAD("mous_u19.l2", 0x18000, 0x8000, CRC(7b4941f7) SHA1(2b2fc8e7634b1885b020b2115126d6341172cc91))
+ ROM_LOAD("mous_u20.l2", 0x20000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ROM_END
+
+ROM_START(mousn_lx)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("mous_u26.l4", 0x4000, 0x4000, CRC(a540edc1) SHA1(c0b208369ac770f0d4cd7decfce5f8401ded082f))
+ ROM_LOAD("mous_u27.l4", 0x8000, 0x8000, CRC(ff108148) SHA1(32b44286d43a39d5677c6582c5b09fc3b9833806))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u20.l2", 0x18000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ ROM_LOAD("mous_u22.l1", 0x10000, 0x8000, CRC(00ad198c) SHA1(4f15696909e1f3574ad20b28e31da2c155ed129f))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("mous_u4.lx", 0x10000, 0x8000, CRC(d311db4a) SHA1(d9d20921eb42c19c5074c976608bfec0d3130204))
+ ROM_LOAD("mous_u19.lx", 0x18000, 0x8000, CRC(c7a6f494) SHA1(272f0bd3885bb81da13ee6ed3d66f9424ccf4b0d))
+ ROM_LOAD("mous_u20.l2", 0x20000, 0x8000, CRC(59b1b0c5) SHA1(443426be41c1413f22b137145dbc3bcf84d9ccc7))
+ROM_END
+
+/*-----------------------
+/ Police Force 9/89
+/-----------------------*/
+ROM_START(polic_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("pfrc_u26.l4", 0x4000, 0x4000, CRC(1a1409e9) SHA1(775d35a22483bcf8c4b03841e0aca22b6504a48f))
+ ROM_LOAD("pfrc_u27.l4", 0x8000, 0x8000, CRC(641ed5d4) SHA1(f98b8bb64184aba062715555bd1de679d6382ac3))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u21.l1", 0x18000, 0x8000, CRC(7729afd3) SHA1(9cd2898a7a4203cf3b2dcd203e25cde5dd582ee7))
+ ROM_LOAD("pfrc_u22.l1", 0x10000, 0x8000, CRC(40f5e6b2) SHA1(4af2e2658720b08d03d24c9d314a6e5074b2c747))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u4.l2", 0x10000, 0x8000, CRC(8f431529) SHA1(0f479990715a31fd860c000a066cffb70da502c2))
+ ROM_LOAD("pfrc_u19.l1", 0x18000, 0x8000, CRC(abc4caeb) SHA1(6faef2de9a49a1015b4038ab18849de2f25dbded))
+ROM_END
+
+ROM_START(polic_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("pfrc_u26.l4", 0x4000, 0x4000, CRC(1a1409e9) SHA1(775d35a22483bcf8c4b03841e0aca22b6504a48f))
+ ROM_LOAD("pfrc_u27.lx3", 0x8000, 0x8000, CRC(ef5d4808) SHA1(89cf62640e39397899776ab1d132645a5eab9e0e))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u21.l1", 0x18000, 0x8000, CRC(7729afd3) SHA1(9cd2898a7a4203cf3b2dcd203e25cde5dd582ee7))
+ ROM_LOAD("pfrc_u22.l1", 0x10000, 0x8000, CRC(40f5e6b2) SHA1(4af2e2658720b08d03d24c9d314a6e5074b2c747))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u4.l2", 0x10000, 0x8000, CRC(8f431529) SHA1(0f479990715a31fd860c000a066cffb70da502c2))
+ ROM_LOAD("pfrc_u19.l1", 0x18000, 0x8000, CRC(abc4caeb) SHA1(6faef2de9a49a1015b4038ab18849de2f25dbded))
+ROM_END
+
+ROM_START(polic_l2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("pfrc_u26.l2", 0x4000, 0x4000, CRC(4bc972dc) SHA1(7d6e421945832bd2c95a7b8e27d5573a42109379))
+ ROM_LOAD("pfrc_u27.l2", 0x8000, 0x8000, CRC(46ae36f2) SHA1(6685efa858a14b21fae5e3192ab714750ff51341))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u21.l1", 0x18000, 0x8000, CRC(7729afd3) SHA1(9cd2898a7a4203cf3b2dcd203e25cde5dd582ee7))
+ ROM_LOAD("pfrc_u22.l1", 0x10000, 0x8000, CRC(40f5e6b2) SHA1(4af2e2658720b08d03d24c9d314a6e5074b2c747))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("pfrc_u4.l2", 0x10000, 0x8000, CRC(8f431529) SHA1(0f479990715a31fd860c000a066cffb70da502c2))
+ ROM_LOAD("pfrc_u19.l1", 0x18000, 0x8000, CRC(abc4caeb) SHA1(6faef2de9a49a1015b4038ab18849de2f25dbded))
+ROM_END
+/*--------------------
+/ Space Station 1/88
+/--------------------*/
+ROM_START(spstn_l5)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("sstn_u26.l5", 0x4000, 0x4000, CRC(614c8528) SHA1(4f177e3d72a5cc302c62c756ec778ae2a98c8f2e))
+ ROM_LOAD("sstn_u27.l5", 0x8000, 0x8000, CRC(4558d963) SHA1(be317310978cca4ddd616d76fe892dcf7c980473))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("sstn_u21.l1", 0x18000, 0x8000, CRC(a2ceccaa) SHA1(4c23713543e06458e49e3f2d472543c4a4246a93))
+ ROM_LOAD("sstn_u22.l1", 0x10000, 0x8000, CRC(2b745994) SHA1(67ebfe13db6670237496b033611bf9d4ba8d5c30))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("sstn_u4.l1", 0x10000, 0x8000, CRC(ad7a0511) SHA1(9aa6412de12599fd0d10faef8fffb5d535f49015))
+ROM_END
+
+/*--------------------
+/ Swords of Fury 8/88
+/--------------------*/
+ROM_START(swrds_l2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("swrd_u26.l2", 0x4000, 0x4000, CRC(c036f4ff) SHA1(a86840dbc117774aeca695ded1ab3ec76e134325))
+ ROM_LOAD("swrd_u27.l2", 0x8000, 0x8000, CRC(33b0fb5a) SHA1(a55bdfe20b1c869eae52d3be75df1c550d0b20f5))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("swrd_u21.l1", 0x18000, 0x8000, CRC(ee8b0a64) SHA1(c2c52059a9a5f7c0abcfdd76cfc6d5b5451f7d1e))
+ ROM_LOAD("swrd_u22.l1", 0x10000, 0x8000, CRC(73dcdbb0) SHA1(66f5b3804442a1742b6fb3cccf539c4df956b3f2))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("swrd_u4.l1", 0x10000, 0x8000, CRC(272b509c) SHA1(756d3783f664ca1c41dd1d12032330b74c3f89ea))
+ ROM_LOAD("swrd_u19.l1", 0x18000, 0x8000, CRC(a22f84fa) SHA1(1731e86e85cca2d283512d5048c787df3970c9c5))
+ROM_END
+
+/*--------------------
+/ Taxi 10/88
+/--------------------*/
+ROM_START(taxi_l4)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("taxi_u26.l4", 0x4000, 0x4000, CRC(a70d8088) SHA1(0986035436e2b1199571248dac8eb7a903b5015c))
+ ROM_LOAD("taxi_u27.l4", 0x8000, 0x8000, CRC(f973f79c) SHA1(a33ab04451d8a5b2354e4d174c238878e962f228))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u21.l1", 0x18000, 0x8000, CRC(2b20e9ab) SHA1(d785667ae0fd237dd8343bb1ecfbacf050ec2c6f))
+ ROM_LOAD("taxi_u22.l1", 0x10000, 0x8000, CRC(d13055c5) SHA1(8c2959bde03567b83db425ebc9e7309d9601c2b2))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u4.l1", 0x10000, 0x8000, CRC(6082ebb5) SHA1(37e19ad27fe05b4c8e572f6598d2d574e4ac5a7d))
+ ROM_LOAD("taxi_u19.l1", 0x18000, 0x8000, CRC(91c64913) SHA1(10e48977f925f6bc1be0c56854aafa99283b4047))
+ROM_END
+
+ROM_START(taxi_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("taxi_u26.l4", 0x4000, 0x4000, CRC(a70d8088) SHA1(0986035436e2b1199571248dac8eb7a903b5015c))
+ ROM_LOAD("taxi_u27.l3", 0x8000, 0x8000, CRC(e2bfb6fa) SHA1(ba1bddffe4d4e8f04131dd6f5a0380765fbcdfc5))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u21.l1", 0x18000, 0x8000, CRC(2b20e9ab) SHA1(d785667ae0fd237dd8343bb1ecfbacf050ec2c6f))
+ ROM_LOAD("taxi_u22.l1", 0x10000, 0x8000, CRC(d13055c5) SHA1(8c2959bde03567b83db425ebc9e7309d9601c2b2))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u4.l1", 0x10000, 0x8000, CRC(6082ebb5) SHA1(37e19ad27fe05b4c8e572f6598d2d574e4ac5a7d))
+ ROM_LOAD("taxi_u19.l1", 0x18000, 0x8000, CRC(91c64913) SHA1(10e48977f925f6bc1be0c56854aafa99283b4047))
+ROM_END
+
+ROM_START(taxi_lg1)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("u26-lg1m.rom", 0x4000, 0x4000, CRC(40a2f33c) SHA1(815910b36a5df6c63862590c42b6a41286f38236))
+ ROM_LOAD("u27-lg1m.rom", 0x8000, 0x8000, CRC(955dcbab) SHA1(e66e0da6366885ceed7618b09cf66fe11ae27627))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u21.l1", 0x0000, 0x8000, CRC(2b20e9ab) SHA1(d785667ae0fd237dd8343bb1ecfbacf050ec2c6f))
+ ROM_LOAD("taxi_u22.l1", 0x8000, 0x8000, CRC(d13055c5) SHA1(8c2959bde03567b83db425ebc9e7309d9601c2b2))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("taxi_u4.l1", 0x10000, 0x8000, CRC(6082ebb5) SHA1(37e19ad27fe05b4c8e572f6598d2d574e4ac5a7d))
+ ROM_LOAD("taxi_u19.l1", 0x18000, 0x8000, CRC(91c64913) SHA1(10e48977f925f6bc1be0c56854aafa99283b4047))
+ROM_END
+
+/*-----------------------------
+/ Transporter the Rescue 6/89
+/----------------------------*/
+ROM_START(tsptr_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("tran_u26.l3", 0x4000, 0x4000, CRC(2d48a108) SHA1(d41bf077aab1201b08ea14725d4a0d841ee6b919))
+ ROM_LOAD("tran_u27.l3", 0x8000, 0x8000, CRC(50efb01c) SHA1(941f18d51bf8a5d209ed90e0865b7fa638a6eab3))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("tran_u21.l2", 0x18000, 0x8000, CRC(b10120ee) SHA1(305a898a8b762c27dba26921ef169556bf96e518))
+ ROM_LOAD("tran_u22.l2", 0x10000, 0x8000, CRC(337784b5) SHA1(30c17afd8f76118940982db946cd3a2a29445d10))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("tran_u4.l2", 0x10000, 0x8000, CRC(a06ddd61) SHA1(630fe7ab94516930c4876a95f822024a44371170))
+ ROM_LOAD("tran_u19.l2", 0x18000, 0x8000, CRC(3cfde8b0) SHA1(7bdc71ba1ba4fd337f052354323c86fd97b2b881))
+ ROM_LOAD("tran_u20.l2", 0x20000, 0x8000, CRC(e9890cf1) SHA1(0ae37504c704401101c79ce49df11044f8d8caa9))
+ROM_END
+
+/*-----------------------
+/ Whirlwind 4/90
+/-----------------------*/
+ROM_START(whirl_l3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("whir_u26.l3", 0x4000, 0x4000, CRC(066b8fec) SHA1(017ca12ef5ebd9bb70690b0e096064be5144a512))
+ ROM_LOAD("whir_u27.l3", 0x8000, 0x8000, CRC(47fc033d) SHA1(42518650ecb538323bc33ee193bc229d89ca1936))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u21.l1", 0x18000, 0x8000, CRC(fa3da322) SHA1(732107eace9eecdb97eff4abb4420a2febef7425))
+ ROM_LOAD("whir_u22.l1", 0x10000, 0x8000, CRC(fcaf8c4e) SHA1(8e8cab1923a56bcef4671dce28aef1e39303c04a))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u4.l1", 0x10000, 0x8000, CRC(29952d84) SHA1(26479a341b0552c5f9d9bf9dd013855e51a7b857))
+ ROM_LOAD("whir_u19.l1", 0x18000, 0x8000, CRC(c63f6fe9) SHA1(947bbccb5eeae414770254d42d0a95425e2dca8c))
+ ROM_LOAD("whir_u20.l1", 0x20000, 0x8000, CRC(713007af) SHA1(3ac88bb905ccf8e227bbf3c102c74e3d2446cc88))
+ROM_END
+
+ROM_START(whirl_lg3)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("whir_u26.l3", 0x4000, 0x4000, CRC(066b8fec) SHA1(017ca12ef5ebd9bb70690b0e096064be5144a512))
+ ROM_LOAD("whir_u27.lg3", 0x8000, 0x8000, CRC(94c7a45a) SHA1(617f38f14c1cf8d6cbb6a41080e2d66c7c572b7f))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u21.l1", 0x18000, 0x8000, CRC(fa3da322) SHA1(732107eace9eecdb97eff4abb4420a2febef7425))
+ ROM_LOAD("whir_u22.l1", 0x10000, 0x8000, CRC(fcaf8c4e) SHA1(8e8cab1923a56bcef4671dce28aef1e39303c04a))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u4.l1", 0x10000, 0x8000, CRC(29952d84) SHA1(26479a341b0552c5f9d9bf9dd013855e51a7b857))
+ ROM_LOAD("whir_u19.l1", 0x18000, 0x8000, CRC(c63f6fe9) SHA1(947bbccb5eeae414770254d42d0a95425e2dca8c))
+ ROM_LOAD("whir_u20.l1", 0x20000, 0x8000, CRC(713007af) SHA1(3ac88bb905ccf8e227bbf3c102c74e3d2446cc88))
+ROM_END
+
+ROM_START(whirl_l2)
+ ROM_REGION(0x10000, "maincpu", 0)
+ ROM_LOAD("whir_u26.l3", 0x4000, 0x4000, CRC(066b8fec) SHA1(017ca12ef5ebd9bb70690b0e096064be5144a512))
+ ROM_LOAD("wwdgu27.l2", 0x8000, 0x8000, CRC(d8fb48f3) SHA1(8c64f94cca51abd6f4a7e53ac59a6f623bd2cfd7))
+ ROM_REGION(0x20000, "audiocpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u21.l1", 0x18000, 0x8000, CRC(fa3da322) SHA1(732107eace9eecdb97eff4abb4420a2febef7425))
+ ROM_LOAD("whir_u22.l1", 0x10000, 0x8000, CRC(fcaf8c4e) SHA1(8e8cab1923a56bcef4671dce28aef1e39303c04a))
+ ROM_REGION(0x30000, "bgcpu", ROMREGION_ERASEFF)
+ ROM_LOAD("whir_u4.l1", 0x10000, 0x8000, CRC(29952d84) SHA1(26479a341b0552c5f9d9bf9dd013855e51a7b857))
+ ROM_LOAD("whir_u19.l1", 0x18000, 0x8000, CRC(c63f6fe9) SHA1(947bbccb5eeae414770254d42d0a95425e2dca8c))
+ ROM_LOAD("whir_u20.l1", 0x20000, 0x8000, CRC(713007af) SHA1(3ac88bb905ccf8e227bbf3c102c74e3d2446cc88))
+ROM_END
+
+GAME(1989, bcats_l5, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Bad Cats (L-5)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, bcats_l2, bcats_l5, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Bad Cats (LA-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, bnzai_l3, 0, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Banzai Run (L-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, bnzai_g3, bnzai_l3, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Banzai Run (L-3) Germany", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, bnzai_l1, bnzai_l3, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Banzai Run (L-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, bnzai_pa, bnzai_l3, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Banzai Run (P-A)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, bguns_l8, 0, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Big Guns (L-8)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, bguns_l7, bguns_l8, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Big Guns (L-7)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, bguns_la, bguns_l8, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Big Guns (L-A)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1987, bguns_p1, bguns_l8, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Big Guns (P-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, bk2k_l4, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Black Knight 2000 (L-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, bk2k_lg1, bk2k_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Black Knight 2000 (LG-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, bk2k_lg3, bk2k_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Black Knight 2000 (LG-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, bk2k_pu1, bk2k_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Black Knight 2000 (PU-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, cycln_l5, 0, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Cyclone (L-5)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, cycln_l4, cycln_l5, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Cyclone (L-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, esha_la3, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (LA-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, esha_ma3, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (Metallica) (LA-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, esha_pr4, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (Family version) (PR-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, esha_lg1, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (German) (LG-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, esha_lg2, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (German) (LG-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, esha_la1, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (LA-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, esha_pa1, esha_la3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Earthshaker (Prototype) (PA-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_l4, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (LA-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_l1, eatpm_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (LA-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_l2, eatpm_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (LA-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_4g, eatpm_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (LG-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_4u, eatpm_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (LU-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, eatpm_p7, eatpm_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Elvira and the Party Monsters (PA-7)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, jokrz_l6, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Jokerz! (L-6)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, jokrz_l3, jokrz_l6, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Jokerz! (L-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, mousn_l4, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Mousin' Around! (LA-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, mousn_l1, mousn_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Mousin' Around! (LA-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, mousn_lu, mousn_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Mousin' Around! (LU-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, mousn_lx, mousn_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Mousin' Around! (LX-1)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, polic_l4, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Police Force (LA-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, polic_l3, polic_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Police Force (LA-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, polic_l2, polic_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Police Force (LA-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, spstn_l5, 0, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Space Station (L-5)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, swrds_l2, 0, s11b, s11b, s11b_state, s11b, ROT0, "Williams", "Swords of Fury (L-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, taxi_l4, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Taxi (Lola) (L-4)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, taxi_l3, taxi_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Taxi (Marilyn) (L-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1988, taxi_lg1, taxi_l4, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Taxi (Marilyn) (L-1) Germany", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1989, tsptr_l3, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Bally", "Transporter the Rescue (L-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1990, whirl_l3, 0, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Whirlwind (L-3)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1990, whirl_l2, whirl_l3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Whirlwind (L-2)", MACHINE_IS_SKELETON_MECHANICAL)
+GAME(1990, whirl_lg3, whirl_l3, s11b, s11b, s11b_state, s11b_invert, ROT0, "Williams", "Whirlwind (LG-3)", MACHINE_IS_SKELETON_MECHANICAL)