mirror of
https://github.com/holub/mame
synced 2025-04-22 16:31:49 +03:00
pc_lpt, upd765: removed MCFG macros (nw)
This commit is contained in:
parent
fff30faa4f
commit
f211cf0343
@ -52,15 +52,16 @@ ROM_END
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(a2bus_corvfdc02_device::device_add_mconfig)
|
||||
MCFG_UPD765A_ADD(FDC02_FDC_TAG, true, false)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, a2bus_corvfdc02_device, intrq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, a2bus_corvfdc02_device, drq_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC02_FDC_TAG":0", corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC02_FDC_TAG":1", corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC02_FDC_TAG":2", corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC02_FDC_TAG":3", corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void a2bus_corvfdc02_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
UPD765A(config, m_fdc, true, false);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(a2bus_corvfdc02_device::intrq_w));
|
||||
m_fdc->drq_wr_callback().set(FUNC(a2bus_corvfdc02_device::drq_w));
|
||||
FLOPPY_CONNECTOR(config, m_con1, corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, m_con2, corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, m_con3, corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, m_con4, corv_floppies, "525dsqd", a2bus_corvfdc02_device::corv_floppy_formats);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// rom_region - device-specific ROM region
|
||||
|
@ -91,8 +91,7 @@ ROM_END
|
||||
|
||||
void bbc_opus8272_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
I8272A(config, m_fdc, 0);
|
||||
m_fdc->set_ready_line_connected(true);
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(bbc_opus8272_device::fdc_intrq_w));
|
||||
|
||||
FLOPPY_CONNECTOR(config, m_floppy0, bbc_floppies_525, "525qd", bbc_opusfdc_device::floppy_formats).enable_sound(true);
|
||||
|
@ -41,7 +41,7 @@ const tiny_rom_entry *cpc_ddi1_device::device_rom_region() const
|
||||
|
||||
// device machine config
|
||||
MACHINE_CONFIG_START(cpc_ddi1_device::device_add_mconfig)
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", ddi1_floppies, "3ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list","cpc_flop")
|
||||
|
||||
|
@ -72,7 +72,7 @@ MACHINE_CONFIG_START(epson_pf10_device::device_add_mconfig)
|
||||
MCFG_DEVICE_IO_MAP(cpu_io)
|
||||
MCFG_M6801_SER_TX(WRITELINE(DEVICE_SELF, epson_pf10_device, hd6303_tx_w))
|
||||
|
||||
MCFG_UPD765A_ADD("upd765a", false, true)
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:0", pf10_floppies, "smd165", floppy_image_device::default_floppy_formats)
|
||||
|
||||
MCFG_EPSON_SIO_ADD("sio", nullptr)
|
||||
|
@ -101,8 +101,8 @@ MACHINE_CONFIG_START(epson_tf20_device::device_add_mconfig)
|
||||
m_mpsc->out_dtra_callback().set(FUNC(epson_tf20_device::dtra_w));
|
||||
|
||||
// floppy disk controller
|
||||
MCFG_UPD765A_ADD("5a", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("19b", INPUT_LINE_IRQ0))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_cpu, INPUT_LINE_IRQ0);
|
||||
|
||||
// floppy drives
|
||||
MCFG_FLOPPY_DRIVE_ADD("5a:0", tf20_floppies, "sd320", floppy_image_device::default_floppy_formats)
|
||||
|
@ -688,8 +688,7 @@ void hx5102_device::device_add_mconfig(machine_config& config)
|
||||
// Not connected: Select lines (DS0, DS1), Head load (HDL), VCO
|
||||
// Tied to 1: READY
|
||||
// Tied to 0: TC
|
||||
I8272A(config, m_floppy_ctrl, 0);
|
||||
m_floppy_ctrl->set_ready_line_connected(false);
|
||||
I8272A(config, m_floppy_ctrl, false);
|
||||
m_floppy_ctrl->intrq_wr_callback().set(FUNC(hx5102_device::fdc_irq_w));
|
||||
m_floppy_ctrl->drq_wr_callback().set(FUNC(hx5102_device::fdc_drq_w));
|
||||
|
||||
|
@ -72,11 +72,12 @@ void iq151_disc2_device::device_reset()
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(iq151_disc2_device::device_add_mconfig)
|
||||
MCFG_UPD765A_ADD("fdc", false, true)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", iq151_disc2_floppies, "8sssd", iq151_disc2_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:2", iq151_disc2_floppies, "8sssd", iq151_disc2_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void iq151_disc2_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", iq151_disc2_floppies, "8sssd", iq151_disc2_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:2", iq151_disc2_floppies, "8sssd", iq151_disc2_device::floppy_formats);
|
||||
}
|
||||
|
||||
|
||||
//-------------------------------------------------
|
||||
|
@ -108,37 +108,40 @@ isa8_fdc_smc_device::isa8_fdc_smc_device(const machine_config &mconfig, const ch
|
||||
{
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(isa8_fdc_smc_device::device_add_mconfig)
|
||||
MCFG_SMC37C78_ADD("fdc")
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, drq_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void isa8_fdc_smc_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
smc37c78_device &smc(SMC37C78(config, fdc));
|
||||
smc.intrq_wr_callback().set(FUNC(isa8_fdc_device::irq_w));
|
||||
smc.drq_wr_callback().set(FUNC(isa8_fdc_device::drq_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
}
|
||||
|
||||
isa8_fdc_ps2_device::isa8_fdc_ps2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : isa8_fdc_device(mconfig, ISA8_FDC_PS2, tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(isa8_fdc_ps2_device::device_add_mconfig)
|
||||
MCFG_N82077AA_ADD("fdc", n82077aa_device::MODE_PS2)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, drq_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void isa8_fdc_ps2_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
n82077aa_device &n82077aa(N82077AA(config, fdc, n82077aa_device::MODE_PS2));
|
||||
n82077aa.intrq_wr_callback().set(FUNC(isa8_fdc_device::irq_w));
|
||||
n82077aa.drq_wr_callback().set(FUNC(isa8_fdc_device::drq_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
}
|
||||
|
||||
isa8_fdc_superio_device::isa8_fdc_superio_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : isa8_fdc_device(mconfig, ISA8_FDC_SUPERIO, tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(isa8_fdc_superio_device::device_add_mconfig)
|
||||
MCFG_PC_FDC_SUPERIO_ADD("fdc")
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, isa8_fdc_device, drq_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void isa8_fdc_superio_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
pc_fdc_superio_device &superio(PC_FDC_SUPERIO(config, fdc));
|
||||
superio.intrq_wr_callback().set(FUNC(isa8_fdc_device::irq_w));
|
||||
superio.drq_wr_callback().set(FUNC(isa8_fdc_device::drq_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", pc_hd_floppies, "35hd", isa8_fdc_device::floppy_formats);
|
||||
}
|
||||
|
||||
isa8_ec1841_0003_device::isa8_ec1841_0003_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||
: isa8_fdc_device(mconfig, ISA8_EC1841_0003, tag, owner, clock)
|
||||
|
@ -19,10 +19,11 @@ isa8_lpt_device::isa8_lpt_device(const machine_config &mconfig, const char *tag,
|
||||
{
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(isa8_lpt_device::device_add_mconfig)
|
||||
MCFG_DEVICE_ADD("lpt", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE(*this, isa8_lpt_device, pc_cpu_line))
|
||||
MACHINE_CONFIG_END
|
||||
void isa8_lpt_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
pc_lpt_device &lpt(PC_LPT(config, "lpt"));
|
||||
lpt.irq_handler().set(FUNC(isa8_lpt_device::pc_cpu_line));
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START( lpt_dsw )
|
||||
PORT_START("DSW")
|
||||
|
@ -126,8 +126,8 @@ MACHINE_CONFIG_START(isa8_mda_device::device_add_mconfig)
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pcmda)
|
||||
|
||||
MCFG_DEVICE_ADD("lpt", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE(*this, isa8_mda_device, pc_cpu_line))
|
||||
pc_lpt_device &lpt(PC_LPT(config, "lpt"));
|
||||
lpt.irq_handler().set(FUNC(isa8_mda_device::pc_cpu_line));
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -554,8 +554,8 @@ MACHINE_CONFIG_START(isa8_hercules_device::device_add_mconfig)
|
||||
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pcherc)
|
||||
|
||||
MCFG_DEVICE_ADD("lpt", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE(*this, isa8_mda_device, pc_cpu_line))
|
||||
pc_lpt_device &lpt(PC_LPT(config, "lpt"));
|
||||
lpt.irq_handler().set(FUNC(isa8_mda_device::pc_cpu_line));
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//-------------------------------------------------
|
||||
|
@ -45,16 +45,17 @@ static void drives(device_slot_interface &device)
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(mufdc_device::device_add_mconfig)
|
||||
MCFG_MCS3201_ADD("fdc")
|
||||
MCFG_MCS3201_INPUT_HANDLER(READ8(*this, mufdc_device, fdc_input_r))
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, mufdc_device, fdc_irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, mufdc_device, fdc_drq_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", drives, "35hd", mufdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", drives, "35hd", mufdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:2", drives, nullptr, mufdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:3", drives, nullptr, mufdc_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void mufdc_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
mcs3201_device &mcs3201(MCS3201(config, m_fdc));
|
||||
mcs3201.input_handler().set(FUNC(mufdc_device::fdc_input_r));
|
||||
mcs3201.intrq_wr_callback().set(FUNC(mufdc_device::fdc_irq_w));
|
||||
mcs3201.drq_wr_callback().set(FUNC(mufdc_device::fdc_drq_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", drives, "35hd", mufdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", drives, "35hd", mufdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:2", drives, nullptr, mufdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:3", drives, nullptr, mufdc_device::floppy_formats);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// input_ports - device-specific input ports
|
||||
|
@ -54,13 +54,14 @@ static void compis_floppies(device_slot_interface &device)
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(compis_fdc_device::device_add_mconfig)
|
||||
MCFG_I8272A_ADD(I8272_TAG, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, compis_fdc_device, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, compis_fdc_device, fdc_drq))
|
||||
MCFG_FLOPPY_DRIVE_ADD(I8272_TAG":0", compis_floppies, "525qd", compis_fdc_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(I8272_TAG":1", compis_floppies, "525qd", compis_fdc_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void compis_fdc_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(compis_fdc_device::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(FUNC(compis_fdc_device::fdc_drq));
|
||||
FLOPPY_CONNECTOR(config, m_floppy0, compis_floppies, "525qd", compis_fdc_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, m_floppy1, compis_floppies, "525qd", compis_fdc_device::floppy_formats);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
@ -54,12 +54,13 @@ static void isbc_218a_floppies(device_slot_interface &device)
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(isbc_218a_device::device_add_mconfig)
|
||||
MCFG_I8272A_ADD(I8272_TAG, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, isbc_218a_device, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, isbc_218a_device, fdc_drq))
|
||||
MCFG_FLOPPY_DRIVE_ADD(I8272_TAG":0", isbc_218a_floppies, "525dd", isbc_218a_device::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
void isbc_218a_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(isbc_218a_device::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(FUNC(isbc_218a_device::fdc_drq));
|
||||
FLOPPY_CONNECTOR(config, m_floppy0, isbc_218a_floppies, "525dd", isbc_218a_device::floppy_formats);
|
||||
}
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
|
@ -232,7 +232,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
|
||||
MACHINE_CONFIG_START(msx_cart_fsfd1a_device::device_add_mconfig)
|
||||
MCFG_TC8566AF_ADD("fdc")
|
||||
TC8566AF(config, m_fdc);
|
||||
|
||||
// Double sided 3.5" floppy drive
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", msx_floppies, "35dd", msx_cart_disk_device::floppy_formats)
|
||||
|
@ -84,7 +84,7 @@ void newbrain_fdc_device::newbrain_fdc_io(address_map &map)
|
||||
{
|
||||
map.unmap_value_high();
|
||||
map.global_mask(0x71);
|
||||
map(0x00, 0x01).mirror(0x10).m(UPD765_TAG, FUNC(upd765a_device::map));
|
||||
map(0x00, 0x01).mirror(0x10).m(m_fdc, FUNC(upd765a_device::map));
|
||||
map(0x20, 0x20).mirror(0x11).w(FUNC(newbrain_fdc_device::fdc_auxiliary_w));
|
||||
map(0x40, 0x40).mirror(0x11).r(FUNC(newbrain_fdc_device::fdc_control_r));
|
||||
}
|
||||
@ -109,8 +109,8 @@ MACHINE_CONFIG_START(newbrain_fdc_device::device_add_mconfig)
|
||||
MCFG_DEVICE_PROGRAM_MAP(newbrain_fdc_mem)
|
||||
MCFG_DEVICE_IO_MAP(newbrain_fdc_io)
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, newbrain_fdc_device, fdc_int_w))
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(newbrain_fdc_device::fdc_int_w));
|
||||
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", newbrain_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -80,12 +80,12 @@ static void sd725_floppies(device_slot_interface &device)
|
||||
// device_add_mconfig
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(spc1000_fdd_exp_device::device_add_mconfig)
|
||||
|
||||
void spc1000_fdd_exp_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
// sub CPU (5 inch floppy drive)
|
||||
MCFG_DEVICE_ADD("fdccpu", Z80, XTAL(4'000'000))
|
||||
MCFG_DEVICE_PROGRAM_MAP(sd725_mem)
|
||||
MCFG_DEVICE_IO_MAP(sd725_io)
|
||||
Z80(config, m_cpu, XTAL(4'000'000));
|
||||
m_cpu->set_addrmap(AS_PROGRAM, spc1000_fdd_exp_device::sd725_mem);
|
||||
m_cpu->set_addrmap(AS_IO, spc1000_fdd_exp_device::sd725_io);
|
||||
|
||||
I8255(config, m_ppi);
|
||||
m_ppi->in_pa_callback().set(m_ppi, FUNC(i8255_device::pb_r));
|
||||
@ -95,13 +95,13 @@ MACHINE_CONFIG_START(spc1000_fdd_exp_device::device_add_mconfig)
|
||||
m_ppi->out_pc_callback().set(FUNC(spc1000_fdd_exp_device::i8255_c_w));
|
||||
|
||||
// floppy disk controller
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("fdccpu", INPUT_LINE_IRQ0))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_cpu, INPUT_LINE_IRQ0);
|
||||
|
||||
// floppy drives
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", sd725_floppies, "sd320", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", sd725_floppies, "sd320", floppy_image_device::default_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
FLOPPY_CONNECTOR(config, "upd765:0", sd725_floppies, "sd320", floppy_image_device::default_floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "upd765:1", sd725_floppies, "sd320", floppy_image_device::default_floppy_formats);
|
||||
}
|
||||
|
||||
ROM_START( spc1000_fdd )
|
||||
ROM_REGION(0x10000, "fdccpu", 0)
|
||||
|
@ -240,16 +240,17 @@ FLOPPY_FORMATS_MEMBER(fdc37c93x_device::floppy_formats)
|
||||
FLOPPY_NASLITE_FORMAT
|
||||
FLOPPY_FORMATS_END
|
||||
|
||||
MACHINE_CONFIG_START(fdc37c93x_device::device_add_mconfig)
|
||||
void fdc37c93x_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
// floppy disc controller
|
||||
MCFG_SMC37C78_ADD("fdc")
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, fdc37c93x_device, irq_floppy_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, fdc37c93x_device, drq_floppy_w))
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pc_hd_floppies, "35hd", fdc37c93x_device::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pc_hd_floppies, "35hd", fdc37c93x_device::floppy_formats)
|
||||
smc37c78_device &fdcdev(SMC37C78(config, floppy_controller_fdcdev));
|
||||
fdcdev.intrq_wr_callback().set(FUNC(fdc37c93x_device::irq_floppy_w));
|
||||
fdcdev.drq_wr_callback().set(FUNC(fdc37c93x_device::drq_floppy_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", pc_hd_floppies, "35hd", fdc37c93x_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", pc_hd_floppies, "35hd", fdc37c93x_device::floppy_formats);
|
||||
// parallel port
|
||||
MCFG_DEVICE_ADD("lpt", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE(*this, fdc37c93x_device, irq_parallel_w))
|
||||
PC_LPT(config, pc_lpt_lptdev);
|
||||
pc_lpt_lptdev->irq_handler().set(FUNC(fdc37c93x_device::irq_parallel_w));
|
||||
|
||||
// serial ports
|
||||
NS16450(config, pc_serial1_comdev, XTAL(1'843'200)); // or NS16550 ?
|
||||
@ -275,7 +276,7 @@ MACHINE_CONFIG_START(fdc37c93x_device::device_add_mconfig)
|
||||
m_kbdc->input_buffer_full_callback().set(FUNC(fdc37c93x_device::irq_keyboard_w));
|
||||
m_kbdc->system_reset_callback().set(FUNC(fdc37c93x_device::kbdp20_gp20_reset_w));
|
||||
m_kbdc->gate_a20_callback().set(FUNC(fdc37c93x_device::kbdp21_gp25_gatea20_w));
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER(fdc37c93x_device::irq_floppy_w)
|
||||
{
|
||||
|
@ -34,11 +34,11 @@ void pc_fdc_family_device::map(address_map &map)
|
||||
// The schematics show address decoding is minimal
|
||||
void pc_fdc_xt_device::map(address_map &map)
|
||||
{
|
||||
map(0x0, 0x0).r("upd765", FUNC(upd765a_device::msr_r)).w(FUNC(pc_fdc_xt_device::dor_w));
|
||||
map(0x1, 0x1).r("upd765", FUNC(upd765a_device::fifo_r)).w(FUNC(pc_fdc_xt_device::dor_fifo_w));
|
||||
map(0x0, 0x0).r(fdc, FUNC(upd765a_device::msr_r)).w(FUNC(pc_fdc_xt_device::dor_w));
|
||||
map(0x1, 0x1).r(fdc, FUNC(upd765a_device::fifo_r)).w(FUNC(pc_fdc_xt_device::dor_fifo_w));
|
||||
map(0x2, 0x2).w(FUNC(pc_fdc_xt_device::dor_w));
|
||||
map(0x3, 0x3).w(FUNC(pc_fdc_xt_device::dor_w));
|
||||
map(0x4, 0x5).m("upd765", FUNC(upd765a_device::map));
|
||||
map(0x4, 0x5).m(fdc, FUNC(upd765a_device::map));
|
||||
}
|
||||
|
||||
|
||||
@ -46,7 +46,7 @@ void pc_fdc_xt_device::map(address_map &map)
|
||||
void pc_fdc_at_device::map(address_map &map)
|
||||
{
|
||||
map(0x2, 0x2).rw(FUNC(pc_fdc_at_device::dor_r), FUNC(pc_fdc_at_device::dor_w));
|
||||
map(0x4, 0x5).m("upd765", FUNC(upd765a_device::map));
|
||||
map(0x4, 0x5).m(fdc, FUNC(upd765a_device::map));
|
||||
map(0x7, 0x7).rw(FUNC(pc_fdc_at_device::dir_r), FUNC(pc_fdc_at_device::ccr_w));
|
||||
}
|
||||
|
||||
@ -72,11 +72,12 @@ void pc_fdc_family_device::dma_w(uint8_t data)
|
||||
fdc->dma_w(data);
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(pc_fdc_family_device::device_add_mconfig)
|
||||
MCFG_UPD765A_ADD("upd765", false, false)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pc_fdc_family_device, irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, pc_fdc_family_device, drq_w))
|
||||
MACHINE_CONFIG_END
|
||||
void pc_fdc_family_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
UPD765A(config, fdc, false, false);
|
||||
fdc->intrq_wr_callback().set(FUNC(pc_fdc_family_device::irq_w));
|
||||
fdc->drq_wr_callback().set(FUNC(pc_fdc_family_device::drq_w));
|
||||
}
|
||||
|
||||
void pc_fdc_family_device::device_start()
|
||||
{
|
||||
|
@ -13,8 +13,6 @@
|
||||
|
||||
#include "bus/centronics/ctronics.h"
|
||||
|
||||
#define MCFG_PC_LPT_IRQ_HANDLER(_devcb) \
|
||||
downcast<pc_lpt_device &>(*device).set_irq_handler(DEVCB_##_devcb);
|
||||
|
||||
/***************************************************************************
|
||||
DEVICE CONFIGURATION MACROS
|
||||
@ -23,10 +21,10 @@
|
||||
class pc_lpt_device : public device_t
|
||||
{
|
||||
public:
|
||||
pc_lpt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
pc_lpt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
// configuration helpers
|
||||
template <class Object> devcb_base &set_irq_handler(Object &&cb) { return m_irq_handler.set_callback(std::forward<Object>(cb)); }
|
||||
auto irq_handler() { return m_irq_handler.bind(); }
|
||||
|
||||
DECLARE_READ8_MEMBER( read );
|
||||
DECLARE_WRITE8_MEMBER( write );
|
||||
|
@ -157,9 +157,9 @@ void pdc_device::pdc_io(address_map &map)
|
||||
map(0x3c, 0x3c).portr("SW2").mirror(0xFF00); /* FDC Dipswitch */
|
||||
map(0x3d, 0x3d).portr("SW1").mirror(0xFF00); /* HDC Dipswitch */
|
||||
map(0x40, 0x41).rw(HDC_TAG, FUNC(hdc9224_device::read), FUNC(hdc9224_device::write)).mirror(0xFF00);
|
||||
map(0x42, 0x43).m(FDC_TAG, FUNC(upd765a_device::map)).mirror(0xFF00);
|
||||
map(0x42, 0x43).m(m_fdc, FUNC(upd765a_device::map)).mirror(0xFF00);
|
||||
map(0x50, 0x5f).w(FUNC(pdc_device::p50_5f_w)).mirror(0xFF00);
|
||||
map(0x60, 0x6f).rw(FDCDMA_TAG, FUNC(am9517a_device::read), FUNC(am9517a_device::write)).mirror(0xFF00);
|
||||
map(0x60, 0x6f).rw(m_dma8237, FUNC(am9517a_device::read), FUNC(am9517a_device::write)).mirror(0xFF00);
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
@ -255,20 +255,21 @@ FLOPPY_FORMATS_END
|
||||
// device_add_mconfig - add device configuration
|
||||
//-------------------------------------------------
|
||||
|
||||
MACHINE_CONFIG_START(pdc_device::device_add_mconfig)
|
||||
void pdc_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
/* CPU - Zilog Z0840006PSC */
|
||||
MCFG_DEVICE_ADD(Z80_TAG, Z80, XTAL(10'000'000) / 2)
|
||||
MCFG_DEVICE_PROGRAM_MAP(pdc_mem)
|
||||
MCFG_DEVICE_IO_MAP(pdc_io)
|
||||
Z80(config, m_pdccpu, XTAL(10'000'000) / 2);
|
||||
m_pdccpu->set_addrmap(AS_PROGRAM, pdc_device::pdc_mem);
|
||||
m_pdccpu->set_addrmap(AS_IO, pdc_device::pdc_io);
|
||||
//MCFG_QUANTUM_PERFECT_CPU(M6502_TAG)
|
||||
|
||||
/* Floppy Disk Controller - uPD765a - NEC D765AC-2 */
|
||||
MCFG_UPD765A_ADD(FDC_TAG, true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pdc_device, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(FDCDMA_TAG, am9517a_device, dreq0_w)) //MCFG_DEVCB_INVERT
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(pdc_device::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(m_dma8237, FUNC(am9517a_device::dreq0_w)); //.invert();
|
||||
|
||||
// Floppy disk drive
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC_TAG":0", pdc_floppies, "35hd", pdc_device::floppy_formats)
|
||||
FLOPPY_CONNECTOR(config, FDC_TAG":0", pdc_floppies, "35hd", pdc_device::floppy_formats);
|
||||
|
||||
/* DMA Controller - Intel P8237A-5 */
|
||||
/* Channel 0: uPD765a Floppy Disk Controller */
|
||||
@ -288,7 +289,7 @@ MACHINE_CONFIG_START(pdc_device::device_add_mconfig)
|
||||
HDC9224(config, HDC_TAG, 0);
|
||||
MFM_HD_CONNECTOR(config, "h1", pdc_harddisks, nullptr, MFM_BYTE, 3000, 20, MFMHD_GEN_FORMAT);
|
||||
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
ioport_constructor pdc_device::device_input_ports() const
|
||||
{
|
||||
|
@ -14,66 +14,6 @@
|
||||
* mode = MODE_AT, MODE_PS2 or MODE_M30 for the fdcs that have reset-time selection
|
||||
*/
|
||||
|
||||
#define MCFG_UPD765A_ADD(_tag, _ready, _select) \
|
||||
MCFG_DEVICE_ADD(_tag, UPD765A, 0) \
|
||||
downcast<upd765a_device *>(device)->set_ready_line_connected(_ready); \
|
||||
downcast<upd765a_device *>(device)->set_select_lines_connected(_select);
|
||||
|
||||
#define MCFG_UPD765B_ADD(_tag, _ready, _select) \
|
||||
MCFG_DEVICE_ADD(_tag, UPD765B, 0) \
|
||||
downcast<upd765b_device *>(device)->set_ready_line_connected(_ready); \
|
||||
downcast<upd765b_device *>(device)->set_select_lines_connected(_select);
|
||||
|
||||
#define MCFG_I8272A_ADD(_tag, _ready) \
|
||||
MCFG_DEVICE_ADD(_tag, I8272A, 0) \
|
||||
downcast<i8272a_device *>(device)->set_ready_line_connected(_ready);
|
||||
|
||||
#define MCFG_UPD72065_ADD(_tag, _ready, _select) \
|
||||
MCFG_DEVICE_ADD(_tag, UPD72065, 0) \
|
||||
downcast<upd72065_device *>(device)->set_ready_line_connected(_ready); \
|
||||
downcast<upd72065_device *>(device)->set_select_lines_connected(_select);
|
||||
|
||||
#define MCFG_I82072_ADD(_tag, _ready) \
|
||||
MCFG_DEVICE_ADD(_tag, I82072, 24_MHz_XTAL) \
|
||||
downcast<i82072_device *>(device)->set_ready_line_connected(_ready);
|
||||
|
||||
#define MCFG_SMC37C78_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, SMC37C78, 0)
|
||||
|
||||
#define MCFG_N82077AA_ADD(_tag, _mode) \
|
||||
MCFG_DEVICE_ADD(_tag, N82077AA, 0) \
|
||||
downcast<n82077aa_device *>(device)->set_mode(_mode);
|
||||
|
||||
#define MCFG_PC_FDC_SUPERIO_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, PC_FDC_SUPERIO, 0)
|
||||
|
||||
#define MCFG_DP8473_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, DP8473, 0)
|
||||
|
||||
#define MCFG_PC8477A_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, PC8477A, 0)
|
||||
|
||||
#define MCFG_WD37C65C_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, WD37C65C, 0)
|
||||
|
||||
#define MCFG_MCS3201_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, MCS3201, 0)
|
||||
|
||||
#define MCFG_TC8566AF_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD(_tag, TC8566AF, 0)
|
||||
|
||||
#define MCFG_MCS3201_INPUT_HANDLER(_devcb) \
|
||||
downcast<mcs3201_device &>(*device).set_input_handler(DEVCB_##_devcb);
|
||||
|
||||
#define MCFG_UPD765_INTRQ_CALLBACK(_write) \
|
||||
downcast<upd765_family_device &>(*device).set_intrq_wr_callback(DEVCB_##_write);
|
||||
|
||||
#define MCFG_UPD765_DRQ_CALLBACK(_write) \
|
||||
downcast<upd765_family_device &>(*device).set_drq_wr_callback(DEVCB_##_write);
|
||||
|
||||
#define MCFG_UPD765_HDL_CALLBACK(_write) \
|
||||
downcast<upd765_family_device &>(*device).set_hdl_wr_callback(DEVCB_##_write);
|
||||
|
||||
/* Interface required for PC ISA wrapping */
|
||||
class pc_fdc_interface : public device_t {
|
||||
protected:
|
||||
@ -101,9 +41,6 @@ class upd765_family_device : public pc_fdc_interface {
|
||||
public:
|
||||
enum { MODE_AT, MODE_PS2, MODE_M30 };
|
||||
|
||||
template <class Object> devcb_base &set_intrq_wr_callback(Object &&cb) { return intrq_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template <class Object> devcb_base &set_drq_wr_callback(Object &&cb) { return drq_cb.set_callback(std::forward<Object>(cb)); }
|
||||
template <class Object> devcb_base &set_hdl_wr_callback(Object &&cb) { return hdl_cb.set_callback(std::forward<Object>(cb)); }
|
||||
auto intrq_wr_callback() { return intrq_cb.bind(); }
|
||||
auto drq_wr_callback() { return drq_cb.bind(); }
|
||||
auto hdl_wr_callback() { return hdl_cb.bind(); }
|
||||
@ -454,6 +391,12 @@ public:
|
||||
|
||||
class upd765b_device : public upd765_family_device {
|
||||
public:
|
||||
upd765b_device(const machine_config &mconfig, const char *tag, device_t *owner, bool ready, bool select)
|
||||
: upd765b_device(mconfig, tag, owner, 0U)
|
||||
{
|
||||
set_ready_line_connected(ready);
|
||||
set_select_lines_connected(select);
|
||||
}
|
||||
upd765b_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
@ -461,6 +404,11 @@ public:
|
||||
|
||||
class i8272a_device : public upd765_family_device {
|
||||
public:
|
||||
i8272a_device(const machine_config &mconfig, const char *tag, device_t *owner, bool ready)
|
||||
: i8272a_device(mconfig, tag, owner, 0U)
|
||||
{
|
||||
set_ready_line_connected(ready);
|
||||
}
|
||||
i8272a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
@ -468,7 +416,12 @@ public:
|
||||
|
||||
class i82072_device : public upd765_family_device {
|
||||
public:
|
||||
i82072_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
i82072_device(const machine_config &mconfig, const char *tag, device_t *owner, bool ready)
|
||||
: i82072_device(mconfig, tag, owner)
|
||||
{
|
||||
set_ready_line_connected(ready);
|
||||
}
|
||||
i82072_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 24'000'000);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
|
||||
@ -502,7 +455,7 @@ private:
|
||||
|
||||
class smc37c78_device : public upd765_family_device {
|
||||
public:
|
||||
smc37c78_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
smc37c78_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
};
|
||||
@ -524,6 +477,11 @@ public:
|
||||
|
||||
class n82077aa_device : public upd765_family_device {
|
||||
public:
|
||||
n82077aa_device(const machine_config &mconfig, const char *tag, device_t *owner, int mode)
|
||||
: n82077aa_device(mconfig, tag, owner, 0U)
|
||||
{
|
||||
set_mode(mode);
|
||||
}
|
||||
n82077aa_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
@ -531,38 +489,38 @@ public:
|
||||
|
||||
class pc_fdc_superio_device : public upd765_family_device {
|
||||
public:
|
||||
pc_fdc_superio_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
pc_fdc_superio_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
};
|
||||
|
||||
class dp8473_device : public upd765_family_device {
|
||||
public:
|
||||
dp8473_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
dp8473_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
};
|
||||
|
||||
class pc8477a_device : public upd765_family_device {
|
||||
public:
|
||||
pc8477a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
pc8477a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
};
|
||||
|
||||
class wd37c65c_device : public upd765_family_device {
|
||||
public:
|
||||
wd37c65c_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
wd37c65c_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
};
|
||||
|
||||
class mcs3201_device : public upd765_family_device {
|
||||
public:
|
||||
mcs3201_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
mcs3201_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
// configuration helpers
|
||||
template <class Object> devcb_base &set_input_handler(Object &&cb) { return m_input_handler.set_callback(std::forward<Object>(cb)); }
|
||||
auto input_handler() { return m_input_handler.bind(); }
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
DECLARE_READ8_MEMBER( input_r );
|
||||
@ -576,7 +534,7 @@ private:
|
||||
|
||||
class tc8566af_device : public upd765_family_device {
|
||||
public:
|
||||
tc8566af_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||
tc8566af_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
|
||||
|
||||
virtual void map(address_map &map) override;
|
||||
|
||||
|
@ -608,7 +608,7 @@ MACHINE_CONFIG_START(a5105_state::a5105)
|
||||
|
||||
MCFG_CASSETTE_ADD( "cassette" )
|
||||
|
||||
MCFG_UPD765A_ADD("upd765a", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:0", a5105_floppies, "525qd", a5105_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:1", a5105_floppies, "525qd", a5105_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:2", a5105_floppies, "525qd", a5105_state::floppy_formats)
|
||||
|
@ -722,9 +722,9 @@ MACHINE_CONFIG_START(alphatro_state::alphatro)
|
||||
WAVE(config, "wave", "cassette").add_route(ALL_OUTPUTS, "mono", 0.25);
|
||||
|
||||
/* Devices */
|
||||
MCFG_UPD765A_ADD("fdc", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, alphatro_state, fdc_irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(m_dmac, i8257_device, dreq2_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(alphatro_state::fdc_irq_w));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(i8257_device::dreq2_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", alphatro_floppies, "525dd", alphatro_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", alphatro_floppies, "525dd", alphatro_state::floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list", "alphatro_flop")
|
||||
|
@ -148,7 +148,7 @@ MACHINE_CONFIG_START(altos486_state::altos486)
|
||||
|
||||
MCFG_DEVICE_ADD("ppi8255", I8255, 0)
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", false, false)
|
||||
UPD765A(config, "fdc", false, false);
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", altos486_floppies, "525qd", altos486_state::floppy_formats)
|
||||
MCFG_SLOT_FIXED(true)
|
||||
|
||||
|
@ -510,14 +510,14 @@ MACHINE_CONFIG_START(amstrad_pc_state::pc200)
|
||||
MCFG_DEVICE_ADD("isa2", ISA8_SLOT, 0, "mb:isa", pc_isa8_cards, nullptr, false)
|
||||
|
||||
/* printer */
|
||||
MCFG_DEVICE_ADD("lpt_0", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE("mb:pic8259", pic8259_device, ir7_w))
|
||||
pc_lpt_device &lpt0(PC_LPT(config, "lpt_0"));
|
||||
lpt0.irq_handler().set("mb:pic8259", FUNC(pic8259_device::ir7_w));
|
||||
|
||||
MCFG_DEVICE_ADD("lpt_1", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE("mb:pic8259", pic8259_device, ir7_w))
|
||||
PC_LPT(config, m_lpt1);
|
||||
m_lpt1->irq_handler().set("mb:pic8259", FUNC(pic8259_device::ir7_w));
|
||||
|
||||
MCFG_DEVICE_ADD("lpt_2", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE("mb:pic8259", pic8259_device, ir5_w))
|
||||
PC_LPT(config, m_lpt2);
|
||||
m_lpt2->irq_handler().set("mb:pic8259", FUNC(pic8259_device::ir5_w));
|
||||
|
||||
MCFG_PC_JOY_ADD("pc_joy")
|
||||
|
||||
|
@ -984,7 +984,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(amstrad_state::cpc664)
|
||||
amstrad_base(config);
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", amstrad_floppies, "3ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", amstrad_floppies, "35ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list","cpc_flop")
|
||||
@ -1002,7 +1002,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(amstrad_state::cpc6128)
|
||||
amstrad_base(config);
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", amstrad_floppies, "3ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", amstrad_floppies, "35ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list","cpc_flop")
|
||||
@ -1087,7 +1087,7 @@ MACHINE_CONFIG_START(amstrad_state::cpcplus)
|
||||
MCFG_CASSETTE_INTERFACE("cpc_cass")
|
||||
MCFG_SOFTWARE_LIST_ADD("cass_list","cpc_cass")
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
|
||||
cpcplus_cartslot(config);
|
||||
|
||||
@ -1173,8 +1173,7 @@ MACHINE_CONFIG_START(amstrad_state::aleste)
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MC146818, 4.194304_MHz_XTAL)
|
||||
|
||||
MCFG_DEVICE_REMOVE("upd765")
|
||||
MCFG_I8272A_ADD("upd765", true)
|
||||
I8272A(config.replace(), m_fdc, true);
|
||||
|
||||
MCFG_DEVICE_REMOVE("exp")
|
||||
MCFG_DEVICE_ADD("exp", CPC_EXPANSION_SLOT, 0)
|
||||
|
@ -973,9 +973,9 @@ MACHINE_CONFIG_START(apc_state::apc)
|
||||
NVRAM(config, m_cmos, nvram_device::DEFAULT_ALL_1);
|
||||
UPD1990A(config, m_rtc);
|
||||
|
||||
MCFG_UPD765A_ADD(m_fdc, true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(m_i8259_s, pic8259_device, ir4_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(m_dmac, am9517a_device, dreq1_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(m_i8259_s, FUNC(pic8259_device::ir4_w));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(am9517a_device::dreq1_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_fdc_connector[0], apc_floppies, "8", apc_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_fdc_connector[1], apc_floppies, "8", apc_floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("disk_list","apc")
|
||||
|
@ -149,7 +149,7 @@ MACHINE_CONFIG_START(ax20_state::ax20)
|
||||
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ax20)
|
||||
MCFG_PALETTE_ADD_MONOCHROME("palette")
|
||||
|
||||
MCFG_I8272A_ADD("fdc", true)
|
||||
I8272A(config, m_fdc, true);
|
||||
|
||||
/* Devices */
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", ax20_floppies, "525dd", isa8_fdc_device::floppy_formats)
|
||||
|
@ -579,7 +579,7 @@ MACHINE_CONFIG_START(bw12_state::common)
|
||||
|
||||
/* devices */
|
||||
MCFG_TIMER_DRIVER_ADD(FLOPPY_TIMER_TAG, bw12_state, floppy_motor_off_tick)
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, true)
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
|
||||
PIA6821(config, m_pia, 0);
|
||||
m_pia->readpa_handler().set(FUNC(bw12_state::pia_pa_r));
|
||||
|
@ -195,7 +195,7 @@ MACHINE_CONFIG_START(czk80_state::czk80)
|
||||
|
||||
MCFG_DEVICE_ADD(m_terminal, GENERIC_TERMINAL, 0)
|
||||
MCFG_GENERIC_TERMINAL_KEYBOARD_CB(PUT(czk80_state, kbd_put))
|
||||
MCFG_UPD765A_ADD("fdc", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", czk80_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
z80ctc_device& ctc(Z80CTC(config, "ctc", XTAL(16'000'000) / 4));
|
||||
|
@ -331,7 +331,7 @@ MACHINE_CONFIG_START(dim68k_state::dim68k)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
|
||||
|
||||
/* Devices */
|
||||
MCFG_UPD765A_ADD("fdc", true, true) // these options unknown
|
||||
UPD765A(config, "fdc", true, true); // these options unknown
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", dim68k_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", dim68k_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -821,9 +821,9 @@ MACHINE_CONFIG_START(dmv_state::dmv)
|
||||
m_dmac->out_iow_callback<3>().set(m_fdc, FUNC(i8272a_device::mdma_w));
|
||||
m_dmac->out_dack_callback<3>().set(FUNC(dmv_state::dmac_dack3));
|
||||
|
||||
MCFG_I8272A_ADD( "i8272", true )
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, dmv_state, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dma8237", am9517a_device, dreq3_w))
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(dmv_state::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(am9517a_device::dreq3_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("i8272:0", dmv_floppies, "525dd", dmv_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("i8272:1", dmv_floppies, "525dd", dmv_state::floppy_formats)
|
||||
|
||||
|
@ -218,9 +218,9 @@ MACHINE_CONFIG_START(dps1_state::dps1)
|
||||
AM9519(config, "am9519b", 0);
|
||||
|
||||
// floppy
|
||||
MCFG_UPD765A_ADD("fdc", false, true)
|
||||
//MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, dps1_state, fdc_int_w)) // doesn't appear to be used
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, dps1_state, fdc_drq_w))
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
//m_fdc->intrq_wr_callback().set(FUNC(dps1_state::fdc_int_w)); // doesn't appear to be used
|
||||
m_fdc->drq_wr_callback().set(FUNC(dps1_state::fdc_drq_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", floppies, "floppy0", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_SOUND(true)
|
||||
//MCFG_FLOPPY_DRIVE_ADD("fdc:1", floppies, "floppy1", floppy_image_device::default_floppy_formats)
|
||||
|
@ -161,7 +161,7 @@ void duet16_state::duet16_mem(address_map &map)
|
||||
map(0xf80c0, 0xf80c0).rw("crtc", FUNC(h46505_device::status_r), FUNC(h46505_device::address_w));
|
||||
map(0xf80c2, 0xf80c2).rw("crtc", FUNC(h46505_device::register_r), FUNC(h46505_device::register_w));
|
||||
map(0xf80e0, 0xf80e3).rw("i8741", FUNC(upi41_cpu_device::upi41_master_r), FUNC(upi41_cpu_device::upi41_master_w)).umask16(0x00ff);
|
||||
map(0xf8100, 0xf8103).m("fdc", FUNC(upd765a_device::map)).umask16(0x00ff);
|
||||
map(0xf8100, 0xf8103).m(m_fdc, FUNC(upd765a_device::map)).umask16(0x00ff);
|
||||
map(0xf8120, 0xf8120).rw(FUNC(duet16_state::rtc_r), FUNC(duet16_state::rtc_w));
|
||||
map(0xf8160, 0xf819f).w(FUNC(duet16_state::pal_w));
|
||||
map(0xf8200, 0xf8201).r(FUNC(duet16_state::sysstat_r));
|
||||
@ -406,9 +406,9 @@ MACHINE_CONFIG_START(duet16_state::duet16)
|
||||
MCFG_INPUT_MERGER_ANY_HIGH("tmint")
|
||||
MCFG_INPUT_MERGER_OUTPUT_HANDLER(WRITELINE("pic", pic8259_device, ir0_w)) // INT6
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", true, false)
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dmac", am9517a_device, dreq0_w))
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("pic", pic8259_device, ir3_w)) // INT4
|
||||
UPD765A(config, m_fdc, true, false);
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(am9517a_device::dreq0_w));
|
||||
m_fdc->intrq_wr_callback().set(m_pic, FUNC(pic8259_device::ir3_w)); // INT4
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", duet16_floppies, "525qd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SLOT_FIXED(true)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", duet16_floppies, "525qd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -1011,9 +1011,9 @@ MACHINE_CONFIG_START(fanucspmg_state::fanucspmg)
|
||||
MCFG_PIC8259_OUT_INT_CB(WRITELINE(PIC0_TAG, pic8259_device, ir7_w))
|
||||
MCFG_PIC8259_IN_SP_CB(CONSTANT(0))
|
||||
|
||||
MCFG_UPD765A_ADD(FDC_TAG, true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(PIC0_TAG, pic8259_device, ir3_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(DMAC_TAG, i8257_device, dreq0_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(m_pic0, FUNC(pic8259_device::ir3_w));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(i8257_device::dreq0_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC_TAG":0", fanuc_floppies, "525dd", fanucspmg_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC_TAG":1", fanuc_floppies, "525dd", fanucspmg_state::floppy_formats)
|
||||
|
||||
|
@ -464,9 +464,9 @@ MACHINE_CONFIG_START(hec2hrp_state::hec2mx40)
|
||||
MCFG_DEVICE_ADD("disc2cpu", Z80, 4_MHz_XTAL)
|
||||
MCFG_DEVICE_PROGRAM_MAP(hecdisc2_mem)
|
||||
MCFG_DEVICE_IO_MAP(hecdisc2_io)
|
||||
MCFG_UPD765A_ADD(m_upd_fdc, false, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_interrupt))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_dma_irq))
|
||||
UPD765A(config, m_upd_fdc, false, true);
|
||||
m_upd_fdc->intrq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_interrupt));
|
||||
m_upd_fdc->drq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_dma_irq));
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[0], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[1], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_MACHINE_RESET_OVERRIDE(hec2hrp_state,hec2hrx)
|
||||
@ -504,9 +504,9 @@ MACHINE_CONFIG_START(hec2hrp_state::hec2hrx)
|
||||
MCFG_DEVICE_ADD("disc2cpu", Z80, 4_MHz_XTAL)
|
||||
MCFG_DEVICE_PROGRAM_MAP(hecdisc2_mem)
|
||||
MCFG_DEVICE_IO_MAP(hecdisc2_io)
|
||||
MCFG_UPD765A_ADD(m_upd_fdc, false, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_interrupt))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_dma_irq))
|
||||
UPD765A(config, m_upd_fdc, false, true);
|
||||
m_upd_fdc->intrq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_interrupt));
|
||||
m_upd_fdc->drq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_dma_irq));
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[0], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[1], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
@ -575,9 +575,9 @@ MACHINE_CONFIG_START(hec2hrp_state::hec2mx80)
|
||||
MCFG_DEVICE_ADD("disc2cpu", Z80, 4_MHz_XTAL)
|
||||
MCFG_DEVICE_PROGRAM_MAP(hecdisc2_mem)
|
||||
MCFG_DEVICE_IO_MAP(hecdisc2_io)
|
||||
MCFG_UPD765A_ADD(m_upd_fdc, false, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_interrupt))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, hec2hrp_state, disc2_fdc_dma_irq))
|
||||
UPD765A(config, m_upd_fdc, false, true);
|
||||
m_upd_fdc->intrq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_interrupt));
|
||||
m_upd_fdc->drq_wr_callback().set(FUNC(hec2hrp_state::disc2_fdc_dma_irq));
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[0], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_upd_connector[1], hector_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -918,16 +918,16 @@ MACHINE_CONFIG_START(ibm6580_state::ibm6580)
|
||||
|
||||
I8257(config, m_dma8257, XTAL(14'745'600)/3);
|
||||
m_dma8257->out_hrq_cb().set(FUNC(ibm6580_state::hrq_w));
|
||||
m_dma8257->out_tc_cb().set(UPD765_TAG, FUNC(upd765a_device::tc_line_w));
|
||||
m_dma8257->out_tc_cb().set(m_fdc, FUNC(upd765a_device::tc_line_w));
|
||||
m_dma8257->in_memr_cb().set(FUNC(ibm6580_state::memory_read_byte));
|
||||
m_dma8257->out_memw_cb().set(FUNC(ibm6580_state::memory_write_byte));
|
||||
m_dma8257->in_ior_cb<0>().set(UPD765_TAG, FUNC(upd765a_device::mdma_r));
|
||||
m_dma8257->out_iow_cb<0>().set(UPD765_TAG, FUNC(upd765a_device::mdma_w));
|
||||
m_dma8257->in_ior_cb<0>().set(m_fdc, FUNC(upd765a_device::mdma_r));
|
||||
m_dma8257->out_iow_cb<0>().set(m_fdc, FUNC(upd765a_device::mdma_w));
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, false)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, ibm6580_state, floppy_intrq))
|
||||
// MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("pic8259", pic8259_device, ir4_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dma8257", i8257_device, dreq0_w))
|
||||
UPD765A(config, m_fdc, false, false);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(ibm6580_state::floppy_intrq));
|
||||
// m_fdc->intrq_wr_callback().append("pic8259", FUNC(pic8259_device::ir4_w));
|
||||
m_fdc->drq_wr_callback().set(m_dma8257, FUNC(i8257_device::dreq0_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", dw_floppies, "8sssd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", dw_floppies, "8sssd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -611,12 +611,12 @@ MACHINE_CONFIG_START(pcjr_state::ibmpcjr)
|
||||
*/
|
||||
MCFG_DEVICE_ADD("pit8253", PIT8253, 0)
|
||||
MCFG_PIT8253_CLK0(XTAL(14'318'181)/12)
|
||||
MCFG_PIT8253_OUT0_HANDLER(WRITELINE("pic8259", pic8259_device, ir0_w))
|
||||
MCFG_PIT8253_OUT0_HANDLER(WRITELINE(m_pic8259, pic8259_device, ir0_w))
|
||||
MCFG_PIT8253_CLK1(XTAL(14'318'181)/12)
|
||||
MCFG_PIT8253_CLK2(XTAL(14'318'181)/12)
|
||||
MCFG_PIT8253_OUT2_HANDLER(WRITELINE(*this, pcjr_state, out2_changed))
|
||||
|
||||
MCFG_DEVICE_ADD("pic8259", PIC8259, 0)
|
||||
MCFG_DEVICE_ADD(m_pic8259, PIC8259, 0)
|
||||
MCFG_PIC8259_OUT_INT_CB(WRITELINE(*this, pcjr_state, pic8259_set_int_line))
|
||||
|
||||
i8255_device &ppi(I8255(config, "ppi8255"));
|
||||
@ -628,7 +628,7 @@ MACHINE_CONFIG_START(pcjr_state::ibmpcjr)
|
||||
uart.out_tx_callback().set("serport", FUNC(rs232_port_device::write_txd));
|
||||
uart.out_dtr_callback().set("serport", FUNC(rs232_port_device::write_dtr));
|
||||
uart.out_rts_callback().set("serport", FUNC(rs232_port_device::write_rts));
|
||||
uart.out_int_callback().set("pic8259", FUNC(pic8259_device::ir3_w));
|
||||
uart.out_int_callback().set(m_pic8259, FUNC(pic8259_device::ir3_w));
|
||||
|
||||
MCFG_DEVICE_ADD( "serport", RS232_PORT, pcjr_com, nullptr )
|
||||
MCFG_RS232_RXD_HANDLER(WRITELINE("ins8250", ins8250_uart_device, rx_w))
|
||||
@ -651,8 +651,8 @@ MACHINE_CONFIG_START(pcjr_state::ibmpcjr)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.80)
|
||||
|
||||
/* printer */
|
||||
MCFG_DEVICE_ADD("lpt_0", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE("pic8259", pic8259_device, ir7_w))
|
||||
pc_lpt_device &lpt0(PC_LPT(config, "lpt_0"));
|
||||
lpt0.irq_handler().set(m_pic8259, FUNC(pic8259_device::ir7_w));
|
||||
|
||||
MCFG_PC_JOY_ADD("pc_joy")
|
||||
|
||||
@ -660,7 +660,7 @@ MACHINE_CONFIG_START(pcjr_state::ibmpcjr)
|
||||
MCFG_CASSETTE_ADD( "cassette")
|
||||
MCFG_CASSETTE_DEFAULT_STATE(CASSETTE_PLAY | CASSETTE_MOTOR_DISABLED | CASSETTE_SPEAKER_ENABLED)
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", false, false)
|
||||
UPD765A(config, m_fdc, false, false);
|
||||
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pcjr_floppies, "525dd", isa8_fdc_device::floppy_formats)
|
||||
MCFG_SLOT_FIXED(true)
|
||||
|
@ -707,9 +707,9 @@ MACHINE_CONFIG_START(kdt6_state::psi98)
|
||||
|
||||
UPD1990A(config, m_rtc);
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("ctc1", z80ctc_device, trg0))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, kdt6_state, fdc_drq_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set("ctc1", FUNC(z80ctc_device::trg0));
|
||||
m_fdc->drq_wr_callback().set(FUNC(kdt6_state::fdc_drq_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", kdt6_floppies, "fd55f", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", kdt6_floppies, "fd55f", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -1411,7 +1411,7 @@ MACHINE_CONFIG_START(m5_state::m5)
|
||||
m_maincpu->set_addrmap(AS_IO, &m5_state::m5_io);
|
||||
m_maincpu->set_daisy_config(m5_daisy_chain);
|
||||
|
||||
MCFG_DEVICE_ADD(Z80_FD5_TAG, Z80, 14.318181_MHz_XTAL / 4)
|
||||
MCFG_DEVICE_ADD(m_fd5cpu, Z80, 14.318181_MHz_XTAL / 4)
|
||||
MCFG_DEVICE_PROGRAM_MAP(fd5_mem)
|
||||
MCFG_DEVICE_IO_MAP(fd5_io)
|
||||
|
||||
@ -1443,8 +1443,8 @@ MACHINE_CONFIG_START(m5_state::m5)
|
||||
m_ppi->in_pc_callback().set(FUNC(m5_state::ppi_pc_r));
|
||||
m_ppi->out_pc_callback().set(FUNC(m5_state::ppi_pc_w));
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE(Z80_FD5_TAG, INPUT_LINE_IRQ0))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_fd5cpu, INPUT_LINE_IRQ0);
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", m5_floppies, "525dd", m5_state::floppy_formats)
|
||||
|
||||
// cartridge
|
||||
@ -1507,9 +1507,9 @@ MACHINE_CONFIG_START(brno_state::brno)
|
||||
|
||||
|
||||
//remove devices used for fd5 floppy
|
||||
MCFG_DEVICE_REMOVE(Z80_FD5_TAG)
|
||||
MCFG_DEVICE_REMOVE(I8255A_TAG)
|
||||
MCFG_DEVICE_REMOVE(UPD765_TAG)
|
||||
config.device_remove(Z80_FD5_TAG);
|
||||
config.device_remove(I8255A_TAG);
|
||||
config.device_remove(UPD765_TAG);
|
||||
|
||||
// video hardware
|
||||
tms9929a_device &vdp(TMS9929A(config, "tms9928a", 10.738635_MHz_XTAL));
|
||||
|
@ -490,9 +490,9 @@ MACHINE_CONFIG_START(mm1_state::mm1)
|
||||
m_pit->set_clk<2>(6.144_MHz_XTAL/2/2);
|
||||
m_pit->out_handler<2>().set(FUNC(mm1_state::auxc_w));
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, /* 16_MHz_XTAL/2/2 */ true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE(I8085A_TAG, I8085_RST55_LINE))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(I8237_TAG, am9517a_device, dreq3_w))
|
||||
UPD765A(config, m_fdc, /* 16_MHz_XTAL/2/2, */ true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_maincpu, I8085_RST55_LINE);
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(am9517a_device::dreq3_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", mm1_floppies, "525qd", mm1_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_SOUND(true)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", mm1_floppies, "525qd", mm1_state::floppy_formats)
|
||||
|
@ -213,9 +213,9 @@ void mpc3000_state::mpc3000(machine_config &config)
|
||||
MCFG_PALETTE_ADD("palette", 2)
|
||||
MCFG_PALETTE_INIT_OWNER(mpc3000_state, mpc3000)
|
||||
|
||||
MCFG_UPD72065_ADD("upd72068", true, true) // TODO: upd72068 supports motor control
|
||||
//MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("maincpu", v53a_device, ir?_w))
|
||||
//MCFG_UPD765_DRQ_CALLBACK(WRITELINE("maincpu", v53a_device, drq?_w))
|
||||
UPD72065(config, m_fdc, 0, true, true); // TODO: upd72068 supports motor control
|
||||
//m_fdc->intrq_wr_callback().set(m_maincpu, FUNC(v53a_device::ir?_w));
|
||||
//m_fdc->drq_wr_callback().set(m_maincpu, FUNC(v53a_device::drq?_w));
|
||||
|
||||
pit8254_device &pit(PIT8254(config, "synctmr", 0)); // MB89254
|
||||
pit.set_clk<0>(16_MHz_XTAL / 4);
|
||||
|
@ -1317,9 +1317,10 @@ void msx_state::msx_mb8877a(machine_config & config)
|
||||
fdc.set_force_ready(true);
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(msx_state::msx_tc8566af)
|
||||
MCFG_TC8566AF_ADD("fdc")
|
||||
MACHINE_CONFIG_END
|
||||
void msx_state::msx_tc8566af(machine_config &config)
|
||||
{
|
||||
TC8566AF(config, "fdc");
|
||||
}
|
||||
|
||||
void msx_state::msx_microsol(machine_config &config)
|
||||
{
|
||||
|
@ -612,7 +612,7 @@ MACHINE_CONFIG_START(multi8_state::multi8)
|
||||
MCFG_DEVICE_ADD("pit", PIT8253, 0)
|
||||
MCFG_DEVICE_ADD("pic", PIC8259, 0)
|
||||
|
||||
//MCFG_UPD765A_ADD("fdc", false, true)
|
||||
//UPD765A(config, "fdc", false, true);
|
||||
//MCFG_FLOPPY_DRIVE_ADD("fdc:0", multi8_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -826,8 +826,8 @@ MACHINE_CONFIG_START(mz3500_state::mz3500)
|
||||
ppi.out_pb_callback().set(FUNC(mz3500_state::mz3500_pb_w));
|
||||
ppi.out_pc_callback().set(FUNC(mz3500_state::mz3500_pc_w));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765a", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("master", INPUT_LINE_IRQ0))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_master, INPUT_LINE_IRQ0);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:0", mz3500_floppies, "525ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:1", mz3500_floppies, "525ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765a:2", mz3500_floppies, "525ssdd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -169,7 +169,7 @@ MACHINE_CONFIG_START(mz6500_state::mz6500)
|
||||
MCFG_DEVICE_ADDRESS_MAP(0, upd7220_map)
|
||||
MCFG_UPD7220_DISPLAY_PIXELS_CALLBACK_OWNER(mz6500_state, hgdc_display_pixels)
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", mz6500_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", mz6500_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -515,7 +515,7 @@ MACHINE_CONFIG_START(nanos_state::nanos)
|
||||
m_pio->out_pb_callback().set(FUNC(nanos_state::port_b_w));
|
||||
|
||||
/* UPD765 */
|
||||
MCFG_UPD765A_ADD(m_fdc, false, true)
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD(m_floppy, nanos_floppies, "525hd", nanos_state::floppy_formats)
|
||||
|
||||
/* internal ram */
|
||||
|
@ -1260,7 +1260,7 @@ void nc200_state::nc200_io(address_map &map)
|
||||
map(0xb0, 0xb9).r(FUNC(nc200_state::nc_key_data_in_r));
|
||||
map(0xc0, 0xc1).rw(m_uart, FUNC(i8251_device::read), FUNC(i8251_device::write));
|
||||
map(0xd0, 0xd1).rw("mc", FUNC(mc146818_device::read), FUNC(mc146818_device::write));
|
||||
map(0xe0, 0xe1).m("upd765", FUNC(upd765a_device::map));
|
||||
map(0xe0, 0xe1).m(m_fdc, FUNC(upd765a_device::map));
|
||||
}
|
||||
|
||||
static INPUT_PORTS_START(nc200)
|
||||
@ -1482,8 +1482,8 @@ MACHINE_CONFIG_START(nc200_state::nc200)
|
||||
m_uart->rxrdy_handler().set(FUNC(nc200_state::nc200_rxrdy_callback));
|
||||
m_uart->txrdy_handler().set(FUNC(nc200_state::nc200_txrdy_callback));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, nc200_state, nc200_fdc_interrupt))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(nc200_state::nc200_fdc_interrupt));
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", ibmpc_floppies, "525dd", ibmpc_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", ibmpc_floppies, "525dd", ibmpc_floppy_formats)
|
||||
|
||||
|
@ -1055,9 +1055,9 @@ MACHINE_CONFIG_END
|
||||
|
||||
MACHINE_CONFIG_START(next_state::next_fdc_base)
|
||||
next_base(config);
|
||||
MCFG_N82077AA_ADD("fdc", n82077aa_device::MODE_PS2)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, next_state, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, next_state, fdc_drq))
|
||||
N82077AA(config, fdc, n82077aa_device::MODE_PS2);
|
||||
fdc->intrq_wr_callback().set(FUNC(next_state::fdc_irq));
|
||||
fdc->drq_wr_callback().set(FUNC(next_state::fdc_drq));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", next_floppies, "35ed", next_state::floppy_formats)
|
||||
|
||||
// software list
|
||||
|
@ -514,9 +514,9 @@ MACHINE_CONFIG_START( olyboss_state::bossb85 )
|
||||
MCFG_DEVICE_ADD("pic", PIC8259, 0)
|
||||
MCFG_PIC8259_OUT_INT_CB(INPUTLINE("maincpu", 0))
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("maincpu", I8085_RST65_LINE))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(m_dma, i8257_device, dreq0_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_maincpu, I8085_RST65_LINE);
|
||||
m_fdc->drq_wr_callback().set(m_dma, FUNC(i8257_device::dreq0_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", bossb_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_SOUND(true)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", bossb_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -472,8 +472,8 @@ MACHINE_CONFIG_START(p8k_state::p8k)
|
||||
m_pio2->out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
|
||||
m_pio2->in_pa_callback().set_ioport("DSW");
|
||||
|
||||
MCFG_I8272A_ADD("i8272", true)
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dma", z80dma_device, rdy_w))
|
||||
I8272A(config, m_i8272, true);
|
||||
m_i8272->drq_wr_callback().set("dma", FUNC(z80dma_device::rdy_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("i8272:0", p8k_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("i8272:1", p8k_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -966,7 +966,7 @@ MACHINE_CONFIG_START(pasopia7_state::p7_base)
|
||||
m_ppi2->in_pc_callback().set(FUNC(pasopia7_state::nmi_reg_r));
|
||||
m_ppi2->out_pc_callback().set(FUNC(pasopia7_state::nmi_reg_w));
|
||||
|
||||
MCFG_UPD765A_ADD("fdc", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pasopia7_floppies, "525hd", floppy_image_device::default_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -667,9 +667,9 @@ MACHINE_CONFIG_START(pc100_state::pc100)
|
||||
//i8251.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
|
||||
i8251.rxrdy_handler().set("pic8259", FUNC(pic8259_device::ir1_w));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pc100_state, irqnmi_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, pc100_state, drqnmi_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(pc100_state::irqnmi_w));
|
||||
m_fdc->drq_wr_callback().set(FUNC(pc100_state::drqnmi_w));
|
||||
|
||||
MCFG_DEVICE_ADD("rtc", MSM58321, XTAL(32'768))
|
||||
MCFG_MSM58321_D0_HANDLER(WRITELINE(*this, pc100_state, rtc_portc_0_w))
|
||||
|
@ -1685,7 +1685,7 @@ void pc8801_state::pc8801fdc_io(address_map &map)
|
||||
map(0xf4, 0xf4).w(FUNC(pc8801_state::fdc_drive_mode_w)); // Drive mode, 2d, 2dd, 2hd
|
||||
map(0xf7, 0xf7).nopw(); // printer port output
|
||||
map(0xf8, 0xf8).rw(FUNC(pc8801_state::upd765_tc_r), FUNC(pc8801_state::upd765_mc_w)); // (R) Terminal Count Port (W) Motor Control Port
|
||||
map(0xfa, 0xfb).m("upd765", FUNC(upd765a_device::map));
|
||||
map(0xfa, 0xfb).m(m_fdc, FUNC(upd765a_device::map));
|
||||
map(0xfc, 0xff).rw("d8255_slave", FUNC(i8255_device::read), FUNC(i8255_device::write));
|
||||
}
|
||||
|
||||
@ -2351,7 +2351,7 @@ MACHINE_CONFIG_START(pc8801_state::pc8801)
|
||||
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DRIVER(pc8801_state,pc8801_irq_callback)
|
||||
|
||||
/* sub CPU(5 inch floppy drive) */
|
||||
MCFG_DEVICE_ADD("fdccpu", Z80, MASTER_CLOCK) /* 4 MHz */
|
||||
MCFG_DEVICE_ADD(m_fdccpu, Z80, MASTER_CLOCK) /* 4 MHz */
|
||||
MCFG_DEVICE_PROGRAM_MAP(pc8801fdc_mem)
|
||||
MCFG_DEVICE_IO_MAP(pc8801fdc_io)
|
||||
|
||||
@ -2370,8 +2370,8 @@ MACHINE_CONFIG_START(pc8801_state::pc8801)
|
||||
d8255_slave.in_pc_callback().set(FUNC(pc8801_state::fdc_8255_c_r));
|
||||
d8255_slave.out_pc_callback().set(FUNC(pc8801_state::fdc_8255_c_w));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("fdccpu", INPUT_LINE_IRQ0))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_fdccpu, INPUT_LINE_IRQ0);
|
||||
|
||||
#if USE_PROPER_I8214
|
||||
I8214(config, I8214_TAG, MASTER_CLOCK);
|
||||
|
@ -1648,9 +1648,9 @@ MACHINE_CONFIG_START(pc88va_state::pc88va)
|
||||
m_dmac->in_memr_callback().set(FUNC(pc88va_state::dma_memr_cb));
|
||||
m_dmac->out_memw_callback().set(FUNC(pc88va_state::dma_memw_cb));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", false, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pc88va_state, fdc_irq))
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pc88va_state, fdc_drq))
|
||||
UPD765A(config, m_fdc, false, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(pc88va_state::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(FUNC(pc88va_state::fdc_drq));
|
||||
FLOPPY_CONNECTOR(config, m_fdd[0], pc88va_floppies, "525hd", pc88va_state::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, m_fdd[1], pc88va_floppies, "525hd", pc88va_state::floppy_formats);
|
||||
MCFG_SOFTWARE_LIST_ADD("disk_list","pc88va")
|
||||
|
@ -1263,8 +1263,8 @@ MACHINE_CONFIG_START(pcw_state::pcw)
|
||||
MCFG_DEVICE_ADD("beeper", BEEP, 3750)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pcw_state, pcw_fdc_interrupt))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(pcw_state::pcw_fdc_interrupt));
|
||||
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", pcw_floppies, "3dsdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", pcw_floppies, "3dsdd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -1060,11 +1060,11 @@ MACHINE_CONFIG_START(pcw16_state::pcw16)
|
||||
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
|
||||
|
||||
/* printer */
|
||||
MCFG_DEVICE_ADD("lpt", PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(INPUTLINE("maincpu", 0))
|
||||
pc_lpt_device &lpt(PC_LPT(config, "lpt"));
|
||||
lpt.irq_handler().set_inputline(m_maincpu, 0);
|
||||
|
||||
MCFG_PC_FDC_SUPERIO_ADD("fdc")
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, pcw16_state, fdc_interrupt))
|
||||
PC_FDC_SUPERIO(config, m_fdc);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(pcw16_state::fdc_interrupt));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pcw16_floppies, "35hd", pcw16_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pcw16_floppies, "35hd", pcw16_state::floppy_formats)
|
||||
|
||||
|
@ -288,9 +288,9 @@ MACHINE_CONFIG_START(peoplepc_state::olypeopl)
|
||||
m_dmac->in_ior_cb<0>().set("upd765", FUNC(upd765a_device::mdma_r));
|
||||
m_dmac->out_iow_cb<0>().set("upd765", FUNC(upd765a_device::mdma_w));
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("pic8259_0", pic8259_device, ir2_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(m_dmac, i8257_device, dreq0_w))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set("pic8259_0", FUNC(pic8259_device::ir2_w));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(i8257_device::dreq0_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", peoplepc_floppies, "525qd", peoplepc_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", peoplepc_floppies, "525qd", peoplepc_state::floppy_formats)
|
||||
|
||||
|
@ -252,7 +252,7 @@ MACHINE_CONFIG_START(prof180x_state::prof180x)
|
||||
MCFG_SCREEN_VISIBLE_AREA(0, 640-1, 0, 480-1)
|
||||
|
||||
/* devices */
|
||||
MCFG_UPD765A_ADD(FDC9268_TAG, false, true)
|
||||
UPD765A(config, FDC9268_TAG, false, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC9268_TAG ":0", prof180x_floppies, "35dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC9268_TAG ":1", prof180x_floppies, "35dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC9268_TAG ":2", prof180x_floppies, "35dd", floppy_image_device::default_floppy_formats)
|
||||
|
@ -463,7 +463,7 @@ MACHINE_CONFIG_START(prof80_state::prof80)
|
||||
UPD1990A(config, m_rtc);
|
||||
|
||||
// FDC
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", prof80_floppies, "525qd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", prof80_floppies, "525qd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":2", prof80_floppies, nullptr, floppy_image_device::default_floppy_formats)
|
||||
|
@ -419,9 +419,9 @@ MACHINE_CONFIG_START(pwrview_state::pwrview)
|
||||
MCFG_PIT8253_CLK2(XTAL(16'000'000)/16)
|
||||
|
||||
// floppy disk controller
|
||||
MCFG_UPD765A_ADD("fdc", true, true) // Rockwell R7675P
|
||||
//MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("pic1", pic8259_device, ir6_w))
|
||||
//MCFG_UPD765_DRQ_CALLBACK(WRITELINE("maincpu", i80186_cpu_device, drq1_w))
|
||||
UPD765A(config, "fdc", true, true); // Rockwell R7675P
|
||||
//fdc.intrq_wr_callback().set("pic1", FUNC(pic8259_device::ir6_w));
|
||||
//fdc.drq_wr_callback().set(m_maincpu, FUNC(i80186_cpu_device::drq1_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", pwrview_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", pwrview_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -569,7 +569,7 @@ MACHINE_CONFIG_START(pyl601_state::pyl601)
|
||||
MCFG_MC6845_CHAR_WIDTH(8) /* ? */
|
||||
MCFG_MC6845_UPDATE_ROW_CB(pyl601_state, pyl601_update_row)
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", pyl601_floppies, "525hd", pyl601_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", pyl601_floppies, "525hd", pyl601_state::floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list","pyl601")
|
||||
|
@ -467,8 +467,8 @@ MACHINE_CONFIG_START(sage2_state::sage2)
|
||||
MCFG_RS232_RXD_HANDLER(WRITELINE(m_usart1, i8251_device, write_rxd))
|
||||
MCFG_RS232_DSR_HANDLER(WRITELINE(m_usart1, i8251_device, write_dsr))
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, false)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, sage2_state, fdc_irq))
|
||||
UPD765A(config, m_fdc, false, false);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(sage2_state::fdc_irq));
|
||||
|
||||
MCFG_DEVICE_ADD(m_centronics, CENTRONICS, centronics_devices, "printer")
|
||||
MCFG_CENTRONICS_ACK_HANDLER(WRITELINE(*this, sage2_state, write_centronics_ack))
|
||||
|
@ -649,7 +649,7 @@ MACHINE_CONFIG_START(sf7000_state::sf7000)
|
||||
MCFG_RS232_RXD_HANDLER(WRITELINE(UPD8251_TAG, i8251_device, write_rxd))
|
||||
MCFG_RS232_DSR_HANDLER(WRITELINE(UPD8251_TAG, i8251_device, write_dsr))
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, false)
|
||||
UPD765A(config, m_fdc, false, false);
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", sf7000_floppies, "3ssdd", sf7000_state::floppy_formats)
|
||||
|
||||
MCFG_DEVICE_ADD(m_centronics, CENTRONICS, centronics_devices, "printer")
|
||||
|
@ -389,7 +389,7 @@ MACHINE_CONFIG_START(spectrum_state::spectrum_plus3)
|
||||
|
||||
MCFG_MACHINE_RESET_OVERRIDE(spectrum_state, spectrum_plus3 )
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", true, true)
|
||||
UPD765A(config, m_upd765, true, true);
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:0", specpls3_floppies, "3ssdd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("upd765:1", specpls3_floppies, "3ssdd", floppy_image_device::default_floppy_formats)
|
||||
|
||||
|
@ -625,7 +625,7 @@ MACHINE_CONFIG_START(sun3x_state::sun3_80)
|
||||
MCFG_DEVICE_ADD(ESP_TAG, NCR539X, 20000000/2)
|
||||
MCFG_LEGACY_SCSI_PORT("scsi")
|
||||
|
||||
MCFG_N82077AA_ADD("fdc", n82077aa_device::MODE_PS2)
|
||||
N82077AA(config, m_fdc, n82077aa_device::MODE_PS2);
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", sun_floppies, "35hd", sun3x_state::floppy_formats)
|
||||
|
||||
// the timekeeper has no interrupt output, so 3/80 includes a dedicated timer circuit
|
||||
|
@ -851,11 +851,11 @@ MACHINE_CONFIG_START(tandy2k_state::tandy2k)
|
||||
MCFG_DEVICE_ADD(I8259A_1_TAG, PIC8259, 0)
|
||||
MCFG_PIC8259_OUT_INT_CB(WRITELINE(I80186_TAG, i80186_cpu_device, int1_w))
|
||||
|
||||
MCFG_I8272A_ADD(I8272A_TAG, true)
|
||||
downcast<i8272a_device *>(device)->set_select_lines_connected(true);
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(I8259A_0_TAG, pic8259_device, ir4_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, tandy2k_state, fdc_drq_w))
|
||||
MCFG_UPD765_HDL_CALLBACK(WRITELINE(*this, tandy2k_state, fdc_hdl_w))
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->set_select_lines_connected(true);
|
||||
m_fdc->intrq_wr_callback().set(m_pic0, FUNC(pic8259_device::ir4_w));
|
||||
m_fdc->drq_wr_callback().set(FUNC(tandy2k_state::fdc_drq_w));
|
||||
m_fdc->hdl_wr_callback().set(FUNC(tandy2k_state::fdc_hdl_w));
|
||||
MCFG_FLOPPY_DRIVE_ADD(I8272A_TAG ":0", tandy2k_floppies, "525qd", tandy2k_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(I8272A_TAG ":1", tandy2k_floppies, "525qd", tandy2k_state::floppy_formats)
|
||||
|
||||
|
@ -140,8 +140,8 @@ MACHINE_CONFIG_START(tim011_state::tim011)
|
||||
// MCFG_DEVICE_ADD("keyboard",CDP1802, XTAL(1'750'000)) // CDP1802, unknown clock
|
||||
|
||||
// FDC9266 location U43 XTAL(8'000'000)
|
||||
MCFG_UPD765A_ADD(FDC9266_TAG, true, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(INPUTLINE("maincpu", INPUT_LINE_IRQ2))
|
||||
UPD765A(config, m_fdc, true, true);
|
||||
m_fdc->intrq_wr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ2);
|
||||
|
||||
/* floppy drives */
|
||||
MCFG_FLOPPY_DRIVE_ADD(FDC9266_TAG ":0", tim011_floppies, "35dd", tim011_floppy_formats)
|
||||
|
@ -399,8 +399,8 @@ MACHINE_CONFIG_START(tv990_state::tv990)
|
||||
m_uart1->out_tx_callback().set(RS232B_TAG, FUNC(rs232_port_device::write_txd));
|
||||
m_uart1->out_int_callback().set(FUNC(tv990_state::uart1_irq));
|
||||
|
||||
MCFG_DEVICE_ADD(LPT_TAG, PC_LPT, 0)
|
||||
MCFG_PC_LPT_IRQ_HANDLER(WRITELINE(*this, tv990_state, lpt_irq))
|
||||
pc_lpt_device &lpt(PC_LPT(config, LPT_TAG));
|
||||
lpt.irq_handler().set(FUNC(tv990_state::lpt_irq));
|
||||
|
||||
MCFG_DEVICE_ADD(RS232A_TAG, RS232_PORT, default_rs232_devices, nullptr)
|
||||
MCFG_RS232_RXD_HANDLER(WRITELINE(UART0_TAG, ns16450_device, rx_w))
|
||||
|
@ -1326,9 +1326,9 @@ MACHINE_CONFIG_START(wangpc_state::wangpc)
|
||||
m_epci->dtr_handler().set(RS232_TAG, FUNC(rs232_port_device::write_dtr));
|
||||
m_epci->txemt_dschg_handler().set(FUNC(wangpc_state::epci_irq_w));
|
||||
|
||||
MCFG_UPD765A_ADD(UPD765_TAG, false, false)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, wangpc_state, fdc_irq))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE(*this, wangpc_state, fdc_drq))
|
||||
UPD765A(config, m_fdc, false, false);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(wangpc_state::fdc_irq));
|
||||
m_fdc->drq_wr_callback().set(FUNC(wangpc_state::fdc_drq));
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", wangpc_floppies, "525dd", wangpc_state::floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", wangpc_floppies, "525dd", wangpc_state::floppy_formats)
|
||||
|
||||
|
@ -43,9 +43,9 @@ MACHINE_CONFIG_START(dw_fdc_device::device_add_mconfig)
|
||||
|
||||
MCFG_DEVICE_ADD("ppi8255", I8255, 0)
|
||||
|
||||
MCFG_UPD765A_ADD("upd765", false, false)
|
||||
// MCFG_UPD765_INTRQ_CALLBACK(WRITELINE("pic8259", pic8259_device, ir4_w))
|
||||
// MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dma8257", dma8257_device, XXX))
|
||||
UPD765A(config, "upd765", false, false);
|
||||
// m_upd_fdc->intrq_wr_callback().set("pic8259", FUNC(pic8259_device::ir4_w));
|
||||
// m_upd_fdc->drq_wr_callback().set("dma8257", FUNC(dma8257_device::XXX));
|
||||
// MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":0", wangpc_floppies, "525dd", wangpc_state::floppy_formats)
|
||||
// MCFG_FLOPPY_DRIVE_ADD(UPD765_TAG ":1", wangpc_floppies, "525dd", wangpc_state::floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -68,7 +68,7 @@ MACHINE_CONFIG_START(ioc2_device::device_add_mconfig)
|
||||
MCFG_RS232_DCD_HANDLER(WRITELINE(m_scc, scc85230_device, dcdb_w))
|
||||
MCFG_RS232_RXD_HANDLER(WRITELINE(m_scc, scc85230_device, rxb_w))
|
||||
|
||||
PC_LPT(config, m_pi1, 0);
|
||||
PC_LPT(config, m_pi1);
|
||||
|
||||
KBDC8042(config, m_kbdc);
|
||||
m_kbdc->set_keyboard_type(kbdc8042_device::KBDC8042_PS2);
|
||||
|
@ -31,7 +31,8 @@ static void isbc_208_floppies(device_slot_interface &device)
|
||||
device.option_add("525dd", FLOPPY_525_DD);
|
||||
}
|
||||
|
||||
MACHINE_CONFIG_START(isbc_208_device::device_add_mconfig)
|
||||
void isbc_208_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
AM9517A(config, m_dmac, 8_MHz_XTAL/4);
|
||||
m_dmac->out_hreq_callback().set(FUNC(isbc_208_device::hreq_w));
|
||||
m_dmac->out_eop_callback().set(FUNC(isbc_208_device::out_eop_w));
|
||||
@ -40,12 +41,12 @@ MACHINE_CONFIG_START(isbc_208_device::device_add_mconfig)
|
||||
m_dmac->in_ior_callback<0>().set(m_fdc, FUNC(i8272a_device::mdma_r));
|
||||
m_dmac->out_iow_callback<0>().set(m_fdc, FUNC(i8272a_device::mdma_w));
|
||||
|
||||
MCFG_I8272A_ADD(m_fdc, true)
|
||||
MCFG_UPD765_INTRQ_CALLBACK(WRITELINE(*this, isbc_208_device, irq_w))
|
||||
MCFG_UPD765_DRQ_CALLBACK(WRITELINE("dmac", am9517a_device, dreq0_w))
|
||||
I8272A(config, m_fdc, true);
|
||||
m_fdc->intrq_wr_callback().set(FUNC(isbc_208_device::irq_w));
|
||||
m_fdc->drq_wr_callback().set(m_dmac, FUNC(am9517a_device::dreq0_w));
|
||||
FLOPPY_CONNECTOR(config, "fdc:0", isbc_208_floppies, "525dd", isbc_208_device::floppy_formats);
|
||||
FLOPPY_CONNECTOR(config, "fdc:1", isbc_208_floppies, "525dd", isbc_208_device::floppy_formats);
|
||||
MACHINE_CONFIG_END
|
||||
}
|
||||
|
||||
void isbc_208_device::map(address_map &map)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user