TMS99xx users (arcade machines) adapted to use devcb2. (nw)

This commit is contained in:
Michael Zapf 2014-03-21 13:25:04 +00:00
parent 28ccff182e
commit 7ed3ce03c9
12 changed files with 75 additions and 217 deletions

View File

@ -1072,19 +1072,10 @@ static MACHINE_CONFIG_DERIVED( cosmica, cosmic )
MACHINE_CONFIG_END
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL, // External operation
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
static MACHINE_CONFIG_START( cosmicg, cosmic_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, COSMICG_MASTER_CLOCK/8, cosmicg_map, cosmicg_io_map, cpuconf)
MCFG_TMS99xx_ADD("maincpu", TMS9980A, COSMICG_MASTER_CLOCK/8, cosmicg_map, cosmicg_io_map)
/* 9.828 MHz Crystal */
/* R Nabet : huh ? This would imply the crystal frequency is somehow divided by 2 before being
fed to the tms9904 or tms9980. Also, I have never heard of a tms9900/9980 operating under

View File

@ -203,17 +203,6 @@ MACHINE_START_MEMBER(jpmmps_state,jpmmps)
}
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
void jpmmps_state::machine_reset()
{
// Disable auto wait state generation by raising the READY line on reset
@ -222,8 +211,8 @@ void jpmmps_state::machine_reset()
static MACHINE_CONFIG_START( jpmmps, jpmmps_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CLOCK, jpmmps_map, jpmmps_io_map, cpuconf95)
// CPU TMS9995, standard variant; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CLOCK, jpmmps_map, jpmmps_io_map)
MCFG_I8255_ADD( "ppi8255_ic26", ppi8255_intf_ic26 )
MCFG_I8255_ADD( "ppi8255_ic21", ppi8255_intf_ic21 )

View File

@ -95,20 +95,9 @@ void jpms80_state::machine_reset()
static_cast<tms9995_device*>(machine().device("maincpu"))->set_ready(ASSERT_LINE);
}
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
static MACHINE_CONFIG_START( jpms80, jpms80_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CLOCK, jpms80_map, jpms80_io_map, cpuconf95)
// CPU TMS9995, standard variant; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CLOCK, jpms80_map, jpms80_io_map)
MCFG_SPEAKER_STANDARD_MONO("mono")
MCFG_TMS9902_ADD("tms9902duart", tms9902_config, DUART_CLOCK)

View File

@ -61,21 +61,12 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( jpmsru )
INPUT_PORTS_END
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL, // External operation
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
static MACHINE_CONFIG_START( jpmsru, jpmsru_state )
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MAIN_CLOCK, jpmsru_map, jpmsru_io, cpuconf)
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MAIN_CLOCK, jpmsru_map, jpmsru_io)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( jpmsru_4, jpmsru_state )
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MAIN_CLOCK, jpmsru_4_map, jpmsru_io, cpuconf)
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MAIN_CLOCK, jpmsru_4_map, jpmsru_io)
MACHINE_CONFIG_END
DRIVER_INIT_MEMBER(jpmsru_state,jpmsru)

View File

@ -669,23 +669,14 @@ static MC6845_INTERFACE( mc6845_intf )
NULL /* update address callback */
};
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL,
DEVCB_NULL, /* Instruction acquisition */
DEVCB_NULL, /* Clock out */
DEVCB_NULL, /* Hold acknowledge */
DEVCB_NULL /* DBIN */
};
/*************************
* Machine Drivers *
*************************/
static MACHINE_CONFIG_START( jubileep, jubilee_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, CPU_CLOCK, jubileep_map, jubileep_cru_map, cpuconf)
// Main CPU TMS9980A, no line connections.
MCFG_TMS99xx_ADD("maincpu", TMS9980A, CPU_CLOCK, jubileep_map, jubileep_cru_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", jubilee_state, jubileep_interrupt)
MCFG_NVRAM_ADD_0FILL("videoworkram")

View File

@ -100,29 +100,20 @@ void jvh_state::machine_reset()
{
}
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL, // External operation
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
DRIVER_INIT_MEMBER(jvh_state,jvh)
{
}
static MACHINE_CONFIG_START( jvh, jvh_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 1000000, jvh_map, escape_io, cpuconf)
// CPU TMS9980A; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 1000000, jvh_map, escape_io)
MCFG_CPU_ADD("cpu2", M6800, 1000000)
MCFG_CPU_PROGRAM_MAP(jvh_sub_map)
MACHINE_CONFIG_END
static MACHINE_CONFIG_START( jvh2, jvh_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 1000000, jvh_map, movmastr_io, cpuconf)
// CPU TMS9980At; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 1000000, jvh_map, movmastr_io)
MCFG_CPU_ADD("cpu2", M6800, 1000000)
MCFG_CPU_PROGRAM_MAP(jvh_sub_map)
MACHINE_CONFIG_END

View File

@ -634,32 +634,6 @@ static const ay8910_interface ay8910_config =
DEVCB_NULL
};
/*************************************
*
* CPU configs
*
*************************************/
static TMS9980A_CONFIG( cpuconf80 )
{
DEVCB_NULL,
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
/*************************************
*
* Machine drivers
@ -668,11 +642,12 @@ static TMS9995_CONFIG( cpuconf95 )
static MACHINE_CONFIG_START( looping, looping_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CPU_CLOCK, looping_map, looping_io_map, cpuconf95)
// CPU TMS9995, standard variant; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9995, MAIN_CPU_CLOCK, looping_map, looping_io_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", looping_state, looping_interrupt)
MCFG_TMS99xx_ADD("audiocpu", TMS9980A, SOUND_CLOCK/4, looping_sound_map, looping_sound_io_map, cpuconf80)
// CPU TMS9980A for audio subsystem; no line connections
MCFG_TMS99xx_ADD("audiocpu", TMS9980A, SOUND_CLOCK/4, looping_sound_map, looping_sound_io_map)
MCFG_CPU_ADD("mcu", COP420, COP_CLOCK)
MCFG_CPU_PROGRAM_MAP(looping_cop_map)

View File

@ -108,17 +108,6 @@ WRITE8_MEMBER( nsm_state::cru_w )
}
}
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
void nsm_state::machine_reset()
{
// Disable auto wait state generation by raising the READY line on reset
@ -126,8 +115,8 @@ void nsm_state::machine_reset()
}
static MACHINE_CONFIG_START( nsm, nsm_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, 11052000, nsm_map, nsm_io_map, cpuconf95)
// CPU TMS9995, standard variant; no line connection
MCFG_TMS99xx_ADD("maincpu", TMS9995, 11052000, nsm_map, nsm_io_map)
/* Video */
MCFG_DEFAULT_LAYOUT(layout_nsm)

View File

@ -395,17 +395,6 @@ static GFXDECODE_START( nsmpoker )
GFXDECODE_END
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
void nsmpoker_state::machine_reset()
{
// Disable auto wait state generation by raising the READY line on reset
@ -418,8 +407,8 @@ void nsmpoker_state::machine_reset()
static MACHINE_CONFIG_START( nsmpoker, nsmpoker_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, MASTER_CLOCK/2, nsmpoker_map, nsmpoker_portmap, cpuconf95)
// CPU TMS9995, standard variant; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9995, MASTER_CLOCK/2, nsmpoker_map, nsmpoker_portmap)
MCFG_CPU_VBLANK_INT_DRIVER("screen", nsmpoker_state, nsmpoker_interrupt)
/* video hardware */

View File

@ -348,21 +348,10 @@ void pachifev_state::machine_start()
save_item(NAME(m_cnt));
}
static TMS9995_CONFIG( cpuconf95 )
{
DEVCB_NULL, // external op
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // clock out
DEVCB_NULL, // HOLDA
DEVCB_NULL, // DBIN
INTERNAL_RAM, // use internal RAM
NO_OVERFLOW_INT // The generally available versions of TMS9995 have a deactivated overflow interrupt
};
static MACHINE_CONFIG_START( pachifev, pachifev_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9995, XTAL_12MHz, pachifev_map, pachifev_cru, cpuconf95)
// CPU TMS9995, standard variant; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9995, XTAL_12MHz, pachifev_map, pachifev_cru)
MCFG_CPU_VBLANK_INT_DRIVER("screen", pachifev_state, pachifev_vblank_irq)
/* video hardware */

View File

@ -415,19 +415,6 @@ static INPUT_PORTS_START( supertnk )
INPUT_PORTS_END
/************
CPU config
*************/
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL, // External operation
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
/*************************************
*
* Machine driver
@ -436,11 +423,10 @@ static TMS9980A_CONFIG( cpuconf )
static MACHINE_CONFIG_START( supertnk, supertnk_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 2598750, supertnk_map, supertnk_io_map, cpuconf)
// CPU TMS9980A; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9980A, 2598750, supertnk_map, supertnk_io_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", supertnk_state, supertnk_interrupt)
/* video hardware */
MCFG_SCREEN_ADD("screen", RASTER)

View File

@ -564,26 +564,14 @@ static MC6845_INTERFACE( mc6845_intf )
NULL /* update address callback */
};
/***********************
* CPU Interface *
************************/
static TMS9980A_CONFIG( cpuconf )
{
DEVCB_NULL, // External operation
DEVCB_NULL, // Instruction acquisition
DEVCB_NULL, // Clock out
DEVCB_NULL, // Hold acknowledge
DEVCB_NULL // DBIN
};
/*************************
* Machine Drivers *
*************************/
static MACHINE_CONFIG_START( tmspoker, tmspoker_state )
/* basic machine hardware */
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MASTER_CLOCK/4, tmspoker_map, tmspoker_cru_map, cpuconf)
// CPU TMS9980A; no line connections
MCFG_TMS99xx_ADD("maincpu", TMS9980A, MASTER_CLOCK/4, tmspoker_map, tmspoker_cru_map)
MCFG_CPU_VBLANK_INT_DRIVER("screen", tmspoker_state, tmspoker_interrupt)
// MCFG_NVRAM_HANDLER(generic_0fill)