summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2019-06-16 14:29:11 -0400
committer AJR <ajrhacker@users.noreply.github.com>2019-06-16 14:38:16 -0400
commitd95b0b95c75425e42fdf51af613084536b02c4c0 (patch)
tree06fd836231814b9d9f72b579482b0155d53ce17d
parentb9bc5cf15144e3ed55d0e84e6f046c4e479f4984 (diff)
mcs48: Further distinction of UPI variants (nw)
-rw-r--r--src/devices/bus/dmv/k806.cpp2
-rw-r--r--src/devices/cpu/mcs48/mcs48.cpp72
-rw-r--r--src/devices/cpu/mcs48/mcs48.h48
-rw-r--r--src/mame/drivers/alphatpx.cpp12
-rw-r--r--src/mame/drivers/decocass.cpp2
-rw-r--r--src/mame/drivers/dmv.cpp2
-rw-r--r--src/mame/drivers/duet16.cpp2
-rw-r--r--src/mame/drivers/fidel_card.cpp6
-rw-r--r--src/mame/drivers/gladiatr.cpp8
-rw-r--r--src/mame/drivers/gsword.cpp10
-rw-r--r--src/mame/drivers/itt1700.cpp4
-rw-r--r--src/mame/drivers/itt3030.cpp6
-rw-r--r--src/mame/drivers/itt9216.cpp2
-rw-r--r--src/mame/drivers/pcw.cpp4
-rw-r--r--src/mame/drivers/qvt103.cpp4
-rw-r--r--src/mame/drivers/sdk51.cpp2
-rw-r--r--src/mame/drivers/twincobr.cpp2
-rw-r--r--src/mame/drivers/vp415.cpp4
-rw-r--r--src/mame/drivers/z100.cpp4
-rw-r--r--src/mame/includes/pcw.h2
-rw-r--r--src/mame/includes/vp415.h4
-rw-r--r--src/mame/machine/dmv_keyb.cpp2
-rw-r--r--src/mame/machine/dmv_keyb.h2
-rw-r--r--src/mame/machine/imds2ioc.cpp4
-rw-r--r--src/mame/machine/imds2ioc.h4
-rw-r--r--src/mame/video/pcd.cpp4
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<address_map_bank_device> m_bankdev;
- required_device<i8041_device> m_kbdmcu;
+ required_device<i8041a_device> m_kbdmcu;
required_device<crt5027_device> m_crtc;
required_device<fd1791_device> m_fdc;
required_device_array<floppy_connector, 2> m_floppy;
@@ -221,7 +221,7 @@ private:
void alphatp3_mem(address_map &map);
required_device<address_map_bank_device> m_bankdev;
- required_device<i8041_device> m_kbdmcu;
+ required_device<i8041a_device> m_kbdmcu;
required_device<crt5037_device> m_crtc;
required_device<fd1791_device> m_fdc;
required_device_array<floppy_connector, 2> 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<i8041_device> m_mcu;
+ required_device<i8041a_device> m_mcu;
required_device<i8243_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<cpu_device> m_maincpu;
required_device<screen_device> m_screen;
- required_device<i8741_device> m_kbdmcu;
+ required_device<i8741a_device> m_kbdmcu;
required_device<ram_device> m_ram;
required_device<crt5027_device> m_crtc;
required_device<address_map_bank_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<cpu_device> m_maincpu;
- required_device<i8041_device> m_printer_mcu;
+ required_device<upi41_cpu_device> m_printer_mcu;
required_device<i8048_device> m_keyboard_mcu;
required_device<upd765a_device> m_fdc;
required_device_array<floppy_connector, 2> 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<z80_device> m_datacpu;
- required_device<i8041_device> m_datamcu;
+ required_device<i8041a_device> m_datamcu;
required_device<ncr5385_device> m_scsi;
required_device<i8031_device> m_drivecpu;
required_device<i8031_device> m_ctrlcpu;
- required_device<i8041_device> m_ctrlmcu;
+ required_device<i8041a_device> m_ctrlmcu;
required_device<mb88303_device> m_chargen;
required_shared_ptr<uint8_t> m_mainram;
required_shared_ptr<uint8_t> 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<i8741_device> m_maincpu;
+ required_device<i8741a_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<pit8253_device> m_ioctimer;
required_device<i8271_device> m_iocfdc;
required_device<floppy_connector> m_flop0;
- required_device<i8041_device> m_iocpio;
- required_device<i8741_device> m_kbcpu;
+ required_device<i8041a_device> m_iocpio;
+ required_device<i8741a_device> m_kbcpu;
required_device<palette_device> m_palette;
required_device<gfxdecode_device> m_gfxdecode;
required_device<centronics_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()