mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
viper.cpp: input cleanups (nw)
This commit is contained in:
parent
6b858df31a
commit
ed5d851b10
@ -380,13 +380,13 @@ public:
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_ata(*this, "ata"),
|
||||
m_voodoo(*this, "voodoo"),
|
||||
m_workram(*this, "workram")
|
||||
m_workram(*this, "workram"),
|
||||
m_io_ports(*this, {"IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7"})
|
||||
{
|
||||
}
|
||||
|
||||
uint32_t m_epic_iack;
|
||||
int m_cf_card_ide;
|
||||
int m_unk1_bit;
|
||||
uint32_t m_voodoo3_pci_reg[0x100];
|
||||
int m_unk_serial_bit_w;
|
||||
uint16_t m_unk_serial_cmd;
|
||||
@ -403,7 +403,7 @@ public:
|
||||
DECLARE_WRITE64_MEMBER(voodoo3_w);
|
||||
DECLARE_READ64_MEMBER(voodoo3_lfb_r);
|
||||
DECLARE_WRITE64_MEMBER(voodoo3_lfb_w);
|
||||
DECLARE_READ64_MEMBER(unk1_r);
|
||||
DECLARE_READ8_MEMBER(input_r);
|
||||
DECLARE_READ64_MEMBER(e70000_r);
|
||||
DECLARE_WRITE64_MEMBER(e70000_w);
|
||||
DECLARE_WRITE64_MEMBER(unk1a_w);
|
||||
@ -446,6 +446,9 @@ public:
|
||||
required_device<ata_interface_device> m_ata;
|
||||
required_device<voodoo_3_device> m_voodoo;
|
||||
required_shared_ptr<uint64_t> m_workram;
|
||||
required_ioport_array<8> m_io_ports;
|
||||
uint8_t m_ds2430_unk_status;
|
||||
DECLARE_CUSTOM_INPUT_MEMBER(ds2430_unk_r);
|
||||
};
|
||||
|
||||
uint32_t viper_state::screen_update_viper(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
||||
@ -1729,7 +1732,6 @@ WRITE64_MEMBER(viper_state::voodoo3_lfb_w)
|
||||
#define DS2430_STATE_READ_MEM 5
|
||||
#define DS2430_STATE_READ_MEM_ADDRESS 6
|
||||
|
||||
static int unk1_bit = 1;
|
||||
static uint8_t ds2430_data;
|
||||
static int ds2430_data_count = 0;
|
||||
static int ds2430_reset = 0;
|
||||
@ -1745,18 +1747,19 @@ TIMER_CALLBACK_MEMBER(viper_state::ds2430_timer_callback)
|
||||
|
||||
if (param == 1)
|
||||
{
|
||||
unk1_bit = 0;
|
||||
m_ds2430_unk_status = 0;
|
||||
ds2430_timer->adjust(attotime::from_usec(150), 2);
|
||||
}
|
||||
else if (param == 2)
|
||||
{
|
||||
unk1_bit = 1;
|
||||
m_ds2430_unk_status = 1;
|
||||
ds2430_reset = 1;
|
||||
ds2430_state = DS2430_STATE_ROM_COMMAND;
|
||||
}
|
||||
}
|
||||
|
||||
READ64_MEMBER(viper_state::unk1_r)
|
||||
#ifdef UNUSED_FUNCTION
|
||||
READ64_MEMBER(viper_state::input_r)
|
||||
{
|
||||
uint64_t r = 0;
|
||||
//return 0;//0x0000400000000000U;
|
||||
@ -1766,14 +1769,14 @@ READ64_MEMBER(viper_state::unk1_r)
|
||||
if (ACCESSING_BITS_40_47)
|
||||
{
|
||||
uint64_t reg = 0;
|
||||
reg |= (unk1_bit << 5);
|
||||
reg |= (m_ds2430_unk_status << 5);
|
||||
reg |= 0x40; // if this bit is 0, loads a disk copier instead
|
||||
//r |= 0x04; // screen flip
|
||||
reg |= 0x08; // memory card check (1 = enable)
|
||||
|
||||
r |= reg << 40;
|
||||
|
||||
//r |= (uint64_t)(unk1_bit << 5) << 40;
|
||||
//r |= (uint64_t)(m_ds2430_unk_status << 5) << 40;
|
||||
//r |= 0x0000400000000000U;
|
||||
|
||||
//r |= 0x0000040000000000U; // screen flip
|
||||
@ -1801,6 +1804,12 @@ READ64_MEMBER(viper_state::unk1_r)
|
||||
|
||||
return r;
|
||||
}
|
||||
#endif
|
||||
|
||||
READ8_MEMBER(viper_state::input_r)
|
||||
{
|
||||
return (m_io_ports[offset & 7])->read();
|
||||
}
|
||||
|
||||
|
||||
int viper_state::ds2430_insert_cmd_bit(int bit)
|
||||
@ -1865,9 +1874,9 @@ void viper_state::DS2430_w(int bit)
|
||||
|
||||
case DS2430_STATE_READ_MEM:
|
||||
{
|
||||
unk1_bit = (ds2430_rom[(ds2430_data_count/8)] >> (ds2430_data_count%8)) & 1;
|
||||
m_ds2430_unk_status = (ds2430_rom[(ds2430_data_count/8)] >> (ds2430_data_count%8)) & 1;
|
||||
ds2430_data_count++;
|
||||
printf("DS2430_w: read mem %d, bit = %d\n", ds2430_data_count, unk1_bit);
|
||||
printf("DS2430_w: read mem %d, bit = %d\n", ds2430_data_count, m_ds2430_unk_status);
|
||||
|
||||
if (ds2430_data_count >= 256)
|
||||
{
|
||||
@ -1884,7 +1893,7 @@ void viper_state::DS2430_w(int bit)
|
||||
ds2430_data_count++;
|
||||
printf("DS2430_w: read rom %d, bit = %d\n", ds2430_data_count, rombit);
|
||||
|
||||
unk1_bit = rombit;
|
||||
m_ds2430_unk_status = rombit;
|
||||
|
||||
if (ds2430_data_count >= 64)
|
||||
{
|
||||
@ -1925,7 +1934,7 @@ WRITE64_MEMBER(viper_state::e70000_w)
|
||||
{
|
||||
ds2430_timer->adjust(attotime::from_usec(40), 1); // presence pulse for 240 microsecs
|
||||
|
||||
unk1_bit = 1;
|
||||
m_ds2430_unk_status = 1;
|
||||
// printf("e70000_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (uint32_t)(data >> 32), (uint32_t)data, offset, (uint32_t)(mem_mask >> 32), (uint32_t)mem_mask, space.device().safe_pc());
|
||||
}
|
||||
else
|
||||
@ -1959,7 +1968,7 @@ WRITE64_MEMBER(viper_state::unk1b_w)
|
||||
{
|
||||
if (ACCESSING_BITS_56_63)
|
||||
{
|
||||
unk1_bit = 0;
|
||||
m_ds2430_unk_status = 0;
|
||||
// printf("unk1b_w: %08X%08X, %08X (mask %08X%08X) at %08X\n", (uint32_t)(data >> 32), (uint32_t)data, offset, (uint32_t)(mem_mask >> 32), (uint32_t)mem_mask, cpu->safe_pc());
|
||||
}
|
||||
}
|
||||
@ -2053,8 +2062,6 @@ WRITE64_MEMBER(viper_state::unk_serial_w)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
static ADDRESS_MAP_START(viper_map, AS_PROGRAM, 64, viper_state )
|
||||
@ -2070,42 +2077,99 @@ static ADDRESS_MAP_START(viper_map, AS_PROGRAM, 64, viper_state )
|
||||
// 0xff300000, 0xff300fff - ata_r/w (installed in DRIVER_INIT(viperhd))
|
||||
AM_RANGE(0xffe00000, 0xffe00007) AM_READ(e00000_r)
|
||||
AM_RANGE(0xffe00008, 0xffe0000f) AM_READWRITE(e00008_r, e00008_w)
|
||||
AM_RANGE(0xffe10000, 0xffe10007) AM_READ(unk1_r)
|
||||
AM_RANGE(0xffe08000, 0xffe08007) AM_NOP
|
||||
AM_RANGE(0xffe10000, 0xffe10007) AM_READ8(input_r, 0xffffffffffffffffU)
|
||||
AM_RANGE(0xffe30000, 0xffe31fff) AM_DEVREADWRITE8("m48t58", timekeeper_device, read, write, 0xffffffffffffffffU)
|
||||
AM_RANGE(0xffe40000, 0xffe4000f) AM_NOP
|
||||
AM_RANGE(0xffe50000, 0xffe50007) AM_WRITE(unk2_w)
|
||||
AM_RANGE(0xffe60000, 0xffe60007) AM_NOP
|
||||
AM_RANGE(0xffe70000, 0xffe7000f) AM_READWRITE(e70000_r, e70000_w)
|
||||
AM_RANGE(0xffe80000, 0xffe80007) AM_WRITE(unk1a_w)
|
||||
AM_RANGE(0xffe88000, 0xffe88007) AM_WRITE(unk1b_w)
|
||||
AM_RANGE(0xffe98000, 0xffe98007) AM_NOP
|
||||
AM_RANGE(0xffe9a000, 0xffe9bfff) AM_RAM // World Combat uses this
|
||||
AM_RANGE(0xfff00000, 0xfff3ffff) AM_ROM AM_REGION("user1", 0) // Boot ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
CUSTOM_INPUT_MEMBER(viper_state::ds2430_unk_r)
|
||||
{
|
||||
return m_ds2430_unk_status;
|
||||
}
|
||||
|
||||
|
||||
static INPUT_PORTS_START( viper )
|
||||
PORT_START("IN0")
|
||||
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) // Shift down
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_SERVICE_NO_TOGGLE( 0x02, IP_ACTIVE_LOW) /* Test Button */
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
|
||||
|
||||
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) // Shift up
|
||||
|
||||
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN2")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) // memory card check (1 = enable)
|
||||
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM_MEMBER(DEVICE_SELF, viper_state, ds2430_unk_r, nullptr)
|
||||
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) // if this bit is 0, loads a disk copier instead
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
PORT_START("IN3")
|
||||
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||
PORT_SERVICE_NO_TOGGLE( 0x02, IP_ACTIVE_LOW ) /* Test Button */
|
||||
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_DIPNAME( 0x20, 0x20, "3" )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x80, 0x80, "3-3" )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
// controls screen mux in Mocap Golf?
|
||||
PORT_START("IN4")
|
||||
PORT_DIPNAME( 0x01, 0x01, "4" )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, "4" )
|
||||
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_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
PORT_START("IN5")
|
||||
PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
|
||||
|
||||
PORT_START("IN6")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("IN7")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
|
||||
PORT_START("DSW")
|
||||
PORT_DIPNAME( 0x80, 0x80, "DIP1" ) PORT_DIPLOCATION("SW:1")
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
@ -2133,6 +2197,41 @@ static INPUT_PORTS_START( viper )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
INPUT_PORTS_START( thrild2 )
|
||||
PORT_INCLUDE( viper )
|
||||
|
||||
PORT_MODIFY("IN3")
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Shift Down")
|
||||
|
||||
PORT_MODIFY("IN4")
|
||||
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Shift Up")
|
||||
|
||||
// TODO: analog channels
|
||||
INPUT_PORTS_END
|
||||
|
||||
INPUT_PORTS_START( gticlub2 )
|
||||
PORT_INCLUDE( thrild2 )
|
||||
|
||||
// TODO: specific analog channel for hand brake
|
||||
INPUT_PORTS_END
|
||||
|
||||
INPUT_PORTS_START( boxingm )
|
||||
PORT_INCLUDE( viper )
|
||||
|
||||
PORT_MODIFY("IN5")
|
||||
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) // memory card check for boxingm (actually comms enable?)
|
||||
INPUT_PORTS_END
|
||||
|
||||
INPUT_PORTS_START( tsurugi )
|
||||
PORT_INCLUDE( viper )
|
||||
|
||||
PORT_MODIFY("IN4")
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P1 Shot")
|
||||
|
||||
PORT_MODIFY("IN5")
|
||||
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) // memory card check for tsurugi (actually comms enable?)
|
||||
INPUT_PORTS_END
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
|
||||
@ -2172,6 +2271,8 @@ void viper_state::machine_reset()
|
||||
// Viper expects these settings or the BIOS fails
|
||||
identify_device[51] = 0x0200; /* 51: PIO data transfer cycle timing mode */
|
||||
identify_device[67] = 0x00f0; /* 67: minimum PIO transfer cycle time without flow control */
|
||||
|
||||
m_ds2430_unk_status = 1;
|
||||
}
|
||||
|
||||
static MACHINE_CONFIG_START( viper, viper_state )
|
||||
@ -2815,11 +2916,11 @@ GAME(1999, kviper, 0, viper, viper, viper_state, viper, ROT0, "Ko
|
||||
|
||||
GAME(2001, ppp2nd, kviper, viper, viper, viper_state, viperhd, ROT0, "Konami", "ParaParaParadise 2nd Mix", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
|
||||
GAME(2001, boxingm, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Boxing Mania (ver JAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, boxingm, kviper, viper, boxingm, viper_state, vipercf, ROT0, "Konami", "Boxing Mania: Ashita no Joe (ver JAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2000, code1d, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Code One Dispatch (ver D)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2000, code1db, code1d, viper, viper, viper_state, vipercf, ROT0, "Konami", "Code One Dispatch (ver B)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, gticlub2, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "GTI Club: Corso Italiano (ver JAB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, gticlub2ea,gticlub2, viper, viper, viper_state, vipercf, ROT0, "Konami", "GTI Club: Corso Italiano (ver EAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, gticlub2, kviper, viper, gticlub2, viper_state, vipercf, ROT0, "Konami", "GTI Club: Corso Italiano (ver JAB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, gticlub2ea,gticlub2, viper, gticlub2, viper_state, vipercf, ROT0, "Konami", "GTI Club: Corso Italiano (ver EAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, jpark3, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Jurassic Park 3 (ver EBC)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, jpark3u, jpark3, viper, viper, viper_state, vipercf, ROT0, "Konami", "Jurassic Park 3 (ver UA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, mocapglf, kviper, viper, viper, viper_state, vipercf, ROT90, "Konami", "Mocap Golf (ver UAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
@ -2836,14 +2937,14 @@ GAME(2003, popn9, kviper, viper, viper, viper_state, vipercf, ROT0, "Ko
|
||||
GAME(2001, sscopex, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Silent Scope EX (ver UAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, sogeki, sscopex, viper, viper, viper_state, vipercf, ROT0, "Konami", "Sogeki (ver JAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, sscopefh, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Silent Scope Fortune Hunter", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver EBB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2a, thrild2, viper, viper, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2ab, thrild2, viper, viper, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA, alt)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2ac, thrild2, viper, viper, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA, alt 2)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2c, thrild2, viper, viper, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver EAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugi, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver EAB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugie, tsurugi, viper, viper, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver EAB, alt)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugij, tsurugi, viper, viper, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver JAC)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2, kviper, viper, thrild2, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver EBB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2a, thrild2, viper, thrild2, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2ab, thrild2, viper, thrild2, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA, alt)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2ac, thrild2, viper, thrild2, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver AAA, alt 2)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2001, thrild2c, thrild2, viper, thrild2, viper_state, vipercf, ROT0, "Konami", "Thrill Drive 2 (ver EAA)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugi, kviper, viper, tsurugi, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver EAB)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugie, tsurugi, viper, tsurugi, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver EAB, alt)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, tsurugij, tsurugi, viper, tsurugi, viper_state, vipercf, ROT0, "Konami", "Tsurugi (ver JAC)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, wcombat, kviper, viper, viper, viper_state, vipercf, ROT0, "Konami", "World Combat (ver AAD:B)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, wcombatb, wcombat, viper, viper, viper_state, vipercf, ROT0, "Konami", "World Combat (ver AAD:B, alt)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
GAME(2002, wcombatk, wcombat, viper, viper, viper_state, vipercf, ROT0, "Konami", "World Combat (ver KBC:B)", MACHINE_NOT_WORKING|MACHINE_NO_SOUND)
|
||||
|
Loading…
Reference in New Issue
Block a user