diff options
author | 2015-06-10 19:11:14 +0100 | |
---|---|---|
committer | 2015-06-10 19:11:14 +0100 | |
commit | eefbf671bbf6614ac70f9ab399c58b02adb4a48e (patch) | |
tree | 8c9e987af2d81f4a243232c274821d42571e1267 | |
parent | 923f5e36509311177ea24b044c809e526174fe4d (diff) |
emulate the dual stack System 32 games as dual stack (f1 exhaust note and air rescue)
these games use a sub-board over the main board, underneath the ROM boards to connect 2 system 32 stacks, the board contains shared RAM, it is not a network connection.
the games are designed to ONLY operate with the full setup, infact if you remove the sub-board the or either PCB stack the PCBs simply don't boot or display anything because they wait for values in the shared RAM, we were currently hacking around this to run them as a single screen, however this meant that the air rescue title screen was cut in half etc.
by emulating both stacks and the shared RAM I was able to finally remove the hacks.
I haven't touched f1lap because
-rw-r--r-- | src/mame/drivers/segas32.c | 1523 | ||||
-rw-r--r-- | src/mame/includes/segas32.h | 122 | ||||
-rw-r--r-- | src/mame/video/segas32.c | 14 |
3 files changed, 1059 insertions, 600 deletions
diff --git a/src/mame/drivers/segas32.c b/src/mame/drivers/segas32.c index 43b3986b6bd..a8309f3643f 100644 --- a/src/mame/drivers/segas32.c +++ b/src/mame/drivers/segas32.c @@ -9,7 +9,10 @@ Still to do: * fix protection * fix jpark correctly - * f1lap link + * priorities in multi32 appear wrong - stadium cross map screen + and title fight ingame backgrounds + * should f1lap be set up as a twin cabinet / direct link or can it + be operated as a single screen, unlike f1en/air rescue **************************************************************************** @@ -503,6 +506,27 @@ orunners: Interleaved with the dj and << >> buttons is the data the drives the #include "radr.lh" +const device_type SEGA_S32_PCB = &device_creator<segas32_state>; + +segas32_state::segas32_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : device_t(mconfig, SEGA_S32_PCB, "Sega System 32 PCB", tag, owner, clock, "segas32_pcb", __FILE__), + m_z80_shared_ram(*this,"z80_shared_ram"), + m_ga2_dpram(*this,"ga2_dpram"), + m_system32_workram(*this,"workram"), + m_system32_videoram(*this,"videoram", 0), + m_system32_spriteram(*this,"spriteram", 0), + m_system32_paletteram(*this,"paletteram", 0) , + m_maincpu(*this, "maincpu"), + m_soundcpu(*this, "soundcpu"), + m_multipcm(*this, "sega"), + m_eeprom(*this, "eeprom"), + m_gfxdecode(*this, "gfxdecode"), + m_screen(*this, "screen"), + m_palette(*this, "palette"), + m_irq_timer_0(*this, "v60_irq0"), + m_irq_timer_1(*this, "v60_irq1") +{ +} /************************************* @@ -535,21 +559,35 @@ orunners: Interleaved with the dj and << >> buttons is the data the drives the * *************************************/ -MACHINE_RESET_MEMBER(segas32_state,system32) +void segas32_state::device_start() +{ + common_start(0); +} + +void segas32_v25_state::device_start() +{ + common_start(0); +} + +void sega_multi32_state::device_start() +{ + common_start(1); +} + +void segas32_state::device_reset() { /* initialize the interrupt controller */ memset(m_v60_irq_control, 0xff, sizeof(m_v60_irq_control)); /* allocate timers */ - m_v60_irq_timer[0] = machine().device<timer_device>("v60_irq0"); - m_v60_irq_timer[1] = machine().device<timer_device>("v60_irq1"); + m_v60_irq_timer[0] = m_irq_timer_0; + m_v60_irq_timer[1] = m_irq_timer_1; /* clear IRQ lines */ m_maincpu->set_input_line(0, CLEAR_LINE); } - /************************************* * * Interrupt controller @@ -1424,8 +1462,9 @@ ADDRESS_MAP_END * *************************************/ + static INPUT_PORTS_START( system32_generic ) - PORT_START("P1_A") + PORT_START("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) @@ -1435,7 +1474,7 @@ static INPUT_PORTS_START( system32_generic ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_START("P2_A") + PORT_START("mainpcb:P2_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) @@ -1445,13 +1484,13 @@ static INPUT_PORTS_START( system32_generic ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) - PORT_START("PORTC_A") + PORT_START("mainpcb:PORTC_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("PORTD_A") + PORT_START("mainpcb:PORTD_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("SERVICE12_A") + PORT_START("mainpcb:SERVICE12_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_SERVICE_NO_TOGGLE( 0x02, IP_ACTIVE_LOW ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -1460,37 +1499,87 @@ static INPUT_PORTS_START( system32_generic ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("SERVICE34_A") + PORT_START("mainpcb:SERVICE34_A") PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE3 ) /* sometimes mirrors SERVICE1 */ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE4 ) /* tends to also work as a test switch */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, do_read) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("mainpcb:eeprom", eeprom_serial_93cxx_device, do_read) - PORT_START("PORTG_A") + PORT_START("mainpcb:PORTG_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("PORTH_A") + PORT_START("mainpcb:PORTH_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END +static INPUT_PORTS_START( system32_generic_slave ) + PORT_START("slavepcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY + + PORT_START("slavepcb:P2_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) + + PORT_START("slavepcb:PORTC_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("slavepcb:PORTD_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("slavepcb:SERVICE12_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_SERVICE_NO_TOGGLE( 0x02, IP_ACTIVE_LOW ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN4 ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START4 ) + PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("slavepcb:SERVICE34_A") + PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE3 ) /* sometimes mirrors SERVICE1 */ + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE4 ) /* tends to also work as a test switch */ + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("slavepcb:eeprom", eeprom_serial_93cxx_device, do_read) + + PORT_START("slavepcb:PORTG_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("slavepcb:PORTH_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) +INPUT_PORTS_END + static INPUT_PORTS_START( multi32_generic ) PORT_INCLUDE( system32_generic ) - PORT_START("P1_B") + PORT_START("mainpcb:P1_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("P2_B") + PORT_START("mainpcb:P2_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("PORTC_B") + PORT_START("mainpcb:PORTC_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("PORTD_B") + PORT_START("mainpcb:PORTD_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("SERVICE12_B") + PORT_START("mainpcb:SERVICE12_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) @@ -1498,14 +1587,14 @@ static INPUT_PORTS_START( multi32_generic ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("SERVICE34_B") + PORT_START("mainpcb:SERVICE34_B") PORT_BIT( 0x7f, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("eeprom", eeprom_serial_93cxx_device, do_read) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_READ_LINE_DEVICE_MEMBER("mainpcb:eeprom", eeprom_serial_93cxx_device, do_read) - PORT_START("PORTG_B") + PORT_START("mainpcb:PORTG_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("PORTH_B") + PORT_START("mainpcb:PORTH_B") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END @@ -1520,54 +1609,80 @@ INPUT_PORTS_END static INPUT_PORTS_START( arescue ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x38, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("mainpcb:SERVICE34_A") PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_REVERSE - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Z ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) + + PORT_INCLUDE( system32_generic_slave ) + + PORT_MODIFY("slavepcb:P1_A") + PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + + PORT_MODIFY("slavepcb:P2_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_MODIFY("slavepcb:SERVICE12_A") + PORT_BIT( 0x38, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_MODIFY("slavepcb:SERVICE34_A") + PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("slavepcb:ANALOG1") + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) + + PORT_START("slavepcb:ANALOG2") + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) + + PORT_START("slavepcb:ANALOG3") + PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Z ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) + INPUT_PORTS_END static INPUT_PORTS_START( alien3 ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_PLAYER(2) - PORT_START("ANALOG4") + PORT_START("mainpcb:ANALOG4") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_PLAYER(2) INPUT_PORTS_END @@ -1575,13 +1690,13 @@ INPUT_PORTS_END static INPUT_PORTS_START( arabfgt ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("EXTRA1") + PORT_START("mainpcb:EXTRA1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -1590,7 +1705,7 @@ static INPUT_PORTS_START( arabfgt ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -1599,7 +1714,7 @@ static INPUT_PORTS_START( arabfgt ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) - PORT_START("EXTRA3") + PORT_START("mainpcb:EXTRA3") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -1608,11 +1723,11 @@ INPUT_PORTS_END static INPUT_PORTS_START( arabfgtu ) PORT_INCLUDE( arabfgt ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN3 ) - PORT_MODIFY("EXTRA3") + PORT_MODIFY("mainpcb:EXTRA3") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) INPUT_PORTS_END @@ -1621,13 +1736,13 @@ INPUT_PORTS_END static INPUT_PORTS_START( brival ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2) @@ -1642,17 +1757,17 @@ INPUT_PORTS_END static INPUT_PORTS_START( darkedge ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) @@ -1672,19 +1787,57 @@ INPUT_PORTS_END static INPUT_PORTS_START( f1en ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Gear Up") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("Gear Down") + PORT_MODIFY("mainpcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("mainpcb:Gear Up") + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("mainpcb:Gear Down") + PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_MODIFY("mainpcb:P2_A") + PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_MODIFY("mainpcb:SERVICE12_A") + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_MODIFY("mainpcb:SERVICE34_A") + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) + PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) + + PORT_START("mainpcb:ANALOG1") + PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("mainpcb:Steering Wheel") + + PORT_START("mainpcb:ANALOG2") + PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("mainpcb:Gas Pedal") + + PORT_START("mainpcb:ANALOG3") + PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("mainpcb:Brake Pedal") + + PORT_INCLUDE( system32_generic_slave ) + + PORT_MODIFY("slavepcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("slavepcb:Gear Up") PORT_PLAYER(2) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("slavepcb:Gear Down") PORT_PLAYER(2) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("slavepcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("slavepcb:SERVICE12_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("slavepcb:SERVICE34_A") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -1699,34 +1852,35 @@ static INPUT_PORTS_START( f1en ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("Steering Wheel") + PORT_START("slavepcb:ANALOG1") + PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("slavepcb:Steering Wheel") PORT_PLAYER(2) + + PORT_START("slavepcb:ANALOG2") + PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("slavepcb:Gas Pedal") PORT_PLAYER(2) - PORT_START("ANALOG2") - PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("Gas Pedal") + PORT_START("slavepcb:ANALOG3") + PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("slavepcb:Brake Pedal") PORT_PLAYER(2) - PORT_START("ANALOG3") - PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_NAME("Brake Pedal") INPUT_PORTS_END static INPUT_PORTS_START( f1lap ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Gear Up") - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("Gear Down") - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CODE(KEYCODE_Z) PORT_NAME("Overtake") + PORT_MODIFY("mainpcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("mainpcb:Gear Up") + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("mainpcb:Gear Down") + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_CODE(KEYCODE_Z) PORT_NAME("mainpcb:Overtake") PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("mainpcb:SERVICE34_A") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -1749,21 +1903,21 @@ static INPUT_PORTS_START( f1lap ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("ANALOG1") - PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("Steering Wheel") + PORT_START("mainpcb:ANALOG1") + PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("mainpcb:Steering Wheel") - PORT_START("ANALOG2") - PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("Gas Pedal") + PORT_START("mainpcb:ANALOG2") + PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("mainpcb:Gas Pedal") - PORT_START("ANALOG3") - PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("Brake Pedal") + PORT_START("mainpcb:ANALOG3") + PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(50) PORT_KEYDELTA(20) PORT_NAME("mainpcb:Brake Pedal") INPUT_PORTS_END static INPUT_PORTS_START( ga2 ) PORT_INCLUDE( system32_generic ) - PORT_START("EXTRA1") + PORT_START("mainpcb:EXTRA1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) @@ -1773,7 +1927,7 @@ static INPUT_PORTS_START( ga2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) @@ -1783,7 +1937,7 @@ static INPUT_PORTS_START( ga2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) - PORT_START("EXTRA3") + PORT_START("mainpcb:EXTRA3") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -1792,11 +1946,11 @@ INPUT_PORTS_END static INPUT_PORTS_START( ga2u ) PORT_INCLUDE( ga2 ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN3 ) - PORT_MODIFY("EXTRA3") + PORT_MODIFY("mainpcb:EXTRA3") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) INPUT_PORTS_END @@ -1805,7 +1959,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( harddunk ) PORT_INCLUDE( multi32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) @@ -1815,7 +1969,7 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) @@ -1825,12 +1979,12 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P1_B") + PORT_MODIFY("mainpcb:P1_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) @@ -1840,7 +1994,7 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) - PORT_MODIFY("P2_B") + PORT_MODIFY("mainpcb:P2_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(5) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(5) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(5) @@ -1850,12 +2004,12 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(5) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(5) - PORT_MODIFY("SERVICE12_B") + PORT_MODIFY("mainpcb:SERVICE12_B") PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START5 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("EXTRA1") + PORT_START("mainpcb:EXTRA1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) @@ -1865,7 +2019,7 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(6) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(6) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(6) @@ -1875,7 +2029,7 @@ static INPUT_PORTS_START( harddunk ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(6) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(6) - PORT_START("EXTRA3") + PORT_START("mainpcb:EXTRA3") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START6 ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -1885,10 +2039,10 @@ INPUT_PORTS_END static INPUT_PORTS_START( holo ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END @@ -1896,22 +2050,22 @@ INPUT_PORTS_END static INPUT_PORTS_START( jpark ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_PLAYER(2) - PORT_START("ANALOG4") + PORT_START("mainpcb:ANALOG4") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_PLAYER(2) INPUT_PORTS_END @@ -1919,44 +2073,44 @@ INPUT_PORTS_END static INPUT_PORTS_START( orunners ) PORT_INCLUDE( multi32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_SPACE) /* shift up */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_LSHIFT) /* shift down */ PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_Z) /* DJ/music */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_X) /* << */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_C) /* >> */ PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P1_B") + PORT_MODIFY("mainpcb:P1_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_CODE(KEYCODE_Q) /* shift up */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_CODE(KEYCODE_W) /* shift down */ PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P2_B") + PORT_MODIFY("mainpcb:P2_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) /* DJ/music */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) /* << */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) /* >> */ PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1) - PORT_START("ANALOG4") + PORT_START("mainpcb:ANALOG4") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) - PORT_START("ANALOG7") + PORT_START("mainpcb:ANALOG7") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) - PORT_START("ANALOG8") + PORT_START("mainpcb:ANALOG8") PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) INPUT_PORTS_END @@ -1964,20 +2118,20 @@ INPUT_PORTS_END static INPUT_PORTS_START( radm ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Light") - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("Wiper") + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("mainpcb:Light") + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_CODE(KEYCODE_LSHIFT) PORT_NAME("mainpcb:Wiper") PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("mainpcb:SERVICE34_A") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -1992,13 +2146,13 @@ static INPUT_PORTS_START( radm ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) INPUT_PORTS_END @@ -2006,18 +2160,18 @@ INPUT_PORTS_END static INPUT_PORTS_START( radr ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Gear Change") PORT_TOGGLE + PORT_MODIFY("mainpcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("mainpcb:Gear Change") PORT_TOGGLE PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("mainpcb:SERVICE34_A") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -2032,13 +2186,13 @@ static INPUT_PORTS_START( radr ) PORT_DIPSETTING( 0x00, "Automatic" ) PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) INPUT_PORTS_END @@ -2046,33 +2200,33 @@ INPUT_PORTS_END static INPUT_PORTS_START( scross ) PORT_INCLUDE( multi32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_SPACE) /* P1 Attack */ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_LSHIFT) /* P1 Wheelie */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_CODE(KEYCODE_LALT) /* P1 Brake */ PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P1_B") + PORT_MODIFY("mainpcb:P1_B") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_CODE(KEYCODE_Q) /* P2 Attack */ PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_CODE(KEYCODE_W) /* P2 Wheelie */ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_CODE(KEYCODE_S) /* P2 Brake */ PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(1) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) - PORT_START("ANALOG4") + PORT_START("mainpcb:ANALOG4") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_PLAYER(2) INPUT_PORTS_END @@ -2080,18 +2234,18 @@ INPUT_PORTS_END static INPUT_PORTS_START( slipstrm ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("Gear Change") PORT_TOGGLE + PORT_MODIFY("mainpcb:P1_A") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_CODE(KEYCODE_SPACE) PORT_NAME("mainpcb:Gear Change") PORT_TOGGLE PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE34_A") + PORT_MODIFY("mainpcb:SERVICE34_A") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -2106,13 +2260,13 @@ static INPUT_PORTS_START( slipstrm ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x30, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("ANALOG1") + PORT_START("mainpcb:ANALOG1") PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG2") + PORT_START("mainpcb:ANALOG2") PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) - PORT_START("ANALOG3") + PORT_START("mainpcb:ANALOG3") PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) INPUT_PORTS_END @@ -2120,34 +2274,34 @@ INPUT_PORTS_END static INPUT_PORTS_START( sonic ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 ) - PORT_START("TRACKX1") + PORT_START("mainpcb:TRACKX1") PORT_BIT( 0xff, 0, IPT_TRACKBALL_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_REVERSE PORT_PLAYER(1) - PORT_START("TRACKY1") + PORT_START("mainpcb:TRACKY1") PORT_BIT( 0xff, 0, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_PLAYER(1) - PORT_START("TRACKX2") + PORT_START("mainpcb:TRACKX2") PORT_BIT( 0xff, 0, IPT_TRACKBALL_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_REVERSE PORT_PLAYER(2) - PORT_START("TRACKY2") + PORT_START("mainpcb:TRACKY2") PORT_BIT( 0xff, 0, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_PLAYER(2) - PORT_START("TRACKX3") + PORT_START("mainpcb:TRACKX3") PORT_BIT( 0xff, 0, IPT_TRACKBALL_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_REVERSE PORT_PLAYER(3) - PORT_START("TRACKY3") + PORT_START("mainpcb:TRACKY3") PORT_BIT( 0xff, 0, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(30) PORT_PLAYER(3) INPUT_PORTS_END @@ -2155,13 +2309,13 @@ INPUT_PORTS_END static INPUT_PORTS_START( spidman ) PORT_INCLUDE( system32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("EXTRA1") + PORT_START("mainpcb:EXTRA1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -2170,7 +2324,7 @@ static INPUT_PORTS_START( spidman ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) - PORT_START("EXTRA2") + PORT_START("mainpcb:EXTRA2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -2179,7 +2333,7 @@ static INPUT_PORTS_START( spidman ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) - PORT_START("EXTRA3") + PORT_START("mainpcb:EXTRA3") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0xfc, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -2189,11 +2343,11 @@ INPUT_PORTS_END static INPUT_PORTS_START( spidmanu ) PORT_INCLUDE( spidman ) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN3 ) - PORT_MODIFY("EXTRA3") + PORT_MODIFY("mainpcb:EXTRA3") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) INPUT_PORTS_END @@ -2207,39 +2361,39 @@ INPUT_PORTS_END static INPUT_PORTS_START( titlef ) PORT_INCLUDE( multi32_generic ) - PORT_MODIFY("P1_A") + PORT_MODIFY("mainpcb:P1_A") PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_PLAYER(1) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_PLAYER(1) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_PLAYER(1) - PORT_MODIFY("P2_A") + PORT_MODIFY("mainpcb:P2_A") PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_UP ) PORT_PLAYER(1) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_PLAYER(1) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_LEFT ) PORT_PLAYER(1) - PORT_MODIFY("SERVICE12_A") + PORT_MODIFY("mainpcb:SERVICE12_A") PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("P1_B") + PORT_MODIFY("mainpcb:P1_B") PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_RIGHT ) PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_PLAYER(2) - PORT_MODIFY("P2_B") + PORT_MODIFY("mainpcb:P2_B") PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_UP ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_LEFT ) PORT_PLAYER(2) - PORT_MODIFY("SERVICE12_B") + PORT_MODIFY("mainpcb:SERVICE12_B") PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -2272,35 +2426,6 @@ GFXDECODE_END -/************************************* - * - * Dual PCB shared memory comms - * - *************************************/ - -// Both arescue and f1en appear to use an identical shared RAM system. - - -WRITE16_MEMBER(segas32_state::dual_pcb_comms_w) -{ - COMBINE_DATA(&m_dual_pcb_comms[offset]); -} - -READ16_MEMBER(segas32_state::dual_pcb_comms_r) -{ - return m_dual_pcb_comms[offset]; -} - - -/* There must be something on the comms board for this? - Probably not a dip/solder link/trace cut, but maybe - just whichever way the cables are plugged in? - Both f1en and arescue master units try to set bit 1... */ -READ16_MEMBER(segas32_state::dual_pcb_masterslave) -{ - return 0; // 0/1 master/slave -} - /************************************* @@ -2309,7 +2434,8 @@ READ16_MEMBER(segas32_state::dual_pcb_masterslave) * *************************************/ -static MACHINE_CONFIG_START( system32, segas32_state ) + +static MACHINE_CONFIG_FRAGMENT( system32 ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", V60, MASTER_CLOCK/2) @@ -2320,7 +2446,6 @@ static MACHINE_CONFIG_START( system32, segas32_state ) MCFG_CPU_PROGRAM_MAP(system32_sound_map) MCFG_CPU_IO_MAP(system32_sound_portmap) - MCFG_MACHINE_RESET_OVERRIDE(segas32_state,system32) MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") @@ -2337,8 +2462,6 @@ static MACHINE_CONFIG_START( system32, segas32_state ) MCFG_SCREEN_VISIBLE_AREA(0*8, 52*8-1, 0*8, 28*8-1) MCFG_SCREEN_UPDATE_DRIVER(segas32_state, screen_update_system32) - MCFG_VIDEO_START_OVERRIDE(segas32_state,system32) - /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") @@ -2356,8 +2479,23 @@ static MACHINE_CONFIG_START( system32, segas32_state ) MCFG_SOUND_ROUTE(1, "rspeaker", 0.55) MACHINE_CONFIG_END +const device_type SEGA_S32_REGULAR_DEVICE = &device_creator<segas32_regular_state>; + +segas32_regular_state::segas32_regular_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : segas32_state(mconfig, tag, owner, clock) +{ +} + +machine_config_constructor segas32_regular_state::device_mconfig_additions() const +{ + return MACHINE_CONFIG_NAME( system32 ); +} + + -static MACHINE_CONFIG_DERIVED( system32_v25, system32 ) + +static MACHINE_CONFIG_FRAGMENT( system32_v25 ) + MCFG_FRAGMENT_ADD( system32 ) /* add a V25 for protection */ MCFG_CPU_ADD("mcu", V25, 10000000) @@ -2365,8 +2503,20 @@ static MACHINE_CONFIG_DERIVED( system32_v25, system32 ) MCFG_V25_CONFIG(ga2_v25_opcode_table) MACHINE_CONFIG_END +const device_type SEGA_S32_V25_DEVICE = &device_creator<segas32_v25_state>; -static MACHINE_CONFIG_START( multi32, segas32_state ) +segas32_v25_state::segas32_v25_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : segas32_state(mconfig, tag, owner, clock) +{ +} + +machine_config_constructor segas32_v25_state::device_mconfig_additions() const +{ + return MACHINE_CONFIG_NAME( system32_v25 ); +} + + +static MACHINE_CONFIG_FRAGMENT( multi32 ) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", V70, MULTI32_CLOCK/2) @@ -2377,7 +2527,6 @@ static MACHINE_CONFIG_START( multi32, segas32_state ) MCFG_CPU_PROGRAM_MAP(multi32_sound_map) MCFG_CPU_IO_MAP(multi32_sound_portmap) - MCFG_MACHINE_RESET_OVERRIDE(segas32_state,system32) MCFG_EEPROM_SERIAL_93C46_ADD("eeprom") @@ -2401,8 +2550,6 @@ static MACHINE_CONFIG_START( multi32, segas32_state ) MCFG_SCREEN_VISIBLE_AREA(0*8, 52*8-1, 0*8, 28*8-1) MCFG_SCREEN_UPDATE_DRIVER(segas32_state, screen_update_multi32_right) - MCFG_VIDEO_START_OVERRIDE(segas32_state,multi32) - /* sound hardware */ MCFG_SPEAKER_STANDARD_STEREO("lspeaker", "rspeaker") @@ -2417,6 +2564,83 @@ static MACHINE_CONFIG_START( multi32, segas32_state ) MACHINE_CONFIG_END +const device_type SEGA_MULTI32_DEVICE = &device_creator<sega_multi32_state>; + +sega_multi32_state::sega_multi32_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) + : segas32_state(mconfig, tag, owner, clock) +{ +} + +machine_config_constructor sega_multi32_state::device_mconfig_additions() const +{ + return MACHINE_CONFIG_NAME( multi32 ); +} + + +class segas32_new_state : public driver_device +{ +public: + segas32_new_state(const machine_config &mconfig, device_type type, const char *tag) + : driver_device(mconfig, type, tag), + m_mainpcb(*this, "mainpcb"), + m_slavepcb(*this, "slavepcb") + { } + + required_device<segas32_state> m_mainpcb; + optional_device<segas32_state> m_slavepcb; + + DECLARE_DRIVER_INIT(titlef); + DECLARE_DRIVER_INIT(slipstrm); + DECLARE_DRIVER_INIT(radm); + DECLARE_DRIVER_INIT(holo); + DECLARE_DRIVER_INIT(svf); + DECLARE_DRIVER_INIT(jleague); + DECLARE_DRIVER_INIT(arescue); + DECLARE_DRIVER_INIT(jpark); + DECLARE_DRIVER_INIT(ga2); + DECLARE_DRIVER_INIT(scross); + DECLARE_DRIVER_INIT(spidman); + DECLARE_DRIVER_INIT(sonicp); + DECLARE_DRIVER_INIT(f1en); + DECLARE_DRIVER_INIT(dbzvrvs); + DECLARE_DRIVER_INIT(brival); + DECLARE_DRIVER_INIT(harddunk); + DECLARE_DRIVER_INIT(arabfgt); + DECLARE_DRIVER_INIT(sonic); + DECLARE_DRIVER_INIT(alien3); + DECLARE_DRIVER_INIT(darkedge); + DECLARE_DRIVER_INIT(radr); + DECLARE_DRIVER_INIT(f1lap); + DECLARE_DRIVER_INIT(orunners); + + UINT16* m_dual_pcb_comms; + DECLARE_WRITE16_MEMBER(dual_pcb_comms_w); + DECLARE_READ16_MEMBER(dual_pcb_comms_r); + DECLARE_READ16_MEMBER(dual_pcb_masterslave); + DECLARE_READ16_MEMBER(dual_pcb_slave); + + +}; + + + +static MACHINE_CONFIG_START( sega_system32, segas32_new_state ) + MCFG_DEVICE_ADD("mainpcb", SEGA_S32_REGULAR_DEVICE, 0) +MACHINE_CONFIG_END + +// for air rescue & f1en where there is a sub-board containing shared ram sitting underneath the ROM board bridging 2 PCBs (not a network link) +static MACHINE_CONFIG_START( sega_system32_dual_direct, segas32_new_state ) + MCFG_DEVICE_ADD("mainpcb", SEGA_S32_REGULAR_DEVICE, 0) + MCFG_DEVICE_ADD("slavepcb", SEGA_S32_REGULAR_DEVICE, 0) +MACHINE_CONFIG_END + +static MACHINE_CONFIG_START( sega_system32_v25, segas32_new_state ) + MCFG_DEVICE_ADD("mainpcb", SEGA_S32_V25_DEVICE, 0) +MACHINE_CONFIG_END + +static MACHINE_CONFIG_START( sega_multi32, segas32_new_state ) + MCFG_DEVICE_ADD("mainpcb", SEGA_MULTI32_DEVICE, 0) +MACHINE_CONFIG_END /************************************* * @@ -2424,6 +2648,7 @@ MACHINE_CONFIG_END * *************************************/ + #define ROM_LOAD_x2(name, base, length, crc) \ ROM_LOAD( name, base + 0 * length, length, crc ) \ ROM_RELOAD( base + 1 * length, length ) @@ -2526,25 +2751,25 @@ MACHINE_CONFIG_END */ ROM_START( arescue ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14540.ic13", 0x000000, 0x020000, CRC(c2b4e5d0) SHA1(69f8ddded5095df9012663d0ded61b78f1692a8d) ) ROM_LOAD_x4( "epr-14539.ic6", 0x080000, 0x020000, CRC(1a1b5532) SHA1(f3651470222036703b7ecedb6e91e4cdb3d20df7) ) ROM_LOAD16_BYTE( "epr-14509.ic14", 0x100000, 0x080000, CRC(daa5a356) SHA1(ca87242c59de5ab5f9406635bee758a855fe20bc) ) ROM_LOAD16_BYTE( "epr-14508.ic7", 0x100001, 0x080000, CRC(6702c14d) SHA1(dc9324f16a3e3238f5ccdade9451d6823a50b563) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-14513.ic35", 0x100000, 0x40000, CRC(f9a884cd) SHA1(73010fff5e0257355e08e78838c74af86ed364ce) ) ROM_LOAD_x2( "mpr-14512.ic31", 0x200000, 0x80000, CRC(9da48051) SHA1(2d41148d089a75362ed0fde577eca919213ac666) ) ROM_LOAD_x2( "mpr-14511.ic26", 0x300000, 0x80000, CRC(074c53cc) SHA1(9c89843bbe8058123c25b7f8f86de754ddbca2bb) ) ROM_LOAD_x2( "mpr-14510.ic22", 0x400000, 0x80000, CRC(5ea6d52d) SHA1(d424082468940bb91ab424ac7812839792ed4e88) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14496.ic25", 0x000003, 0x080000, CRC(737da16c) SHA1(52247d9bc2924e90d040bef484a541b1f4a9026f) ) ROM_LOAD32_BYTE( "mpr-14497.ic29", 0x000001, 0x080000, CRC(ebd7ed17) SHA1(2307dc28501965432d2ff55a21698efdce014401) ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -2554,8 +2779,37 @@ ROM_START( arescue ) ROMX_LOAD( "mpr-14506.ic32", 0x000001, 0x100000, CRC(5dd8fb6b) SHA1(7d21cacb2c9dba5db2547b6d8e89397e0424ee8e) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14507.ic36", 0x000000, 0x100000, CRC(db3f59ec) SHA1(96dcb3827354773fc2911c62260a27e90dcbe96a) , ROM_SKIP(7) ) - ROM_REGION( 0x20000, "user2", 0 ) /* NEC uPD77P25 DSP Internal ROM */ + ROM_REGION( 0x20000, "user2", 0 ) /* NEC uPD77P25 DSP Internal ROM */ // ONLY PRESENT ON ONE PCB STACK ROM_LOAD( "d7725.01", 0x000000, 0x002800, CRC(a7ec5644) SHA1(e9b05c70b639ee289e557dfd9a6c724b36338e2b) ) + + ROM_REGION( 0x200000, "slavepcb:maincpu", 0 ) /* v60 code + data */ + ROM_LOAD_x4( "epr-14540.ic13", 0x000000, 0x020000, CRC(c2b4e5d0) SHA1(69f8ddded5095df9012663d0ded61b78f1692a8d) ) + ROM_LOAD_x4( "epr-14539.ic6", 0x080000, 0x020000, CRC(1a1b5532) SHA1(f3651470222036703b7ecedb6e91e4cdb3d20df7) ) + ROM_LOAD16_BYTE( "epr-14509.ic14", 0x100000, 0x080000, CRC(daa5a356) SHA1(ca87242c59de5ab5f9406635bee758a855fe20bc) ) + ROM_LOAD16_BYTE( "epr-14508.ic7", 0x100001, 0x080000, CRC(6702c14d) SHA1(dc9324f16a3e3238f5ccdade9451d6823a50b563) ) + + ROM_REGION( 0x500000, "slavepcb:soundcpu", 0 ) /* sound CPU */ + ROM_LOAD_x4( "epr-14513.ic35", 0x100000, 0x40000, CRC(f9a884cd) SHA1(73010fff5e0257355e08e78838c74af86ed364ce) ) + ROM_LOAD_x2( "mpr-14512.ic31", 0x200000, 0x80000, CRC(9da48051) SHA1(2d41148d089a75362ed0fde577eca919213ac666) ) + ROM_LOAD_x2( "mpr-14511.ic26", 0x300000, 0x80000, CRC(074c53cc) SHA1(9c89843bbe8058123c25b7f8f86de754ddbca2bb) ) + ROM_LOAD_x2( "mpr-14510.ic22", 0x400000, 0x80000, CRC(5ea6d52d) SHA1(d424082468940bb91ab424ac7812839792ed4e88) ) + + ROM_REGION( 0x200000, "slavepcb:gfx1", 0 ) /* tiles */ + ROM_LOAD32_BYTE( "mpr-14496.ic25", 0x000003, 0x080000, CRC(737da16c) SHA1(52247d9bc2924e90d040bef484a541b1f4a9026f) ) + ROM_LOAD32_BYTE( "mpr-14497.ic29", 0x000001, 0x080000, CRC(ebd7ed17) SHA1(2307dc28501965432d2ff55a21698efdce014401) ) + ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) + ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) + + ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14503.ic37", 0x000004, 0x100000, CRC(90556aca) SHA1(24df62af55048db66d50c7034c5460330d231bf5) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14504.ic23", 0x000003, 0x100000, CRC(46dd038d) SHA1(9530a52e2e7388437c20ebcb19bf84c8b3b5086b) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14505.ic27", 0x000002, 0x100000, CRC(be142c1f) SHA1(224631e00c2458c39c6a2ef7978c2b1131fb4da2) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14506.ic32", 0x000001, 0x100000, CRC(5dd8fb6b) SHA1(7d21cacb2c9dba5db2547b6d8e89397e0424ee8e) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14507.ic36", 0x000000, 0x100000, CRC(db3f59ec) SHA1(96dcb3827354773fc2911c62260a27e90dcbe96a) , ROM_SKIP(7) ) + ROM_END /************************************************************************************************************************** @@ -2572,25 +2826,25 @@ ROM_END requires additional math DSP to be emulated */ ROM_START( arescuej ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14515.ic13", 0x000000, 0x020000, CRC(fb5eefbd) SHA1(f2739ad2e168843fe992d7fb546ffd859fa6c17a) ) ROM_LOAD_x4( "epr-14514.ic6", 0x080000, 0x020000, CRC(ebf6dfc5) SHA1(2146dc23f1268124b6ad3cd00416a71fc56130bf) ) ROM_LOAD16_BYTE( "epr-14509.ic14", 0x100000, 0x080000, CRC(daa5a356) SHA1(ca87242c59de5ab5f9406635bee758a855fe20bc) ) ROM_LOAD16_BYTE( "epr-14508.ic7", 0x100001, 0x080000, CRC(6702c14d) SHA1(dc9324f16a3e3238f5ccdade9451d6823a50b563) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-14513.ic35", 0x100000, 0x40000, CRC(f9a884cd) SHA1(73010fff5e0257355e08e78838c74af86ed364ce) ) ROM_LOAD_x2( "mpr-14512.ic31", 0x200000, 0x80000, CRC(9da48051) SHA1(2d41148d089a75362ed0fde577eca919213ac666) ) ROM_LOAD_x2( "mpr-14511.ic26", 0x300000, 0x80000, CRC(074c53cc) SHA1(9c89843bbe8058123c25b7f8f86de754ddbca2bb) ) ROM_LOAD_x2( "mpr-14510.ic22", 0x400000, 0x80000, CRC(5ea6d52d) SHA1(d424082468940bb91ab424ac7812839792ed4e88) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14496.ic25", 0x000003, 0x080000, CRC(737da16c) SHA1(52247d9bc2924e90d040bef484a541b1f4a9026f) ) ROM_LOAD32_BYTE( "mpr-14497.ic29", 0x000001, 0x080000, CRC(ebd7ed17) SHA1(2307dc28501965432d2ff55a21698efdce014401) ) ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) @@ -2600,8 +2854,37 @@ ROM_START( arescuej ) ROMX_LOAD( "mpr-14506.ic32", 0x000001, 0x100000, CRC(5dd8fb6b) SHA1(7d21cacb2c9dba5db2547b6d8e89397e0424ee8e) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14507.ic36", 0x000000, 0x100000, CRC(db3f59ec) SHA1(96dcb3827354773fc2911c62260a27e90dcbe96a) , ROM_SKIP(7) ) - ROM_REGION( 0x20000, "user2", 0 ) /* NEC uPD77P25 DSP Internal ROM */ + ROM_REGION( 0x20000, "user2", 0 ) /* NEC uPD77P25 DSP Internal ROM */ // ONLY PRESENT ON ONE PCB STACK ROM_LOAD( "d7725.01", 0x000000, 0x002800, CRC(a7ec5644) SHA1(e9b05c70b639ee289e557dfd9a6c724b36338e2b) ) + + ROM_REGION( 0x200000, "slavepcb:maincpu", 0 ) /* v60 code + data */ + ROM_LOAD_x4( "epr-14515.ic13", 0x000000, 0x020000, CRC(fb5eefbd) SHA1(f2739ad2e168843fe992d7fb546ffd859fa6c17a) ) + ROM_LOAD_x4( "epr-14514.ic6", 0x080000, 0x020000, CRC(ebf6dfc5) SHA1(2146dc23f1268124b6ad3cd00416a71fc56130bf) ) + ROM_LOAD16_BYTE( "epr-14509.ic14", 0x100000, 0x080000, CRC(daa5a356) SHA1(ca87242c59de5ab5f9406635bee758a855fe20bc) ) + ROM_LOAD16_BYTE( "epr-14508.ic7", 0x100001, 0x080000, CRC(6702c14d) SHA1(dc9324f16a3e3238f5ccdade9451d6823a50b563) ) + + ROM_REGION( 0x500000, "slavepcb:soundcpu", 0 ) /* sound CPU */ + ROM_LOAD_x4( "epr-14513.ic35", 0x100000, 0x40000, CRC(f9a884cd) SHA1(73010fff5e0257355e08e78838c74af86ed364ce) ) + ROM_LOAD_x2( "mpr-14512.ic31", 0x200000, 0x80000, CRC(9da48051) SHA1(2d41148d089a75362ed0fde577eca919213ac666) ) + ROM_LOAD_x2( "mpr-14511.ic26", 0x300000, 0x80000, CRC(074c53cc) SHA1(9c89843bbe8058123c25b7f8f86de754ddbca2bb) ) + ROM_LOAD_x2( "mpr-14510.ic22", 0x400000, 0x80000, CRC(5ea6d52d) SHA1(d424082468940bb91ab424ac7812839792ed4e88) ) + + ROM_REGION( 0x200000, "slavepcb:gfx1", 0 ) /* tiles */ + ROM_LOAD32_BYTE( "mpr-14496.ic25", 0x000003, 0x080000, CRC(737da16c) SHA1(52247d9bc2924e90d040bef484a541b1f4a9026f) ) + ROM_LOAD32_BYTE( "mpr-14497.ic29", 0x000001, 0x080000, CRC(ebd7ed17) SHA1(2307dc28501965432d2ff55a21698efdce014401) ) + ROM_LOAD32_BYTE( "mpr-14498.ic34", 0x000002, 0x080000, CRC(d4a764bd) SHA1(8434a9225ed1e01e8b1cfe169268e42cd3ce6ee3) ) + ROM_LOAD32_BYTE( "mpr-14499.ic38", 0x000000, 0x080000, CRC(fadc4b2b) SHA1(01c02a4dfad1ab19bac8b81b61d37fdc035bc5c5) ) + + ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROMX_LOAD( "mpr-14500.ic24", 0x000007, 0x100000, CRC(0a064e9b) SHA1(264761f4aacaeeac9426528caf180404cd7f6e18) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14501.ic28", 0x000006, 0x100000, CRC(4662bb41) SHA1(80774e680468e9ba9c5dd5eeaa4791fa3b3722fd) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14502.ic33", 0x000005, 0x100000, CRC(988555a9) SHA1(355e44319fd51358329cc7cd226e4c4725e045cb) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14503.ic37", 0x000004, 0x100000, CRC(90556aca) SHA1(24df62af55048db66d50c7034c5460330d231bf5) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14504.ic23", 0x000003, 0x100000, CRC(46dd038d) SHA1(9530a52e2e7388437c20ebcb19bf84c8b3b5086b) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14505.ic27", 0x000002, 0x100000, CRC(be142c1f) SHA1(224631e00c2458c39c6a2ef7978c2b1131fb4da2) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14506.ic32", 0x000001, 0x100000, CRC(5dd8fb6b) SHA1(7d21cacb2c9dba5db2547b6d8e89397e0424ee8e) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14507.ic36", 0x000000, 0x100000, CRC(db3f59ec) SHA1(96dcb3827354773fc2911c62260a27e90dcbe96a) , ROM_SKIP(7) ) + ROM_END @@ -2618,23 +2901,23 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( alien3 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-15943.ic17", 0x000000, 0x040000, CRC(ac4591aa) SHA1(677155a3ebdac6602525e06adb25d287eaf9e089) ) ROM_LOAD_x2( "epr-15942.ic8", 0x080000, 0x040000, CRC(a1e1d0ec) SHA1(10d8d2235a67a4ba475fe98124c6a4a5311592b5) ) ROM_LOAD16_BYTE( "mpr-15855.ic18", 0x100000, 0x080000, CRC(a6fadabe) SHA1(328bbb54651eef197ba13f1bd9228f3f4de7ee5e) ) ROM_LOAD16_BYTE( "mpr-15854.ic9", 0x100001, 0x080000, CRC(d1aec392) SHA1(f48804fe0151e83ad45e912b55db8ae8ddebd2ad) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15859.ic36", 0x100000, 0x040000, CRC(91b55bd0) SHA1(23b85a006a91c2a5eb1cee14172fd0d8b7732518) ) ROM_LOAD( "mpr-15858.ic35", 0x200000, 0x100000, CRC(2eb64c10) SHA1(b2dbe86b82e889f4a9850cf4aa6596a139c1c3d6) ) ROM_LOAD( "mpr-15857.ic34", 0x300000, 0x100000, CRC(915c56df) SHA1(7031f937c826af17caf7ec8cbb6155d0a55bd38a) ) ROM_LOAD( "mpr-15856.ic24", 0x400000, 0x100000, CRC(a5ef4f1f) SHA1(e8da7a995955e80872a25bd75465c590b649cfab) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15863.ic14", 0x000000, 0x200000, CRC(9d36b645) SHA1(2977047780b615b64c3b4aec78fef0643d40490e) ) ROM_LOAD16_BYTE( "mpr-15862.ic5", 0x000001, 0x200000, CRC(9e277d25) SHA1(9f191484a42391268306a8d2d95c340ce8b2d6cd) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15864.ic32", 0x000000, 0x200000, CRC(58207157) SHA1(d1b0c7edac8b89b1322398d4cd3a976a88bc0b56) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15866.ic30", 0x000002, 0x200000, CRC(9c53732c) SHA1(9aa5103cc10b4927c16e0cf102b64a15dd038756) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15868.ic28", 0x000004, 0x200000, CRC(62d556e8) SHA1(d70cab0881784a3d4dd06d0c99587ca6054c2dc4) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2644,7 +2927,7 @@ ROM_START( alien3 ) ROMX_LOAD( "mpr-15869.ic27", 0x800004, 0x200000, CRC(dd4b137f) SHA1(7316dce32d35bf468defae5e6ed86910a37a2457) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15871.ic25", 0x800006, 0x200000, CRC(58eb10ae) SHA1(23f2a72dc7b2d7b5c8a979952f81608296805745) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION16_BE( 0x80, "eeprom", 0 ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) ROM_LOAD16_WORD( "93c45_eeprom.ic76", 0x0000, 0x0080, CRC(6e1d9df3) SHA1(2fd818bc393fb96e945fa37a63c8a3c4aff2f79f) ) ROM_END @@ -2659,23 +2942,23 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( alien3u ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-15941.ic17", 0x000000, 0x040000, CRC(bf8c257f) SHA1(d08b77d2e3f5af0da7e7d8727fbe7fc0eb1153ff) ) ROM_LOAD_x2( "epr-15940a.ic8", 0x080000, 0x040000, CRC(8840b51e) SHA1(0aa6945000676b1adc535b1557a1455d62aed9f5) ) ROM_LOAD16_BYTE( "mpr-15855.ic18", 0x100000, 0x080000, CRC(a6fadabe) SHA1(328bbb54651eef197ba13f1bd9228f3f4de7ee5e) ) ROM_LOAD16_BYTE( "mpr-15854.ic9", 0x100001, 0x080000, CRC(d1aec392) SHA1(f48804fe0151e83ad45e912b55db8ae8ddebd2ad) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15859.ic36", 0x100000, 0x040000, CRC(91b55bd0) SHA1(23b85a006a91c2a5eb1cee14172fd0d8b7732518) ) ROM_LOAD( "mpr-15858.ic35", 0x200000, 0x100000, CRC(2eb64c10) SHA1(b2dbe86b82e889f4a9850cf4aa6596a139c1c3d6) ) ROM_LOAD( "mpr-15857.ic34", 0x300000, 0x100000, CRC(915c56df) SHA1(7031f937c826af17caf7ec8cbb6155d0a55bd38a) ) ROM_LOAD( "mpr-15856.ic24", 0x400000, 0x100000, CRC(a5ef4f1f) SHA1(e8da7a995955e80872a25bd75465c590b649cfab) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15863.ic14", 0x000000, 0x200000, CRC(9d36b645) SHA1(2977047780b615b64c3b4aec78fef0643d40490e) ) ROM_LOAD16_BYTE( "mpr-15862.ic5", 0x000001, 0x200000, CRC(9e277d25) SHA1(9f191484a42391268306a8d2d95c340ce8b2d6cd) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15864.ic32", 0x000000, 0x200000, CRC(58207157) SHA1(d1b0c7edac8b89b1322398d4cd3a976a88bc0b56) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15866.ic30", 0x000002, 0x200000, CRC(9c53732c) SHA1(9aa5103cc10b4927c16e0cf102b64a15dd038756) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15868.ic28", 0x000004, 0x200000, CRC(62d556e8) SHA1(d70cab0881784a3d4dd06d0c99587ca6054c2dc4) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2685,7 +2968,7 @@ ROM_START( alien3u ) ROMX_LOAD( "mpr-15869.ic27", 0x800004, 0x200000, CRC(dd4b137f) SHA1(7316dce32d35bf468defae5e6ed86910a37a2457) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15871.ic25", 0x800006, 0x200000, CRC(58eb10ae) SHA1(23f2a72dc7b2d7b5c8a979952f81608296805745) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION16_BE( 0x80, "eeprom", 0 ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) ROM_LOAD16_WORD( "93c45_eeprom.ic76", 0x0000, 0x0080, CRC(6e1d9df3) SHA1(2fd818bc393fb96e945fa37a63c8a3c4aff2f79f) ) ROM_END @@ -2697,12 +2980,12 @@ ROM_END protected via a custom V25 with encrypted code */ ROM_START( arabfgt ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14609.ic8", 0x000000, 0x020000, CRC(6a43c7fb) SHA1(70e9f9fa5f867f0455d62ff2690ad19055d79363) ) ROM_LOAD16_BYTE_x2( "epr-14592.ic18", 0x100000, 0x040000, CRC(f7dff316) SHA1(338690a1404dde6e7e66067f23605a247c7d0f5b) ) ROM_LOAD16_BYTE_x2( "epr-14591.ic9", 0x100001, 0x040000, CRC(bbd940fb) SHA1(99c17aba890935eaf7ea468492da03103288eb1b) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x8( "epr-14596.ic36", 0x100000, 0x020000, CRC(bd01faec) SHA1(c909dcb8ef2672c4b0060d911d295e445ca311eb) ) ROM_LOAD( "mpr-14595f.ic35", 0x200000, 0x100000, CRC(5173d1af) SHA1(dccda644488d0c561c8ff7fa9619bd9504d8d9c6) ) ROM_LOAD( "mpr-14594f.ic34", 0x300000, 0x100000, CRC(01777645) SHA1(7bcbe7687bd80b94bd3b2b3099cdd036bf7e0cd3) ) @@ -2712,11 +2995,11 @@ ROM_START( arabfgt ) ROM_LOAD( "epr-14468-01.u3", 0x00000, 0x10000, CRC(c3c591e4) SHA1(53e48066e85b61d0c456618d14334a509b354cb3) ) ROM_RELOAD( 0xf0000, 0x10000) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2732,12 +3015,12 @@ ROM_END protected via a custom V25 with encrypted code */ ROM_START( arabfgtu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14608.ic8", 0x000000, 0x020000, CRC(cd5efba9) SHA1(a7daf8e95d31359753c984c447e93d40f43a179d) ) ROM_LOAD16_BYTE_x2( "epr-14592.ic18", 0x100000, 0x040000, CRC(f7dff316) SHA1(338690a1404dde6e7e66067f23605a247c7d0f5b) ) ROM_LOAD16_BYTE_x2( "epr-14591.ic9", 0x100001, 0x040000, CRC(bbd940fb) SHA1(99c17aba890935eaf7ea468492da03103288eb1b) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x8( "epr-14596.ic36", 0x100000, 0x020000, CRC(bd01faec) SHA1(c909dcb8ef2672c4b0060d911d295e445ca311eb) ) ROM_LOAD( "mpr-14595f.ic35", 0x200000, 0x100000, CRC(5173d1af) SHA1(dccda644488d0c561c8ff7fa9619bd9504d8d9c6) ) ROM_LOAD( "mpr-14594f.ic34", 0x300000, 0x100000, CRC(01777645) SHA1(7bcbe7687bd80b94bd3b2b3099cdd036bf7e0cd3) ) @@ -2747,11 +3030,11 @@ ROM_START( arabfgtu ) ROM_LOAD( "epr-14468-01.u3", 0x00000, 0x10000, CRC(c3c591e4) SHA1(53e48066e85b61d0c456618d14334a509b354cb3) ) ROM_RELOAD( 0xf0000, 0x10000) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2767,12 +3050,12 @@ ROM_END protected via a custom V25 with encrypted code */ ROM_START( arabfgtj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14597.ic8", 0x000000, 0x020000, CRC(7a6fe222) SHA1(f730e9d44ad20dbaa59f6311a077c889e0aec8e4) ) ROM_LOAD16_BYTE_x2( "epr-14592.ic18", 0x100000, 0x040000, CRC(f7dff316) SHA1(338690a1404dde6e7e66067f23605a247c7d0f5b) ) ROM_LOAD16_BYTE_x2( "epr-14591.ic9", 0x100001, 0x040000, CRC(bbd940fb) SHA1(99c17aba890935eaf7ea468492da03103288eb1b) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x8( "epr-14596.ic36", 0x100000, 0x020000, CRC(bd01faec) SHA1(c909dcb8ef2672c4b0060d911d295e445ca311eb) ) ROM_LOAD( "mpr-14595f.ic35", 0x200000, 0x100000, CRC(5173d1af) SHA1(dccda644488d0c561c8ff7fa9619bd9504d8d9c6) ) ROM_LOAD( "mpr-14594f.ic34", 0x300000, 0x100000, CRC(01777645) SHA1(7bcbe7687bd80b94bd3b2b3099cdd036bf7e0cd3) ) @@ -2782,11 +3065,11 @@ ROM_START( arabfgtj ) ROM_LOAD( "epr-14468-01.u3", 0x00000, 0x10000, CRC(c3c591e4) SHA1(53e48066e85b61d0c456618d14334a509b354cb3) ) ROM_RELOAD( 0xf0000, 0x10000) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(94f1cf10) SHA1(34ec86487bcb6726c025149c319f00a854eb7a1d) ) ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(010656f3) SHA1(31619c022cba4f250ce174f186d3e34444f60faf) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14600f.ic32", 0x000000, 0x200000, CRC(e860988a) SHA1(328581877c0890519c854f75f0976b0e9c4560f8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14602.ic30", 0x000002, 0x200000, CRC(64524e4d) SHA1(86246185ab5ab638a73991c9e3aeb07c6d51be4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14604.ic28", 0x000004, 0x200000, CRC(5f8d5167) SHA1(1b08495e5a4cc2530c2895e47abd0e0b75496c68) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2805,22 +3088,22 @@ ROM_END protected via FD1149 317-0212 */ ROM_START( brival ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-15722.ic8", 0x000000, 0x020000, CRC(138141c0) SHA1(aca2a46ee1008e91c65a09e79c76d5175e7df5e8) ) ROM_LOAD16_BYTE( "epr-15723.ic18", 0x100000, 0x080000, CRC(4ff40d39) SHA1(b33a656f976ec7a1a2268e7b9a81d5b84f3d9ca3) ) ROM_LOAD16_BYTE( "epr-15724.ic9", 0x100001, 0x080000, CRC(3ff8a052) SHA1(f484a8e15a022f9ff290e662ab27f96f9f0ad24e) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15725.ic36", 0x100000, 0x020000, CRC(ea1407d7) SHA1(68b571341f032278e87a38739ba8084b7a6062d3) ) ROM_LOAD( "mpr-15627.ic35", 0x200000, 0x100000, CRC(8a8388c5) SHA1(7ee03feb975cc576a3d8651fd41976ca87d60894) ) ROM_LOAD( "mpr-15626.ic34", 0x300000, 0x100000, CRC(83306d1e) SHA1(feb08902b51c0013d9417832cdf198e36cdfc28c) ) ROM_LOAD( "mpr-15625.ic24", 0x400000, 0x100000, CRC(3ce82932) SHA1(f2107bc2591f46a51c9f0d706933b1ae69db91f9) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15629.ic14", 0x000000, 0x200000, CRC(2c8dd96d) SHA1(4a42a30485c19eb4f4a9d518a3dff3ae11911d01) ) ROM_LOAD16_BYTE( "mpr-15628.ic5", 0x000001, 0x200000, CRC(58d4ca40) SHA1(b1633acc803bba7e8283a9663b49abeda662a74d) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15637.ic32", 0x000000, 0x200000, CRC(b6cf2f05) SHA1(a308d40ce5165e03fccf7fcd615ee111f7840fdc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15635.ic30", 0x000002, 0x200000, CRC(70f2eb2b) SHA1(9868c8b0dd8ce810a0e32f51e702eee7e1c9a967) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15633.ic28", 0x000004, 0x200000, CRC(005dfed5) SHA1(f555620d75d3886a890307be9df9c0879bcda695) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2836,12 +3119,12 @@ ROM_END protected via FD1149 317-0212 */ ROM_START( brivalj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-15720.ic8", 0x000000, 0x020000, CRC(0d182d78) SHA1(53e9e5898869ea4a354dc3e9a78d8b8e9a7274c9) ) ROM_LOAD16_BYTE( "epr-15723.ic18", 0x100000, 0x080000, CRC(4ff40d39) SHA1(b33a656f976ec7a1a2268e7b9a81d5b84f3d9ca3) ) ROM_LOAD16_BYTE( "epr-15724.ic9", 0x100001, 0x080000, CRC(3ff8a052) SHA1(f484a8e15a022f9ff290e662ab27f96f9f0ad24e) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15725.ic36", 0x100000, 0x020000, CRC(ea1407d7) SHA1(68b571341f032278e87a38739ba8084b7a6062d3) ) ROM_LOAD( "mpr-15627.ic35", 0x200000, 0x100000, CRC(8a8388c5) SHA1(7ee03feb975cc576a3d8651fd41976ca87d60894) ) ROM_LOAD( "mpr-15626.ic34", 0x300000, 0x100000, CRC(83306d1e) SHA1(feb08902b51c0013d9417832cdf198e36cdfc28c) ) @@ -2851,11 +3134,11 @@ ROM_START( brivalj ) in the parent set, but Sega did change the part numbers so they might be correct, the others are suspicious, the changes are very similar but the part numbers haven't changed. We really need a 3rd board to verify */ - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14599f.ic14", 0x000000, 0x200000, CRC(1de17e83) SHA1(04ee14b863f93b42a5bd1b6da71cff54ef11d4b7) ) /* Rom # matches tile rom # from Arabian Fight ??? */ ROM_LOAD16_BYTE( "mpr-14598f.ic5", 0x000001, 0x200000, CRC(cafb0de9) SHA1(94c6bfc7a4081dee373e9466a7b6f80889696087) ) /* Rom # matchrs tile rom # from Arabian Fight ??? */ - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "brivalj_mp15637.32", 0x000000, 0x200000, CRC(f39844c0) SHA1(c48dc8cccdd9d3756cf99a983c6a89ed43fcda22) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "brivalj_mp15635.30", 0x000002, 0x200000, CRC(263cf6d1) SHA1(7accd214502fd050edc0901c9929d6069dae4d00) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "brivalj_mp15633.28", 0x000004, 0x200000, CRC(44e9a88b) SHA1(57a930b9c3b83c889df54de60c90f847c2dcb614) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2874,20 +3157,20 @@ ROM_END protected via FD1149 317-0204 */ ROM_START( darkedge ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-15246.ic8", 0x000000, 0x080000, CRC(c0bdceeb) SHA1(9cf670cf9a8691f259c75c1d9c6cb14e8a70bb72) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15243.ic36", 0x100000, 0x020000, CRC(08ca5f11) SHA1(c2c48d2f02770941a93794f82cb407d6264904d2) ) ROM_LOAD( "mpr-15242.ic35", 0x200000, 0x100000, CRC(ffb7d917) SHA1(bfeae1a2bd7250edb695b7034f6b1f851f6fd48a) ) ROM_LOAD( "mpr-15241.ic34", 0x300000, 0x100000, CRC(8eccc4fe) SHA1(119724b9b6d2b51ad4f065ebf74d200960090e68) ) ROM_LOAD( "mpr-15240.ic24", 0x400000, 0x100000, CRC(867d59e8) SHA1(fb1c0d26dbb1bde9d8bc86419cd911b8e37bf923) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15248.ic14", 0x000000, 0x080000, CRC(185b308b) SHA1(a49c1b752b3c4355560e0cd712fb9a096140e37b) ) ROM_LOAD16_BYTE( "mpr-15247.ic5", 0x000001, 0x080000, CRC(be21548c) SHA1(2e315aadc2a0b781c3ee3fe71c75eb1f43514eff) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15249.ic32", 0x000000, 0x200000, CRC(2b4371a8) SHA1(47f448bfbc068f2d0cdedd81bcd280823d5758a3) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15251.ic30", 0x000002, 0x200000, CRC(efe2d689) SHA1(af22153ea3afdde3732f881087c642170f91d745) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15253.ic28", 0x000004, 0x200000, CRC(8356ed01) SHA1(a28747813807361c7d0c722a94e194caea8bfab6) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2903,20 +3186,20 @@ ROM_END protected via FD1149 317-0204 */ ROM_START( darkedgej ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-15244.ic8", 0x000000, 0x080000, CRC(0db138cb) SHA1(79ccb754e0d816b395b536a6d9c5a6e93168a913) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15243.ic36", 0x100000, 0x020000, CRC(08ca5f11) SHA1(c2c48d2f02770941a93794f82cb407d6264904d2) ) ROM_LOAD( "mpr-15242.ic35", 0x200000, 0x100000, CRC(ffb7d917) SHA1(bfeae1a2bd7250edb695b7034f6b1f851f6fd48a) ) ROM_LOAD( "mpr-15241.ic34", 0x300000, 0x100000, CRC(8eccc4fe) SHA1(119724b9b6d2b51ad4f065ebf74d200960090e68) ) ROM_LOAD( "mpr-15240.ic24", 0x400000, 0x100000, CRC(867d59e8) SHA1(fb1c0d26dbb1bde9d8bc86419cd911b8e37bf923) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15248.ic14", 0x000000, 0x080000, CRC(185b308b) SHA1(a49c1b752b3c4355560e0cd712fb9a096140e37b) ) ROM_LOAD16_BYTE( "mpr-15247.ic5", 0x000001, 0x080000, CRC(be21548c) SHA1(2e315aadc2a0b781c3ee3fe71c75eb1f43514eff) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15249.ic32", 0x000000, 0x200000, CRC(2b4371a8) SHA1(47f448bfbc068f2d0cdedd81bcd280823d5758a3) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15251.ic30", 0x000002, 0x200000, CRC(efe2d689) SHA1(af22153ea3afdde3732f881087c642170f91d745) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15253.ic28", 0x000004, 0x200000, CRC(8356ed01) SHA1(a28747813807361c7d0c722a94e194caea8bfab6) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2935,21 +3218,21 @@ ROM_END protected via FD1149 317-0215/0217 */ ROM_START( dbzvrvs ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD( "16543", 0x000000, 0x080000, CRC(7b9bc6f5) SHA1(556fd8471bf471e41fc6a50471c2be1bd6b98697) ) ROM_LOAD( "16542.a", 0x080000, 0x080000, CRC(6449ab22) SHA1(03e6cdacf77f2ff80dd6798094deac5486f2c840) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "16541", 0x100000, 0x040000, CRC(1d61d836) SHA1(c6b1b54d41d2650abeaf69a31aa76c4462531880) ) ROM_LOAD( "16540", 0x200000, 0x100000, CRC(b6f9bb43) SHA1(823f29a2fc4b9315e8c58616dbd095d45d366c8b) ) ROM_LOAD( "16539", 0x300000, 0x100000, CRC(38c26418) SHA1(2442933e13c83209e904c1dec677aeda91b75290) ) ROM_LOAD( "16538", 0x400000, 0x100000, CRC(4d402c31) SHA1(2df160fd7e70f3d7b52fef2a2082e68966fd1535) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "16545", 0x000000, 0x100000, CRC(51748bac) SHA1(b1cae16b62a8d29117c0adb140eb09c1092f6c37) ) ROM_LOAD16_BYTE( "16544", 0x000001, 0x100000, CRC(f6c93dfc) SHA1(a006cedb7d0151ccc8d22e6588b1c39e099da182) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "16546", 0x000000, 0x200000, CRC(96f4be31) SHA1(ce3281630180d91de7850e9b1062382817fe0b1d) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "16548", 0x000002, 0x200000, CRC(00377f59) SHA1(cf0f808d7730f334c5ac80d3171fa457be9ac88e) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "16550", 0x000004, 0x200000, CRC(168e8966) SHA1(a18ec30f1358b09bcde6d8d2dbe0a82bea3bdae9) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -2975,24 +3258,24 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( f1en ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14452a.ic6", 0x000000, 0x020000, CRC(b5b4a9d9) SHA1(6699c15dc1155c3cee33a06d320acbff0ab5ad11) ) ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3001,6 +3284,34 @@ ROM_START( f1en ) ROMX_LOAD( "mpr-14365", 0x000005, 0x080000, CRC(36913790) SHA1(4a447cffb44b023fe1441277db1e411d4cd119eb) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14364", 0x000006, 0x080000, CRC(0fa12ecd) SHA1(6a34c7718edffbeddded8786e11cac181b485ebd) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14363", 0x000007, 0x080000, CRC(f3427a56) SHA1(6a99d7432dfff35470ddcca5cfde36689a77e706) , ROM_SKIP(7) ) + + ROM_REGION( 0x200000, "slavepcb:maincpu", 0 ) /* v60 code + data */ + ROM_LOAD_x8( "epr-14452a.ic6", 0x000000, 0x020000, CRC(b5b4a9d9) SHA1(6699c15dc1155c3cee33a06d320acbff0ab5ad11) ) + ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) + ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) + + ROM_REGION( 0x500000, "slavepcb:soundcpu", 0 ) /* sound CPU */ + ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) + ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) + ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) + ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) + + ROM_REGION( 0x100000, "slavepcb:gfx1", 0 ) /* tiles */ + ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) + ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) + ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) + ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) + + ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ + ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14367", 0x000003, 0x080000, CRC(77bb9003) SHA1(6370fdeab4967976840d752577cd860b9ce8efca) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14366", 0x000004, 0x080000, CRC(21078e83) SHA1(f35f643c28aad3bf18cb9906b114c4f49b7b4cd1) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14365", 0x000005, 0x080000, CRC(36913790) SHA1(4a447cffb44b023fe1441277db1e411d4cd119eb) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14364", 0x000006, 0x080000, CRC(0fa12ecd) SHA1(6a34c7718edffbeddded8786e11cac181b485ebd) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14363", 0x000007, 0x080000, CRC(f3427a56) SHA1(6a99d7432dfff35470ddcca5cfde36689a77e706) , ROM_SKIP(7) ) + ROM_END /************************************************************************************************************************** @@ -3015,24 +3326,51 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( f1enu ) // ROM PCB number is 834-8439-04 - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14451a.ic6", 0x000000, 0x020000, CRC(e17259c9) SHA1(be789b7630b7265e19ea2c80f603caff9cec37f8) ) ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14367", 0x000003, 0x080000, CRC(77bb9003) SHA1(6370fdeab4967976840d752577cd860b9ce8efca) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14366", 0x000004, 0x080000, CRC(21078e83) SHA1(f35f643c28aad3bf18cb9906b114c4f49b7b4cd1) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14365", 0x000005, 0x080000, CRC(36913790) SHA1(4a447cffb44b023fe1441277db1e411d4cd119eb) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14364", 0x000006, 0x080000, CRC(0fa12ecd) SHA1(6a34c7718edffbeddded8786e11cac181b485ebd) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14363", 0x000007, 0x080000, CRC(f3427a56) SHA1(6a99d7432dfff35470ddcca5cfde36689a77e706) , ROM_SKIP(7) ) + + ROM_REGION( 0x200000, "slavepcb:maincpu", 0 ) /* v60 code + data */ + ROM_LOAD_x8( "epr-14451a.ic6", 0x000000, 0x020000, CRC(e17259c9) SHA1(be789b7630b7265e19ea2c80f603caff9cec37f8) ) + ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) + ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) + + ROM_REGION( 0x500000, "slavepcb:soundcpu", 0 ) /* sound CPU */ + ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) + ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) + ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) + ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) + + ROM_REGION( 0x100000, "slavepcb:gfx1", 0 ) /* tiles */ + ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) + ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) + ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) + ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) + + ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3055,24 +3393,51 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( f1enj ) // ROM PCB number is 834-8439-04 - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ + ROM_LOAD_x8( "epr-14450a.ic6", 0x000000, 0x020000, CRC(10f62723) SHA1(68fcd6655798f348678e3cc8857c6d1cb46e0987) ) + ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) + ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) + + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ + ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) + ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) + ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) + ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) + + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ + ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) + ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) + ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) + ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) + + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ + ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14367", 0x000003, 0x080000, CRC(77bb9003) SHA1(6370fdeab4967976840d752577cd860b9ce8efca) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14366", 0x000004, 0x080000, CRC(21078e83) SHA1(f35f643c28aad3bf18cb9906b114c4f49b7b4cd1) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14365", 0x000005, 0x080000, CRC(36913790) SHA1(4a447cffb44b023fe1441277db1e411d4cd119eb) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14364", 0x000006, 0x080000, CRC(0fa12ecd) SHA1(6a34c7718edffbeddded8786e11cac181b485ebd) , ROM_SKIP(7) ) + ROMX_LOAD( "mpr-14363", 0x000007, 0x080000, CRC(f3427a56) SHA1(6a99d7432dfff35470ddcca5cfde36689a77e706) , ROM_SKIP(7) ) + + ROM_REGION( 0x200000, "slavepcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14450a.ic6", 0x000000, 0x020000, CRC(10f62723) SHA1(68fcd6655798f348678e3cc8857c6d1cb46e0987) ) ROM_LOAD16_BYTE_x2( "epr-14445.ic14", 0x100000, 0x040000, CRC(d06261ab) SHA1(6e1c4ce4e49a142fd5b1ecac98145960d7afd567) ) ROM_LOAD16_BYTE_x2( "epr-14444.ic7", 0x100001, 0x040000, CRC(07724354) SHA1(9d7f64a80553c4ae0e9cf716478fd5c4b8277470) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "slavepcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14449.ic35", 0x100000, 0x020000, CRC(2d29699c) SHA1(cae02e5533a0edd3b3b4a54a1a43321285e06416) ) ROM_LOAD_x2( "epr-14448.ic31", 0x200000, 0x080000, CRC(87ca1e8d) SHA1(739274171c13983a60d061176095645419dade49) ) ROM_LOAD_x2( "epr-14447.ic26", 0x300000, 0x080000, CRC(db1cfcbd) SHA1(c76eb2ced5571a548ad00709097dd272747127a2) ) ROM_LOAD_x2( "epr-14446.ic22", 0x400000, 0x080000, CRC(646ec2cb) SHA1(67e453f128ae227e22c68f55d0d3f5831fbeb2f9) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "slavepcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14362", 0x000000, 0x040000, CRC(fb1c4e79) SHA1(38ee23763b9e5bb62bbc54cab95041415404f0c4) ) ROM_LOAD32_BYTE( "mpr-14361", 0x000002, 0x040000, CRC(e3204bda) SHA1(34157e80edd6d685bd5a5e23b1e0130a5f3d138a) ) ROM_LOAD32_BYTE( "mpr-14360", 0x000001, 0x040000, CRC(c5e8da79) SHA1(662a6c146fe3d0b8763d845379c06d0ee6ced1ed) ) ROM_LOAD32_BYTE( "mpr-14359", 0x000003, 0x040000, CRC(70305c68) SHA1(7a6a1bf7381eba8cc1c3897497b32ca63316972a) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "slavepcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14370", 0x000000, 0x080000, CRC(fda78289) SHA1(3740affdcc738c50d07ff3e5b592bdf8a8b6be15) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14369", 0x000001, 0x080000, CRC(7765116d) SHA1(9493148aa84adc90143cf638265d4c55bfb43990) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14368", 0x000002, 0x080000, CRC(5744a30e) SHA1(98544fb234a8e93716e951d5414a490845e213c5) , ROM_SKIP(7) ) @@ -3091,23 +3456,23 @@ ROM_END protected via FD1149 317-0210 */ ROM_START( f1lap ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-15598.ic17", 0x000000, 0x020000, CRC(9feab7cd) SHA1(2a14c0df39e7bdae12a34679fabc6abb7618e27d) ) ROM_LOAD_x4( "epr-15611.ic8", 0x080000, 0x020000, CRC(0d8c97c2) SHA1(863c606c58faddc2bdaeb69f9079266155ff9a96) ) ROM_LOAD16_BYTE_x2( "epr-15596.ic18", 0x100000, 0x040000, CRC(20e92909) SHA1(b974c79e11bfbd1cee61f9041cf79971fd96db3a) ) ROM_LOAD16_BYTE_x2( "epr-15597.ic9", 0x100001, 0x040000, CRC(cd1ccddb) SHA1(ff0371a8010141d1ab81b5eba555ae7c64e5da37) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15592.ic36", 0x100000, 0x020000, CRC(7c055cc8) SHA1(169beb83dfae86dd408aa92b3c214b8f607825fc) ) ROM_LOAD( "mpr-15593.ic35", 0x200000, 0x100000, CRC(e7300441) SHA1(33c264f0e6326689ba75026932c0932868e83b25) ) ROM_LOAD( "mpr-15594.ic34", 0x300000, 0x100000, CRC(7f4ca3bb) SHA1(dc53a1857d619e574acb4c0587a6ba844df2d283) ) ROM_LOAD( "mpr-15595.ic24", 0x400000, 0x100000, CRC(3fbdad9a) SHA1(573ea2242f79c7d3b6bf0e6745f6b07a621834ac) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15608.ic14", 0x000000, 0x200000, CRC(64462c69) SHA1(9501e83c52e3e16f73b94cef975b5a31b2ee5476) ) ROM_LOAD16_BYTE( "mpr-15609.ic5", 0x000001, 0x200000, CRC(d586e455) SHA1(aea190d31c590216eb19766ba749b1e9b710bdce) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15600.ic32", 0x000000, 0x200000, CRC(d2698d23) SHA1(996fbcc1d0814e6f14fa7e4870ece077ecda54e6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15602.ic30", 0x000002, 0x200000, CRC(1674764d) SHA1(bc39757a5d25df1a088f874ca2442854eb551e48) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15604.ic28", 0x000004, 0x200000, CRC(1552bbb9) SHA1(77edd3f9d8dec87fa0445d264309e6164eba9313) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3126,23 +3491,23 @@ ROM_END protected via FD1149 317-0210 */ ROM_START( f1lapj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-15598.ic17", 0x000000, 0x020000, CRC(9feab7cd) SHA1(2a14c0df39e7bdae12a34679fabc6abb7618e27d) ) ROM_LOAD_x4( "epr-15599.ic8", 0x080000, 0x020000, CRC(5c5ac112) SHA1(2c071946e33f0700a832c7aad36f639acd35f555) ) ROM_LOAD16_BYTE_x2( "epr-15596.ic18", 0x100000, 0x040000, CRC(20e92909) SHA1(b974c79e11bfbd1cee61f9041cf79971fd96db3a) ) ROM_LOAD16_BYTE_x2( "epr-15597.ic9", 0x100001, 0x040000, CRC(cd1ccddb) SHA1(ff0371a8010141d1ab81b5eba555ae7c64e5da37) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-15592.ic36", 0x100000, 0x020000, CRC(7c055cc8) SHA1(169beb83dfae86dd408aa92b3c214b8f607825fc) ) ROM_LOAD( "mpr-15593.ic35", 0x200000, 0x100000, CRC(e7300441) SHA1(33c264f0e6326689ba75026932c0932868e83b25) ) ROM_LOAD( "mpr-15594.ic34", 0x300000, 0x100000, CRC(7f4ca3bb) SHA1(dc53a1857d619e574acb4c0587a6ba844df2d283) ) ROM_LOAD( "mpr-15595.ic24", 0x400000, 0x100000, CRC(3fbdad9a) SHA1(573ea2242f79c7d3b6bf0e6745f6b07a621834ac) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15608.ic14", 0x000000, 0x200000, CRC(64462c69) SHA1(9501e83c52e3e16f73b94cef975b5a31b2ee5476) ) ROM_LOAD16_BYTE( "mpr-15609.ic5", 0x000001, 0x200000, CRC(d586e455) SHA1(aea190d31c590216eb19766ba749b1e9b710bdce) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15600.ic32", 0x000000, 0x200000, CRC(d2698d23) SHA1(996fbcc1d0814e6f14fa7e4870ece077ecda54e6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15602.ic30", 0x000002, 0x200000, CRC(1674764d) SHA1(bc39757a5d25df1a088f874ca2442854eb551e48) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15604.ic28", 0x000004, 0x200000, CRC(1552bbb9) SHA1(77edd3f9d8dec87fa0445d264309e6164eba9313) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3164,26 +3529,26 @@ ROM_END protected via a custom V25 with encrypted code */ ROM_START( ga2 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14961b.ic17", 0x000000, 0x020000, CRC(d9cd8885) SHA1(dc9d1f01770bd23ba5959e300badbc5093a149bc) ) ROM_LOAD_x4( "epr-14958b.ic8", 0x080000, 0x020000, CRC(0be324a3) SHA1(5e5f457548906453eaa8d326c353b47353eab73d) ) ROM_LOAD16_BYTE_x2( "epr-15148b.ic18", 0x100000, 0x040000, CRC(c477a9fd) SHA1(a9d60f801c12fd067e5ad1801a92c84edd13bd08) ) ROM_LOAD16_BYTE_x2( "epr-15147b.ic9", 0x100001, 0x040000, CRC(1bb676ea) SHA1(125ffd13204f48be23e20b281c42c2307888c40b) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x16( "epr-14945.ic36", 0x100000, 0x010000, CRC(4781d4cb) SHA1(bd1b774b3cd0c3e0290c55e426f66d6820d21d0f) ) ROM_LOAD( "mpr-14944.ic35", 0x200000, 0x100000, CRC(fd4d4b86) SHA1(e14b9cd6004bf9ecd902e37b433b828241361b46) ) ROM_LOAD( "mpr-14943.ic34", 0x300000, 0x100000, CRC(24d40333) SHA1(38faf8f3eac317a163e93bd2247fe98189b13d2d) ) ROM_LOAD( "mpr-14942.ic24", 0x400000, 0x100000, CRC(a89b0e90) SHA1(e14c62418eb7f9a2deb2a6dcf635bedc1c73c253) ) - ROM_REGION( 0x100000, "mcu", 0 ) /* Protection CPU */ + ROM_REGION( 0x100000, "mainpcb:mcu", 0 ) /* Protection CPU */ ROM_LOAD( "epr-14468-02.u3", 0x00000, 0x10000, CRC(77634daa) SHA1(339169d164b9ed7dc3787b084d33effdc8e9efc1) ) /* located on separate sub board */ - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3204,26 +3569,26 @@ Sub board: 834-8529-02 */ ROM_START( ga2u ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14960a.ic17", 0x000000, 0x020000, CRC(87182fea) SHA1(bb669ea7091f1ea34589a565490effa934ca44a3) ) ROM_LOAD_x4( "epr-14957a.ic8", 0x080000, 0x020000, CRC(ab787cf4) SHA1(7e19bb3e5d587b5009efc9f9fa52aecaef0eedc4) ) ROM_LOAD16_BYTE_x2( "epr-15146a.ic18", 0x100000, 0x040000, CRC(7293d5c3) SHA1(535a8b4b4a05546b321cee8de6733edfc1f71589) ) ROM_LOAD16_BYTE_x2( "epr-15145a.ic9", 0x100001, 0x040000, CRC(0da61782) SHA1(f0302d747e5d55663095bb38732af423104c33ea) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x16( "epr-14945.ic36", 0x100000, 0x010000, CRC(4781d4cb) SHA1(bd1b774b3cd0c3e0290c55e426f66d6820d21d0f) ) ROM_LOAD( "mpr-14944.ic35", 0x200000, 0x100000, CRC(fd4d4b86) SHA1(e14b9cd6004bf9ecd902e37b433b828241361b46) ) ROM_LOAD( "mpr-14943.ic34", 0x300000, 0x100000, CRC(24d40333) SHA1(38faf8f3eac317a163e93bd2247fe98189b13d2d) ) ROM_LOAD( "mpr-14942.ic24", 0x400000, 0x100000, CRC(a89b0e90) SHA1(e14c62418eb7f9a2deb2a6dcf635bedc1c73c253) ) - ROM_REGION( 0x100000, "mcu", 0 ) /* Protection CPU */ + ROM_REGION( 0x100000, "mainpcb:mcu", 0 ) /* Protection CPU */ ROM_LOAD( "epr-14468-02.u3", 0x00000, 0x10000, CRC(77634daa) SHA1(339169d164b9ed7dc3787b084d33effdc8e9efc1) ) /* located on separate sub board */ - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3239,26 +3604,26 @@ ROM_END protected via a custom V25 with encrypted code */ ROM_START( ga2j ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14956.ic17", 0x000000, 0x020000, CRC(f1929177) SHA1(7dc39c40eff9fb46c2e51d1e83478cd6970e3951) ) ROM_LOAD_x4( "epr-14946.ic8", 0x080000, 0x020000, CRC(eacafe94) SHA1(d41a7e1ee2df9e053b559be0a1a6d2ae520fd3e4) ) ROM_LOAD16_BYTE_x2( "epr-14941.ic18", 0x100000, 0x040000, CRC(0ffb8203) SHA1(b27dce634d203af8abb6ddfb656d4c48eb54af01) ) ROM_LOAD16_BYTE_x2( "epr-14940.ic9", 0x100001, 0x040000, CRC(3b5b3084) SHA1(ea17f6b7fd413fe3808f822cec84c993c9b75aa2) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU + banks */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU + banks */ ROM_LOAD_x16( "epr-14945.ic36", 0x100000, 0x010000, CRC(4781d4cb) SHA1(bd1b774b3cd0c3e0290c55e426f66d6820d21d0f) ) ROM_LOAD( "mpr-14944.ic35", 0x200000, 0x100000, CRC(fd4d4b86) SHA1(e14b9cd6004bf9ecd902e37b433b828241361b46) ) ROM_LOAD( "mpr-14943.ic34", 0x300000, 0x100000, CRC(24d40333) SHA1(38faf8f3eac317a163e93bd2247fe98189b13d2d) ) ROM_LOAD( "mpr-14942.ic24", 0x400000, 0x100000, CRC(a89b0e90) SHA1(e14c62418eb7f9a2deb2a6dcf635bedc1c73c253) ) - ROM_REGION( 0x100000, "mcu", 0 ) /* Protection CPU */ + ROM_REGION( 0x100000, "mainpcb:mcu", 0 ) /* Protection CPU */ ROM_LOAD( "epr-14468-02.u3", 0x00000, 0x10000, CRC(77634daa) SHA1(339169d164b9ed7dc3787b084d33effdc8e9efc1) ) /* located on separate sub board */ - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-14948.ic14", 0x000000, 0x200000, CRC(75050d4a) SHA1(51d6bc9935abcf30af438e69c2cf4e09f57a803f) ) ROM_LOAD16_BYTE( "mpr-14947.ic5", 0x000001, 0x200000, CRC(b53e62f4) SHA1(5aa0f198e6eb070b77b0d180d30c0228a9bc691e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14949.ic32", 0x000000, 0x200000, CRC(152c716c) SHA1(448d16ea036b66e886119c00af543dfa5e53fd84) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14951.ic30", 0x000002, 0x200000, CRC(fdb1a534) SHA1(3126b595bf69bf9952fedf8f9c6743eb10489dc6) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-14953.ic28", 0x000004, 0x200000, CRC(33bd1c15) SHA1(4e16562e3357d4db54b20543073e8f1fd6f74b1f) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3277,19 +3642,19 @@ ROM_END not protected */ ROM_START( harddunk ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x2( "epr-16512.ic37", 0x000000, 0x40000, CRC(1a7de085) SHA1(2e0dac1f7715089b7f6b1035c859ffe2d674932f) ) /* the following is the same as 16509.ic40 but with a different name, unusual for Sega */ ROM_LOAD32_WORD_x2( "epr-16513.ic40", 0x000002, 0x40000, CRC(603dee75) SHA1(32ae964a4b57d470b4900cca6e06329f1a75a6e6) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16505.ic31", 0x100000, 0x20000, CRC(eeb90a07) SHA1(d1c2132897994b2e85fd5a97222b9fcd61bc421e) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16503.ic3", 0x000000, 0x080000, CRC(ac1b6f1a) SHA1(56482931adf7fe551acf796b74cd8af3773d4fef) ) ROM_LOAD16_BYTE( "mpr-16504.ic11", 0x000001, 0x080000, CRC(7c61fcd8) SHA1(ca4354f90fada752bf11ee22a7798a8aa22b1c61) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16495.ic14", 0x000000, 0x200000, CRC(6e5f26be) SHA1(146761072bbed08f4a9df8a474b34fab61afaa4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16497.ic15", 0x000002, 0x200000, CRC(42ab5859) SHA1(f50c51eb81186aec5f747ecab4c5c928f8701afc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16499.ic10", 0x000004, 0x200000, CRC(a290ea36) SHA1(2503b44174f23a9d323caab86553977d1d6d9c94) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3299,7 +3664,7 @@ ROM_START( harddunk ) ROMX_LOAD( "mpr-16500.ic18", 0x800004, 0x200000, CRC(452c0be3) SHA1(af87ce4618bae2d791c1baed34ba7f853af664ff) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16502.ic41", 0x800006, 0x200000, CRC(ffc3147e) SHA1(12d882dec3098674d27058a8009e8778555f477a) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-16506.1", 0x000000, 0x200000, CRC(e779f5ed) SHA1(462d1bbe8bb12a0c5a6d6c613c720b26ec21cb25) ) ROM_LOAD( "mpr-16507.2", 0x200000, 0x200000, CRC(31e068d3) SHA1(9ac88b15af441fb3b31ce759c565b60a09039571) ) ROM_END @@ -3309,18 +3674,18 @@ ROM_END not protected */ ROM_START( harddunkj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x2( "epr-16508.ic37", 0x000000, 0x40000, CRC(b3713be5) SHA1(8123638a838e41fcc0d32e14382421b521eff94f) ) ROM_LOAD32_WORD_x2( "epr-16509.ic40", 0x000002, 0x40000, CRC(603dee75) SHA1(32ae964a4b57d470b4900cca6e06329f1a75a6e6) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16505.ic31", 0x100000, 0x20000, CRC(eeb90a07) SHA1(d1c2132897994b2e85fd5a97222b9fcd61bc421e) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16503.ic3", 0x000000, 0x080000, CRC(ac1b6f1a) SHA1(56482931adf7fe551acf796b74cd8af3773d4fef) ) ROM_LOAD16_BYTE( "mpr-16504.ic11", 0x000001, 0x080000, CRC(7c61fcd8) SHA1(ca4354f90fada752bf11ee22a7798a8aa22b1c61) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16495.ic14", 0x000000, 0x200000, CRC(6e5f26be) SHA1(146761072bbed08f4a9df8a474b34fab61afaa4f) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16497.ic15", 0x000002, 0x200000, CRC(42ab5859) SHA1(f50c51eb81186aec5f747ecab4c5c928f8701afc) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16499.ic10", 0x000004, 0x200000, CRC(a290ea36) SHA1(2503b44174f23a9d323caab86553977d1d6d9c94) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3330,7 +3695,7 @@ ROM_START( harddunkj ) ROMX_LOAD( "mpr-16500.ic18", 0x800004, 0x200000, CRC(452c0be3) SHA1(af87ce4618bae2d791c1baed34ba7f853af664ff) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16502.ic41", 0x800006, 0x200000, CRC(ffc3147e) SHA1(12d882dec3098674d27058a8009e8778555f477a) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-16506.ic1", 0x000000, 0x200000, CRC(e779f5ed) SHA1(462d1bbe8bb12a0c5a6d6c613c720b26ec21cb25) ) ROM_LOAD( "mpr-16507.ic2", 0x200000, 0x200000, CRC(31e068d3) SHA1(9ac88b15af441fb3b31ce759c565b60a09039571) ) ROM_END @@ -3346,22 +3711,22 @@ Rom board: 834-8888-01 */ ROM_START( holo ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14977a", 0x000000, 0x020000, CRC(e0d7e288) SHA1(3126041ba73f21fac0207bf5c63230c61180f564) ) ROM_LOAD_x4( "epr-14976a", 0x080000, 0x020000, CRC(e56f13be) SHA1(3d9e7add8feaa35c4c2e8bda84ae251087bd5e40) ) ROM_LOAD16_BYTE_x4( "epr-15011", 0x100000, 0x020000, CRC(b9f59f59) SHA1(f8c91fa877cf53153bec3d7850eab38227cc18ba) ) ROM_LOAD16_BYTE_x4( "epr-15010", 0x100001, 0x020000, CRC(0c09c57b) SHA1(028a9fe1c625be218ba90906308d25d69d4de4c4) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14965", 0x100000, 0x020000, CRC(3a918cfe) SHA1(f43ecbc9e774873e868bc921321541b308ea1a3c) ) ROM_LOAD( "mpr-14964", 0x200000, 0x100000, CRC(7ff581d5) SHA1(ab81bd70937319e4edc8924bdb493d5ef1ec096a) ) ROM_LOAD( "mpr-14963", 0x300000, 0x100000, CRC(0974a60e) SHA1(87d770edcee9c9e8f37d36ab28c5aa5d685ea849) ) ROM_LOAD( "mpr-14962", 0x400000, 0x100000, CRC(6b2e694e) SHA1(7874bdfd534231c7756e0e0d9fc7a3d5bdba74d3) ) - ROM_REGION( 0x000100, "gfx1", ROMREGION_ERASEFF ) /* tiles */ + ROM_REGION( 0x000100, "mainpcb:gfx1", ROMREGION_ERASEFF ) /* tiles */ /* game doesn't use bg tilemaps */ - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14973", 0x000000, 0x100000, CRC(b3c3ff6b) SHA1(94e8dbfae37a5b122ee3d471aad1f758e4a39b9e) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14972", 0x000001, 0x100000, CRC(0c161374) SHA1(413ab45deb687ecdbdc06ae98aa32ad8a0d80e0c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14971", 0x000002, 0x100000, CRC(dfcf6fdf) SHA1(417291b54010be20dd6738a70d372b580615a8bb) , ROM_SKIP(7) ) @@ -3383,22 +3748,22 @@ ROM_END A/D BD NO: 837-7536-91 */ ROM_START( jpark ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-16402a.ic8", 0x000000, 0x80000, CRC(c70db239) SHA1(fd79dfd1ce194fcc8ccb58117bc845cdfe9943b1) ) ROM_LOAD16_BYTE( "epr-16395.ic18", 0x100000, 0x80000, CRC(ac5a01d6) SHA1(df6bffdf5723cb8790a9c1c0ab271989a758bdd8) ) ROM_LOAD16_BYTE( "epr-16394.ic9", 0x100001, 0x80000, CRC(c08c3a8a) SHA1(923cf256d863656336401fa75103b42298cb3822) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16399.ic36", 0x100000, 0x040000, CRC(b09b2fe3) SHA1(bf8d646bab65fcc4ece8c2bd9a3df389e5860ed6) ) ROM_LOAD( "mpr-16398.ic35", 0x200000, 0x100000, CRC(fa710ca6) SHA1(1fd625070eef5f99d7be07606aeeff9282e32532) ) ROM_LOAD( "mpr-16397.ic34", 0x300000, 0x100000, CRC(6e96e0be) SHA1(422b783b72127b80a23043b2dd1c04f5772f436e) ) ROM_LOAD( "mpr-16396.ic24", 0x400000, 0x100000, CRC(f69a2dc4) SHA1(3f02b10976852916c58e852f3161a857784fe36b) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3419,22 +3784,22 @@ ROM_END ROM BD: 834-10545-03 */ ROM_START( jparkj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-16400a.ic8", 0x000000, 0x80000, CRC(1e03dbfe) SHA1(b7c274769ff483e687749ff20b1dc0fc38e8ef82) ) ROM_LOAD16_BYTE( "epr-16395.ic18", 0x100000, 0x80000, CRC(ac5a01d6) SHA1(df6bffdf5723cb8790a9c1c0ab271989a758bdd8) ) ROM_LOAD16_BYTE( "epr-16394.ic9", 0x100001, 0x80000, CRC(c08c3a8a) SHA1(923cf256d863656336401fa75103b42298cb3822) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16399.ic36", 0x100000, 0x040000, CRC(b09b2fe3) SHA1(bf8d646bab65fcc4ece8c2bd9a3df389e5860ed6) ) ROM_LOAD( "mpr-16398.ic35", 0x200000, 0x100000, CRC(fa710ca6) SHA1(1fd625070eef5f99d7be07606aeeff9282e32532) ) ROM_LOAD( "mpr-16397.ic34", 0x300000, 0x100000, CRC(6e96e0be) SHA1(422b783b72127b80a23043b2dd1c04f5772f436e) ) ROM_LOAD( "mpr-16396.ic24", 0x400000, 0x100000, CRC(f69a2dc4) SHA1(3f02b10976852916c58e852f3161a857784fe36b) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3455,22 +3820,22 @@ ROM_END ROM BD: 834-10545-03 */ ROM_START( jparkja ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-16400.ic8", 0x000000, 0x80000, CRC(321c3411) SHA1(c53e7ed5f2e523741a521c9cd271123ab557cc4a) ) ROM_LOAD16_BYTE( "epr-16395.ic18", 0x100000, 0x80000, CRC(ac5a01d6) SHA1(df6bffdf5723cb8790a9c1c0ab271989a758bdd8) ) ROM_LOAD16_BYTE( "epr-16394.ic9", 0x100001, 0x80000, CRC(c08c3a8a) SHA1(923cf256d863656336401fa75103b42298cb3822) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16399.ic36", 0x100000, 0x040000, CRC(b09b2fe3) SHA1(bf8d646bab65fcc4ece8c2bd9a3df389e5860ed6) ) ROM_LOAD( "mpr-16398.ic35", 0x200000, 0x100000, CRC(fa710ca6) SHA1(1fd625070eef5f99d7be07606aeeff9282e32532) ) ROM_LOAD( "mpr-16397.ic34", 0x300000, 0x100000, CRC(6e96e0be) SHA1(422b783b72127b80a23043b2dd1c04f5772f436e) ) ROM_LOAD( "mpr-16396.ic24", 0x400000, 0x100000, CRC(f69a2dc4) SHA1(3f02b10976852916c58e852f3161a857784fe36b) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3491,22 +3856,22 @@ ROM_END ROM BD: 834-10545-03 */ ROM_START( jparkjc ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "epr-16400a.ic8", 0x000000, 0x80000, CRC(1e03dbfe) SHA1(b7c274769ff483e687749ff20b1dc0fc38e8ef82) ) ROM_LOAD16_BYTE( "epr-16395.ic18", 0x100000, 0x80000, CRC(ac5a01d6) SHA1(df6bffdf5723cb8790a9c1c0ab271989a758bdd8) ) ROM_LOAD16_BYTE( "epr-16394.ic9", 0x100001, 0x80000, CRC(c08c3a8a) SHA1(923cf256d863656336401fa75103b42298cb3822) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16630.ic36", 0x100000, 0x040000, CRC(955855eb) SHA1(c7a325ba0009139c2cc263cd457dbc0d527c7582) ) ROM_LOAD( "mpr-16398.ic35", 0x200000, 0x100000, CRC(fa710ca6) SHA1(1fd625070eef5f99d7be07606aeeff9282e32532) ) ROM_LOAD( "mpr-16397.ic34", 0x300000, 0x100000, CRC(6e96e0be) SHA1(422b783b72127b80a23043b2dd1c04f5772f436e) ) ROM_LOAD( "mpr-16396.ic24", 0x400000, 0x100000, CRC(f69a2dc4) SHA1(3f02b10976852916c58e852f3161a857784fe36b) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16404.ic14", 0x000000, 0x200000, CRC(11283807) SHA1(99e465c3fc31e640740b8257a349e203f026754a) ) ROM_LOAD16_BYTE( "mpr-16403.ic5", 0x000001, 0x200000, CRC(02530a9b) SHA1(b43e1b47f74c801bfc599cbe893fb8dc13453dd0) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16405.ic32", 0x000000, 0x200000, CRC(b425f182) SHA1(66c6bd29dd3450db816b895c4c9c5208a66aae67) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16407.ic30", 0x000002, 0x200000, CRC(bc49ffd9) SHA1(a50ba7ddccfdfd7638c4041978b39c1559afbbb4) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16409.ic28", 0x000004, 0x200000, CRC(fe73660d) SHA1(ec1a3ea5303d2ccb9e327da18476969953626e1c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3529,20 +3894,20 @@ ROM_END SCSI CD board is 839-0572-01. It use a Fujitsu MB89352AP for SCSI + a Sony CXD1095Q for I/O + 8Mhz quartz */ ROM_START( kokoroj2 ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-16186.ic8", 0x000000, 0x20000, CRC(8c3afb6e) SHA1(68c3c066a943b1ea8e3bee06c7c8279b5a12e7f7) ) ROM_LOAD16_BYTE( "epr-16183.ic18", 0x100000, 0x80000, CRC(4844432f) SHA1(b127169d0f108e0b99ec81814a5c3c45bb82e0b1) ) ROM_LOAD16_BYTE( "epr-16182.ic9", 0x100001, 0x80000, CRC(a27f5f5f) SHA1(c2bbd1632bce0851cf8ab45d3ccbec1076e67f5e) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16185.ic36", 0x100000, 0x020000, CRC(afb97c4d) SHA1(f6e77d932824f93d89559a9cb3b2d678d5fc6940) ) ROM_LOAD( "mpr-16184.ic35", 0x200000, 0x080000, CRC(dbd44a85) SHA1(e7341d2ef27c580bff365b5c546da2adb72faee8) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16188.ic14", 0x000000, 0x200000, CRC(83a450ab) SHA1(1d0b45512d784ed1d82135b84c7c540f92d789f7) ) ROM_LOAD16_BYTE( "mpr-16187.ic5", 0x000001, 0x200000, CRC(98b62f8b) SHA1(eaf98efd9eac7b7c385138a8a4dbc94b0ca38df5) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16189.ic32", 0x000000, 0x200000, CRC(0937f713) SHA1(4b2b09ec8ed97794ad3824d1c57eae7f7e01379c) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16191.ic30", 0x000002, 0x200000, CRC(cfef4aaa) SHA1(bc8a252dcbdb8facdd91eda7aed0f56fe7529d15) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16193.ic28", 0x000004, 0x200000, CRC(a0706e4e) SHA1(1f36d952971c05db4190b229aa4957db3e5224f1) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3572,20 +3937,20 @@ ROM_END COMM BD. 837-8792 */ ROM_START( orunners ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x4( "epr15620.ic37", 0x000000, 0x020000, CRC(84f5ad92) SHA1(1f9cb04b42b2d450be93400d9979a7910eaf05d1) ) ROM_LOAD32_WORD_x4( "epr15621.ic40", 0x000002, 0x020000, CRC(d98b765a) SHA1(b58567e976228267a86af53de2135bc0b247a44a) ) ROM_LOAD32_WORD( "mpr15538.ic36", 0x100000, 0x080000, CRC(93958820) SHA1(e19b6f18a5707dbb64ae009d63c05eac5bac4a81) ) ROM_LOAD32_WORD( "mpr15539.ic39", 0x100002, 0x080000, CRC(219760fa) SHA1(bd62a83de9c9542f6da454a87dc4947492f65c52) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD( "epr15550.ic31", 0x100000, 0x80000, CRC(0205d2ed) SHA1(3475479e1a45fe96eefbe53842758898db7accbf) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3595,7 +3960,7 @@ ROM_START( orunners ) ROMX_LOAD( "mpr15545.ic18", 0x800004, 0x200000, CRC(53dd0235) SHA1(4aee5ae1820ff933b6bd8a54bdbf989c0bc95c1a) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15547.ic41", 0x800006, 0x200000, CRC(edcb2a43) SHA1(f0bcfcc749ca0267f85bf9838164869912944d00) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr15551.ic1", 0x000000, 0x200000, CRC(4894bc73) SHA1(351f5c03fb430fd87df915dfe3a377b5ada622c4) ) ROM_LOAD( "mpr15552.ic2", 0x200000, 0x200000, CRC(1c4b5e73) SHA1(50a8e9a200575a3522a51bf094aa0e87b90bb0a3) ) ROM_END @@ -3610,20 +3975,20 @@ ROM_END COMM BD. 837-8792 */ ROM_START( orunnersu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x4( "epr15618.ic37", 0x000000, 0x020000, CRC(25647f76) SHA1(9f882921ebb2f078350295c322b263f75812c053) ) ROM_LOAD32_WORD_x4( "epr15619.ic40", 0x000002, 0x020000, CRC(2a558f95) SHA1(616ec0a7b251da61a49b933c58895b1a4d39417a) ) ROM_LOAD32_WORD( "mpr15538.ic36", 0x100000, 0x080000, CRC(93958820) SHA1(e19b6f18a5707dbb64ae009d63c05eac5bac4a81) ) ROM_LOAD32_WORD( "mpr15539.ic39", 0x100002, 0x080000, CRC(219760fa) SHA1(bd62a83de9c9542f6da454a87dc4947492f65c52) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD( "epr15550.ic31", 0x100000, 0x80000, CRC(0205d2ed) SHA1(3475479e1a45fe96eefbe53842758898db7accbf) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3633,7 +3998,7 @@ ROM_START( orunnersu ) ROMX_LOAD( "mpr15545.ic18", 0x800004, 0x200000, CRC(53dd0235) SHA1(4aee5ae1820ff933b6bd8a54bdbf989c0bc95c1a) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15547.ic41", 0x800006, 0x200000, CRC(edcb2a43) SHA1(f0bcfcc749ca0267f85bf9838164869912944d00) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr15551.ic1", 0x000000, 0x200000, CRC(4894bc73) SHA1(351f5c03fb430fd87df915dfe3a377b5ada622c4) ) ROM_LOAD( "mpr15552.ic2", 0x200000, 0x200000, CRC(1c4b5e73) SHA1(50a8e9a200575a3522a51bf094aa0e87b90bb0a3) ) ROM_END @@ -3648,20 +4013,20 @@ ROM_END COMM BD. 837-8792 */ ROM_START( orunnersj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x4( "epr15616.ic37", 0x000000, 0x020000, CRC(fb550545) SHA1(2f2c36843b115f5417e1f2ccd4a34ebf91265190) ) /* Need to verify the EPR numbers */ ROM_LOAD32_WORD_x4( "epr15617.ic40", 0x000002, 0x020000, CRC(6bb741e0) SHA1(d92087a2c0b6de4287e569eecf9758615a85d1eb) ) /* Need to verify the EPR numbers */ ROM_LOAD32_WORD( "mpr15538.ic36", 0x100000, 0x080000, CRC(93958820) SHA1(e19b6f18a5707dbb64ae009d63c05eac5bac4a81) ) ROM_LOAD32_WORD( "mpr15539.ic39", 0x100002, 0x080000, CRC(219760fa) SHA1(bd62a83de9c9542f6da454a87dc4947492f65c52) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD( "epr15550.ic31", 0x100000, 0x80000, CRC(0205d2ed) SHA1(3475479e1a45fe96eefbe53842758898db7accbf) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr15548.ic3", 0x000000, 0x200000, CRC(b6470a66) SHA1(e1544590c02d41f62f82a4d771b893fb0f2734c7) ) ROM_LOAD16_BYTE( "mpr15549.ic11", 0x000001, 0x200000, CRC(81d12520) SHA1(1555893941e832f00ad3d0b3ad0c34a0d3a1c58a) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr15540.ic14", 0x000000, 0x200000, CRC(a10d72b4) SHA1(6d9d5e20be6721b53ce49df4d5a1bbd91f5b3aed) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15542.ic15", 0x000002, 0x200000, CRC(40952374) SHA1(c669ef52508bc2f49cf812dc86ac98fb535471fa) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15544.ic10", 0x000004, 0x200000, CRC(39e3df45) SHA1(38a7b21617b45613b05509dda388f8f7770b186c) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -3671,7 +4036,7 @@ ROM_START( orunnersj ) ROMX_LOAD( "mpr15545.ic18", 0x800004, 0x200000, CRC(53dd0235) SHA1(4aee5ae1820ff933b6bd8a54bdbf989c0bc95c1a) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr15547.ic41", 0x800006, 0x200000, CRC(edcb2a43) SHA1(f0bcfcc749ca0267f85bf9838164869912944d00) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr15551.ic1", 0x000000, 0x200000, CRC(4894bc73) SHA1(351f5c03fb430fd87df915dfe3a377b5ada622c4) ) ROM_LOAD( "mpr15552.ic2", 0x200000, 0x200000, CRC(1c4b5e73) SHA1(50a8e9a200575a3522a51bf094aa0e87b90bb0a3) ) ROM_END @@ -3705,24 +4070,24 @@ Export: EPR-13693.ic21 (dumped) Japanese version is undumped. There is likely a Japanese specific sound rom at IC20 (EPR-13524.ic20 ??) */ ROM_START( radm ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-13693.ic21", 0x000000, 0x020000, CRC(3f09a211) SHA1(e0e011d7069745e9bf0395bc1375d0f8b9c46dab) ) ROM_LOAD16_BYTE( "epr-13525.ic37", 0x100000, 0x080000, CRC(62ad83a0) SHA1(b537176ebca15d91db04d5d7ab36aa967d41288e) ) ROM_LOAD16_BYTE( "epr-13526.ic38", 0x100001, 0x080000, CRC(59ea372a) SHA1(e7a5d59586652c59c23e07e0a99ecc740fb6144d) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-13527.ic9", 0x100000, 0x020000, CRC(a2e3fbbe) SHA1(2787bbef696ab3f2b7855ac991867837d3de54cd) ) ROM_LOAD_x2( "epr-13523.ic14", 0x200000, 0x080000, CRC(d5563697) SHA1(eb3fd3dbfea383ac1bb5d2e1552723994cb4693d) ) ROM_LOAD_x2( "epr-13699.ic20", 0x300000, 0x080000, CRC(33fd2913) SHA1(60b664559b4989446b1c7d875432e53a36fe27df) ) ROM_LOAD_x2( "epr-13523.ic22", 0x400000, 0x080000, CRC(d5563697) SHA1(eb3fd3dbfea383ac1bb5d2e1552723994cb4693d) ) /* Deluxe or Upright manuals don't show this rom */ - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-13519.ic3", 0x000000, 0x080000, CRC(bedc9534) SHA1(7b3f7a47b6c0ca6707dc3c1167f3564d43adb32f) ) ROM_LOAD32_BYTE( "mpr-13520.ic7", 0x000002, 0x080000, CRC(3532e91a) SHA1(669c8d27b4b48e1ab9d6d30b0994f5a4e5169118) ) ROM_LOAD32_BYTE( "mpr-13521.ic12", 0x000001, 0x080000, CRC(e9bca903) SHA1(18a73c830b9755262a1c525e3ad5ae084117b64d) ) ROM_LOAD32_BYTE( "mpr-13522.ic18", 0x000003, 0x080000, CRC(25e04648) SHA1(617e794e8f7aa2a435bac917b8968699fe88dafb) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -3735,8 +4100,8 @@ ROM_START( radm ) ROM_REGION( 0x8000, "user2", 0 ) /* unused (cabinet motor?) */ ROM_LOAD( "epr-13686.bin", 0x00000, 0x8000, CRC(317a2857) SHA1(e0788dc7a7d214d9c4d26b24e44c1a0dc9ae477c) ) /* cabinet movement */ - ROM_REGION16_BE( 0x80, "eeprom", 0 ) - ROM_LOAD16_WORD( "eeprom-radm.ic76", 0x0000, 0x0080, CRC(b1737c06) SHA1(29448a6effeb53322a93158feb9a62bc6ad31f21) ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) + ROM_LOAD16_WORD( "mainpcb:eeprom-radm.ic76", 0x0000, 0x0080, CRC(b1737c06) SHA1(29448a6effeb53322a93158feb9a62bc6ad31f21) ) ROM_END /************************************************************************************************************************** @@ -3744,24 +4109,24 @@ ROM_END not protected */ ROM_START( radmu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-13690.ic21", 0x000000, 0x020000, CRC(21637dec) SHA1(b9921effb10a72f3bdca4d540149c7f46662b716) ) ROM_LOAD16_BYTE( "epr-13525.ic37", 0x100000, 0x080000, CRC(62ad83a0) SHA1(b537176ebca15d91db04d5d7ab36aa967d41288e) ) ROM_LOAD16_BYTE( "epr-13526.ic38", 0x100001, 0x080000, CRC(59ea372a) SHA1(e7a5d59586652c59c23e07e0a99ecc740fb6144d) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-13527.ic9", 0x100000, 0x020000, CRC(a2e3fbbe) SHA1(2787bbef696ab3f2b7855ac991867837d3de54cd) ) ROM_LOAD_x2( "epr-13523.ic14", 0x200000, 0x080000, CRC(d5563697) SHA1(eb3fd3dbfea383ac1bb5d2e1552723994cb4693d) ) ROM_LOAD_x2( "epr-13699.ic20", 0x300000, 0x080000, CRC(33fd2913) SHA1(60b664559b4989446b1c7d875432e53a36fe27df) ) ROM_LOAD_x2( "epr-13523.ic22", 0x400000, 0x080000, CRC(d5563697) SHA1(eb3fd3dbfea383ac1bb5d2e1552723994cb4693d) ) /* Deluxe or Upright manuals don't show this rom */ - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-13519.ic3", 0x000000, 0x080000, CRC(bedc9534) SHA1(7b3f7a47b6c0ca6707dc3c1167f3564d43adb32f) ) ROM_LOAD32_BYTE( "mpr-13520.ic7", 0x000002, 0x080000, CRC(3532e91a) SHA1(669c8d27b4b48e1ab9d6d30b0994f5a4e5169118) ) ROM_LOAD32_BYTE( "mpr-13521.ic12", 0x000001, 0x080000, CRC(e9bca903) SHA1(18a73c830b9755262a1c525e3ad5ae084117b64d) ) ROM_LOAD32_BYTE( "mpr-13522.ic18", 0x000003, 0x080000, CRC(25e04648) SHA1(617e794e8f7aa2a435bac917b8968699fe88dafb) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -3774,8 +4139,8 @@ ROM_START( radmu ) ROM_REGION( 0x8000, "user2", 0 ) /* unused (cabinet motor?) */ ROM_LOAD( "epr-13686.bin", 0x00000, 0x8000, CRC(317a2857) SHA1(e0788dc7a7d214d9c4d26b24e44c1a0dc9ae477c) ) /* cabinet movement */ - ROM_REGION16_BE( 0x80, "eeprom", 0 ) - ROM_LOAD16_WORD( "eeprom-radm.ic76", 0x0000, 0x0080, CRC(b1737c06) SHA1(29448a6effeb53322a93158feb9a62bc6ad31f21) ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) + ROM_LOAD16_WORD( "mainpcb:eeprom-radm.ic76", 0x0000, 0x0080, CRC(b1737c06) SHA1(29448a6effeb53322a93158feb9a62bc6ad31f21) ) ROM_END @@ -3792,24 +4157,24 @@ A/D BD NO. 837-7536 */ ROM_START( radr ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14241.ic21", 0x000000, 0x020000, CRC(59a5f63d) SHA1(325a26a09475ddc828de71e71a1d3043f3959cec) ) ROM_LOAD16_BYTE( "epr-14106.ic37", 0x100000, 0x080000, CRC(e73c63bf) SHA1(30fb68eaa7d02a232c873bd7751cac7d0fa08e44) ) ROM_LOAD16_BYTE( "epr-14107.ic38", 0x100001, 0x080000, CRC(832f797a) SHA1(b0c16ef7bd8d37f592975052ba9da3da70a2fc79) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14108.ic9", 0x100000, 0x020000, CRC(38a99b4d) SHA1(b6455e6b29bfef41c5e0ebe3a8064889b7e5f5fd) ) ROM_LOAD_x2( "epr-14109.ic14", 0x200000, 0x080000, CRC(b42e5833) SHA1(da94ce7c1d7a581a1aa6b79b323c67a919918808) ) ROM_LOAD_x2( "epr-14110.ic20", 0x300000, 0x080000, CRC(b495e7dc) SHA1(b4143fcee10e0649378fdb1e3f5a0a2c585414ec) ) ROM_LOAD_x2( "epr-14237.ic22", 0x400000, 0x080000, CRC(0a4b4b29) SHA1(98447a587f903ba03e17d6a145b7c8bfddf25c4d) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "epr-14102.ic3", 0x000000, 0x040000, CRC(5626e80f) SHA1(9844817295a8cd8a9b09da6681b0c1fbfe82618e) ) ROM_LOAD32_BYTE( "epr-14103.ic7", 0x000002, 0x040000, CRC(08c7e804) SHA1(cf45b1934edc43cb3a0ed72159949cb0dd00d701) ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic18", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -3822,8 +4187,8 @@ ROM_START( radr ) ROM_REGION( 0x8000, "user2", 0 ) /* unused */ ROM_LOAD( "epr-14084.17", 0x00000, 0x8000, CRC(f14ed074) SHA1(e1bb23eac85e3236046527c5c7688f6f23d43aef) ) /* cabinet link */ - ROM_REGION16_BE( 0x80, "eeprom", 0 ) - ROM_LOAD16_WORD( "eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) + ROM_LOAD16_WORD( "mainpcb:eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) ROM_END /************************************************************************************************************************** @@ -3837,24 +4202,24 @@ A/D BD NO. 837-7536 */ ROM_START( radru ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14240.ic21", 0x000000, 0x020000, CRC(8473e7ab) SHA1(fbd883dc804d7de6ce239b68c6e6ae3a54e9e03c) ) ROM_LOAD16_BYTE( "epr-14106.ic37", 0x100000, 0x080000, CRC(e73c63bf) SHA1(30fb68eaa7d02a232c873bd7751cac7d0fa08e44) ) ROM_LOAD16_BYTE( "epr-14107.ic38", 0x100001, 0x080000, CRC(832f797a) SHA1(b0c16ef7bd8d37f592975052ba9da3da70a2fc79) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14108.ic9", 0x100000, 0x020000, CRC(38a99b4d) SHA1(b6455e6b29bfef41c5e0ebe3a8064889b7e5f5fd) ) ROM_LOAD_x2( "epr-14109.ic14", 0x200000, 0x080000, CRC(b42e5833) SHA1(da94ce7c1d7a581a1aa6b79b323c67a919918808) ) ROM_LOAD_x2( "epr-14110.ic20", 0x300000, 0x080000, CRC(b495e7dc) SHA1(b4143fcee10e0649378fdb1e3f5a0a2c585414ec) ) ROM_LOAD_x2( "epr-14237.ic22", 0x400000, 0x080000, CRC(0a4b4b29) SHA1(98447a587f903ba03e17d6a145b7c8bfddf25c4d) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "epr-14102.ic3", 0x000000, 0x040000, CRC(5626e80f) SHA1(9844817295a8cd8a9b09da6681b0c1fbfe82618e) ) ROM_LOAD32_BYTE( "epr-14103.ic7", 0x000002, 0x040000, CRC(08c7e804) SHA1(cf45b1934edc43cb3a0ed72159949cb0dd00d701) ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic16", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -3867,8 +4232,8 @@ ROM_START( radru ) ROM_REGION( 0x8000, "user2", 0 ) /* unused */ ROM_LOAD( "epr-14084.17", 0x00000, 0x8000, CRC(f14ed074) SHA1(e1bb23eac85e3236046527c5c7688f6f23d43aef) ) /* cabinet link */ - ROM_REGION16_BE( 0x80, "eeprom", 0 ) - ROM_LOAD16_WORD( "eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) + ROM_LOAD16_WORD( "mainpcb:eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) ROM_END /************************************************************************************************************************** @@ -3882,24 +4247,24 @@ A/D BD NO. 837-7536 */ ROM_START( radrj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x8( "epr-14111.ic21", 0x000000, 0x020000, CRC(7adc6d17) SHA1(fc312a30b077ba060b6d98ab6ecccd2e16b32fc2) ) ROM_LOAD16_BYTE( "epr-14106.ic37", 0x100000, 0x080000, CRC(e73c63bf) SHA1(30fb68eaa7d02a232c873bd7751cac7d0fa08e44) ) ROM_LOAD16_BYTE( "epr-14107.ic38", 0x100001, 0x080000, CRC(832f797a) SHA1(b0c16ef7bd8d37f592975052ba9da3da70a2fc79) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-14108.ic9", 0x100000, 0x020000, CRC(38a99b4d) SHA1(b6455e6b29bfef41c5e0ebe3a8064889b7e5f5fd) ) ROM_LOAD_x2( "epr-14109.ic14", 0x200000, 0x080000, CRC(b42e5833) SHA1(da94ce7c1d7a581a1aa6b79b323c67a919918808) ) ROM_LOAD_x2( "epr-14110.ic20", 0x300000, 0x080000, CRC(b495e7dc) SHA1(b4143fcee10e0649378fdb1e3f5a0a2c585414ec) ) ROM_LOAD_x2( "epr-14237.ic22", 0x400000, 0x080000, CRC(0a4b4b29) SHA1(98447a587f903ba03e17d6a145b7c8bfddf25c4d) ) - ROM_REGION( 0x100000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x100000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "epr-14102.ic3", 0x000000, 0x040000, CRC(5626e80f) SHA1(9844817295a8cd8a9b09da6681b0c1fbfe82618e) ) ROM_LOAD32_BYTE( "epr-14103.ic7", 0x000002, 0x040000, CRC(08c7e804) SHA1(cf45b1934edc43cb3a0ed72159949cb0dd00d701) ) ROM_LOAD32_BYTE( "epr-14104.ic12", 0x000001, 0x040000, CRC(b0173646) SHA1(1ba4edc033e0e4f5a1e02987e9f6b8b1650b46d7) ) ROM_LOAD32_BYTE( "epr-14105.ic16", 0x000003, 0x040000, CRC(614843b6) SHA1(d4f2cd3b024f7152d6e89237f0da06adea2efe57) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-13511.ic1", 0x000000, 0x100000, CRC(f8f15b11) SHA1(da6c2b8c3a94c4c263583f046823eaea818aff7c) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13512.ic5", 0x000001, 0x100000, CRC(d0be34a6) SHA1(b42a63e30f0f7a94de8a825ca93cf8efdb7a7648) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-13513.ic10", 0x000002, 0x100000, CRC(feef1982) SHA1(bdf906317079a12c48ef4fca5bef0d437e9bf050) , ROM_SKIP(7) ) @@ -3912,8 +4277,8 @@ ROM_START( radrj ) ROM_REGION( 0x8000, "user2", 0 ) /* unused */ ROM_LOAD( "epr-14084.17", 0x00000, 0x8000, CRC(f14ed074) SHA1(e1bb23eac85e3236046527c5c7688f6f23d43aef) ) /* cabinet link */ - ROM_REGION16_BE( 0x80, "eeprom", 0 ) - ROM_LOAD16_WORD( "eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) + ROM_REGION16_BE( 0x80, "mainpcb:eeprom", 0 ) + ROM_LOAD16_WORD( "mainpcb:eeprom-radr.ic76", 0x0000, 0x0080, CRC(602032c6) SHA1(fecf14017e537fe870457d2a8d4f86ec6d442b90) ) ROM_END @@ -3928,22 +4293,22 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( slipstrm ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "s32b_prg01.ic6", 0x000000, 0x080000, CRC(7d066307) SHA1(d87e04167263b435b77830db02ed58651ccc020c) ) ROM_LOAD16_BYTE( "s32_dat00.ic14",0x100000, 0x080000, CRC(c3ff6309) SHA1(dcc857736fe0f15aa7909c3ee88a7e239c8f0228) ) ROM_LOAD16_BYTE( "s32_dat01.ic7", 0x100001, 0x080000, CRC(0e605c81) SHA1(47c64195cab9a07b234d5a375d26168e53ffaa17) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "s32_snd00.ic35", 0x100000, 0x020000, CRC(0fee2278) SHA1(7533a03c3fc46d65dfdd07bddf1e6e0bbc368752) ) ROM_LOAD_x2( "s32_snd01.ic31", 0x200000, 0x080000, CRC(ae7be5f2) SHA1(ba089355e64864435bcc3b0c208e4bce1ea66295) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "s32_scr00.ic38", 0x000000, 0x080000, CRC(3cbb2d0b) SHA1(b94006347b72cd60a889b0e279f62f677cedfd2e) ) ROM_LOAD32_BYTE( "s32_scr01.ic34", 0x000002, 0x080000, CRC(4167be55) SHA1(96b34d311b318c00c3fad917e341589a70ba0a15) ) ROM_LOAD32_BYTE( "s32_scr02.ic29", 0x000001, 0x080000, CRC(52c4bb85) SHA1(4fbee1072a19c75c25b5fd269acc75640923d69c) ) ROM_LOAD32_BYTE( "s32_scr03.ic25", 0x000003, 0x080000, CRC(4948604a) SHA1(d5a1b9781fef7976a59a0af9b755a04fcacf9381) ) - ROM_REGION32_BE( 0x400000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x400000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "s32_obj00.ic36", 0x000000, 0x80000, CRC(cffe9e0d) SHA1(5272d54ff142de927a9abd61f3646e963c7d22c4) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj01.ic32", 0x000001, 0x80000, CRC(4ebd1383) SHA1(ce35f4d15e7904bfde55e58cdde925cba8002763) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj02.ic27", 0x000002, 0x80000, CRC(b3cf4fe2) SHA1(e13199522e1e3e8b9cfe72cc29b33f25dad542ef) , ROM_SKIP(7) ) @@ -3963,22 +4328,22 @@ ROM_END A/D BD NO. 837-7536 */ ROM_START( slipstrmh ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x2( "s32h_prg01.ic6", 0x000000, 0x080000, CRC(ab778297) SHA1(e440d44b20f2f7478ef7d86af90af5eb7b9a545a) ) ROM_LOAD16_BYTE( "s32_dat00.ic14",0x100000, 0x080000, CRC(c3ff6309) SHA1(dcc857736fe0f15aa7909c3ee88a7e239c8f0228) ) ROM_LOAD16_BYTE( "s32_dat01.ic7", 0x100001, 0x080000, CRC(0e605c81) SHA1(47c64195cab9a07b234d5a375d26168e53ffaa17) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "s32_snd00.ic35", 0x100000, 0x020000, CRC(0fee2278) SHA1(7533a03c3fc46d65dfdd07bddf1e6e0bbc368752) ) ROM_LOAD_x2( "s32_snd01.ic31", 0x200000, 0x080000, CRC(ae7be5f2) SHA1(ba089355e64864435bcc3b0c208e4bce1ea66295) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "s32_scr00.ic38", 0x000000, 0x080000, CRC(3cbb2d0b) SHA1(b94006347b72cd60a889b0e279f62f677cedfd2e) ) ROM_LOAD32_BYTE( "s32_scr01.ic34", 0x000002, 0x080000, CRC(4167be55) SHA1(96b34d311b318c00c3fad917e341589a70ba0a15) ) ROM_LOAD32_BYTE( "s32_scr02.ic29", 0x000001, 0x080000, CRC(52c4bb85) SHA1(4fbee1072a19c75c25b5fd269acc75640923d69c) ) ROM_LOAD32_BYTE( "s32_scr03.ic25", 0x000003, 0x080000, CRC(4948604a) SHA1(d5a1b9781fef7976a59a0af9b755a04fcacf9381) ) - ROM_REGION32_BE( 0x400000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x400000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "s32_obj00.ic36", 0x000000, 0x80000, CRC(cffe9e0d) SHA1(5272d54ff142de927a9abd61f3646e963c7d22c4) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj01.ic32", 0x000001, 0x80000, CRC(4ebd1383) SHA1(ce35f4d15e7904bfde55e58cdde925cba8002763) , ROM_SKIP(7) ) ROMX_LOAD( "s32_obj02.ic27", 0x000002, 0x80000, CRC(b3cf4fe2) SHA1(e13199522e1e3e8b9cfe72cc29b33f25dad542ef) , ROM_SKIP(7) ) @@ -4001,23 +4366,23 @@ Sega ROM BD ID# 834-9496 */ ROM_START( sonic ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-15787c.ic17", 0x000000, 0x020000, CRC(25e3c27e) SHA1(8f173cd5c7c817dcccdcad9be5781cfaa081d73e) ) ROM_LOAD_x4( "epr-15786c.ic8", 0x080000, 0x020000, CRC(efe9524c) SHA1(8020e734704a8f989919ee5ad92f70035de717f0) ) ROM_LOAD16_BYTE_x2( "epr-15781c.ic18", 0x100000, 0x040000, CRC(65b06c25) SHA1(9f524012a7adbc71737f90fc556f0ce9adc2bcf8) ) ROM_LOAD16_BYTE_x2( "epr-15780c.ic9", 0x100001, 0x040000, CRC(2db66fd2) SHA1(54582c0d5977649a38fc3a2c0fe4d7b1959abc76) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15785.ic36", 0x100000, 0x040000, CRC(0fe7422e) SHA1(b7eaf4736ba155965317bb4ef3b33fc122635151) ) ROM_LOAD( "mpr-15784.ic35", 0x200000, 0x100000, CRC(42f06714) SHA1(30e45bb2d9b492f0c1acc4fbe1e5869f0559300b) ) ROM_LOAD( "mpr-15783.ic34", 0x300000, 0x100000, CRC(e4220eea) SHA1(a546c8bfc24e0695cf79c49e1a867d2595a1ed7f) ) ROM_LOAD( "mpr-15782.ic33", 0x400000, 0x100000, CRC(cf56b5a0) SHA1(5786228aab120c3361524ba93b418b24fd5b8ffb) ) // (this is the only rom unchanged from the prototype) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15789.ic14", 0x000000, 0x100000, CRC(4378f12b) SHA1(826e0550a3c5f2b6e59c6531ac03658a4f826651) ) ROM_LOAD16_BYTE( "mpr-15788.ic5", 0x000001, 0x100000, CRC(a6ed5d7a) SHA1(d30f26b452d380e7657e044e144f7dbbc4dc13e5) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15790.ic32", 0x000000, 0x200000, CRC(c69d51b1) SHA1(7644fb64457855f9ed87ca25ddc28c21bcb61fd9) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15792.ic30", 0x000002, 0x200000, CRC(1006bb67) SHA1(38c752e634aa94b1a23c09c4dba6388b7d0358af) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15794.ic28", 0x000004, 0x200000, CRC(8672b480) SHA1(61659e3856cdff0b2bca190a7e60c81b86ea2089) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4037,25 +4402,25 @@ ROM_END not protected */ ROM_START( sonicp ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "sonpg0.bin", 0x000000, 0x20000, CRC(da05dcbb) SHA1(c2ced1f3aee92b0e531d5cd7611d4811f2ae95e7) ) ROM_LOAD_x4( "sonpg1.bin", 0x080000, 0x20000, CRC(c57dc5c5) SHA1(5741bdd52ee7181d883129885838b36f4af8a04c) ) ROM_LOAD16_BYTE_x2( "sonpd0.bin", 0x100000, 0x40000, CRC(a7da7546) SHA1(0a10573b21cd38d58380698bc18b0256dbb24044) ) ROM_LOAD16_BYTE_x2( "sonpd1.bin", 0x100001, 0x40000, CRC(c30e4c70) SHA1(897b6f62921694fe3c63677908f76eaf38b7b92f) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "sonsnd0.bin", 0x100000, 0x040000, CRC(569c8d4b) SHA1(9f1f6da6adbea043cc5ad853806fcb7bf683c832) ) ROM_LOAD( "sonsnd1.bin", 0x200000, 0x100000, CRC(f4fa5a21) SHA1(14a364ba7744ff0b44423d8d6bab990fe534ff29) ) ROM_LOAD( "sonsnd2.bin", 0x300000, 0x100000, CRC(e1bd45a5) SHA1(b411757853d61588e5223b48b5124cc00b3d65dd) ) ROM_LOAD( "sonsnd3.bin", 0x400000, 0x100000, CRC(cf56b5a0) SHA1(5786228aab120c3361524ba93b418b24fd5b8ffb) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "sonscl0.bin", 0x000000, 0x080000, CRC(445e31b9) SHA1(5678dfda74a09b5ac673448b222d11df4ca23aff) ) ROM_LOAD32_BYTE( "sonscl1.bin", 0x000002, 0x080000, CRC(3d234181) SHA1(2e8c14ad36be76f5f5fc6a3ee152f1abc8bf0ddd) ) ROM_LOAD32_BYTE( "sonscl2.bin", 0x000001, 0x080000, CRC(a5de28b2) SHA1(49a16ac10cf01b5b8802b8b015a2e403086c206a) ) ROM_LOAD32_BYTE( "sonscl3.bin", 0x000003, 0x080000, CRC(7ce7554b) SHA1(8def3acae6baafbe9e350f18e245a9a833df5cc4) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "sonobj0.bin", 0x000000, 0x100000, CRC(ceea18e3) SHA1(f902a7e2f8e126fd7a7862c55de32ce6352a7716) , ROM_SKIP(7) ) ROMX_LOAD( "sonobj1.bin", 0x000001, 0x100000, CRC(6bbc226b) SHA1(5ef4256b6a93891daf1349def6db3bc428e5f4f3) , ROM_SKIP(7) ) ROMX_LOAD( "sonobj2.bin", 0x000002, 0x100000, CRC(fcd5ef0e) SHA1(e3e50d4838ac3cce41d69ee6cd31981fbe422a4b) , ROM_SKIP(7) ) @@ -4074,25 +4439,25 @@ ROM_END not protected */ ROM_START( spidman ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14307.ic13", 0x000000, 0x020000, CRC(d900219c) SHA1(d59654db1fc0ec4d5f8cda9000ab4bd3bb36cdfc) ) ROM_LOAD_x4( "epr-14306.ic7", 0x080000, 0x020000, CRC(64379dc6) SHA1(7efc7175351186c54f141161a395e63b1cc7e7a5) ) ROM_LOAD16_BYTE_x4( "epr-14281.ic14", 0x100000, 0x020000, CRC(8a746c42) SHA1(fa3729ec3aa4b3c59322408146ce2cfbf5a11b98) ) ROM_LOAD16_BYTE_x4( "epr-14280.ic6", 0x100001, 0x020000, CRC(3c8148f7) SHA1(072b7982bb95e7a9ab77844b59020146c262488d) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-14285.ic35", 0x100000, 0x040000, CRC(25aefad6) SHA1(10153f4e773a0f55378f869eb1d85156e85f893f) ) ROM_LOAD_x2( "mpr-14284.ic31", 0x200000, 0x080000, CRC(760542d4) SHA1(dcac73869c02fefd328bd6bdbcbdb3b68b0647da) ) ROM_LOAD_x2( "mpr-14283.ic26", 0x300000, 0x080000, CRC(c863a91c) SHA1(afdc76bbb9b207cfcb47d437248a757d03212f4e) ) ROM_LOAD_x2( "mpr-14282.ic22", 0x400000, 0x080000, CRC(ea20979e) SHA1(9b70ef055da8c7c56da54b7edef2379678e7c50f) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14291-s.ic38", 0x000000, 0x100000, CRC(490f95a1) SHA1(f220788670b76164ac414ed9b16a422f719be267) ) ROM_LOAD32_BYTE( "mpr-14290-s.ic34", 0x000002, 0x100000, CRC(a144162d) SHA1(d43f12dd9f690cdfcebb6c7b515ff7dc7dcaa377) ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4116,25 +4481,25 @@ Input sub board: 837-7968 */ ROM_START( spidmanu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14303a.ic13", 0x000000, 0x020000, CRC(7f1bd28f) SHA1(cff57e66d09682baf44aace99d698ad305f6a3d5) ) ROM_LOAD_x4( "epr-14302a.ic7", 0x080000, 0x020000, CRC(d954c40a) SHA1(436c81779274861de79dc6ce2c0fcc65bfd52098) ) ROM_LOAD16_BYTE_x4( "epr-14281.ic14", 0x100000, 0x020000, CRC(8a746c42) SHA1(fa3729ec3aa4b3c59322408146ce2cfbf5a11b98) ) ROM_LOAD16_BYTE_x4( "epr-14280.ic6", 0x100001, 0x020000, CRC(3c8148f7) SHA1(072b7982bb95e7a9ab77844b59020146c262488d) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-14285.ic35", 0x100000, 0x040000, CRC(25aefad6) SHA1(10153f4e773a0f55378f869eb1d85156e85f893f) ) ROM_LOAD_x2( "mpr-14284.ic31", 0x200000, 0x080000, CRC(760542d4) SHA1(dcac73869c02fefd328bd6bdbcbdb3b68b0647da) ) ROM_LOAD_x2( "mpr-14283.ic26", 0x300000, 0x080000, CRC(c863a91c) SHA1(afdc76bbb9b207cfcb47d437248a757d03212f4e) ) ROM_LOAD_x2( "mpr-14282.ic22", 0x400000, 0x080000, CRC(ea20979e) SHA1(9b70ef055da8c7c56da54b7edef2379678e7c50f) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14291-s.ic38", 0x000000, 0x100000, CRC(490f95a1) SHA1(f220788670b76164ac414ed9b16a422f719be267) ) ROM_LOAD32_BYTE( "mpr-14290-s.ic34", 0x000002, 0x100000, CRC(a144162d) SHA1(d43f12dd9f690cdfcebb6c7b515ff7dc7dcaa377) ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4154,25 +4519,25 @@ Rom board: 834-8332 */ ROM_START( spidmanj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-14287.ic13", 0x000000, 0x020000, CRC(403ccdc9) SHA1(4e240c749e362dfa5c579ccbdff18ae3fab58dff) ) ROM_LOAD_x4( "epr-14286.ic7", 0x080000, 0x020000, CRC(5c2b4e2c) SHA1(79229594710416510f85e6e53ea578789afd4091) ) ROM_LOAD16_BYTE_x4( "epr-14281.ic14", 0x100000, 0x020000, CRC(8a746c42) SHA1(fa3729ec3aa4b3c59322408146ce2cfbf5a11b98) ) ROM_LOAD16_BYTE_x4( "epr-14280.ic6", 0x100001, 0x020000, CRC(3c8148f7) SHA1(072b7982bb95e7a9ab77844b59020146c262488d) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-14285.ic35", 0x100000, 0x040000, CRC(25aefad6) SHA1(10153f4e773a0f55378f869eb1d85156e85f893f) ) ROM_LOAD_x2( "mpr-14284.ic31", 0x200000, 0x080000, CRC(760542d4) SHA1(dcac73869c02fefd328bd6bdbcbdb3b68b0647da) ) ROM_LOAD_x2( "mpr-14283.ic26", 0x300000, 0x080000, CRC(c863a91c) SHA1(afdc76bbb9b207cfcb47d437248a757d03212f4e) ) ROM_LOAD_x2( "mpr-14282.ic22", 0x400000, 0x080000, CRC(ea20979e) SHA1(9b70ef055da8c7c56da54b7edef2379678e7c50f) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD32_BYTE( "mpr-14291-s.ic38", 0x000000, 0x100000, CRC(490f95a1) SHA1(f220788670b76164ac414ed9b16a422f719be267) ) ROM_LOAD32_BYTE( "mpr-14290-s.ic34", 0x000002, 0x100000, CRC(a144162d) SHA1(d43f12dd9f690cdfcebb6c7b515ff7dc7dcaa377) ) ROM_LOAD32_BYTE( "mpr-14289-s.ic29", 0x000001, 0x100000, CRC(38570582) SHA1(a9d810a02a1f5a6849c79d65fbebff21a4b82b59) ) ROM_LOAD32_BYTE( "mpr-14288-s.ic25", 0x000003, 0x100000, CRC(3188b636) SHA1(bc0adeeca5040caa563ee1e0eded9c323ca23446) ) - ROM_REGION32_BE( 0x800000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x800000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-14299-h.ic36", 0x000000, 0x100000, CRC(ce59231b) SHA1(bcb1f11b74935694d0617ec8df66db2cc57b6219) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14298-h.ic32", 0x000001, 0x100000, CRC(2745c84c) SHA1(5a0528c921cba7a1047d3a2ece79925103d719a1) , ROM_SKIP(7) ) ROMX_LOAD( "mpr-14297-h.ic27", 0x000002, 0x100000, CRC(29cb9450) SHA1(7dc38d23a2f0cee2f4edde05c1a6f0dc83f331db) , ROM_SKIP(7) ) @@ -4189,20 +4554,20 @@ ROM_END not protected */ ROM_START( scross ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x2( "epr-15093.ic37", 0x000000, 0x040000, CRC(2adc7a4b) SHA1(dca71f00d94898c0758394704d819e13482bf120) ) ROM_LOAD32_WORD_x2( "epr-15094.ic40", 0x000002, 0x040000, CRC(bbb0ae73) SHA1(0d8837706405f301adf8fa85c8d4813d7600af98) ) ROM_LOAD32_WORD( "mpr-15018.ic36", 0x100000, 0x080000, CRC(3a98385e) SHA1(8088d337655030c28e290da4bbf44cb647dab66c) ) ROM_LOAD32_WORD( "mpr-15019.ic39", 0x100002, 0x080000, CRC(8bf4ac83) SHA1(e594d9d9b42d0765ed8a20a40b7dd92b75124d34) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15192.ic31", 0x100000, 0x20000, CRC(7524290b) SHA1(ee58be2c0c4293ee19622b96ca493f4ce4da0038) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4212,7 +4577,7 @@ ROM_START( scross ) ROMX_LOAD( "mpr-15027.ic18", 0x800004, 0x100000, CRC(b765efb8) SHA1(61f3865f92b36ca4b3cd20c0716a7121755eea73) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15029.ic41", 0x800006, 0x100000, CRC(cf8e3b2b) SHA1(c158810d9d82b10a753bc739d1f56572042dac0b) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15031.ic1", 0x000000, 0x100000, CRC(6af139dc) SHA1(2378c2ad0c52c114eb93206a6fbee723c038d030) ) ROM_LOAD( "mpr-15032.ic2", 0x200000, 0x100000, CRC(915d6096) SHA1(e1f670949b1254f5a3c3131993ca9b3baa4d9f6b) ) @@ -4221,21 +4586,21 @@ ROM_START( scross ) ROM_END ROM_START( scrossa ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ // 37/40 were missing labels ROM_LOAD32_WORD_x2( "ic37", 0x000000, 0x040000, CRC(240a7655) SHA1(7cfdce002fb4783e8c1debf206922d88647c106e) ) ROM_LOAD32_WORD_x2( "ic40", 0x000002, 0x040000, CRC(3a073060) SHA1(c92c8d8921d94d85c8484c103cbf9cd6ad651333) ) ROM_LOAD32_WORD( "mpr-15018.ic36", 0x100000, 0x080000, CRC(3a98385e) SHA1(8088d337655030c28e290da4bbf44cb647dab66c) ) ROM_LOAD32_WORD( "mpr-15019.ic39", 0x100002, 0x080000, CRC(8bf4ac83) SHA1(e594d9d9b42d0765ed8a20a40b7dd92b75124d34) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15192.ic31", 0x100000, 0x20000, CRC(7524290b) SHA1(ee58be2c0c4293ee19622b96ca493f4ce4da0038) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4245,7 +4610,7 @@ ROM_START( scrossa ) ROMX_LOAD( "mpr-15027.ic18", 0x800004, 0x100000, CRC(b765efb8) SHA1(61f3865f92b36ca4b3cd20c0716a7121755eea73) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15029.ic41", 0x800006, 0x100000, CRC(cf8e3b2b) SHA1(c158810d9d82b10a753bc739d1f56572042dac0b) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15031.ic1", 0x000000, 0x100000, CRC(6af139dc) SHA1(2378c2ad0c52c114eb93206a6fbee723c038d030) ) ROM_LOAD( "mpr-15032.ic2", 0x200000, 0x100000, CRC(915d6096) SHA1(e1f670949b1254f5a3c3131993ca9b3baa4d9f6b) ) @@ -4259,20 +4624,20 @@ ROM_END */ ROM_START( scrossu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x2( "epr-15091.ic37", 0x000000, 0x040000, CRC(2c572293) SHA1(6377a6eb6084f7332ce6eeaaf0c37200da792d0c) ) ROM_LOAD32_WORD_x2( "epr-15092.ic40", 0x000002, 0x040000, CRC(6e3e175a) SHA1(feaca0720646e2a4b78b376e99dc86788adb98e7) ) ROM_LOAD32_WORD( "epr-15018.ic36", 0x100000, 0x080000, CRC(3a98385e) SHA1(8088d337655030c28e290da4bbf44cb647dab66c) ) ROM_LOAD32_WORD( "epr-15019.ic39", 0x100002, 0x080000, CRC(8bf4ac83) SHA1(e594d9d9b42d0765ed8a20a40b7dd92b75124d34) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15192.ic31", 0x100000, 0x20000, CRC(7524290b) SHA1(ee58be2c0c4293ee19622b96ca493f4ce4da0038) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15020.ic3", 0x000000, 0x100000, CRC(de47006a) SHA1(dbef7b9ff8c39992b8596d38985e65c627d6fa79) ) ROM_LOAD16_BYTE( "mpr-15021.ic11", 0x000001, 0x100000, CRC(3677db02) SHA1(7aeeb85f1632253fcdc8f7881512066e97837e5e) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15022.ic14", 0x000000, 0x100000, CRC(baee6fd5) SHA1(ddf022c61f0805af45a84c65eb5d01006c153c07) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15024.ic15", 0x000002, 0x100000, CRC(b9f339e2) SHA1(4b9a392459132a19d62928ef3939e1f2356e3994) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15026.ic10", 0x000004, 0x100000, CRC(b72e8df6) SHA1(a7a87f79814b022985121e163c7f88244c50e427) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4282,7 +4647,7 @@ ROM_START( scrossu ) ROMX_LOAD( "mpr-15027.ic18", 0x800004, 0x100000, CRC(b765efb8) SHA1(61f3865f92b36ca4b3cd20c0716a7121755eea73) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15029.ic41", 0x800006, 0x100000, CRC(cf8e3b2b) SHA1(c158810d9d82b10a753bc739d1f56572042dac0b) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15031.ic1", 0x000000, 0x100000, CRC(6af139dc) SHA1(2378c2ad0c52c114eb93206a6fbee723c038d030) ) ROM_LOAD( "mpr-15032.ic2", 0x200000, 0x100000, CRC(915d6096) SHA1(e1f670949b1254f5a3c3131993ca9b3baa4d9f6b) ) ROM_END @@ -4295,23 +4660,23 @@ ROM_END protected via FD1149 317-0222 */ ROM_START( svf ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-16872a.ic17", 0x000000, 0x020000, CRC(1f383b00) SHA1(c3af01743de5ff09ada19879902842efdbceb595) ) ROM_LOAD_x4( "epr-16871a.ic8", 0x080000, 0x020000, CRC(f7061bd7) SHA1(b46f4f2ecda8f521c0a91f2f2c2445b72cbc2874) ) ROM_LOAD16_BYTE( "epr-16865.ic18", 0x100000, 0x080000, CRC(9198ca9f) SHA1(0f6271ce8a07e4ab7fdce38964055510f2ebfd4e) ) ROM_LOAD16_BYTE( "epr-16864.ic9", 0x100001, 0x080000, CRC(201a940e) SHA1(e19d76141844dbdedee0698ea50edbb898ab55e9) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x8( "epr-16866.ic36", 0x100000, 0x020000, CRC(74431350) SHA1(d3208b595423b5b0f25ee90db213112a09906f8f) ) ROM_LOAD( "mpr-16779.ic35", 0x200000, 0x100000, CRC(7055e859) SHA1(cde27fa4aaf0ee54063ee68794e9a6075581fff5) ) ROM_LOAD( "mpr-16778.ic34", 0x300000, 0x100000, CRC(feedaecf) SHA1(25c14ccb85c467dc0c8e85b61f8f86f4396c0cc7) ) ROM_LOAD( "mpr-16777.ic24", 0x400000, 0x100000, CRC(14b5d5df) SHA1(1b0b0a31294b1bbc16d2046b374d584a1b00a78c) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4327,23 +4692,23 @@ ROM_END protected via FD1149 317-0222 */ ROM_START( svs ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-16883a.ic17", 0x000000, 0x020000, CRC(e1c0c3ce) SHA1(12dd8d9d1a2c2c7bf1ab652a6a6f947384d79577) ) ROM_LOAD_x4( "epr-16882a.ic8", 0x080000, 0x020000, CRC(1161bbbe) SHA1(3cfeed9ea947eed79aeb5674d54de45d15fb6e1f) ) ROM_LOAD16_BYTE( "epr-16865.ic18", 0x100000, 0x080000, CRC(9198ca9f) SHA1(0f6271ce8a07e4ab7fdce38964055510f2ebfd4e) ) ROM_LOAD16_BYTE( "epr-16864.ic9", 0x100001, 0x080000, CRC(201a940e) SHA1(e19d76141844dbdedee0698ea50edbb898ab55e9) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16868.ic36", 0x100000, 0x040000, CRC(47aa4ec7) SHA1(baea18aaac0314f769f1e36fdbe8aedf62862544) ) /* same as jleague but with a different part number */ ROM_LOAD( "mpr-16779.ic35", 0x200000, 0x100000, CRC(7055e859) SHA1(cde27fa4aaf0ee54063ee68794e9a6075581fff5) ) ROM_LOAD( "mpr-16778.ic34", 0x300000, 0x100000, CRC(feedaecf) SHA1(25c14ccb85c467dc0c8e85b61f8f86f4396c0cc7) ) ROM_LOAD( "mpr-16777.ic24", 0x400000, 0x100000, CRC(14b5d5df) SHA1(1b0b0a31294b1bbc16d2046b374d584a1b00a78c) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4363,23 +4728,23 @@ ROM_END */ ROM_START( jleague ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code + data */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code + data */ ROM_LOAD_x4( "epr-16782.ic17", 0x000000, 0x020000, CRC(f0278944) SHA1(49e3842231ee5abdd6205b598309153d6b4ddc02) ) ROM_LOAD_x4( "epr-16781.ic8", 0x080000, 0x020000, CRC(7df9529b) SHA1(de3633f4941ff3877c4cb8b53e080eccea19f22e) ) ROM_LOAD16_BYTE( "epr-16776.ic18", 0x100000, 0x080000, CRC(e8694626) SHA1(d4318a9a6b1cc5c719bff9c25b7398dd2ea1e18b) ) ROM_LOAD16_BYTE( "epr-16775.ic9", 0x100001, 0x080000, CRC(e81e2c3d) SHA1(2900710f1dec6cf71875c82a56584ba45ed3a545) ) - ROM_REGION( 0x500000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x500000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-16780.ic36", 0x100000, 0x040000, CRC(47aa4ec7) SHA1(baea18aaac0314f769f1e36fdbe8aedf62862544) ) ROM_LOAD( "mpr-16779.ic35", 0x200000, 0x100000, CRC(7055e859) SHA1(cde27fa4aaf0ee54063ee68794e9a6075581fff5) ) ROM_LOAD( "mpr-16778.ic34", 0x300000, 0x100000, CRC(feedaecf) SHA1(25c14ccb85c467dc0c8e85b61f8f86f4396c0cc7) ) ROM_LOAD( "mpr-16777.ic24", 0x400000, 0x100000, CRC(14b5d5df) SHA1(1b0b0a31294b1bbc16d2046b374d584a1b00a78c) ) - ROM_REGION( 0x200000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x200000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-16784.ic14", 0x000000, 0x100000, CRC(4608efe2) SHA1(9b41aa28f50af770e854ef9fdff1a55da7b7b131) ) ROM_LOAD16_BYTE( "mpr-16783.ic5", 0x000001, 0x100000, CRC(042eabe7) SHA1(a11df5c21d85f0c96dbdcaf57be37a79658ad648) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-16785.ic32", 0x000000, 0x200000, CRC(51f775ce) SHA1(125b40bf47304d37b92e81df5081c81d9af6c8a2) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16787.ic30", 0x000002, 0x200000, CRC(dee7a204) SHA1(29acff4d5dd68609ac46853860788206d18262ab) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-16789.ic28", 0x000004, 0x200000, CRC(6b6c8ad3) SHA1(97b0078c851845c31dcf0fe4b2a88393dcdf8988) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4404,18 +4769,18 @@ Rom board: 834-9413-02 */ ROM_START( titlef ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x2( "epr-15388.ic37", 0x000000, 0x40000, CRC(db1eefbd) SHA1(7059a1d5c9364d836c1d922071a108cbde661e0a) ) ROM_LOAD32_WORD_x2( "epr-15389.ic40", 0x000002, 0x40000, CRC(da9f60a3) SHA1(87a7bea04e51e3c241871e83ff7322c6a07bd106) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15384.ic31", 0x100000, 0x20000, CRC(0f7d208d) SHA1(5425120480f813210fae28951e8bfd5acb08ca53) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4425,7 +4790,7 @@ ROM_START( titlef ) ROMX_LOAD( "mpr-15372.ic18", 0x800004, 0x200000, CRC(c187c36a) SHA1(bb55c2a768a43ef19a7847a4aa113523fee26c20) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15374.ic41", 0x800006, 0x200000, CRC(e026aab0) SHA1(75dfaef6d50c3d1d7f27aa5e44fcbc0ff2173c6f) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15385.ic1", 0x000000, 0x200000, CRC(5a9b0aa0) SHA1(d208aa165f9eea05e3b8c3f406ff44374e4f6887) ) ROM_END @@ -4440,18 +4805,18 @@ Rom board: 834-9413-01 */ ROM_START( titlefu ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x4( "epr-15386.ic37", 0x000000, 0x40000, CRC(e36e2516) SHA1(b6a73d6136ff8a13831b6db0fbc8a585f2acf254) ) ROM_LOAD32_WORD_x4( "epr-15387.ic40", 0x000002, 0x40000, CRC(e63406d3) SHA1(cd105862b2267d1d3af588cda70e6e4c1cca1da2) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15384.ic31", 0x100000, 0x20000, CRC(0f7d208d) SHA1(5425120480f813210fae28951e8bfd5acb08ca53) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4461,7 +4826,7 @@ ROM_START( titlefu ) ROMX_LOAD( "mpr-15372.ic18", 0x800004, 0x200000, CRC(c187c36a) SHA1(bb55c2a768a43ef19a7847a4aa113523fee26c20) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15374.ic41", 0x800006, 0x200000, CRC(e026aab0) SHA1(75dfaef6d50c3d1d7f27aa5e44fcbc0ff2173c6f) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15385.ic1", 0x000000, 0x200000, CRC(5a9b0aa0) SHA1(d208aa165f9eea05e3b8c3f406ff44374e4f6887) ) ROM_END @@ -4476,18 +4841,18 @@ Rom board: 834-9413-03 */ ROM_START( titlefj ) - ROM_REGION( 0x200000, "maincpu", 0 ) /* v60 code */ + ROM_REGION( 0x200000, "mainpcb:maincpu", 0 ) /* v60 code */ ROM_LOAD32_WORD_x4( "epr-15377.ic37", 0x000000, 0x40000, CRC(1868403c) SHA1(d34a3a05e5a3bb2e6159f95d1e22d264bf553cda) ) ROM_LOAD32_WORD_x4( "epr-15378.ic40", 0x000002, 0x40000, CRC(44487b0a) SHA1(4aefd063bf148334d5f43d69f497766d50ffca30) ) - ROM_REGION( 0x180000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x180000, "mainpcb:soundcpu", 0 ) /* sound CPU */ ROM_LOAD_x4( "epr-15384.ic31", 0x100000, 0x20000, CRC(0f7d208d) SHA1(5425120480f813210fae28951e8bfd5acb08ca53) ) - ROM_REGION( 0x400000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x400000, "mainpcb:gfx1", 0 ) /* tiles */ ROM_LOAD16_BYTE( "mpr-15381.ic3", 0x000000, 0x200000, CRC(162cc4d6) SHA1(2369d3d76ab5ef8f033aa45530ab957f0e5ff028) ) ROM_LOAD16_BYTE( "mpr-15382.ic11", 0x000001, 0x200000, CRC(fd03a130) SHA1(040c36383ef5d8298af714958cd5b0a4c7556ae7) ) - ROM_REGION32_BE( 0x1000000, "gfx2", 0 ) /* sprites */ + ROM_REGION32_BE( 0x1000000, "mainpcb:gfx2", 0 ) /* sprites */ ROMX_LOAD( "mpr-15379.ic14", 0x000000, 0x200000, CRC(e5c74b11) SHA1(67e4460efe5dcd88ffc12024b255efc843e6a8b5) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15375.ic15", 0x000002, 0x200000, CRC(046a9b50) SHA1(2b4c53f2a0264835cb7197daa9b3461c212541e8) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15371.ic10", 0x000004, 0x200000, CRC(999046c6) SHA1(37ce4e8aaf537b5366eacabaf36e4477b5624121) , ROM_SKIP(6)|ROM_GROUPWORD ) @@ -4497,7 +4862,7 @@ ROM_START( titlefj ) ROMX_LOAD( "mpr-15372.ic18", 0x800004, 0x200000, CRC(c187c36a) SHA1(bb55c2a768a43ef19a7847a4aa113523fee26c20) , ROM_SKIP(6)|ROM_GROUPWORD ) ROMX_LOAD( "mpr-15374.ic41", 0x800006, 0x200000, CRC(e026aab0) SHA1(75dfaef6d50c3d1d7f27aa5e44fcbc0ff2173c6f) , ROM_SKIP(6)|ROM_GROUPWORD ) - ROM_REGION( 0x400000, "sega", 0 ) /* Sega PCM sound data */ + ROM_REGION( 0x400000, "mainpcb:sega", 0 ) /* Sega PCM sound data */ ROM_LOAD( "mpr-15385.ic1", 0x000000, 0x200000, CRC(5a9b0aa0) SHA1(d208aa165f9eea05e3b8c3f406ff44374e4f6887) ) ROM_END @@ -4703,39 +5068,111 @@ void segas32_state::scross_sw2_output( int which, UINT16 data ) * *************************************/ -DRIVER_INIT_MEMBER(segas32_state,alien3) +WRITE16_MEMBER(segas32_new_state::dual_pcb_comms_w) { - segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); - m_sw1_output = &segas32_state::alien3_sw1_output; + COMBINE_DATA(&m_dual_pcb_comms[offset]); +} + +READ16_MEMBER(segas32_new_state::dual_pcb_comms_r) +{ + return m_dual_pcb_comms[offset]; } -READ16_MEMBER(segas32_state::arescue_handshake_r) + +/* There must be something on the comms board for this? + Probably not a dip/solder link/trace cut, but maybe + just whichever way the cables are plugged in? + Both f1en and arescue master units try to set bit 1... */ +READ16_MEMBER(segas32_new_state::dual_pcb_masterslave) { - return 0; + return 0; // 0/1 master/slave } -READ16_MEMBER(segas32_state::arescue_slavebusy_r) +READ16_MEMBER(segas32_new_state::dual_pcb_slave) { - return 0x100; // prevents master trying to synch to slave. + return 1; // 0/1 master/slave } -DRIVER_INIT_MEMBER(segas32_state,arescue) + + + +DRIVER_INIT_MEMBER(segas32_new_state,titlef) { m_mainpcb->init_titlef(); } +DRIVER_INIT_MEMBER(segas32_new_state,slipstrm) { m_mainpcb->init_slipstrm(); } +DRIVER_INIT_MEMBER(segas32_new_state,radm) { m_mainpcb->init_radm(); } +DRIVER_INIT_MEMBER(segas32_new_state,holo) { m_mainpcb->init_holo(); } +DRIVER_INIT_MEMBER(segas32_new_state,svf) { m_mainpcb->init_svf(); } +DRIVER_INIT_MEMBER(segas32_new_state,jleague) { m_mainpcb->init_jleague(); } +DRIVER_INIT_MEMBER(segas32_new_state,jpark) { m_mainpcb->init_jpark(); } +DRIVER_INIT_MEMBER(segas32_new_state,ga2) { m_mainpcb->init_ga2(); } +DRIVER_INIT_MEMBER(segas32_new_state,scross) { m_mainpcb->init_scross(); } +DRIVER_INIT_MEMBER(segas32_new_state,spidman) { m_mainpcb->init_spidman(); } +DRIVER_INIT_MEMBER(segas32_new_state,sonicp) { m_mainpcb->init_sonicp(); } +DRIVER_INIT_MEMBER(segas32_new_state,dbzvrvs) { m_mainpcb->init_dbzvrvs(); } +DRIVER_INIT_MEMBER(segas32_new_state,brival) { m_mainpcb->init_brival(); } +DRIVER_INIT_MEMBER(segas32_new_state,harddunk) { m_mainpcb->init_harddunk(); } +DRIVER_INIT_MEMBER(segas32_new_state,arabfgt) { m_mainpcb->init_arabfgt(); } +DRIVER_INIT_MEMBER(segas32_new_state,sonic) { m_mainpcb->init_sonic(); } +DRIVER_INIT_MEMBER(segas32_new_state,alien3) { m_mainpcb->init_alien3(); } +DRIVER_INIT_MEMBER(segas32_new_state,darkedge) { m_mainpcb->init_darkedge(); } +DRIVER_INIT_MEMBER(segas32_new_state,radr) { m_mainpcb->init_radr(); } +DRIVER_INIT_MEMBER(segas32_new_state,orunners) { m_mainpcb->init_orunners(); } + +DRIVER_INIT_MEMBER(segas32_new_state, arescue) { - segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); - m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa00000, 0xa00007, read16_delegate(FUNC(segas32_state::arescue_dsp_r),this), write16_delegate(FUNC(segas32_state::arescue_dsp_w),this)); + m_mainpcb->init_arescue(1); + m_slavepcb->init_arescue(1); m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); - m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_state::dual_pcb_comms_w),this)); - m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_state::dual_pcb_masterslave),this)); + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_new_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_new_state::dual_pcb_comms_w),this)); + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_new_state::dual_pcb_masterslave),this)); + + m_slavepcb->m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_new_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_new_state::dual_pcb_comms_w),this)); + m_slavepcb->m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_new_state::dual_pcb_slave),this)); +} - m_maincpu->space(AS_PROGRAM).install_read_handler(0x810000, 0x810001, read16_delegate(FUNC(segas32_state::arescue_handshake_r),this)); - m_maincpu->space(AS_PROGRAM).install_read_handler(0x81000e, 0x81000f, read16_delegate(FUNC(segas32_state::arescue_slavebusy_r),this)); +DRIVER_INIT_MEMBER(segas32_new_state,f1en) { + + m_mainpcb->init_f1en(); + m_slavepcb->init_f1en(); + + m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); + memset(m_dual_pcb_comms, 0xff, 0x1000 / 2); + + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_new_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_new_state::dual_pcb_comms_w),this)); + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_new_state::dual_pcb_masterslave),this)); + + m_slavepcb->m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_new_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_new_state::dual_pcb_comms_w),this)); + m_slavepcb->m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_new_state::dual_pcb_slave),this)); +} + +DRIVER_INIT_MEMBER(segas32_new_state,f1lap) +{ + m_mainpcb->init_f1lap(); + m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x800000, 0x800fff, read16_delegate(FUNC(segas32_new_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_new_state::dual_pcb_comms_w),this)); + m_mainpcb->m_maincpu->space(AS_PROGRAM).install_read_handler(0x801000, 0x801003, read16_delegate(FUNC(segas32_new_state::dual_pcb_masterslave),this)); +} + + +void segas32_state::init_alien3(void) +{ + segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r), this), write16_delegate(FUNC(segas32_state::analog_custom_io_w), this)); + m_sw1_output = &segas32_state::alien3_sw1_output; +} + +void segas32_state::init_arescue(int m_hasdsp) +{ + segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); + if (m_hasdsp) m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa00000, 0xa00007, read16_delegate(FUNC(segas32_state::arescue_dsp_r),this), write16_delegate(FUNC(segas32_state::arescue_dsp_w),this)); + + for (int i = 0; i < 6; i++) + m_arescue_dsp_io[i] = 0x00; m_sw1_output = &segas32_state::arescue_sw1_output; } -DRIVER_INIT_MEMBER(segas32_state,arabfgt) +void segas32_state::init_arabfgt(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); @@ -4745,7 +5182,7 @@ DRIVER_INIT_MEMBER(segas32_state,arabfgt) } -DRIVER_INIT_MEMBER(segas32_state,brival) +void segas32_state::init_brival(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); @@ -4756,7 +5193,7 @@ DRIVER_INIT_MEMBER(segas32_state,brival) } -DRIVER_INIT_MEMBER(segas32_state,darkedge) +void segas32_state::init_darkedge(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); @@ -4765,7 +5202,7 @@ DRIVER_INIT_MEMBER(segas32_state,darkedge) m_system32_prot_vblank = &segas32_state::darkedge_fd1149_vblank; } -DRIVER_INIT_MEMBER(segas32_state,dbzvrvs) +void segas32_state::init_dbzvrvs(void) { segas32_common_init(read16_delegate(), write16_delegate()); @@ -4773,24 +5210,11 @@ DRIVER_INIT_MEMBER(segas32_state,dbzvrvs) m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xa00000, 0xa7ffff, read16_delegate(FUNC(segas32_state::dbzvrvs_protection_r),this), write16_delegate(FUNC(segas32_state::dbzvrvs_protection_w),this)); } -WRITE16_MEMBER(segas32_state::f1en_comms_echo_w) -{ - // pretend that slave is following master op, enables attract mode video with sound - if (ACCESSING_BITS_0_7) - space.write_byte( 0x810049, data ); -} -DRIVER_INIT_MEMBER(segas32_state,f1en) +void segas32_state::init_f1en(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); - m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); - memset(m_dual_pcb_comms, 0xff, 0x1000 / 2); - - m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x810000, 0x810fff, read16_delegate(FUNC(segas32_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_state::dual_pcb_comms_w),this)); - m_maincpu->space(AS_PROGRAM).install_read_handler(0x818000, 0x818003, read16_delegate(FUNC(segas32_state::dual_pcb_masterslave),this)); - - m_maincpu->space(AS_PROGRAM).install_write_handler(0x810048, 0x810049, write16_delegate(FUNC(segas32_state::f1en_comms_echo_w),this)); m_sw1_output = &segas32_state::radm_sw1_output; } @@ -4798,22 +5222,16 @@ DRIVER_INIT_MEMBER(segas32_state,f1en) -DRIVER_INIT_MEMBER(segas32_state,f1lap) +void segas32_state::init_f1lap(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); - - m_dual_pcb_comms = auto_alloc_array(machine(), UINT16, 0x1000/2); - m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x800000, 0x800fff, read16_delegate(FUNC(segas32_state::dual_pcb_comms_r),this), write16_delegate(FUNC(segas32_state::dual_pcb_comms_w),this)); - m_maincpu->space(AS_PROGRAM).install_read_handler(0x801000, 0x801003, read16_delegate(FUNC(segas32_state::dual_pcb_masterslave),this)); - -// m_maincpu->space(AS_PROGRAM).install_write_handler(0x800048, 0x800049, write16_delegate(FUNC(segas32_state::f1en_comms_echo_w),this)); m_system32_prot_vblank = &segas32_state::f1lap_fd1149_vblank; m_sw1_output = &segas32_state::f1lap_sw1_output; } -DRIVER_INIT_MEMBER(segas32_state,ga2) +void segas32_state::init_ga2(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); @@ -4822,7 +5240,7 @@ DRIVER_INIT_MEMBER(segas32_state,ga2) } -DRIVER_INIT_MEMBER(segas32_state,harddunk) +void segas32_state::init_harddunk(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); m_sw1_output = &segas32_state::harddunk_sw1_output; @@ -4831,13 +5249,13 @@ DRIVER_INIT_MEMBER(segas32_state,harddunk) } -DRIVER_INIT_MEMBER(segas32_state,holo) +void segas32_state::init_holo(void) { segas32_common_init(read16_delegate(), write16_delegate()); } -DRIVER_INIT_MEMBER(segas32_state,jpark) +void segas32_state::init_jpark(void) { /* Temp. Patch until we emulate the 'Drive Board', thanks to Malice */ UINT16 *pROM = (UINT16 *)memregion("maincpu")->base(); @@ -4851,7 +5269,7 @@ DRIVER_INIT_MEMBER(segas32_state,jpark) } -DRIVER_INIT_MEMBER(segas32_state,orunners) +void segas32_state::init_orunners(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::orunners_custom_io_w),this)); m_sw1_output = &segas32_state::orunners_sw1_output; @@ -4859,7 +5277,7 @@ DRIVER_INIT_MEMBER(segas32_state,orunners) } -DRIVER_INIT_MEMBER(segas32_state,radm) +void segas32_state::init_radm(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); m_sw1_output = &segas32_state::radm_sw1_output; @@ -4867,7 +5285,7 @@ DRIVER_INIT_MEMBER(segas32_state,radm) } -DRIVER_INIT_MEMBER(segas32_state,radr) +void segas32_state::init_radr(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); m_sw1_output = &segas32_state::radm_sw1_output; @@ -4875,7 +5293,7 @@ DRIVER_INIT_MEMBER(segas32_state,radr) } -DRIVER_INIT_MEMBER(segas32_state,scross) +void segas32_state::init_scross(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); m_soundcpu->space(AS_PROGRAM).install_write_handler(0xb0, 0xbf, write8_delegate(FUNC(segas32_state::scross_bank_w),this)); @@ -4885,13 +5303,13 @@ DRIVER_INIT_MEMBER(segas32_state,scross) } -DRIVER_INIT_MEMBER(segas32_state,slipstrm) +void segas32_state::init_slipstrm(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::analog_custom_io_r),this), write16_delegate(FUNC(segas32_state::analog_custom_io_w),this)); } -DRIVER_INIT_MEMBER(segas32_state,sonic) +void segas32_state::init_sonic(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::sonic_custom_io_r),this), write16_delegate(FUNC(segas32_state::sonic_custom_io_w),this)); @@ -4900,32 +5318,32 @@ DRIVER_INIT_MEMBER(segas32_state,sonic) } -DRIVER_INIT_MEMBER(segas32_state,sonicp) +void segas32_state::init_sonicp(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::sonic_custom_io_r),this), write16_delegate(FUNC(segas32_state::sonic_custom_io_w),this)); } -DRIVER_INIT_MEMBER(segas32_state,spidman) +void segas32_state::init_spidman(void) { segas32_common_init(read16_delegate(FUNC(segas32_state::extra_custom_io_r),this), write16_delegate()); } -DRIVER_INIT_MEMBER(segas32_state,svf) +void segas32_state::init_svf(void) { segas32_common_init(read16_delegate(), write16_delegate()); } -DRIVER_INIT_MEMBER(segas32_state,jleague) +void segas32_state::init_jleague(void) { segas32_common_init(read16_delegate(), write16_delegate()); m_maincpu->space(AS_PROGRAM).install_write_handler(0x20F700, 0x20F705, write16_delegate(FUNC(segas32_state::jleague_protection_w),this)); } -DRIVER_INIT_MEMBER(segas32_state,titlef) +void segas32_state::init_titlef(void) { segas32_common_init(read16_delegate(), write16_delegate()); m_sw1_output = &segas32_state::titlef_sw1_output; @@ -4933,62 +5351,83 @@ DRIVER_INIT_MEMBER(segas32_state,titlef) } - /************************************* * * Game driver(s) * *************************************/ -GAME( 1992, arescue, 0, system32, arescue, segas32_state, arescue, ROT0, "Sega", "Air Rescue (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, arescuej, arescue, system32, arescue, segas32_state, arescue, ROT0, "Sega", "Air Rescue (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, alien3, 0, system32, alien3, segas32_state, alien3, ROT0, "Sega", "Alien3: The Gun (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, alien3u, alien3, system32, alien3, segas32_state, alien3, ROT0, "Sega", "Alien3: The Gun (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, arabfgt, 0, system32, arabfgt, segas32_state, arabfgt, ROT0, "Sega", "Arabian Fight (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 03.1992 */ -GAME( 1991, arabfgtu, arabfgt, system32, arabfgtu, segas32_state, arabfgt, ROT0, "Sega", "Arabian Fight (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, arabfgtj, arabfgt, system32, arabfgt, segas32_state, arabfgt, ROT0, "Sega", "Arabian Fight (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, brival, 0, system32, brival, segas32_state, brival, ROT0, "Sega", "Burning Rival (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, brivalj, brival, system32, brival, segas32_state, brival, ROT0, "Sega", "Burning Rival (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, darkedge, 0, system32, darkedge, segas32_state, darkedge, ROT0, "Sega", "Dark Edge (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, darkedgej, darkedge, system32, darkedge, segas32_state, darkedge, ROT0, "Sega", "Dark Edge (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, dbzvrvs, 0, system32, dbzvrvs, segas32_state, dbzvrvs, ROT0, "Sega / Banpresto", "Dragon Ball Z V.R.V.S. (Japan)", GAME_IMPERFECT_GRAPHICS) -GAME( 1991, f1en, 0, system32, f1en, segas32_state, f1en, ROT0, "Sega", "F1 Exhaust Note (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, f1enu, f1en, system32, f1en, segas32_state, f1en, ROT0, "Sega", "F1 Exhaust Note (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, f1enj, f1en, system32, f1en, segas32_state, f1en, ROT0, "Sega", "F1 Exhaust Note (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, f1lap, 0, system32, f1lap, segas32_state, f1lap, ROT0, "Sega", "F1 Super Lap (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, f1lapj, f1lap, system32, f1lap, segas32_state, f1lap, ROT0, "Sega", "F1 Super Lap (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, ga2, 0, system32_v25, ga2, segas32_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, ga2u, ga2, system32_v25, ga2u, segas32_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, ga2j, ga2, system32_v25, ga2, segas32_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, holo, 0, system32, holo, segas32_state, holo, ORIENTATION_FLIP_Y, "Sega", "Holosseum (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, jpark, 0, system32, jpark, segas32_state, jpark, ROT0, "Sega", "Jurassic Park (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 02.1994 */ -GAME( 1993, jparkj, jpark, system32, jpark, segas32_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Rev A, Deluxe)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, jparkja, jpark, system32, jpark, segas32_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Deluxe)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1993, jparkjc, jpark, system32, jpark, segas32_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Rev A, Conversion)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, kokoroj2, 0, system32, radr, segas32_state, radr, ROT0, "Sega", "Kokoroji 2", GAME_IMPERFECT_GRAPHICS | GAME_NOT_WORKING) /* uses an Audio CD */ -GAME( 1990, radm, 0, system32, radm, segas32_state, radm, ROT0, "Sega", "Rad Mobile (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 02.1991 */ -GAME( 1990, radmu, radm, system32, radm, segas32_state, radm, ROT0, "Sega", "Rad Mobile (US)", GAME_IMPERFECT_GRAPHICS ) -GAMEL(1991, radr, 0, system32, radr, segas32_state, radr, ROT0, "Sega", "Rad Rally (World)", GAME_IMPERFECT_GRAPHICS, layout_radr ) -GAMEL(1991, radru, radr, system32, radr, segas32_state, radr, ROT0, "Sega", "Rad Rally (US)", GAME_IMPERFECT_GRAPHICS, layout_radr ) -GAMEL(1991, radrj, radr, system32, radr, segas32_state, radr, ROT0, "Sega", "Rad Rally (Japan)", GAME_IMPERFECT_GRAPHICS, layout_radr ) -GAMEL(1995, slipstrm, 0, system32, slipstrm, segas32_state, slipstrm, ROT0, "Capcom", "Slip Stream (Brazil 950515)", GAME_IMPERFECT_GRAPHICS, layout_radr ) -GAMEL(1995, slipstrmh, slipstrm, system32, slipstrm, segas32_state, slipstrm, ROT0, "Capcom", "Slip Stream (Hispanic 950515)", GAME_IMPERFECT_GRAPHICS, layout_radr ) -GAME( 1992, sonic, 0, system32, sonic, segas32_state, sonic, ROT0, "Sega", "SegaSonic The Hedgehog (Japan, rev. C)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, sonicp, sonic, system32, sonic, segas32_state, sonicp, ROT0, "Sega", "SegaSonic The Hedgehog (Japan, prototype)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, spidman, 0, system32, spidman, segas32_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, spidmanu, spidman, system32, spidmanu, segas32_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1991, spidmanj, spidman, system32, spidman, segas32_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, svf, 0, system32, svf, segas32_state, svf, ROT0, "Sega", "Super Visual Football: European Sega Cup", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, svs, svf, system32, svf, segas32_state, svf, ROT0, "Sega", "Super Visual Soccer: Sega Cup (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, jleague, svf, system32, svf, segas32_state, jleague, ROT0, "Sega", "The J.League 1994 (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, harddunk, 0, multi32, harddunk, segas32_state, harddunk, ROT0, "Sega", "Hard Dunk (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1994, harddunkj, harddunk, multi32, harddunk, segas32_state, harddunk, ROT0, "Sega", "Hard Dunk (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, orunners, 0, multi32, orunners, segas32_state, orunners, ROT0, "Sega", "OutRunners (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, orunnersu, orunners, multi32, orunners, segas32_state, orunners, ROT0, "Sega", "OutRunners (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, orunnersj, orunners, multi32, orunners, segas32_state, orunners, ROT0, "Sega", "OutRunners (Japan)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, scross, 0, multi32, scross, segas32_state, scross, ROT0, "Sega", "Stadium Cross (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, scrossa, scross, multi32, scross, segas32_state, scross, ROT0, "Sega", "Stadium Cross (World, alt)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, scrossu, scross, multi32, scross, segas32_state, scross, ROT0, "Sega", "Stadium Cross (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, titlef, 0, multi32, titlef, segas32_state, titlef, ROT0, "Sega", "Title Fight (World)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, titlefu, titlef, multi32, titlef, segas32_state, titlef, ROT0, "Sega", "Title Fight (US)", GAME_IMPERFECT_GRAPHICS ) -GAME( 1992, titlefj, titlef, multi32, titlef, segas32_state, titlef, ROT0, "Sega", "Title Fight (Japan)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, arescue, 0, sega_system32_dual_direct, arescue, segas32_new_state, arescue, ROT0, "Sega", "Air Rescue (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, arescuej, arescue, sega_system32_dual_direct, arescue, segas32_new_state, arescue, ROT0, "Sega", "Air Rescue (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1993, alien3, 0, sega_system32, alien3, segas32_new_state, alien3, ROT0, "Sega", "Alien3: The Gun (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1993, alien3u, alien3, sega_system32, alien3, segas32_new_state, alien3, ROT0, "Sega", "Alien3: The Gun (US)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1991, arabfgt, 0, sega_system32, arabfgt, segas32_new_state, arabfgt, ROT0, "Sega", "Arabian Fight (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 03.1992 */ +GAME( 1991, arabfgtu, arabfgt, sega_system32, arabfgtu, segas32_new_state, arabfgt, ROT0, "Sega", "Arabian Fight (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1991, arabfgtj, arabfgt, sega_system32, arabfgt, segas32_new_state, arabfgt, ROT0, "Sega", "Arabian Fight (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, brival, 0, sega_system32, brival, segas32_new_state, brival, ROT0, "Sega", "Burning Rival (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, brivalj, brival, sega_system32, brival, segas32_new_state, brival, ROT0, "Sega", "Burning Rival (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, darkedge, 0, sega_system32, darkedge, segas32_new_state, darkedge, ROT0, "Sega", "Dark Edge (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, darkedgej, darkedge, sega_system32, darkedge, segas32_new_state, darkedge, ROT0, "Sega", "Dark Edge (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1994, dbzvrvs, 0, sega_system32, dbzvrvs, segas32_new_state, dbzvrvs, ROT0, "Sega / Banpresto", "Dragon Ball Z V.R.V.S. (Japan)", GAME_IMPERFECT_GRAPHICS) + +GAME( 1991, f1en, 0, sega_system32_dual_direct, f1en, segas32_new_state, f1en, ROT0, "Sega", "F1 Exhaust Note (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1991, f1enu, f1en, sega_system32_dual_direct, f1en, segas32_new_state, f1en, ROT0, "Sega", "F1 Exhaust Note (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1991, f1enj, f1en, sega_system32_dual_direct, f1en, segas32_new_state, f1en, ROT0, "Sega", "F1 Exhaust Note (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1993, f1lap, 0, sega_system32, f1lap, segas32_new_state, f1lap, ROT0, "Sega", "F1 Super Lap (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1993, f1lapj, f1lap, sega_system32, f1lap, segas32_new_state, f1lap, ROT0, "Sega", "F1 Super Lap (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, ga2, 0, sega_system32_v25, ga2, segas32_new_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, ga2u, ga2, sega_system32_v25, ga2u, segas32_new_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, ga2j, ga2, sega_system32_v25, ga2, segas32_new_state, ga2, ROT0, "Sega", "Golden Axe: The Revenge of Death Adder (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, holo, 0, sega_system32, holo, segas32_new_state, holo, ORIENTATION_FLIP_Y, "Sega", "Holosseum (US)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1993, jpark, 0, sega_system32, jpark, segas32_new_state, jpark, ROT0, "Sega", "Jurassic Park (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 02.1994 */ +GAME( 1993, jparkj, jpark, sega_system32, jpark, segas32_new_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Rev A, Deluxe)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1993, jparkja, jpark, sega_system32, jpark, segas32_new_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Deluxe)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1993, jparkjc, jpark, sega_system32, jpark, segas32_new_state, jpark, ROT0, "Sega", "Jurassic Park (Japan, Rev A, Conversion)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1994, kokoroj2, 0, sega_system32, radr, segas32_new_state, radr, ROT0, "Sega", "Kokoroji 2", GAME_IMPERFECT_GRAPHICS | GAME_NOT_WORKING) /* uses an Audio CD */ + +GAME( 1990, radm, 0, sega_system32, radm, segas32_new_state, radm, ROT0, "Sega", "Rad Mobile (World)", GAME_IMPERFECT_GRAPHICS ) /* Released in 02.1991 */ +GAME( 1990, radmu, radm, sega_system32, radm, segas32_new_state, radm, ROT0, "Sega", "Rad Mobile (US)", GAME_IMPERFECT_GRAPHICS ) + +GAMEL(1991, radr, 0, sega_system32, radr, segas32_new_state, radr, ROT0, "Sega", "Rad Rally (World)", GAME_IMPERFECT_GRAPHICS, layout_radr ) +GAMEL(1991, radru, radr, sega_system32, radr, segas32_new_state, radr, ROT0, "Sega", "Rad Rally (US)", GAME_IMPERFECT_GRAPHICS, layout_radr ) +GAMEL(1991, radrj, radr, sega_system32, radr, segas32_new_state, radr, ROT0, "Sega", "Rad Rally (Japan)", GAME_IMPERFECT_GRAPHICS, layout_radr ) + +GAMEL(1995, slipstrm, 0, sega_system32, slipstrm, segas32_new_state, slipstrm, ROT0, "Capcom", "Slip Stream (Brazil 950515)", GAME_IMPERFECT_GRAPHICS, layout_radr ) +GAMEL(1995, slipstrmh, slipstrm, sega_system32, slipstrm, segas32_new_state, slipstrm, ROT0, "Capcom", "Slip Stream (Hispanic 950515)", GAME_IMPERFECT_GRAPHICS, layout_radr ) + +GAME( 1992, sonic, 0, sega_system32, sonic, segas32_new_state, sonic, ROT0, "Sega", "SegaSonic The Hedgehog (Japan, rev. C)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, sonicp, sonic, sega_system32, sonic, segas32_new_state, sonicp, ROT0, "Sega", "SegaSonic The Hedgehog (Japan, prototype)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1991, spidman, 0, sega_system32, spidman, segas32_new_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1991, spidmanu, spidman, sega_system32, spidmanu, segas32_new_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1991, spidmanj, spidman, sega_system32, spidman, segas32_new_state, spidman, ROT0, "Sega", "Spider-Man: The Videogame (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1994, svf, 0, sega_system32, svf, segas32_new_state, svf, ROT0, "Sega", "Super Visual Football: European Sega Cup", GAME_IMPERFECT_GRAPHICS ) +GAME( 1994, svs, svf, sega_system32, svf, segas32_new_state, svf, ROT0, "Sega", "Super Visual Soccer: Sega Cup (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1994, jleague, svf, sega_system32, svf, segas32_new_state, jleague, ROT0, "Sega", "The J.League 1994 (Japan)", GAME_IMPERFECT_GRAPHICS ) + + +GAME( 1994, harddunk, 0, sega_multi32, harddunk, segas32_new_state, harddunk, ROT0, "Sega", "Hard Dunk (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1994, harddunkj, harddunk, sega_multi32, harddunk, segas32_new_state, harddunk, ROT0, "Sega", "Hard Dunk (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, orunners, 0, sega_multi32, orunners, segas32_new_state, orunners, ROT0, "Sega", "OutRunners (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, orunnersu, orunners, sega_multi32, orunners, segas32_new_state, orunners, ROT0, "Sega", "OutRunners (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, orunnersj, orunners, sega_multi32, orunners, segas32_new_state, orunners, ROT0, "Sega", "OutRunners (Japan)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, scross, 0, sega_multi32, scross, segas32_new_state, scross, ROT0, "Sega", "Stadium Cross (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, scrossa, scross, sega_multi32, scross, segas32_new_state, scross, ROT0, "Sega", "Stadium Cross (World, alt)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, scrossu, scross, sega_multi32, scross, segas32_new_state, scross, ROT0, "Sega", "Stadium Cross (US)", GAME_IMPERFECT_GRAPHICS ) + +GAME( 1992, titlef, 0, sega_multi32, titlef, segas32_new_state, titlef, ROT0, "Sega", "Title Fight (World)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, titlefu, titlef, sega_multi32, titlef, segas32_new_state, titlef, ROT0, "Sega", "Title Fight (US)", GAME_IMPERFECT_GRAPHICS ) +GAME( 1992, titlefj, titlef, sega_multi32, titlef, segas32_new_state, titlef, ROT0, "Sega", "Title Fight (Japan)", GAME_IMPERFECT_GRAPHICS ) diff --git a/src/mame/includes/segas32.h b/src/mame/includes/segas32.h index 3e51fe9e2d1..9ea0727ad3a 100644 --- a/src/mame/includes/segas32.h +++ b/src/mame/includes/segas32.h @@ -10,24 +10,12 @@ #include "sound/multipcm.h" -class segas32_state : public driver_device + + +class segas32_state : public device_t { public: - segas32_state(const machine_config &mconfig, device_type type, const char *tag) - : driver_device(mconfig, type, tag), - m_z80_shared_ram(*this,"z80_shared_ram"), - m_ga2_dpram(*this,"ga2_dpram"), - m_system32_workram(*this,"workram"), - m_system32_videoram(*this,"videoram", 0), - m_system32_spriteram(*this,"spriteram", 0), - m_system32_paletteram(*this,"paletteram", 0) , - m_maincpu(*this, "maincpu"), - m_soundcpu(*this, "soundcpu"), - m_multipcm(*this, "sega"), - m_eeprom(*this, "eeprom"), - m_gfxdecode(*this, "gfxdecode"), - m_screen(*this, "screen"), - m_palette(*this, "palette") { } + segas32_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); required_shared_ptr<UINT8> m_z80_shared_ram; optional_shared_ptr<UINT8> m_ga2_dpram; @@ -43,6 +31,9 @@ public: required_device<gfxdecode_device> m_gfxdecode; required_device<screen_device> m_screen; required_device<palette_device> m_palette; + + required_device<timer_device> m_irq_timer_0; + required_device<timer_device> m_irq_timer_1; typedef void (segas32_state::*sys32_output_callback)(int which, UINT16 data); @@ -82,7 +73,6 @@ public: sys32_output_callback m_sw1_output; sys32_output_callback m_sw2_output; sys32_output_callback m_sw3_output; - UINT16* m_dual_pcb_comms; UINT16 *m_system32_protram; UINT16 m_system32_displayenable[2]; UINT16 m_system32_tilebank_external; @@ -175,41 +165,11 @@ public: DECLARE_WRITE8_MEMBER(sound_bank_hi_w); DECLARE_READ8_MEMBER(sound_dummy_r); DECLARE_WRITE8_MEMBER(sound_dummy_w); - DECLARE_WRITE16_MEMBER(dual_pcb_comms_w); - DECLARE_READ16_MEMBER(dual_pcb_comms_r); - DECLARE_READ16_MEMBER(dual_pcb_masterslave); - DECLARE_READ16_MEMBER(arescue_handshake_r); - DECLARE_READ16_MEMBER(arescue_slavebusy_r); - DECLARE_WRITE16_MEMBER(f1en_comms_echo_w); + DECLARE_WRITE8_MEMBER(multipcm_bank_w); DECLARE_WRITE8_MEMBER(scross_bank_w); - DECLARE_DRIVER_INIT(titlef); - DECLARE_DRIVER_INIT(slipstrm); - DECLARE_DRIVER_INIT(radm); - DECLARE_DRIVER_INIT(holo); - DECLARE_DRIVER_INIT(svf); - DECLARE_DRIVER_INIT(jleague); - DECLARE_DRIVER_INIT(arescue); - DECLARE_DRIVER_INIT(jpark); - DECLARE_DRIVER_INIT(ga2); - DECLARE_DRIVER_INIT(scross); - DECLARE_DRIVER_INIT(spidman); - DECLARE_DRIVER_INIT(sonicp); - DECLARE_DRIVER_INIT(f1en); - DECLARE_DRIVER_INIT(dbzvrvs); - DECLARE_DRIVER_INIT(brival); - DECLARE_DRIVER_INIT(harddunk); - DECLARE_DRIVER_INIT(arabfgt); - DECLARE_DRIVER_INIT(sonic); - DECLARE_DRIVER_INIT(alien3); - DECLARE_DRIVER_INIT(darkedge); - DECLARE_DRIVER_INIT(radr); - DECLARE_DRIVER_INIT(f1lap); - DECLARE_DRIVER_INIT(orunners); + TILE_GET_INFO_MEMBER(get_tile_info); - DECLARE_MACHINE_RESET(system32); - DECLARE_VIDEO_START(system32); - DECLARE_VIDEO_START(multi32); UINT32 screen_update_system32(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); UINT32 screen_update_multi32_left(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); UINT32 screen_update_multi32_right(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); @@ -272,7 +232,71 @@ public: void clear_sound_irq(int which); void darkedge_fd1149_vblank(); void f1lap_fd1149_vblank(); + + void init_alien3(void); + void init_arescue(int m_hasdsp); + void init_arabfgt(void); + void init_brival(void); + void init_darkedge(void); + void init_dbzvrvs(void); + void init_f1en(void); + void init_f1lap(void); + void init_ga2(void); + void init_harddunk(void); + void init_holo(void); + void init_jpark(void); + void init_orunners(void); + void init_radm(void); + void init_radr(void); + void init_scross(void); + void init_slipstrm(void); + void init_sonic(void); + void init_sonicp(void); + void init_spidman(void); + void init_svf(void); + void init_jleague(void); + void init_titlef(void); + +protected: + virtual void device_start(); + virtual void device_reset(); +}; + +class segas32_regular_state : public segas32_state +{ +public: + segas32_regular_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + +protected: + virtual machine_config_constructor device_mconfig_additions() const; +// virtual void device_start(); +// virtual void device_reset(); +}; + +class segas32_v25_state : public segas32_state +{ +public: + segas32_v25_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + +protected: + virtual machine_config_constructor device_mconfig_additions() const; + virtual void device_start(); +// virtual void device_reset(); +}; + +class sega_multi32_state : public segas32_state +{ +public: + sega_multi32_state(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); + +protected: + virtual machine_config_constructor device_mconfig_additions() const; + virtual void device_start(); +// virtual void device_reset(); }; /*----------- defined in machine/segas32.c -----------*/ extern const UINT8 ga2_v25_opcode_table[]; + +extern const device_type SEGA_S32_PCB; + diff --git a/src/mame/video/segas32.c b/src/mame/video/segas32.c index a967425b98b..9a12ed7b445 100644 --- a/src/mame/video/segas32.c +++ b/src/mame/video/segas32.c @@ -245,24 +245,20 @@ void segas32_state::common_start(int multi32) m_solid_ffff = auto_alloc_array(machine(), UINT16, 512); memset(m_solid_ffff, 0xff, sizeof(m_solid_ffff[0]) * 512); + memset(m_system32_videoram, 0x00, 0x20000); + /* initialize videoram */ m_system32_videoram[0x1ff00/2] = 0x8000; -} + memset(m_mixer_control, 0xff, sizeof(m_mixer_control[0][0]) * 0x80 ); -VIDEO_START_MEMBER(segas32_state,system32) -{ - common_start(0); -} + - -VIDEO_START_MEMBER(segas32_state,multi32) -{ - common_start(1); } + /************************************* * * Sprite management |