wd17xx: devcb2. (nw)

This commit is contained in:
Curt Coder 2014-05-12 12:28:44 +00:00
parent ea89fb613b
commit bd863c15f2
44 changed files with 67 additions and 80 deletions

View File

@ -37,8 +37,6 @@ WRITE_LINE_MEMBER( bml3bus_mp1802_device::bml3_wd17xx_intrq_w )
const wd17xx_interface bml3_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, bml3bus_mp1802_device, bml3_wd17xx_intrq_w),
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1}
};
@ -54,6 +52,7 @@ ROM_END
MACHINE_CONFIG_FRAGMENT( mp1802 )
MCFG_MB8866_ADD("wd17xx", bml3_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(bml3bus_mp1802_device, bml3_wd17xx_intrq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(bml3_mp1802_floppy_interface)
MACHINE_CONFIG_END

View File

@ -149,13 +149,13 @@ WRITE_LINE_MEMBER( coco_fdc_device::fdc_drq_w )
static const wd17xx_interface coco_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, coco_fdc_device, fdc_intrq_w),
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, coco_fdc_device, fdc_drq_w),
{FLOPPY_0,FLOPPY_1,FLOPPY_2,FLOPPY_3}
};
static MACHINE_CONFIG_FRAGMENT(coco_fdc)
MCFG_WD1773_ADD(WD_TAG, coco_wd17xx_interface)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(coco_fdc_device, fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(coco_fdc_device, fdc_drq_w))
MCFG_DEVICE_ADD(DISTO_TAG, MSM6242, XTAL_32_768kHz)
MCFG_DS1315_ADD(CLOUD9_TAG)

View File

@ -1107,8 +1107,6 @@ void snug_bwg_legacy_device::device_reset()
const wd17xx_interface bwgleg_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, snug_bwg_legacy_device, intrq_w),
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, snug_bwg_legacy_device, drq_w),
{ PFLOPPY_0, PFLOPPY_1, PFLOPPY_2, PFLOPPY_3 }
};
@ -1133,6 +1131,8 @@ INPUT_PORTS_END
MACHINE_CONFIG_FRAGMENT( bwg_fdc_legacy )
MCFG_WD1773_ADD(FDCLEG_TAG, bwgleg_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(snug_bwg_legacy_device, intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(snug_bwg_legacy_device, drq_w))
MCFG_DEVICE_ADD(CLOCK_TAG, MM58274C, 0)
MCFG_MM58274C_MODE24(1) // 24 hour

View File

@ -441,8 +441,6 @@ const device_type TI99_FDC = &device_creator<ti_fdc_device>;
const wd17xx_interface ti_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, ti_fdc_legacy_device, intrq_w),
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, ti_fdc_legacy_device, drq_w),
{ PFLOPPY_0, PFLOPPY_1, PFLOPPY_2, NULL }
};
@ -724,6 +722,8 @@ void ti_fdc_legacy_device::device_reset(void)
MACHINE_CONFIG_FRAGMENT( ti_fdc_legacy )
MCFG_FD1771_ADD(FDCLEG_TAG, ti_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(ti_fdc_legacy_device, intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(ti_fdc_legacy_device, drq_w))
MACHINE_CONFIG_END
ROM_START( ti_fdc_legacy )

View File

@ -288,12 +288,12 @@ static const UINT8 track_SD[][2] = {
const wd17xx_interface default_wd17xx_interface =
{
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, { FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
DEVCB_NULL, { FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
const wd17xx_interface default_wd17xx_interface_2_drives =
{
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, { FLOPPY_0, FLOPPY_1, NULL, NULL}
DEVCB_NULL, { FLOPPY_0, FLOPPY_1, NULL, NULL}
};
@ -1972,11 +1972,15 @@ wd2797_device::wd2797_device(const machine_config &mconfig, const char *tag, dev
const device_type WD1770 = &device_creator<wd1770_device>;
wd1770_device::wd1770_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, WD1770, "WD1770_LEGACY", tag, owner, clock, "wd1770_l", __FILE__)
: device_t(mconfig, WD1770, "WD1770_LEGACY", tag, owner, clock, "wd1770_l", __FILE__),
m_out_intrq_func(*this),
m_out_drq_func(*this)
{
}
wd1770_device::wd1770_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source)
: device_t(mconfig, type, name, tag, owner, clock, shortname, source)
: device_t(mconfig, type, name, tag, owner, clock, shortname, source),
m_out_intrq_func(*this),
m_out_drq_func(*this)
{
}
@ -2011,8 +2015,8 @@ void wd1770_device::device_start()
/* resolve callbacks */
m_in_dden_func.resolve(m_intf->in_dden_func, *this);
m_out_intrq_func.resolve(m_intf->out_intrq_func, *this);
m_out_drq_func.resolve(m_intf->out_drq_func, *this);
m_out_intrq_func.resolve_safe();
m_out_drq_func.resolve_safe();
/* stepping rate depends on the clock */
m_stepping_rate[0] = 6;

View File

@ -17,12 +17,16 @@
TYPE DEFINITIONS
***************************************************************************/
#define MCFG_WD17XX_INTRQ_CALLBACK(_write) \
devcb = &wd1770_device::set_intrq_wr_callback(*device, DEVCB2_##_write);
#define MCFG_WD17XX_DRQ_CALLBACK(_write) \
devcb = &wd1770_device::set_drq_wr_callback(*device, DEVCB2_##_write);
/* Interface */
struct wd17xx_interface
{
devcb_read_line in_dden_func;
devcb_write_line out_intrq_func;
devcb_write_line out_drq_func;
const char *floppy_drive_tags[4];
};
@ -39,6 +43,9 @@ public:
wd1770_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
wd1770_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, const char *shortname, const char *source);
template<class _Object> static devcb2_base &set_intrq_wr_callback(device_t &device, _Object object) { return downcast<wd1770_device &>(device).m_out_intrq_func.set_callback(object); }
template<class _Object> static devcb2_base &set_drq_wr_callback(device_t &device, _Object object) { return downcast<wd1770_device &>(device).m_out_drq_func.set_callback(object); }
/* the following are not strictly part of the wd179x hardware/emulation
but will be put here for now until the flopdrv code has been finalised more */
void set_drive(UINT8); /* set drive wd179x is accessing */
@ -103,8 +110,8 @@ protected:
// internal state
/* callbacks */
devcb_resolved_read_line m_in_dden_func;
devcb_resolved_write_line m_out_intrq_func;
devcb_resolved_write_line m_out_drq_func;
devcb2_write_line m_out_intrq_func;
devcb2_write_line m_out_drq_func;
/* input lines */
int m_mr; /* master reset */

View File

@ -763,6 +763,8 @@ static MACHINE_CONFIG_DERIVED( bbcb, bbca )
MCFG_I8271_IRQ_CALLBACK(WRITELINE(bbc_state, bbc_i8271_interrupt))
MCFG_I8271_FLOPPIES(FLOPPY_0, FLOPPY_1)
MCFG_WD1770_ADD("wd177x", bbc_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_drq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(bbc_floppy_interface)
/* slot devices */
@ -823,6 +825,8 @@ static MACHINE_CONFIG_DERIVED( bbcb_us, bbca )
MCFG_I8271_IRQ_CALLBACK(WRITELINE(bbc_state, bbc_i8271_interrupt))
MCFG_I8271_FLOPPIES(FLOPPY_0, FLOPPY_1)
MCFG_WD1770_ADD("wd177x", bbc_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_drq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(bbc_floppy_interface)
MCFG_FRAGMENT_ADD(bbc_cartslot)
@ -985,6 +989,8 @@ static MACHINE_CONFIG_START( bbcm, bbc_state )
/* fdc */
MCFG_WD1770_ADD("wd177x", bbc_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_drq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(bbc_floppy_interface)
/* rom slots */
@ -1071,6 +1077,8 @@ static MACHINE_CONFIG_DERIVED( bbcmc, bbcm )
/* fdc */
MCFG_DEVICE_REMOVE("wd177x")
MCFG_WD1772_ADD("wd177x", bbc_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(bbc_state, bbc_wd177x_drq_w))
/* software lists */
MCFG_SOFTWARE_LIST_REMOVE("cart_ls_m")

View File

@ -529,6 +529,7 @@ static MACHINE_CONFIG_START( cgenie_common, cgenie_state )
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_STOPPED)
MCFG_FD1793_ADD("wd179x", cgenie_wd17xx_interface ) // TODO confirm type
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(cgenie_state,cgenie_fdc_intrq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(cgenie_floppy_interface)
/* cartridge */

View File

@ -365,6 +365,8 @@ static MACHINE_CONFIG_START( dgnbeta, dgn_beta_state )
MCFG_PIA_IRQB_HANDLER(WRITELINE(dgn_beta_state,d_pia2_irq_b))
MCFG_WD2797_ADD(FDC_TAG, dgnbeta_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(dgn_beta_state,dgnbeta_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(dgn_beta_state,dgnbeta_fdc_drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(dgnbeta_floppy_interface)

View File

@ -222,6 +222,8 @@ static MACHINE_CONFIG_DERIVED_CLASS( dgnalpha, dragon_base, dragon_alpha_state )
// floppy
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(coco_floppy_interface)
MCFG_WD2797_ADD(WD2797_TAG, dragon_alpha_state::fdc_interface)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(dragon_alpha_state, fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(dragon_alpha_state, fdc_drq_w))
// sound hardware
MCFG_SOUND_ADD(AY8912_TAG, AY8912, 1000000)

View File

@ -1966,8 +1966,6 @@ void fm7_state::machine_reset()
static const wd17xx_interface fm7_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(fm7_state,fm7_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(fm7_state,fm7_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -2018,6 +2016,8 @@ static MACHINE_CONFIG_START( fm7, fm7_state )
MCFG_CASSETTE_INTERFACE("fm7_cass")
MCFG_MB8877_ADD("fdc",fm7_mb8877a_interface)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(fm7_state,fm7_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(fm7_state,fm7_fdc_drq_w))
MCFG_CENTRONICS_ADD("centronics", centronics_printers, "printer")
MCFG_SLOT_OPTION_ADD( "dsjoy", DEMPA_SHINBUNSHA_JOYSTICK )

View File

@ -392,8 +392,6 @@ DISCRETE_SOUND_END
const wd17xx_interface hector_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_NULL,// treatment for intrq line
DEVCB_NULL,// treatment for drq line
{FLOPPY_0, NULL, NULL, NULL} // Only one floppy on the minidisc
};

View File

@ -193,8 +193,6 @@ static const floppy_interface jupiter_floppy_interface =
static const wd17xx_interface fdc_intf =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{ FLOPPY_0, FLOPPY_1, NULL, NULL }
};

View File

@ -177,8 +177,6 @@ WRITE8_MEMBER( mbc200_state::porta_w )
static const wd17xx_interface mbc200_mb8876_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -280,6 +280,8 @@ static MACHINE_CONFIG_START( mbc55x, mbc55x_state )
/* Backing storage */
MCFG_FD1793_ADD(FDC_TAG, mbc55x_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(mbc55x_state, mbc55x_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(mbc55x_state, mbc55x_fdc_drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(mbc55x_floppy_interface)
/* Software list */

View File

@ -137,8 +137,6 @@ INPUT_PORTS_END
static const wd17xx_interface ms0515_wd17xx_interface =
{
DEVCB_LINE_VCC,
DEVCB_NULL,
DEVCB_NULL,
{ FLOPPY_0, NULL, NULL, NULL }
};

View File

@ -235,8 +235,6 @@ GFXDECODE_END
static const wd17xx_interface myb3k_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -778,8 +778,6 @@ READ8_MEMBER(mz2000_state::mz2000_pio1_porta_r)
static const wd17xx_interface mz2000_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -1201,8 +1201,6 @@ WRITE8_MEMBER(mz2500_state::mz2500_fdc_w)
static const wd17xx_interface mz2500_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -330,6 +330,8 @@ static MACHINE_CONFIG_DERIVED( nascom2, nascom1 )
MCFG_GFXDECODE_MODIFY("gfxdecode", nascom2)
MCFG_FD1793_ADD("wd1793", nascom2_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(nascom1_state,nascom2_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(nascom1_state,nascom2_fdc_drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(nascom2_floppy_interface)
MACHINE_CONFIG_END

View File

@ -158,8 +158,6 @@ static const floppy_interface pk8020_floppy_interface =
static const wd17xx_interface pk8020_wd17xx_interface =
{
DEVCB_LINE_VCC,
DEVCB_NULL,
DEVCB_NULL,
{ FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3 }
};

View File

@ -953,8 +953,6 @@ static const floppy_interface ql_floppy_interface =
wd17xx_interface ql_wd17xx_interface =
{
DEVCB_DRIVER_LINE_MEMBER(ql_state,disk_io_dden_r),
DEVCB_DRIVER_LINE_MEMBER(ql_state,disk_io_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(ql_state,disk_io_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -1123,6 +1121,8 @@ static MACHINE_CONFIG_START( ql, ql_state )
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(ql_floppy_interface)
MCFG_WD1772_ADD(WD1772_TAG,ql_wd17xx_interface)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(ql_state,disk_io_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(ql_state,disk_io_drq_w))
MCFG_MICRODRIVE_ADD(MDV_1)
MCFG_MICRODRIVE_COMMS_OUT_CALLBACK(DEVWRITELINE(MDV_2, microdrive_image_device, comms_in_w))
MCFG_MICRODRIVE_ADD(MDV_2)

View File

@ -1196,8 +1196,6 @@ GFXDECODE_END
// Rainbow Z80 polls only, no IRQ/DRQ are connected
const wd17xx_interface rainbow_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -1024,8 +1024,6 @@ PALETTE_INIT_MEMBER(smc777_state, smc777)
static const wd17xx_interface smc777_mb8876_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(smc777_state, smc777_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(smc777_state, smc777_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};
@ -1080,6 +1078,8 @@ static MACHINE_CONFIG_START( smc777, smc777_state )
MCFG_MC6845_CHAR_WIDTH(8)
MCFG_MB8876_ADD("fdc",smc777_mb8876_interface)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(smc777_state, smc777_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(smc777_state, smc777_fdc_drq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(smc777_floppy_interface)
MCFG_SOFTWARE_LIST_ADD("flop_list","smc777")

View File

@ -324,6 +324,8 @@ static MACHINE_CONFIG_START( svi318, svi318_state )
MCFG_CASSETTE_INTERFACE("svi318_cass")
MCFG_FD1793_ADD("wd179x", svi_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(svi318_state,svi_fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(svi318_state,svi_fdc_drq_w))
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(svi318_floppy_interface)

View File

@ -170,6 +170,8 @@ static MACHINE_CONFIG_START( swtpc09, swtpc09_state )
MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(swtpc09_state, write_acia_clock))
MCFG_FD1793_ADD("fdc", swtpc09_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(swtpc09_state, fdc_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(swtpc09_state, fdc_drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(swtpc09_floppy_interface)

View File

@ -596,6 +596,7 @@ static MACHINE_CONFIG_DERIVED( model1, trs80 ) // model I, level II
MCFG_QUICKLOAD_ADD("quickload", trs80_state, trs80_cmd, "cmd", 0.5)
MCFG_FD1793_ADD("wd179x", trs80_wd17xx_interface ) // should be FD1771 or FD1791 but inverted data lines are too tricky to fix now
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(trs80_state,trs80_fdc_intrq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(trs80_floppy_interface)
MCFG_CENTRONICS_ADD("centronics", centronics_printers, "printer")

View File

@ -188,8 +188,6 @@ static const floppy_interface unixpc_floppy_interface =
static const wd17xx_interface unixpc_wd17xx_intf =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(unixpc_state, wd2797_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(unixpc_state, wd2797_drq_w),
{ FLOPPY_0, NULL, NULL, NULL }
};
@ -216,6 +214,8 @@ static MACHINE_CONFIG_START( unixpc, unixpc_state )
// floppy
MCFG_WD2797_ADD("wd2797", unixpc_wd17xx_intf)
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(unixpc_state, wd2797_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(unixpc_state, wd2797_drq_w))
MCFG_LEGACY_FLOPPY_DRIVE_ADD(FLOPPY_0, unixpc_floppy_interface)
MACHINE_CONFIG_END

View File

@ -138,8 +138,6 @@ static const floppy_interface vector_floppy_interface =
const wd17xx_interface vector06_wd17xx_interface =
{
DEVCB_LINE_VCC,
DEVCB_NULL,
DEVCB_NULL,
{ FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -1051,8 +1051,6 @@ WRITE8_MEMBER( x1_state::x1_fdc_w )
static const wd17xx_interface x1_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -1065,8 +1063,6 @@ WRITE_LINE_MEMBER(x1_state::fdc_drq_w)
static const wd17xx_interface x1turbo_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(x1_state,fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -2545,6 +2541,7 @@ static MACHINE_CONFIG_DERIVED( x1turbo, x1 )
MCFG_DEVICE_REMOVE("fdc")
MCFG_MB8877_ADD("fdc",x1turbo_mb8877a_interface)
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(x1_state,fdc_drq_w))
MCFG_YM2151_ADD("ym", MAIN_CLOCK/8) //option board
MCFG_SOUND_ROUTE(0, "lspeaker", 0.50)

View File

@ -73,8 +73,6 @@ ADDRESS_MAP_END
static const wd17xx_interface x1_mb8877a_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -644,8 +644,6 @@ WRITE_LINE_MEMBER( z100_state::video_pia_CB2_w )
static const wd17xx_interface z207_interface =
{
DEVCB_NULL,
DEVCB_NULL,
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -57,6 +57,10 @@ public:
DECLARE_READ8_MEMBER( psg_porta_read );
DECLARE_WRITE8_MEMBER( psg_porta_write );
/* fdc */
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
static const wd17xx_interface fdc_interface;
protected:
@ -74,10 +78,6 @@ protected:
private:
UINT8 m_just_reset;
/* fdc */
DECLARE_WRITE_LINE_MEMBER( fdc_intrq_w );
DECLARE_WRITE_LINE_MEMBER( fdc_drq_w );
/* modem */
UINT8 modem_r(offs_t offset);
void modem_w(offs_t offset, UINT8 data);

View File

@ -1605,8 +1605,6 @@ WRITE_LINE_MEMBER(bbc_state::bbc_wd177x_drq_w)
const wd17xx_interface bbc_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(bbc_state,bbc_wd177x_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(bbc_state,bbc_wd177x_drq_w),
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -96,8 +96,6 @@ WRITE_LINE_MEMBER(beta_disk_device::wd179x_drq_w)
static const wd17xx_interface beta_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, beta_disk_device, wd179x_intrq_w),
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, beta_disk_device, wd179x_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -201,6 +199,8 @@ static const floppy_interface beta_floppy_interface =
static MACHINE_CONFIG_FRAGMENT( beta_disk )
MCFG_WD2793_ADD("wd179x", beta_wd17xx_interface ) // KR1818VG93 clone of WD1793
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(beta_disk_device, wd179x_intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(beta_disk_device, wd179x_drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(beta_floppy_interface)
MACHINE_CONFIG_END

View File

@ -432,8 +432,6 @@ WRITE_LINE_MEMBER(cgenie_state::cgenie_fdc_intrq_w)
const wd17xx_interface cgenie_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(cgenie_state,cgenie_fdc_intrq_w),
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -199,8 +199,6 @@ WRITE_LINE_MEMBER(concept_fdc_device::drq_w)
const wd17xx_interface concept_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, concept_fdc_device, intrq_w),
DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, concept_fdc_device, drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};
@ -324,6 +322,8 @@ static const floppy_interface concept_floppy_interface =
static MACHINE_CONFIG_FRAGMENT( fdc )
MCFG_FD1793_ADD("wd179x", concept_wd17xx_interface )
MCFG_WD17XX_INTRQ_CALLBACK(WRITELINE(concept_fdc_device, intrq_w))
MCFG_WD17XX_DRQ_CALLBACK(WRITELINE(concept_fdc_device, drq_w))
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(concept_floppy_interface)
MACHINE_CONFIG_END

View File

@ -803,8 +803,6 @@ WRITE_LINE_MEMBER(dgn_beta_state::dgnbeta_fdc_drq_w)
const wd17xx_interface dgnbeta_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(dgn_beta_state,dgnbeta_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(dgn_beta_state,dgnbeta_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -382,7 +382,5 @@ WRITE_LINE_MEMBER( dragon_alpha_state::fdc_drq_w )
const wd17xx_interface dragon_alpha_state::fdc_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(dragon_alpha_state, fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(dragon_alpha_state, fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -39,8 +39,6 @@ static int instruction_hook(device_t &device, offs_t curpc);
const wd17xx_interface mbc55x_wd17xx_interface =
{
DEVCB_LINE_GND,
DEVCB_DRIVER_LINE_MEMBER(mbc55x_state, mbc55x_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(mbc55x_state, mbc55x_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -40,8 +40,6 @@ WRITE_LINE_MEMBER(nascom1_state::nascom2_fdc_drq_w)
const wd17xx_interface nascom2_wd17xx_interface =
{
DEVCB_LINE_VCC,
DEVCB_DRIVER_LINE_MEMBER(nascom1_state,nascom2_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(nascom1_state,nascom2_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};

View File

@ -254,8 +254,6 @@ WRITE_LINE_MEMBER(svi318_state::svi_fdc_drq_w)
const wd17xx_interface svi_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(svi318_state,svi_fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(svi318_state,svi_fdc_drq_w),
{FLOPPY_0, FLOPPY_1, NULL, NULL}
};

View File

@ -249,8 +249,6 @@ void swtpc09_state::swtpc09_irq_handler(UINT8 peripheral, UINT8 state)
const wd17xx_interface swtpc09_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(swtpc09_state, fdc_intrq_w),
DEVCB_DRIVER_LINE_MEMBER(swtpc09_state, fdc_drq_w),
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3 }
};

View File

@ -682,8 +682,6 @@ WRITE_LINE_MEMBER(trs80_state::trs80_fdc_intrq_w)
const wd17xx_interface trs80_wd17xx_interface =
{
DEVCB_NULL,
DEVCB_DRIVER_LINE_MEMBER(trs80_state,trs80_fdc_intrq_w),
DEVCB_NULL,
{FLOPPY_0, FLOPPY_1, FLOPPY_2, FLOPPY_3}
};