From d95b0b95c75425e42fdf51af613084536b02c4c0 Mon Sep 17 00:00:00 2001 From: AJR Date: Sun, 16 Jun 2019 14:29:11 -0400 Subject: mcs48: Further distinction of UPI variants (nw) --- src/devices/bus/dmv/k806.cpp | 2 +- src/devices/cpu/mcs48/mcs48.cpp | 72 ++++++++++++++++++++++++----------------- src/devices/cpu/mcs48/mcs48.h | 48 ++++++++++++++++++--------- src/mame/drivers/alphatpx.cpp | 12 +++---- src/mame/drivers/decocass.cpp | 2 +- src/mame/drivers/dmv.cpp | 2 +- src/mame/drivers/duet16.cpp | 2 +- src/mame/drivers/fidel_card.cpp | 6 ++-- src/mame/drivers/gladiatr.cpp | 8 ++--- src/mame/drivers/gsword.cpp | 10 +++--- src/mame/drivers/itt1700.cpp | 4 +-- src/mame/drivers/itt3030.cpp | 6 ++-- src/mame/drivers/itt9216.cpp | 2 +- src/mame/drivers/pcw.cpp | 4 +-- src/mame/drivers/qvt103.cpp | 4 +-- src/mame/drivers/sdk51.cpp | 2 +- src/mame/drivers/twincobr.cpp | 2 +- src/mame/drivers/vp415.cpp | 4 +-- src/mame/drivers/z100.cpp | 4 +-- src/mame/includes/pcw.h | 2 +- src/mame/includes/vp415.h | 4 +-- src/mame/machine/dmv_keyb.cpp | 2 +- src/mame/machine/dmv_keyb.h | 2 +- src/mame/machine/imds2ioc.cpp | 4 +-- src/mame/machine/imds2ioc.h | 4 +-- src/mame/video/pcd.cpp | 4 +-- 26 files changed, 123 insertions(+), 95 deletions(-) diff --git a/src/devices/bus/dmv/k806.cpp b/src/devices/bus/dmv/k806.cpp index a747efa24f4..d7b3125771c 100644 --- a/src/devices/bus/dmv/k806.cpp +++ b/src/devices/bus/dmv/k806.cpp @@ -102,7 +102,7 @@ void dmv_k806_device::device_reset() void dmv_k806_device::device_add_mconfig(machine_config &config) { - I8741(config, m_mcu, XTAL(6'000'000)); + I8741A(config, m_mcu, XTAL(6'000'000)); m_mcu->p1_in_cb().set(FUNC(dmv_k806_device::port1_r)); m_mcu->p2_out_cb().set(FUNC(dmv_k806_device::port2_w)); m_mcu->t1_in_cb().set(FUNC(dmv_k806_device::portt1_r)); diff --git a/src/devices/cpu/mcs48/mcs48.cpp b/src/devices/cpu/mcs48/mcs48.cpp index 1cb829902e9..843b20f3ef1 100644 --- a/src/devices/cpu/mcs48/mcs48.cpp +++ b/src/devices/cpu/mcs48/mcs48.cpp @@ -145,26 +145,28 @@ -DEFINE_DEVICE_TYPE(I8021, i8021_device, "i8021", "Intel I8021") -DEFINE_DEVICE_TYPE(I8022, i8022_device, "i8022", "Intel I8022") -DEFINE_DEVICE_TYPE(I8035, i8035_device, "i8035", "Intel I8035") -DEFINE_DEVICE_TYPE(I8048, i8048_device, "i8048", "Intel I8048") -DEFINE_DEVICE_TYPE(I8648, i8648_device, "i8648", "Intel I8648") -DEFINE_DEVICE_TYPE(I8748, i8748_device, "i8748", "Intel I8748") -DEFINE_DEVICE_TYPE(I8039, i8039_device, "i8039", "Intel I8039") -DEFINE_DEVICE_TYPE(I8049, i8049_device, "i8049", "Intel I8049") -DEFINE_DEVICE_TYPE(I8749, i8749_device, "i8749", "Intel I8749") -DEFINE_DEVICE_TYPE(I8040, i8040_device, "i8040", "Intel I8040") -DEFINE_DEVICE_TYPE(I8050, i8050_device, "i8050", "Intel I8050") -DEFINE_DEVICE_TYPE(I8041, i8041_device, "i8041", "Intel I8041") -DEFINE_DEVICE_TYPE(I8741, i8741_device, "i8741", "Intel I8741") -DEFINE_DEVICE_TYPE(I8042, i8042_device, "i8042", "Intel I8042") -DEFINE_DEVICE_TYPE(I8042AH,i8042ah_device,"i8042ah","Intel I8042AH") -DEFINE_DEVICE_TYPE(I8242, i8242_device, "i8242", "Intel I8242") -DEFINE_DEVICE_TYPE(I8742, i8742_device, "i8742", "Intel I8742") -DEFINE_DEVICE_TYPE(MB8884, mb8884_device, "mb8884", "MB8884") -DEFINE_DEVICE_TYPE(N7751, n7751_device, "n7751", "N7751") -DEFINE_DEVICE_TYPE(M58715, m58715_device, "m58715", "M58715") +DEFINE_DEVICE_TYPE(I8021, i8021_device, "i8021", "Intel 8021") +DEFINE_DEVICE_TYPE(I8022, i8022_device, "i8022", "Intel 8022") +DEFINE_DEVICE_TYPE(I8035, i8035_device, "i8035", "Intel 8035") +DEFINE_DEVICE_TYPE(I8048, i8048_device, "i8048", "Intel 8048") +DEFINE_DEVICE_TYPE(I8648, i8648_device, "i8648", "Intel 8648") +DEFINE_DEVICE_TYPE(I8748, i8748_device, "i8748", "Intel 8748") +DEFINE_DEVICE_TYPE(I8039, i8039_device, "i8039", "Intel 8039") +DEFINE_DEVICE_TYPE(I8049, i8049_device, "i8049", "Intel 8049") +DEFINE_DEVICE_TYPE(I8749, i8749_device, "i8749", "Intel 8749") +DEFINE_DEVICE_TYPE(I8040, i8040_device, "i8040", "Intel 8040") +DEFINE_DEVICE_TYPE(I8050, i8050_device, "i8050", "Intel 8050") +DEFINE_DEVICE_TYPE(I8041A, i8041a_device, "i8041a", "Intel 8041A") +DEFINE_DEVICE_TYPE(I8741A, i8741a_device, "i8741a", "Intel 8741A") +DEFINE_DEVICE_TYPE(I8041AH, i8041ah_device, "i8041ah", "Intel 8041AH") +DEFINE_DEVICE_TYPE(I8741AH, i8741ah_device, "i8741ah", "Intel 8741AH") +DEFINE_DEVICE_TYPE(I8042, i8042_device, "i8042", "Intel 8042") +DEFINE_DEVICE_TYPE(I8742, i8742_device, "i8742", "Intel 8742") +DEFINE_DEVICE_TYPE(I8042AH, i8042ah_device, "i8042ah", "Intel 8042AH") +DEFINE_DEVICE_TYPE(I8742AH, i8742ah_device, "i8742ah", "Intel 8742AH") +DEFINE_DEVICE_TYPE(MB8884, mb8884_device, "mb8884", "MB8884") +DEFINE_DEVICE_TYPE(N7751, n7751_device, "n7751", "N7751") +DEFINE_DEVICE_TYPE(M58715, m58715_device, "m58715", "M58715") /*************************************************************************** @@ -310,13 +312,23 @@ upi41_cpu_device::upi41_cpu_device(const machine_config &mconfig, device_type ty { } -i8041_device::i8041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : upi41_cpu_device(mconfig, I8041, tag, owner, clock, 1024, 128) +i8041a_device::i8041a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8041A, tag, owner, clock, 1024, 64) { } -i8741_device::i8741_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : upi41_cpu_device(mconfig, I8741, tag, owner, clock, 1024, 128) +i8741a_device::i8741a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8741A, tag, owner, clock, 1024, 64) +{ +} + +i8041ah_device::i8041ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8041AH, tag, owner, clock, 1024, 128) +{ +} + +i8741ah_device::i8741ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8741AH, tag, owner, clock, 1024, 128) { } @@ -325,18 +337,18 @@ i8042_device::i8042_device(const machine_config &mconfig, const char *tag, devic { } -i8042ah_device::i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : upi41_cpu_device(mconfig, I8042, tag, owner, clock, 2048, 256) +i8742_device::i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8742, tag, owner, clock, 2048, 128) { } -i8242_device::i8242_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : upi41_cpu_device(mconfig, I8242, tag, owner, clock, 2048, 256) +i8042ah_device::i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8042AH, tag, owner, clock, 2048, 256) { } -i8742_device::i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : upi41_cpu_device(mconfig, I8742, tag, owner, clock, 2048, 256) +i8742ah_device::i8742ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + : upi41_cpu_device(mconfig, I8742AH, tag, owner, clock, 2048, 256) { } diff --git a/src/devices/cpu/mcs48/mcs48.h b/src/devices/cpu/mcs48/mcs48.h index e7dd33722ac..03e63f57a01 100644 --- a/src/devices/cpu/mcs48/mcs48.h +++ b/src/devices/cpu/mcs48/mcs48.h @@ -86,12 +86,14 @@ DECLARE_DEVICE_TYPE(I8040, i8040_device) /* external ROM, 256 bytes in DECLARE_DEVICE_TYPE(I8050, i8050_device) /* 4k internal ROM, 256 bytes internal RAM */ /* Official Intel UPI-41 parts */ -DECLARE_DEVICE_TYPE(I8041, i8041_device) /* 1k internal ROM, 128 bytes internal RAM */ -DECLARE_DEVICE_TYPE(I8741, i8741_device) /* 1k internal EEPROM, 128 bytes internal RAM */ -DECLARE_DEVICE_TYPE(I8042, i8042_device) /* 2k internal ROM, 128 bytes internal RAM */ -DECLARE_DEVICE_TYPE(I8042AH, i8042ah_device)/* 2k internal ROM, 256 bytes internal RAM */ -DECLARE_DEVICE_TYPE(I8242, i8242_device) /* 2k internal ROM, 256 bytes internal RAM */ -DECLARE_DEVICE_TYPE(I8742, i8742_device) /* 2k internal EEPROM, 256 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8041A, i8041a_device) /* 1k internal ROM, 64 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8741A, i8741a_device) /* 1k internal EEPROM, 64 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8041AH, i8041ah_device) /* 1k internal ROM, 128 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8741AH, i8741ah_device) /* 1k internal EEPROM, 128 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8042, i8042_device) /* 2k internal ROM, 128 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8742, i8742_device) /* 2k internal EEPROM, 128 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8042AH, i8042ah_device) /* 2k internal ROM, 256 bytes internal RAM */ +DECLARE_DEVICE_TYPE(I8742AH, i8742ah_device) /* 2k internal EEPROM, 256 bytes internal RAM */ /* Clones */ DECLARE_DEVICE_TYPE(MB8884, mb8884_device) /* 8035 clone */ @@ -636,39 +638,39 @@ protected: TIMER_CALLBACK_MEMBER( master_callback ); }; -class i8041_device : public upi41_cpu_device +class i8041a_device : public upi41_cpu_device { public: // construction/destruction - i8041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8041a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; -class i8741_device : public upi41_cpu_device +class i8741a_device : public upi41_cpu_device { public: // construction/destruction - i8741_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8741a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; -class i8042_device : public upi41_cpu_device +class i8041ah_device : public upi41_cpu_device { public: // construction/destruction - i8042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8041ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; -class i8042ah_device : public upi41_cpu_device +class i8741ah_device : public upi41_cpu_device { public: // construction/destruction - i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8741ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; -class i8242_device : public upi41_cpu_device +class i8042_device : public upi41_cpu_device { public: // construction/destruction - i8242_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; class i8742_device : public upi41_cpu_device @@ -678,5 +680,19 @@ public: i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; +class i8042ah_device : public upi41_cpu_device +{ +public: + // construction/destruction + i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); +}; + +class i8742ah_device : public upi41_cpu_device +{ +public: + // construction/destruction + i8742ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); +}; + #endif // MAME_CPU_MCS48_MCS48_H diff --git a/src/mame/drivers/alphatpx.cpp b/src/mame/drivers/alphatpx.cpp index 060a89b1d53..fe26a145e40 100644 --- a/src/mame/drivers/alphatpx.cpp +++ b/src/mame/drivers/alphatpx.cpp @@ -135,7 +135,7 @@ private: void alphatp2_mem(address_map &map); required_device m_bankdev; - required_device m_kbdmcu; + required_device m_kbdmcu; required_device m_crtc; required_device m_fdc; required_device_array m_floppy; @@ -221,7 +221,7 @@ private: void alphatp3_mem(address_map &map); required_device m_bankdev; - required_device m_kbdmcu; + required_device m_kbdmcu; required_device m_crtc; required_device m_fdc; required_device_array m_floppy; @@ -271,7 +271,7 @@ void alphatp_12_state::alphatp2_io(address_map &map) { map.unmap_value_high(); map(0x04, 0x05).rw("uart", FUNC(i8251_device::read), FUNC(i8251_device::write)); - map(0x10, 0x11).rw(m_kbdmcu, FUNC(i8041_device::upi41_master_r), FUNC(i8041_device::upi41_master_w)); + map(0x10, 0x11).rw(m_kbdmcu, FUNC(i8041a_device::upi41_master_r), FUNC(i8041a_device::upi41_master_w)); map(0x12, 0x12).w(FUNC(alphatp_12_state::beep_w)); map(0x50, 0x53).rw(FUNC(alphatp_12_state::fdc_r), FUNC(alphatp_12_state::fdc_w)); map(0x54, 0x54).rw(FUNC(alphatp_12_state::fdc_stat_r), FUNC(alphatp_12_state::fdc_cmd_w)); @@ -311,7 +311,7 @@ void alphatp_34_state::alphatp3_io(address_map &map) //AM_RANGE(0x00, 0x00) AM_READ // unknown map(0x04, 0x05).rw("uart", FUNC(i8251_device::read), FUNC(i8251_device::write)); map(0x08, 0x09).rw(FUNC(alphatp_34_state::comm88_r), FUNC(alphatp_34_state::comm88_w)); - map(0x10, 0x11).rw(m_kbdmcu, FUNC(i8041_device::upi41_master_r), FUNC(i8041_device::upi41_master_w)); + map(0x10, 0x11).rw(m_kbdmcu, FUNC(i8041a_device::upi41_master_r), FUNC(i8041a_device::upi41_master_w)); map(0x12, 0x12).w(FUNC(alphatp_34_state::beep_w)); map(0x40, 0x41).r(FUNC(alphatp_34_state::start88_r)); //AM_RANGE(0x42, 0x42) AM_WRITE // unknown @@ -1212,7 +1212,7 @@ void alphatp_12_state::alphatp2(machine_config &config) config.m_perfect_cpu_quantum = subtag("maincpu"); - I8041(config, m_kbdmcu, 12.8544_MHz_XTAL / 2); + I8041A(config, m_kbdmcu, 12.8544_MHz_XTAL / 2); m_kbdmcu->t0_in_cb().set(FUNC(alphatp_12_state::kbd_matrix_r)); m_kbdmcu->p1_out_cb().set(FUNC(alphatp_12_state::kbd_matrix_w)); m_kbdmcu->p2_in_cb().set(FUNC(alphatp_12_state::kbd_port2_r)); @@ -1290,7 +1290,7 @@ void alphatp_34_state::alphatp3(machine_config &config) config.m_perfect_cpu_quantum = subtag("maincpu"); - I8041(config, m_kbdmcu, 12.8544_MHz_XTAL /2); + I8041A(config, m_kbdmcu, 12.8544_MHz_XTAL /2); m_kbdmcu->t0_in_cb().set(FUNC(alphatp_34_state::kbd_matrix_r)); m_kbdmcu->p1_out_cb().set(FUNC(alphatp_34_state::kbd_matrix_w)); m_kbdmcu->p2_in_cb().set(FUNC(alphatp_34_state::kbd_port2_r)); diff --git a/src/mame/drivers/decocass.cpp b/src/mame/drivers/decocass.cpp index 8f86b713c48..6f19e913667 100644 --- a/src/mame/drivers/decocass.cpp +++ b/src/mame/drivers/decocass.cpp @@ -960,7 +960,7 @@ void decocass_state::decocass(machine_config &config) m_audiocpu->set_addrmap(AS_PROGRAM, &decocass_state::decocass_sound_map); TIMER(config, "audionmi").configure_scanline(FUNC(decocass_state::decocass_audio_nmi_gen), "screen", 0, 8); - I8041(config, m_mcu, HCLK); + I8041A(config, m_mcu, HCLK); m_mcu->p1_in_cb().set(FUNC(decocass_state::i8041_p1_r)); m_mcu->p1_out_cb().set(FUNC(decocass_state::i8041_p1_w)); m_mcu->p2_in_cb().set(FUNC(decocass_state::i8041_p2_r)); diff --git a/src/mame/drivers/dmv.cpp b/src/mame/drivers/dmv.cpp index 4c98414e380..3a168b63b7a 100644 --- a/src/mame/drivers/dmv.cpp +++ b/src/mame/drivers/dmv.cpp @@ -780,7 +780,7 @@ void dmv_state::dmv(machine_config &config) m_maincpu->set_addrmap(AS_PROGRAM, &dmv_state::dmv_mem); m_maincpu->set_addrmap(AS_IO, &dmv_state::dmv_io); - i8741_device &kbmcu(I8741(config, "kb_ctrl_mcu", XTAL(6'000'000))); + i8741a_device &kbmcu(I8741A(config, "kb_ctrl_mcu", XTAL(6'000'000))); kbmcu.p1_in_cb().set(FUNC(dmv_state::kb_mcu_port1_r)); // bit 0 data from kb kbmcu.p1_out_cb().set(FUNC(dmv_state::kb_mcu_port1_w)); // bit 1 data to kb kbmcu.p2_out_cb().set(FUNC(dmv_state::kb_mcu_port2_w)); diff --git a/src/mame/drivers/duet16.cpp b/src/mame/drivers/duet16.cpp index 3e9603c1a3d..de7e5b0cee1 100644 --- a/src/mame/drivers/duet16.cpp +++ b/src/mame/drivers/duet16.cpp @@ -367,7 +367,7 @@ void duet16_state::duet16(machine_config &config) i8087.irq().set(m_pic, FUNC(pic8259_device::ir2_w)); // INT87 i8087.busy().set_inputline(m_maincpu, INPUT_LINE_TEST); - I8741(config, "i8741", 20_MHz_XTAL / 4); + I8741A(config, "i8741", 20_MHz_XTAL / 4); PIC8259(config, m_pic, 0); m_pic->out_int_callback().set_inputline(m_maincpu, 0); diff --git a/src/mame/drivers/fidel_card.cpp b/src/mame/drivers/fidel_card.cpp index 933486bbe8a..4d2bf14b058 100644 --- a/src/mame/drivers/fidel_card.cpp +++ b/src/mame/drivers/fidel_card.cpp @@ -206,7 +206,7 @@ private: void brc_base(machine_config &config); // devices/pointers - required_device m_mcu; + required_device m_mcu; required_device m_i8243; // address maps @@ -314,7 +314,7 @@ void card_state::main_map(address_map &map) void card_state::main_io(address_map &map) { map.global_mask(0x01); - map(0x00, 0x01).rw(m_mcu, FUNC(i8041_device::upi41_master_r), FUNC(i8041_device::upi41_master_w)); + map(0x00, 0x01).rw(m_mcu, FUNC(i8041a_device::upi41_master_r), FUNC(i8041a_device::upi41_master_w)); } @@ -548,7 +548,7 @@ void card_state::brc_base(machine_config &config) m_maincpu->set_addrmap(AS_IO, &card_state::main_io); config.m_perfect_cpu_quantum = subtag("maincpu"); - I8041(config, m_mcu, 5_MHz_XTAL); + I8041A(config, m_mcu, 5_MHz_XTAL); m_mcu->p1_out_cb().set(FUNC(card_state::mcu_p1_w)); m_mcu->p2_in_cb().set(FUNC(card_state::mcu_p2_r)); m_mcu->p2_out_cb().set(m_i8243, FUNC(i8243_device::p2_w)); diff --git a/src/mame/drivers/gladiatr.cpp b/src/mame/drivers/gladiatr.cpp index 3bb329ab9ea..54d428a691c 100644 --- a/src/mame/drivers/gladiatr.cpp +++ b/src/mame/drivers/gladiatr.cpp @@ -1028,27 +1028,27 @@ void gladiatr_state::gladiatr(machine_config &config) mainlatch.q_out_cb<4>().set_inputline("sub", INPUT_LINE_RESET); // shadowed by aforementioned hack mainlatch.q_out_cb<7>().set(FUNC(gladiatr_state::flipscreen_w)); - I8741(config, m_cctl, 12_MHz_XTAL/2); /* verified on pcb */ + I8741A(config, m_cctl, 12_MHz_XTAL/2); /* verified on pcb */ m_cctl->t0_in_cb().set_ioport("COINS").bit(3); m_cctl->t1_in_cb().set_ioport("COINS").bit(2); m_cctl->p1_in_cb().set(FUNC(gladiatr_state::cctl_p1_r)); m_cctl->p2_in_cb().set(FUNC(gladiatr_state::cctl_p2_r)); - I8741(config, m_ccpu, 12_MHz_XTAL/2); /* verified on pcb */ + I8741A(config, m_ccpu, 12_MHz_XTAL/2); /* verified on pcb */ m_ccpu->p1_in_cb().set_ioport("IN0"); m_ccpu->p2_in_cb().set_ioport("IN1"); m_ccpu->p2_out_cb().set(FUNC(gladiatr_state::ccpu_p2_w)); m_ccpu->t0_in_cb().set_ioport("COINS").bit(1); m_ccpu->t1_in_cb().set_ioport("COINS").bit(0); - I8741(config, m_ucpu, 12_MHz_XTAL/2); /* verified on pcb */ + I8741A(config, m_ucpu, 12_MHz_XTAL/2); /* verified on pcb */ m_ucpu->p1_in_cb().set(FUNC(gladiatr_state::ucpu_p1_r)); m_ucpu->p1_out_cb().set(FUNC(gladiatr_state::ucpu_p1_w)); m_ucpu->p2_in_cb().set(FUNC(gladiatr_state::ucpu_p2_r)); m_ucpu->t0_in_cb().set(FUNC(gladiatr_state::tclk_r)); m_ucpu->t1_in_cb().set(FUNC(gladiatr_state::ucpu_t1_r)); - I8741(config, m_csnd, 12_MHz_XTAL/2); /* verified on pcb */ + I8741A(config, m_csnd, 12_MHz_XTAL/2); /* verified on pcb */ m_csnd->p1_in_cb().set(FUNC(gladiatr_state::csnd_p1_r)); m_csnd->p1_out_cb().set(FUNC(gladiatr_state::csnd_p1_w)); m_csnd->p2_in_cb().set(FUNC(gladiatr_state::csnd_p2_r)); diff --git a/src/mame/drivers/gsword.cpp b/src/mame/drivers/gsword.cpp index 2343771b234..d1ed64b790e 100644 --- a/src/mame/drivers/gsword.cpp +++ b/src/mame/drivers/gsword.cpp @@ -930,21 +930,21 @@ void gsword_state::gsword(machine_config &config) Z80(config, m_audiocpu, XTAL(18'000'000)/6); /* verified on pcb */ m_audiocpu->set_addrmap(AS_PROGRAM, &gsword_state::cpu3_map); - upi41_cpu_device &mcu1(I8041(config, "mcu1", 12'000'000/2)); // clock unknown, using value from gladiatr + upi41_cpu_device &mcu1(I8041A(config, "mcu1", 12'000'000/2)); // clock unknown, using value from gladiatr mcu1.p1_in_cb().set([this] () { return ioport("MCU1.P1")->read() | BIT(m_mcu2_p1, 0); }); mcu1.p1_out_cb().set([this] (uint8_t data) { m_mcu1_p1 = data; }); mcu1.p2_in_cb().set_ioport("DSW2"); mcu1.t0_in_cb().set([this] () { return m_tclk_val ? 1 : 0; }); // serial clock mcu1.t1_in_cb().set([this] () { return BIT(m_mcu2_p1, 1); }); // from P11 on other MCU - upi41_cpu_device &mcu2(I8041(config, "mcu2", 12'000'000/2)); // clock unknown, using value from gladiatr + upi41_cpu_device &mcu2(I8041A(config, "mcu2", 12'000'000/2)); // clock unknown, using value from gladiatr mcu2.p1_in_cb().set(FUNC(gsword_state::mcu2_p1_r)); mcu2.p1_out_cb().set([this] (uint8_t data) { m_mcu2_p1 = data; }); mcu2.p2_in_cb().set_ioport("DSW1"); mcu2.t0_in_cb().set([this] () { return m_tclk_val ? 1 : 0; }); // serial clock mcu2.t1_in_cb().set([this] () { return BIT(m_mcu1_p1, 1); }); // from P11 on other MCU - upi41_cpu_device &mcu3(I8041(config, "mcu3", 12'000'000/2)); // clock unknown, using value from gladiatr + upi41_cpu_device &mcu3(I8041A(config, "mcu3", 12'000'000/2)); // clock unknown, using value from gladiatr mcu3.p1_in_cb().set_ioport("IN0"); mcu3.p2_in_cb().set_ioport("IN1"); mcu3.p2_out_cb().set(FUNC(gsword_state::mcu3_p2_w)); @@ -998,13 +998,13 @@ void josvolly_state::josvolly(machine_config &config) m_audiocpu->set_addrmap(AS_IO, &josvolly_state::josvolly_cpu2_io_map); m_audiocpu->set_vblank_int("screen", FUNC(josvolly_state::irq0_line_assert)); - upi41_cpu_device &mcu1(I8741(config, "mcu1", 18000000/2)); /* ? */ + upi41_cpu_device &mcu1(I8741A(config, "mcu1", 18000000/2)); /* ? */ mcu1.p1_in_cb().set(FUNC(josvolly_state::mcu1_p1_r)); mcu1.p1_out_cb().set(FUNC(josvolly_state::mcu1_p1_w)); mcu1.p2_in_cb().set(FUNC(josvolly_state::mcu1_p2_r)); mcu1.p2_out_cb().set(FUNC(josvolly_state::mcu1_p2_w)); - upi41_cpu_device &mcu2(I8741(config, "mcu2", 12000000/2)); /* ? */ + upi41_cpu_device &mcu2(I8741A(config, "mcu2", 12000000/2)); /* ? */ mcu2.p1_in_cb().set(FUNC(josvolly_state::mcu2_p1_r)); mcu2.p1_out_cb().set(FUNC(josvolly_state::mcu2_p1_w)); mcu2.p2_in_cb().set(FUNC(josvolly_state::mcu2_p2_r)); diff --git a/src/mame/drivers/itt1700.cpp b/src/mame/drivers/itt1700.cpp index 377f2d1e15b..0af62feb5fa 100644 --- a/src/mame/drivers/itt1700.cpp +++ b/src/mame/drivers/itt1700.cpp @@ -79,7 +79,7 @@ void itt1700_state::io_map(address_map &map) map.global_mask(0xff); map(0x10, 0x10).w("crtc", FUNC(hd6845s_device::address_w)); map(0x11, 0x11).w("crtc", FUNC(hd6845s_device::register_w)); - map(0x20, 0x21).rw("upi", FUNC(i8741_device::upi41_master_r), FUNC(i8741_device::upi41_master_w)); + map(0x20, 0x21).rw("upi", FUNC(i8741a_device::upi41_master_r), FUNC(i8741a_device::upi41_master_w)); } static INPUT_PORTS_START(itt1700) @@ -91,7 +91,7 @@ void itt1700_state::itt1700(machine_config &config) m_maincpu->set_addrmap(AS_PROGRAM, &itt1700_state::mem_map); m_maincpu->set_addrmap(AS_IO, &itt1700_state::io_map); - upi41_cpu_device &upi(I8741(config, "upi", 16.6698_MHz_XTAL / 3)); // clock guessed + upi41_cpu_device &upi(I8741A(config, "upi", 16.6698_MHz_XTAL / 3)); // clock guessed upi.p1_out_cb().set("keyboard", FUNC(itt1700_keyboard_device::clock_w)).bit(0); upi.p1_out_cb().append("keyboard", FUNC(itt1700_keyboard_device::line1_w)).bit(1); upi.p1_out_cb().append("keyboard", FUNC(itt1700_keyboard_device::line2_w)).bit(2); diff --git a/src/mame/drivers/itt3030.cpp b/src/mame/drivers/itt3030.cpp index 82721cdf0f9..1908ed905ac 100644 --- a/src/mame/drivers/itt3030.cpp +++ b/src/mame/drivers/itt3030.cpp @@ -266,7 +266,7 @@ private: // devices required_device m_maincpu; required_device m_screen; - required_device m_kbdmcu; + required_device m_kbdmcu; required_device m_ram; required_device m_crtc; required_device m_48kbank; @@ -311,7 +311,7 @@ void itt3030_state::itt3030_io(address_map &map) { map.global_mask(0xff); map(0x20, 0x2f).rw(m_crtc, FUNC(crt5027_device::read), FUNC(crt5027_device::write)); - map(0x30, 0x31).rw(m_kbdmcu, FUNC(i8741_device::upi41_master_r), FUNC(i8741_device::upi41_master_w)); + map(0x30, 0x31).rw(m_kbdmcu, FUNC(i8741a_device::upi41_master_r), FUNC(i8741a_device::upi41_master_w)); map(0x32, 0x32).w(FUNC(itt3030_state::beep_w)); map(0x35, 0x35).r(FUNC(itt3030_state::vsync_r)); map(0x50, 0x53).rw(FUNC(itt3030_state::fdc_r), FUNC(itt3030_state::fdc_w)); @@ -707,7 +707,7 @@ void itt3030_state::itt3030(machine_config &config) // bits 0-2 select bit to read back, bits 3-6 choose column to read from, bit 7 clocks the process (rising edge strobes the row, falling edge reads the data) // T0 is the key matrix return // pin 23 is the UPI-41 host IRQ line, it's unknown how it's connected to the Z80 - I8741(config, m_kbdmcu, 6_MHz_XTAL); + I8741A(config, m_kbdmcu, 6_MHz_XTAL); m_kbdmcu->t0_in_cb().set(FUNC(itt3030_state::kbd_matrix_r)); m_kbdmcu->p1_out_cb().set(FUNC(itt3030_state::kbd_matrix_w)); m_kbdmcu->p2_in_cb().set(FUNC(itt3030_state::kbd_port2_r)); diff --git a/src/mame/drivers/itt9216.cpp b/src/mame/drivers/itt9216.cpp index 57d3258177d..225f5fb7833 100644 --- a/src/mame/drivers/itt9216.cpp +++ b/src/mame/drivers/itt9216.cpp @@ -85,7 +85,7 @@ void itt9216_state::itt9216(machine_config &config) M68008(config, m_maincpu, 8000000); // clock unknown m_maincpu->set_addrmap(AS_PROGRAM, &itt9216_state::mem_map); - I8741(config, "upi", 6000000).set_disable(); // clock unknown + I8741A(config, "upi", 6000000).set_disable(); // clock unknown } // XTALs: 38.080 MHz (U7), 11.250(?) MHz (U1) diff --git a/src/mame/drivers/pcw.cpp b/src/mame/drivers/pcw.cpp index 50195ce54a3..88460dde163 100644 --- a/src/mame/drivers/pcw.cpp +++ b/src/mame/drivers/pcw.cpp @@ -949,7 +949,7 @@ void pcw_state::pcw_io(address_map &map) map(0x0f6, 0x0f6).w(FUNC(pcw_state::pcw_pointer_table_top_scan_w)); map(0x0f7, 0x0f7).w(FUNC(pcw_state::pcw_vdu_video_control_register_w)); map(0x0f8, 0x0f8).rw(FUNC(pcw_state::pcw_system_status_r), FUNC(pcw_state::pcw_system_control_w)); - map(0x0fc, 0x0fd).rw(m_printer_mcu, FUNC(i8041_device::upi41_master_r), FUNC(i8041_device::upi41_master_w)); + map(0x0fc, 0x0fd).rw(m_printer_mcu, FUNC(upi41_cpu_device::upi41_master_r), FUNC(upi41_cpu_device::upi41_master_w)); } @@ -1249,7 +1249,7 @@ void pcw_state::pcw(machine_config &config) m_maincpu->set_addrmap(AS_PROGRAM, &pcw_state::pcw_map); m_maincpu->set_addrmap(AS_IO, &pcw_state::pcw_io); - I8041(config, m_printer_mcu, 11000000); // 11MHz + I8041AH(config, m_printer_mcu, 11000000); // 11MHz m_printer_mcu->p2_in_cb().set(FUNC(pcw_state::mcu_printer_p2_r)); m_printer_mcu->p2_out_cb().set(FUNC(pcw_state::mcu_printer_p2_w)); m_printer_mcu->p1_in_cb().set(FUNC(pcw_state::mcu_printer_p1_r)); diff --git a/src/mame/drivers/qvt103.cpp b/src/mame/drivers/qvt103.cpp index ea26bd660bb..6ca75152c9b 100644 --- a/src/mame/drivers/qvt103.cpp +++ b/src/mame/drivers/qvt103.cpp @@ -44,7 +44,7 @@ u32 qvt103_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, con void qvt103_state::mem_map(address_map &map) { map(0x0000, 0x5fff).rom().region("maincpu", 0); - map(0x6000, 0x6001).rw("kbdmcu", FUNC(i8741_device::upi41_master_r), FUNC(i8741_device::upi41_master_w)); + map(0x6000, 0x6001).rw("kbdmcu", FUNC(i8741a_device::upi41_master_r), FUNC(i8741a_device::upi41_master_w)); map(0x8000, 0x87ff).ram().share("nvram"); map(0xa000, 0xa03f).rw("vpac", FUNC(crt9007_device::read), FUNC(crt9007_device::write)); map(0xc000, 0xffff).ram(); // not entirely contiguous? @@ -91,7 +91,7 @@ void qvt103_state::qvt103(machine_config &config) vpac.set_character_width(10); vpac.int_callback().set("ctc", FUNC(z80ctc_device::trg3)); - I8741(config, "kbdmcu", 6_MHz_XTAL); + I8741A(config, "kbdmcu", 6_MHz_XTAL); } /************************************************************************************************************** diff --git a/src/mame/drivers/sdk51.cpp b/src/mame/drivers/sdk51.cpp index 689055043af..f7cf2001850 100644 --- a/src/mame/drivers/sdk51.cpp +++ b/src/mame/drivers/sdk51.cpp @@ -280,7 +280,7 @@ void sdk51_state::sdk51(machine_config &config) m_mem0->set_addr_width(14); m_mem0->set_stride(0x2000); - I8041(config, m_upi, 6_MHz_XTAL); + I8041A(config, m_upi, 6_MHz_XTAL); m_upi->p1_in_cb().set(FUNC(sdk51_state::upibus_r)); m_upi->p1_out_cb().set(FUNC(sdk51_state::upibus_w)); m_upi->p2_in_cb().set("upiexp", FUNC(i8243_device::p2_r)); diff --git a/src/mame/drivers/twincobr.cpp b/src/mame/drivers/twincobr.cpp index 310f77e7908..06dbc21765e 100644 --- a/src/mame/drivers/twincobr.cpp +++ b/src/mame/drivers/twincobr.cpp @@ -730,7 +730,7 @@ void twincobr_state::fsharkbt(machine_config &config) { fshark(config); - I8741(config, "mcu", XTAL(28'000'000)/16).set_disable(); /* Internal program code is not dumped */ + I8741A(config, "mcu", XTAL(28'000'000)/16).set_disable(); /* Internal program code is not dumped */ /* Program Map is internal to the CPU */ } diff --git a/src/mame/drivers/vp415.cpp b/src/mame/drivers/vp415.cpp index acc47971e58..2205be96254 100644 --- a/src/mame/drivers/vp415.cpp +++ b/src/mame/drivers/vp415.cpp @@ -496,7 +496,7 @@ void vp415_state::vp415(machine_config &config) m_datacpu->set_addrmap(AS_PROGRAM, &vp415_state::z80_program_map); m_datacpu->set_addrmap(AS_IO, &vp415_state::z80_io_map); - I8041(config, m_datamcu, XTAL(4'000'000)); // Verified on schematic + I8041A(config, m_datamcu, XTAL(4'000'000)); // Verified on schematic m_datamcu->p1_in_cb().set(FUNC(vp415_state::data_mcu_port1_r)); m_datamcu->p1_out_cb().set(FUNC(vp415_state::data_mcu_port1_w)); m_datamcu->p2_in_cb().set(FUNC(vp415_state::data_mcu_port2_r)); @@ -515,7 +515,7 @@ void vp415_state::vp415(machine_config &config) m_ctrlcpu->set_addrmap(AS_PROGRAM, &vp415_state::ctrl_program_map); m_ctrlcpu->set_addrmap(AS_IO, &vp415_state::ctrl_io_map); - I8041(config, m_ctrlmcu, XTAL(4'000'000)); // Verified on schematic + I8041A(config, m_ctrlmcu, XTAL(4'000'000)); // Verified on schematic m_ctrlmcu->p1_in_cb().set(FUNC(vp415_state::ctrl_mcu_port1_r)); m_ctrlmcu->p1_out_cb().set(FUNC(vp415_state::ctrl_mcu_port1_w)); m_ctrlmcu->p2_in_cb().set(FUNC(vp415_state::ctrl_mcu_port2_r)); diff --git a/src/mame/drivers/z100.cpp b/src/mame/drivers/z100.cpp index b3a300b4d9a..076f5ffb29c 100644 --- a/src/mame/drivers/z100.cpp +++ b/src/mame/drivers/z100.cpp @@ -493,7 +493,7 @@ void z100_state::z100_io(address_map &map) map(0xec, 0xef).rw(m_epci[1], FUNC(mc2661_device::read), FUNC(mc2661_device::write)); map(0xf0, 0xf1).rw(m_pics, FUNC(pic8259_device::read), FUNC(pic8259_device::write)); map(0xf2, 0xf3).rw(m_picm, FUNC(pic8259_device::read), FUNC(pic8259_device::write)); - map(0xf4, 0xf5).rw("kbdc", FUNC(i8041_device::upi41_master_r), FUNC(i8041_device::upi41_master_w)); + map(0xf4, 0xf5).rw("kbdc", FUNC(i8041a_device::upi41_master_r), FUNC(i8041a_device::upi41_master_w)); // AM_RANGE (0xf6, 0xf6) expansion ROM is present (bit 0, active low) map(0xfb, 0xfb).rw(FUNC(z100_state::tmr_status_r), FUNC(z100_state::tmr_status_w)); map(0xfc, 0xfc).w(FUNC(z100_state::memory_ctrl_w)); @@ -763,7 +763,7 @@ void z100_state::z100(machine_config &config) I8085A(config, "cpu85", 10_MHz_XTAL).set_disable(); - i8041_device &kbdc(I8041(config, "kbdc", 6_MHz_XTAL)); + i8041a_device &kbdc(I8041A(config, "kbdc", 6_MHz_XTAL)); kbdc.p1_in_cb().set(FUNC(z100_state::kbd_rows_r)); kbdc.p2_out_cb().set(FUNC(z100_state::kbd_col_w)); kbdc.p2_out_cb().append("keydspyint", FUNC(input_merger_device::in_w<0>)).bit(4); diff --git a/src/mame/includes/pcw.h b/src/mame/includes/pcw.h index 60a376bc830..70d669983eb 100644 --- a/src/mame/includes/pcw.h +++ b/src/mame/includes/pcw.h @@ -135,7 +135,7 @@ public: DECLARE_WRITE_LINE_MEMBER( pcw_fdc_interrupt ); required_device m_maincpu; - required_device m_printer_mcu; + required_device m_printer_mcu; required_device m_keyboard_mcu; required_device m_fdc; required_device_array m_floppy; diff --git a/src/mame/includes/vp415.h b/src/mame/includes/vp415.h index cf307a42092..ea1b2b18f8a 100644 --- a/src/mame/includes/vp415.h +++ b/src/mame/includes/vp415.h @@ -233,11 +233,11 @@ private: void drive_io_map(address_map &map); required_device m_datacpu; - required_device m_datamcu; + required_device m_datamcu; required_device m_scsi; required_device m_drivecpu; required_device m_ctrlcpu; - required_device m_ctrlmcu; + required_device m_ctrlmcu; required_device m_chargen; required_shared_ptr m_mainram; required_shared_ptr m_ctrlram; diff --git a/src/mame/machine/dmv_keyb.cpp b/src/mame/machine/dmv_keyb.cpp index 39fed8fc437..a208f40a604 100644 --- a/src/mame/machine/dmv_keyb.cpp +++ b/src/mame/machine/dmv_keyb.cpp @@ -229,7 +229,7 @@ void dmv_keyboard_device::device_reset() void dmv_keyboard_device::device_add_mconfig(machine_config &config) { - I8741(config, m_maincpu, XTAL(6'000'000)); + I8741A(config, m_maincpu, XTAL(6'000'000)); m_maincpu->p1_in_cb().set(FUNC(dmv_keyboard_device::port1_r)); m_maincpu->p2_in_cb().set(FUNC(dmv_keyboard_device::port2_r)); m_maincpu->p2_out_cb().set(FUNC(dmv_keyboard_device::port2_w)); diff --git a/src/mame/machine/dmv_keyb.h b/src/mame/machine/dmv_keyb.h index bc343b37086..6d2a83e06a3 100644 --- a/src/mame/machine/dmv_keyb.h +++ b/src/mame/machine/dmv_keyb.h @@ -41,7 +41,7 @@ protected: virtual ioport_constructor device_input_ports() const override; private: - required_device m_maincpu; + required_device m_maincpu; required_ioport_array<16> m_keyboard; uint8_t m_col; diff --git a/src/mame/machine/imds2ioc.cpp b/src/mame/machine/imds2ioc.cpp index 20863ecc7a4..7c1fd7a7218 100644 --- a/src/mame/machine/imds2ioc.cpp +++ b/src/mame/machine/imds2ioc.cpp @@ -626,13 +626,13 @@ void imds2ioc_device::device_add_mconfig(machine_config &config) m_iocfdc->drq_wr_callback().set(m_iocdma, FUNC(i8257_device::dreq1_w)); FLOPPY_CONNECTOR(config, "iocfdc:0", imds2_floppies, "8sssd", floppy_image_device::default_floppy_formats, true); - I8041(config, m_iocpio, IOC_XTAL_Y3); + I8041A(config, m_iocpio, IOC_XTAL_Y3); m_iocpio->p1_in_cb().set(FUNC(imds2ioc_device::pio_port_p1_r)); m_iocpio->p1_out_cb().set(FUNC(imds2ioc_device::pio_port_p1_w)); m_iocpio->p2_in_cb().set(FUNC(imds2ioc_device::pio_port_p2_r)); m_iocpio->p2_out_cb().set(FUNC(imds2ioc_device::pio_port_p2_w)); - I8741(config, m_kbcpu, 3.579545_MHz_XTAL); + I8741A(config, m_kbcpu, 3.579545_MHz_XTAL); m_kbcpu->p1_out_cb().set(FUNC(imds2ioc_device::kb_port_p1_w)); m_kbcpu->p2_in_cb().set(FUNC(imds2ioc_device::kb_port_p2_r)); m_kbcpu->t0_in_cb().set(FUNC(imds2ioc_device::kb_port_t0_r)); diff --git a/src/mame/machine/imds2ioc.h b/src/mame/machine/imds2ioc.h index 2697863710c..bb98f0f8d06 100644 --- a/src/mame/machine/imds2ioc.h +++ b/src/mame/machine/imds2ioc.h @@ -84,8 +84,8 @@ private: required_device m_ioctimer; required_device m_iocfdc; required_device m_flop0; - required_device m_iocpio; - required_device m_kbcpu; + required_device m_iocpio; + required_device m_kbcpu; required_device m_palette; required_device m_gfxdecode; required_device m_centronics; diff --git a/src/mame/video/pcd.cpp b/src/mame/video/pcd.cpp index b70289ae319..bab1c77fdc5 100644 --- a/src/mame/video/pcd.cpp +++ b/src/mame/video/pcd.cpp @@ -101,7 +101,7 @@ ioport_constructor pcd_video_device::device_input_ports() const void pcd_video_device::device_add_mconfig(machine_config &config) { - i8741_device &mcu(I8741(config, "graphics", 16_MHz_XTAL / 2)); + i8741a_device &mcu(I8741A(config, "graphics", 16_MHz_XTAL / 2)); // NEC D8741AD mcu.p1_in_cb().set(FUNC(pcd_video_device::p1_r)); mcu.p2_out_cb().set(FUNC(pcd_video_device::p2_w)); mcu.t1_in_cb().set(FUNC(pcd_video_device::t1_r)); @@ -420,7 +420,7 @@ void pcd_video_device::map(address_map &map) map(0x00, 0x0f).w(m_crtc, FUNC(scn2674_device::write)).umask16(0x00ff); map(0x00, 0x0f).r(m_crtc, FUNC(scn2674_device::read)).umask16(0xff00); map(0x20, 0x20).w(FUNC(pcd_video_device::vram_sw_w)); - map(0x30, 0x33).rw("graphics", FUNC(i8741_device::upi41_master_r), FUNC(i8741_device::upi41_master_w)).umask16(0x00ff); + map(0x30, 0x33).rw("graphics", FUNC(i8741a_device::upi41_master_r), FUNC(i8741a_device::upi41_master_w)).umask16(0x00ff); } void pcx_video_device::device_start() -- cgit v1.2.3