diff options
Diffstat (limited to 'src/devices/cpu')
602 files changed, 1987 insertions, 1994 deletions
diff --git a/src/devices/cpu/8x300/8x300.cpp b/src/devices/cpu/8x300/8x300.cpp index cd6efcb1b3c..bbe6ffd615c 100644 --- a/src/devices/cpu/8x300/8x300.cpp +++ b/src/devices/cpu/8x300/8x300.cpp @@ -41,7 +41,7 @@ DEFINE_DEVICE_TYPE(N8X300, n8x300_cpu_device, "8x300", "Signetics 8X300") DEFINE_DEVICE_TYPE(N8X305, n8x305_cpu_device, "8x305", "Signetics 8X305") -n8x300_cpu_device::n8x300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +n8x300_cpu_device::n8x300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 13, -1) , m_io_config("io", ENDIANNESS_BIG, 8, 9, 0) @@ -54,12 +54,12 @@ n8x300_cpu_device::n8x300_cpu_device(const machine_config &mconfig, device_type { } -n8x300_cpu_device::n8x300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +n8x300_cpu_device::n8x300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : n8x300_cpu_device(mconfig, N8X300, tag, owner, clock) { } -n8x305_cpu_device::n8x305_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +n8x305_cpu_device::n8x305_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : n8x300_cpu_device(mconfig, N8X305, tag, owner, clock) { } diff --git a/src/devices/cpu/8x300/8x300.h b/src/devices/cpu/8x300/8x300.h index e4f2a2a3dda..f3e17d0df0c 100644 --- a/src/devices/cpu/8x300/8x300.h +++ b/src/devices/cpu/8x300/8x300.h @@ -43,7 +43,7 @@ class n8x300_cpu_device : public cpu_device { public: // construction/destruction - n8x300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + n8x300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto sc_callback() { return m_sc_callback.bind(); } auto wc_callback() { return m_wc_callback.bind(); } @@ -52,7 +52,7 @@ public: auto rb_callback() { return m_rb_callback.bind(); } auto iv_callback() { return m_iv_callback.bind(); } protected: - n8x300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + n8x300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_resolve_objects() override; @@ -152,7 +152,7 @@ class n8x305_cpu_device : public n8x300_cpu_device { public: // construction/destruction - n8x305_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + n8x305_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void set_reg(uint8_t reg, uint8_t val, bool xmit) override; diff --git a/src/devices/cpu/adsp2100/adsp2100.cpp b/src/devices/cpu/adsp2100/adsp2100.cpp index 86b0158caa7..23aa525b79a 100644 --- a/src/devices/cpu/adsp2100/adsp2100.cpp +++ b/src/devices/cpu/adsp2100/adsp2100.cpp @@ -127,7 +127,7 @@ DEFINE_DEVICE_TYPE(ADSP2181, adsp2181_device, "adsp2181", "Analog Devices ADSP-2 // adsp21xx_device - constructor //------------------------------------------------- -adsp21xx_device::adsp21xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype) +adsp21xx_device::adsp21xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 32, 14, -2), m_data_config("data", ENDIANNESS_LITTLE, 16, 14, -1), @@ -258,31 +258,31 @@ adsp21xx_device::adsp21xx_device(const machine_config &mconfig, device_type type m_shift_xregs[7] = &m_core.sr.srx.sr1; } -adsp2100_device::adsp2100_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2100_device::adsp2100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp21xx_device(mconfig, ADSP2100, tag, owner, clock, CHIP_TYPE_ADSP2100) { } -adsp2101_device::adsp2101_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2101_device::adsp2101_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp2101_device(mconfig, ADSP2101, tag, owner, clock, CHIP_TYPE_ADSP2101) { } -adsp2101_device::adsp2101_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype) +adsp2101_device::adsp2101_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype) : adsp21xx_device(mconfig, type, tag, owner, clock, chiptype) { } -adsp2104_device::adsp2104_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2104_device::adsp2104_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp2101_device(mconfig, ADSP2104, tag, owner, clock, CHIP_TYPE_ADSP2104) { } -adsp2105_device::adsp2105_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2105_device::adsp2105_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp2101_device(mconfig, ADSP2105, tag, owner, clock, CHIP_TYPE_ADSP2105) { } -adsp2115_device::adsp2115_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2115_device::adsp2115_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp2101_device(mconfig, ADSP2115, tag, owner, clock, CHIP_TYPE_ADSP2115) { } -adsp2181_device::adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp2181_device::adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : adsp21xx_device(mconfig, ADSP2181, tag, owner, clock, CHIP_TYPE_ADSP2181) , m_io_config("io", ENDIANNESS_LITTLE, 16, 11, -1) { } diff --git a/src/devices/cpu/adsp2100/adsp2100.h b/src/devices/cpu/adsp2100/adsp2100.h index 046e10fa6ba..2638d56c04d 100644 --- a/src/devices/cpu/adsp2100/adsp2100.h +++ b/src/devices/cpu/adsp2100/adsp2100.h @@ -210,7 +210,7 @@ protected: }; // construction/destruction - adsp21xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype); + adsp21xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype); // device-level overrides virtual void device_start() override; @@ -473,7 +473,7 @@ class adsp2100_device : public adsp21xx_device { public: // construction/destruction - adsp2100_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -494,10 +494,10 @@ class adsp2101_device : public adsp21xx_device { public: // construction/destruction - adsp2101_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2101_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - adsp2101_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype); + adsp2101_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype); // device_execute_interface overrides virtual uint32_t execute_input_lines() const noexcept override; @@ -517,7 +517,7 @@ class adsp2181_device : public adsp21xx_device { public: // construction/destruction - adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -547,19 +547,19 @@ public: class adsp2104_device : public adsp2101_device { public: - adsp2104_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2104_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class adsp2105_device : public adsp2101_device { public: - adsp2105_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2105_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class adsp2115_device : public adsp2101_device { public: - adsp2115_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + adsp2115_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/alpha/alpha.cpp b/src/devices/cpu/alpha/alpha.cpp index 54fd995b092..f752b566eb2 100644 --- a/src/devices/cpu/alpha/alpha.cpp +++ b/src/devices/cpu/alpha/alpha.cpp @@ -38,17 +38,17 @@ DEFINE_DEVICE_TYPE(DEC_21064, dec_21064_device, "21064", "DEC Alpha 21064") -dec_21064_device::dec_21064_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +dec_21064_device::dec_21064_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : alpha_ev4_device(mconfig, DEC_21064, tag, owner, clock) { } -alpha_ev4_device::alpha_ev4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +alpha_ev4_device::alpha_ev4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : alpha_device(mconfig, type, tag, owner, clock) { } -alpha_device::alpha_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +alpha_device::alpha_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_dasm_type(alpha_disassembler::dasm_type::TYPE_UNKNOWN) , m_as_config diff --git a/src/devices/cpu/alpha/alpha.h b/src/devices/cpu/alpha/alpha.h index bf374d227b0..2aa72783324 100644 --- a/src/devices/cpu/alpha/alpha.h +++ b/src/devices/cpu/alpha/alpha.h @@ -18,7 +18,7 @@ public: auto srom_data_r() { return m_srom_data_cb.bind(); } protected: - alpha_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + alpha_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device_t overrides virtual void device_start() override; @@ -76,7 +76,7 @@ protected: class alpha_ev4_device : public alpha_device { public: - alpha_ev4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + alpha_ev4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides @@ -253,7 +253,7 @@ protected: class dec_21064_device : public alpha_ev4_device { public: - dec_21064_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + dec_21064_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; diff --git a/src/devices/cpu/alto2/alto2cpu.cpp b/src/devices/cpu/alto2/alto2cpu.cpp index 5d093a96966..07ab991d042 100644 --- a/src/devices/cpu/alto2/alto2cpu.cpp +++ b/src/devices/cpu/alto2/alto2cpu.cpp @@ -125,7 +125,7 @@ void alto2_cpu_device::iomem_map(address_map &map) // alto2_cpu_device - constructor //------------------------------------------------- -alto2_cpu_device::alto2_cpu_device(const machine_config& mconfig, const char* tag, device_t* owner, uint32_t clock) : +alto2_cpu_device::alto2_cpu_device(const machine_config& mconfig, const char* tag, device_t* owner, const XTAL &clock) : cpu_device(mconfig, ALTO2, tag, owner, clock), m_kb_read_callback(*this), m_utilout_callback(*this), diff --git a/src/devices/cpu/alto2/alto2cpu.h b/src/devices/cpu/alto2/alto2cpu.h index c269737d2e6..4fa396e7b3a 100644 --- a/src/devices/cpu/alto2/alto2cpu.h +++ b/src/devices/cpu/alto2/alto2cpu.h @@ -179,7 +179,7 @@ class alto2_cpu_device : public cpu_device { public: // construction/destruction - alto2_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + alto2_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); ~alto2_cpu_device(); auto kb_read_callback() { return m_kb_read_callback.bind(); } diff --git a/src/devices/cpu/am29000/am29000.cpp b/src/devices/cpu/am29000/am29000.cpp index b66c5163e1e..0f8a91d4a13 100644 --- a/src/devices/cpu/am29000/am29000.cpp +++ b/src/devices/cpu/am29000/am29000.cpp @@ -78,7 +78,7 @@ DEFINE_DEVICE_TYPE(AM29000, am29000_cpu_device, "am29000", "AMC Am29000") STATE ACCESSORS ***************************************************************************/ -am29000_cpu_device::am29000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +am29000_cpu_device::am29000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, AM29000, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0) , m_io_config("io", ENDIANNESS_BIG, 32, 32, 0) diff --git a/src/devices/cpu/am29000/am29000.h b/src/devices/cpu/am29000/am29000.h index c19eeb8b9f2..203c9191f77 100644 --- a/src/devices/cpu/am29000/am29000.h +++ b/src/devices/cpu/am29000/am29000.h @@ -436,7 +436,7 @@ class am29000_cpu_device : public cpu_device { public: // construction/destruction - am29000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + am29000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/amis2000/amis2000.cpp b/src/devices/cpu/amis2000/amis2000.cpp index 468b29acd98..9dedbf962ac 100644 --- a/src/devices/cpu/amis2000/amis2000.cpp +++ b/src/devices/cpu/amis2000/amis2000.cpp @@ -59,15 +59,15 @@ void amis2000_base_device::data_80x4(address_map &map) // device definitions -amis2000_cpu_device::amis2000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +amis2000_cpu_device::amis2000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : amis2000_base_device(mconfig, AMI_S2000, tag, owner, clock, 2, 10, 3, 13, address_map_constructor(FUNC(amis2000_cpu_device::program_1k), this), 6, address_map_constructor(FUNC(amis2000_cpu_device::data_64x4), this)) { } -amis2150_cpu_device::amis2150_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +amis2150_cpu_device::amis2150_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : amis2000_base_device(mconfig, AMI_S2150, tag, owner, clock, 3, 11, 3, 13, address_map_constructor(FUNC(amis2150_cpu_device::program_1_5k), this), 7, address_map_constructor(FUNC(amis2150_cpu_device::data_80x4), this)) { } -amis2152_cpu_device::amis2152_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +amis2152_cpu_device::amis2152_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : amis2000_base_device(mconfig, AMI_S2152, tag, owner, clock, 3, 11, 3, 13, address_map_constructor(FUNC(amis2152_cpu_device::program_1_5k), this), 7, address_map_constructor(FUNC(amis2152_cpu_device::data_80x4), this)) { } diff --git a/src/devices/cpu/amis2000/amis2000.h b/src/devices/cpu/amis2000/amis2000.h index f284149dd15..5cdeadfe5fb 100644 --- a/src/devices/cpu/amis2000/amis2000.h +++ b/src/devices/cpu/amis2000/amis2000.h @@ -39,7 +39,7 @@ public: protected: // construction/destruction - amis2000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) + amis2000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 bu_bits, u8 callstack_bits, u8 callstack_depth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, prgwidth, 0, program) , m_data_config("data", ENDIANNESS_BIG, 8, datawidth, 0, data) @@ -189,21 +189,21 @@ protected: class amis2000_cpu_device : public amis2000_base_device { public: - amis2000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + amis2000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class amis2150_cpu_device : public amis2000_base_device { public: - amis2150_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + amis2150_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class amis2152_cpu_device : public amis2000_base_device { public: - amis2152_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + amis2152_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/apexc/apexc.cpp b/src/devices/cpu/apexc/apexc.cpp index 68c1547823c..c982a442c7a 100644 --- a/src/devices/cpu/apexc/apexc.cpp +++ b/src/devices/cpu/apexc/apexc.cpp @@ -337,7 +337,7 @@ DEFINE_DEVICE_TYPE(APEXC, apexc_cpu_device, "apexc_cpu", "APE(X)C") #define DELAY(n) {m_icount -= (n); m_current_word = (m_current_word + (n)) & 0x1f;} -apexc_cpu_device::apexc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +apexc_cpu_device::apexc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, APEXC, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 15, 0) , m_tape_read_cb(*this) diff --git a/src/devices/cpu/apexc/apexc.h b/src/devices/cpu/apexc/apexc.h index 84b44add940..7339f7ec7a5 100644 --- a/src/devices/cpu/apexc/apexc.h +++ b/src/devices/cpu/apexc/apexc.h @@ -20,7 +20,7 @@ class apexc_cpu_device : public cpu_device { public: // construction/destruction - apexc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + apexc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration auto tape_read() { return m_tape_read_cb.bind(); } diff --git a/src/devices/cpu/arc/arc.cpp b/src/devices/cpu/arc/arc.cpp index 5b1b61bf6e1..0bba6735819 100644 --- a/src/devices/cpu/arc/arc.cpp +++ b/src/devices/cpu/arc/arc.cpp @@ -17,7 +17,7 @@ DEFINE_DEVICE_TYPE(ARC, arc_cpu_device, "arc_a4", "Argonaut ARCtangent A4") -arc_cpu_device::arc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arc_cpu_device::arc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ARC, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 24, 0) , m_pc(0), m_program(nullptr), m_icount(0), m_debugger_temp(0) diff --git a/src/devices/cpu/arc/arc.h b/src/devices/cpu/arc/arc.h index fd4fa0582e1..bf1096ad09c 100644 --- a/src/devices/cpu/arc/arc.h +++ b/src/devices/cpu/arc/arc.h @@ -21,7 +21,7 @@ class arc_cpu_device : public cpu_device { public: // construction/destruction - arc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arc_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/arcompact/arcompact.cpp b/src/devices/cpu/arcompact/arcompact.cpp index f1055895d87..d64885911ae 100644 --- a/src/devices/cpu/arcompact/arcompact.cpp +++ b/src/devices/cpu/arcompact/arcompact.cpp @@ -49,7 +49,7 @@ void arcompact_device::arcompact_auxreg_map(address_map &map) #define AUX_SPACE_ADDRESS_WIDTH 32 // IO space is 32 bits of dwords -arcompact_device::arcompact_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arcompact_device::arcompact_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ARCA5, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) // some docs describe these as 'middle endian'?! , m_io_config( "io", ENDIANNESS_LITTLE, 32, AUX_SPACE_ADDRESS_WIDTH, -2, address_map_constructor(FUNC(arcompact_device::arcompact_auxreg_map), this)) diff --git a/src/devices/cpu/arcompact/arcompact.h b/src/devices/cpu/arcompact/arcompact.h index d87499bc969..6b6ffa5d0af 100644 --- a/src/devices/cpu/arcompact/arcompact.h +++ b/src/devices/cpu/arcompact/arcompact.h @@ -70,7 +70,7 @@ class arcompact_device : public cpu_device { public: // construction/destruction - arcompact_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arcompact_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint32_t arcompact_auxreg002_LPSTART_r(); void arcompact_auxreg002_LPSTART_w(uint32_t data); diff --git a/src/devices/cpu/arm/arm.cpp b/src/devices/cpu/arm/arm.cpp index 6a99468da75..980f5fe261d 100644 --- a/src/devices/cpu/arm/arm.cpp +++ b/src/devices/cpu/arm/arm.cpp @@ -225,13 +225,13 @@ device_memory_interface::space_config_vector arm_cpu_device::memory_space_config }; } -arm_cpu_device::arm_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm_cpu_device::arm_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm_cpu_device(mconfig, ARM, tag, owner, clock) { } -arm_cpu_device::arm_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +arm_cpu_device::arm_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 26, 0) , m_copro_type(copro_type::UNKNOWN_CP15) diff --git a/src/devices/cpu/arm/arm.h b/src/devices/cpu/arm/arm.h index aeafa3c0d7b..d52de002db2 100644 --- a/src/devices/cpu/arm/arm.h +++ b/src/devices/cpu/arm/arm.h @@ -27,7 +27,7 @@ public: }; // construction/destruction - arm_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_copro_type(copro_type type) { m_copro_type = type; } @@ -41,7 +41,7 @@ protected: ARM32_IR13, ARM32_IR14, ARM32_SR13, ARM32_SR14 }; - arm_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + arm_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/arm7/arm7.cpp b/src/devices/cpu/arm7/arm7.cpp index d2c40209dd1..e8e5c1005f4 100644 --- a/src/devices/cpu/arm7/arm7.cpp +++ b/src/devices/cpu/arm7/arm7.cpp @@ -78,12 +78,12 @@ DEFINE_DEVICE_TYPE(PXA270, pxa270_cpu_device, "pxa270", "Intel DEFINE_DEVICE_TYPE(SA1110, sa1110_cpu_device, "sa1110", "Intel StrongARM SA-1110") DEFINE_DEVICE_TYPE(IGS036, igs036_cpu_device, "igs036", "IGS036") -arm7_cpu_device::arm7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm7_cpu_device::arm7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, ARM7, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_LITTLE) { } -arm7_cpu_device::arm7_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) +arm7_cpu_device::arm7_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", endianness, 32, 32, 0) , m_prefetch_word0_shift(endianness == ENDIANNESS_LITTLE ? 0 : 16) @@ -114,13 +114,13 @@ arm7_cpu_device::arm7_cpu_device(const machine_config &mconfig, device_type type } -arm7_be_cpu_device::arm7_be_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm7_be_cpu_device::arm7_be_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, ARM7_BE, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_BIG) { } -arm710a_cpu_device::arm710a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm710a_cpu_device::arm710a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, ARM710A, tag, owner, clock, 4, ARCHFLAG_MODE26, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_ARM @@ -129,7 +129,7 @@ arm710a_cpu_device::arm710a_cpu_device(const machine_config &mconfig, const char } -arm710t_cpu_device::arm710t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm710t_cpu_device::arm710t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, ARM710T, tag, owner, clock, 4, ARCHFLAG_MODE26, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_ARM @@ -138,7 +138,7 @@ arm710t_cpu_device::arm710t_cpu_device(const machine_config &mconfig, const char } -arm7500_cpu_device::arm7500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm7500_cpu_device::arm7500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, ARM7500, tag, owner, clock, 4, ARCHFLAG_MODE26, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_ARM @@ -147,13 +147,13 @@ arm7500_cpu_device::arm7500_cpu_device(const machine_config &mconfig, const char } -arm9_cpu_device::arm9_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm9_cpu_device::arm9_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm9_cpu_device(mconfig, ARM9, tag, owner, clock, 5, ARCHFLAG_T | ARCHFLAG_E, ENDIANNESS_LITTLE) { } -arm9_cpu_device::arm9_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) +arm9_cpu_device::arm9_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) : arm7_cpu_device(mconfig, type, tag, owner, clock, archRev, archFlags, endianness) { uint32_t arch = ARM9_COPRO_ID_ARCH_V4; @@ -181,7 +181,7 @@ arm9_cpu_device::arm9_cpu_device(const machine_config &mconfig, device_type type } -arm920t_cpu_device::arm920t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm920t_cpu_device::arm920t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm9_cpu_device(mconfig, ARM920T, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_ARM @@ -191,7 +191,7 @@ arm920t_cpu_device::arm920t_cpu_device(const machine_config &mconfig, const char | 0; // Stepping } -arm946es_cpu_device::arm946es_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +arm946es_cpu_device::arm946es_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : arm9_cpu_device(mconfig, type, tag, owner, clock, 5, ARCHFLAG_T | ARCHFLAG_E, ENDIANNESS_LITTLE), cp15_control(0x78) { @@ -212,18 +212,18 @@ arm946es_cpu_device::arm946es_cpu_device(const machine_config &mconfig, device_t cp15_itcm_reg = cp15_dtcm_reg = 0; } -arm946es_cpu_device::arm946es_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm946es_cpu_device::arm946es_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm946es_cpu_device(mconfig, ARM946ES, tag, owner, clock) { } -arm11_cpu_device::arm11_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm11_cpu_device::arm11_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm11_cpu_device(mconfig, ARM11, tag, owner, clock, 6, ARCHFLAG_T | ARCHFLAG_E | ARCHFLAG_K, ENDIANNESS_LITTLE) { } -arm11_cpu_device::arm11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) +arm11_cpu_device::arm11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness) : arm9_cpu_device(mconfig, type, tag, owner, clock, archRev, archFlags, endianness) { uint32_t arch = ARM9_COPRO_ID_ARCH_V6; @@ -231,7 +231,7 @@ arm11_cpu_device::arm11_cpu_device(const machine_config &mconfig, device_type ty m_copro_id = ARM9_COPRO_ID_MFR_ARM | arch | (0xB00 << 4); } -arm1176jzf_s_cpu_device::arm1176jzf_s_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +arm1176jzf_s_cpu_device::arm1176jzf_s_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm11_cpu_device(mconfig, ARM1176JZF_S, tag, owner, clock, 6, ARCHFLAG_T | ARCHFLAG_E | ARCHFLAG_K, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_ARM @@ -242,12 +242,12 @@ arm1176jzf_s_cpu_device::arm1176jzf_s_cpu_device(const machine_config &mconfig, } // unknown configuration, but uses MPU not MMU, so closer to ARM946ES -igs036_cpu_device::igs036_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +igs036_cpu_device::igs036_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm946es_cpu_device(mconfig, IGS036, tag, owner, clock) { } -pxa250_cpu_device::pxa250_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pxa250_cpu_device::pxa250_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, PXA250, tag, owner, clock, 5, ARCHFLAG_T | ARCHFLAG_E | ARCHFLAG_XSCALE, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_INTEL @@ -256,7 +256,7 @@ pxa250_cpu_device::pxa250_cpu_device(const machine_config &mconfig, const char * | ARM9_COPRO_ID_STEP_PXA255_A0; } -pxa255_cpu_device::pxa255_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pxa255_cpu_device::pxa255_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, PXA255, tag, owner, clock, 5, ARCHFLAG_T | ARCHFLAG_E | ARCHFLAG_XSCALE, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_INTEL @@ -265,7 +265,7 @@ pxa255_cpu_device::pxa255_cpu_device(const machine_config &mconfig, const char * | ARM9_COPRO_ID_STEP_PXA255_A0; } -pxa270_cpu_device::pxa270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pxa270_cpu_device::pxa270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, PXA270, tag, owner, clock, 5, ARCHFLAG_T | ARCHFLAG_E | ARCHFLAG_XSCALE, ENDIANNESS_LITTLE) { m_copro_id = ARM9_COPRO_ID_MFR_INTEL @@ -274,7 +274,7 @@ pxa270_cpu_device::pxa270_cpu_device(const machine_config &mconfig, const char * | ARM9_COPRO_ID_STEP_PXA255_A0; } -sa1110_cpu_device::sa1110_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sa1110_cpu_device::sa1110_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, SA1110, tag, owner, clock, 4, ARCHFLAG_SA, ENDIANNESS_LITTLE) // has StrongARM, no Thumb, no Enhanced DSP { diff --git a/src/devices/cpu/arm7/arm7.h b/src/devices/cpu/arm7/arm7.h index c46516508db..03e0918a538 100644 --- a/src/devices/cpu/arm7/arm7.h +++ b/src/devices/cpu/arm7/arm7.h @@ -51,7 +51,7 @@ class arm7_cpu_device : public cpu_device, public arm7_disassembler::config { public: // construction/destruction - arm7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_high_vectors() { m_vectorbase = 0xffff0000; } @@ -113,7 +113,7 @@ protected: ARM9_COPRO_ID_MFR_INTEL = 0x69 << 24 }; - arm7_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); + arm7_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); void postload(); @@ -622,7 +622,7 @@ class arm7_be_cpu_device : public arm7_cpu_device { public: // construction/destruction - arm7_be_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm7_be_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -630,31 +630,31 @@ class arm7500_cpu_device : public arm7_cpu_device { public: // construction/destruction - arm7500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm7500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class arm710a_cpu_device : public arm7_cpu_device { public: // construction/destruction - arm710a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm710a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class arm710t_cpu_device : public arm7_cpu_device { public: // construction/destruction - arm710t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm710t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class arm9_cpu_device : public arm7_cpu_device { public: // construction/destruction - arm9_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm9_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - arm9_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); + arm9_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); }; @@ -662,7 +662,7 @@ class arm920t_cpu_device : public arm9_cpu_device { public: // construction/destruction - arm920t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm920t_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -670,7 +670,7 @@ class arm946es_cpu_device : public arm9_cpu_device { public: // construction/destruction - arm946es_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm946es_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // 946E-S has Protection Unit instead of ARM MMU so CP15 is quite different virtual uint32_t arm7_rt_r_callback(offs_t offset) override; @@ -684,7 +684,7 @@ public: virtual uint8_t arm7_cpu_read8(uint32_t addr) override; protected: - arm946es_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + arm946es_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; @@ -701,17 +701,17 @@ class arm11_cpu_device : public arm9_cpu_device { public: // construction/destruction - arm11_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm11_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - arm11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); + arm11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t archRev, uint32_t archFlags, endianness_t endianness); }; class arm1176jzf_s_cpu_device : public arm11_cpu_device { public: // construction/destruction - arm1176jzf_s_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + arm1176jzf_s_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual uint32_t arm7_rt_r_callback(offs_t offset) override; virtual void arm7_rt_w_callback(offs_t offset, uint32_t data) override; @@ -724,35 +724,35 @@ class igs036_cpu_device : public arm946es_cpu_device { public: // construction/destruction - igs036_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + igs036_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pxa250_cpu_device : public arm7_cpu_device { public: // construction/destruction - pxa250_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pxa250_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pxa255_cpu_device : public arm7_cpu_device { public: // construction/destruction - pxa255_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pxa255_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pxa270_cpu_device : public arm7_cpu_device { public: // construction/destruction - pxa270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pxa270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class sa1110_cpu_device : public arm7_cpu_device { public: // construction/destruction - sa1110_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sa1110_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(ARM7, arm7_cpu_device) diff --git a/src/devices/cpu/arm7/lpc210x.cpp b/src/devices/cpu/arm7/lpc210x.cpp index 75a322f01a2..99ecfb478f4 100644 --- a/src/devices/cpu/arm7/lpc210x.cpp +++ b/src/devices/cpu/arm7/lpc210x.cpp @@ -41,7 +41,7 @@ void lpc210x_device::lpc2103_map(address_map &map) } -lpc210x_device::lpc210x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +lpc210x_device::lpc210x_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, LPC2103, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_LITTLE) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(FUNC(lpc210x_device::lpc2103_map), this)) , m_vic(*this, "vic") @@ -256,7 +256,7 @@ void lpc210x_device::write_timer(int timer, int offset, uint32_t data, uint32_t void lpc210x_device::device_add_mconfig(machine_config &config) { - PL190_VIC(config, m_vic, 0); + PL190_VIC(config, m_vic); m_vic->out_irq_cb().set_inputline(*this, ARM7_IRQ_LINE); m_vic->out_fiq_cb().set_inputline(*this, ARM7_FIRQ_LINE); } diff --git a/src/devices/cpu/arm7/lpc210x.h b/src/devices/cpu/arm7/lpc210x.h index 47a801a6058..c36f6fbd109 100644 --- a/src/devices/cpu/arm7/lpc210x.h +++ b/src/devices/cpu/arm7/lpc210x.h @@ -22,7 +22,7 @@ class lpc210x_device : public arm7_cpu_device { public: - lpc210x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); + lpc210x_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint32_t arm_E01FC088_r(); uint32_t flash_r(offs_t offset); diff --git a/src/devices/cpu/arm7/upd800468.cpp b/src/devices/cpu/arm7/upd800468.cpp index 16b6928bf7c..1248b5ea2b3 100644 --- a/src/devices/cpu/arm7/upd800468.cpp +++ b/src/devices/cpu/arm7/upd800468.cpp @@ -14,7 +14,7 @@ DEFINE_DEVICE_TYPE(UPD800468_TIMER, upd800468_timer_device, "upd800468_timer", "NEC uPD800468 timer") -upd800468_timer_device::upd800468_timer_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd800468_timer_device::upd800468_timer_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, UPD800468_TIMER, tag, owner, clock) , m_irq_cb(*this) { @@ -122,7 +122,7 @@ void upd800468_device::upd800468_map(address_map &map) map(0xfffff000, 0xffffffff).m(m_vic, FUNC(vic_upd800468_device::map)); } -upd800468_device::upd800468_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd800468_device::upd800468_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : arm7_cpu_device(mconfig, UPD800468, tag, owner, clock, 4, ARCHFLAG_T, ENDIANNESS_LITTLE) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(FUNC(upd800468_device::upd800468_map), this)) , m_vic(*this, "vic") @@ -142,7 +142,7 @@ device_memory_interface::space_config_vector upd800468_device::memory_space_conf void upd800468_device::device_add_mconfig(machine_config &config) { - UPD800468_VIC(config, m_vic, 0); + UPD800468_VIC(config, m_vic); m_vic->out_irq_cb().set_inputline(*this, ARM7_IRQ_LINE); m_vic->out_fiq_cb().set_inputline(*this, ARM7_FIRQ_LINE); @@ -157,7 +157,7 @@ void upd800468_device::device_add_mconfig(machine_config &config) m_timer[2]->irq_cb().set(m_vic, FUNC(vic_upd800468_device::irq_w<23>)); // key/button controller is compatible with the one from earlier keyboards - GT913_KBD_HLE(config, m_kbd, 0); + GT913_KBD_HLE(config, m_kbd); m_kbd->irq_cb().set(m_vic, FUNC(vic_upd800468_device::irq_w<31>)); } diff --git a/src/devices/cpu/arm7/upd800468.h b/src/devices/cpu/arm7/upd800468.h index 7f662581c7f..a90fdcf9827 100644 --- a/src/devices/cpu/arm7/upd800468.h +++ b/src/devices/cpu/arm7/upd800468.h @@ -18,7 +18,7 @@ class upd800468_timer_device : public device_t { public: - upd800468_timer_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd800468_timer_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto irq_cb() { return m_irq_cb.bind(); } @@ -45,7 +45,7 @@ private: class upd800468_device : public arm7_cpu_device { public: - upd800468_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); + upd800468_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void upd800468_map(address_map &map); diff --git a/src/devices/cpu/asap/asap.cpp b/src/devices/cpu/asap/asap.cpp index 045819aa4ae..554a83dd2ee 100644 --- a/src/devices/cpu/asap/asap.cpp +++ b/src/devices/cpu/asap/asap.cpp @@ -136,7 +136,7 @@ DEFINE_DEVICE_TYPE(ASAP, asap_device, "asap", "Atari ASAP") // asap_device - constructor //------------------------------------------------- -asap_device::asap_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +asap_device::asap_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ASAP, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 32, 32), m_pc(0), diff --git a/src/devices/cpu/asap/asap.h b/src/devices/cpu/asap/asap.h index 3adb9ef37f4..1e62fd76202 100644 --- a/src/devices/cpu/asap/asap.h +++ b/src/devices/cpu/asap/asap.h @@ -26,7 +26,7 @@ class asap_device : public cpu_device { public: // construction/destruction - asap_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + asap_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // public interfaces diff --git a/src/devices/cpu/avr8/avr8.cpp b/src/devices/cpu/avr8/avr8.cpp index f650a53bbb3..85afb1482bd 100644 --- a/src/devices/cpu/avr8/avr8.cpp +++ b/src/devices/cpu/avr8/avr8.cpp @@ -642,7 +642,7 @@ void attiny15_device::attiny15_internal_map(address_map &map) // atmega88_device - constructor //------------------------------------------------- -atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA88, 0x0fff, address_map_constructor(FUNC(atmega88_device::atmega88_internal_map), this), 3) { } @@ -651,7 +651,7 @@ atmega88_device::atmega88_device(const machine_config &mconfig, const char *tag, // atmega168_device - constructor //------------------------------------------------- -atmega168_device::atmega168_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega168_device::atmega168_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA168, 0x1fff, address_map_constructor(FUNC(atmega168_device::atmega168_internal_map), this), 3) { } @@ -660,7 +660,7 @@ atmega168_device::atmega168_device(const machine_config &mconfig, const char *ta // atmega328_device - constructor //------------------------------------------------- -atmega328_device::atmega328_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega328_device::atmega328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA328, 0x7fff, address_map_constructor(FUNC(atmega328_device::atmega328_internal_map), this), 3) { } @@ -669,7 +669,7 @@ atmega328_device::atmega328_device(const machine_config &mconfig, const char *ta // atmega644_device - constructor //------------------------------------------------- -atmega644_device::atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega644_device::atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA644, 0xffff, address_map_constructor(FUNC(atmega644_device::atmega644_internal_map), this), 3) { } @@ -678,7 +678,7 @@ atmega644_device::atmega644_device(const machine_config &mconfig, const char *ta // atmega1280_device - constructor //------------------------------------------------- -atmega1280_device::atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega1280_device::atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA1280, 0x1ffff, address_map_constructor(FUNC(atmega1280_device::atmega1280_internal_map), this), 6) { } @@ -687,7 +687,7 @@ atmega1280_device::atmega1280_device(const machine_config &mconfig, const char * // atmega2560_device - constructor //------------------------------------------------- -atmega2560_device::atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +atmega2560_device::atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATMEGA2560, 0x1ffff, address_map_constructor(FUNC(atmega2560_device::atmega2560_internal_map), this), 6) { } @@ -696,7 +696,7 @@ atmega2560_device::atmega2560_device(const machine_config &mconfig, const char * // attiny15_device - constructor //------------------------------------------------- -attiny15_device::attiny15_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +attiny15_device::attiny15_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : avr8_device(mconfig, tag, owner, clock, ATTINY15, 0x03ff, address_map_constructor(FUNC(attiny15_device::attiny15_internal_map), this), 2) { } @@ -705,7 +705,7 @@ attiny15_device::attiny15_device(const machine_config &mconfig, const char *tag, // avr8_device - constructor //------------------------------------------------- -avr8_device::avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, const device_type type, uint32_t addr_mask, address_map_constructor internal_map, int32_t num_timers) +avr8_device::avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, uint32_t addr_mask, address_map_constructor internal_map, int32_t num_timers) : cpu_device(mconfig, type, tag, owner, clock) , m_shifted_pc(0) , m_program_config("program", ENDIANNESS_LITTLE, 8, 22) diff --git a/src/devices/cpu/avr8/avr8.h b/src/devices/cpu/avr8/avr8.h index 85f05e8cea6..758cd1cf945 100644 --- a/src/devices/cpu/avr8/avr8.h +++ b/src/devices/cpu/avr8/avr8.h @@ -45,7 +45,7 @@ public: template<uint8_t Port> auto gpio_in() { return m_gpio_in_cb[Port].bind(); } protected: - avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, const device_type type, uint32_t address_mask, address_map_constructor internal_map, int32_t num_timers); + avr8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, uint32_t address_mask, address_map_constructor internal_map, int32_t num_timers); typedef void (avr8_device::*op_func) (uint16_t op); @@ -319,7 +319,7 @@ class atmega88_device : public avr8_device { public: // construction/destruction - atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega88_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void atmega88_internal_map(address_map &map); }; @@ -329,7 +329,7 @@ class atmega168_device : public avr8_device { public: // construction/destruction - atmega168_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega168_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void update_interrupt(int source) override; void atmega168_internal_map(address_map &map); @@ -341,7 +341,7 @@ class atmega328_device : public avr8_device { public: // construction/destruction - atmega328_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void update_interrupt(int source) override; void atmega328_internal_map(address_map &map); @@ -353,7 +353,7 @@ class atmega644_device : public avr8_device { public: // construction/destruction - atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega644_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void update_interrupt(int source) override; void atmega644_internal_map(address_map &map); @@ -365,7 +365,7 @@ class atmega1280_device : public avr8_device { public: // construction/destruction - atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega1280_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void update_interrupt(int source) override; void atmega1280_internal_map(address_map &map); @@ -377,7 +377,7 @@ class atmega2560_device : public avr8_device { public: // construction/destruction - atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + atmega2560_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void update_interrupt(int source) override; void atmega2560_internal_map(address_map &map); @@ -389,7 +389,7 @@ class attiny15_device : public avr8_device { public: // construction/destruction - attiny15_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + attiny15_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void attiny15_internal_map(address_map &map); }; diff --git a/src/devices/cpu/axc51/axc51.cpp b/src/devices/cpu/axc51/axc51.cpp index 602e14b75b0..068c298672b 100644 --- a/src/devices/cpu/axc51/axc51.cpp +++ b/src/devices/cpu/axc51/axc51.cpp @@ -72,7 +72,7 @@ void axc51base_cpu_device::io_internal(address_map& map) } -axc51base_cpu_device::axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, address_map_constructor io_map, int program_width, int data_width, uint8_t features) +axc51base_cpu_device::axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map, address_map_constructor data_map, address_map_constructor io_map, int program_width, int data_width, uint8_t features) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, program_map) , m_data_config("data", ENDIANNESS_LITTLE, 8, 11, 0, data_map) @@ -104,7 +104,7 @@ axc51base_cpu_device::axc51base_cpu_device(const machine_config &mconfig, device } -axc51base_cpu_device::axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +axc51base_cpu_device::axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : axc51base_cpu_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(axc51base_cpu_device::program_internal), this), address_map_constructor(FUNC(axc51base_cpu_device::data_internal), this), address_map_constructor(FUNC(axc51base_cpu_device::io_internal), this), program_width, data_width, features) { } @@ -1546,12 +1546,12 @@ void ax208_cpu_device::device_reset() // AX208 (specific CPU) -ax208_cpu_device::ax208_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +ax208_cpu_device::ax208_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : axc51base_cpu_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(ax208_cpu_device::ax208_internal_program_mem), this), address_map_constructor(FUNC(ax208_cpu_device::data_internal), this), address_map_constructor(FUNC(axc51base_cpu_device::io_internal), this), 0, 8) { } -ax208_cpu_device::ax208_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ax208_cpu_device::ax208_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ax208_cpu_device(mconfig, AX208, tag, owner, clock) { } @@ -1565,7 +1565,7 @@ std::unique_ptr<util::disasm_interface> ax208_cpu_device::create_disassembler() -ax208p_cpu_device::ax208p_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ax208p_cpu_device::ax208p_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ax208_cpu_device(mconfig, AX208P, tag, owner, clock) { } diff --git a/src/devices/cpu/axc51/axc51.h b/src/devices/cpu/axc51/axc51.h index 291c4231414..03a5bcc624f 100644 --- a/src/devices/cpu/axc51/axc51.h +++ b/src/devices/cpu/axc51/axc51.h @@ -36,8 +36,8 @@ public: protected: // construction/destruction - axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); - axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, address_map_constructor io_map, int program_width, int data_width, uint8_t features = 0); + axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); + axc51base_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map, address_map_constructor data_map, address_map_constructor io_map, int program_width, int data_width, uint8_t features = 0); // device-level overrides virtual void device_start() override; @@ -519,10 +519,10 @@ class ax208_cpu_device : public axc51base_cpu_device { public: // construction/destruction - ax208_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ax208_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - ax208_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + ax208_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_reset() override; @@ -536,7 +536,7 @@ class ax208p_cpu_device : public ax208_cpu_device { public: // construction/destruction - ax208p_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ax208p_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual const tiny_rom_entry *device_rom_region() const override; diff --git a/src/devices/cpu/bcp/dp8344.cpp b/src/devices/cpu/bcp/dp8344.cpp index 3e78cb0d0dd..4a28cd76040 100644 --- a/src/devices/cpu/bcp/dp8344.cpp +++ b/src/devices/cpu/bcp/dp8344.cpp @@ -62,7 +62,7 @@ ALLOW_SAVE_TYPE(dp8344_device::inst_state); // dp8344_device - constructor //------------------------------------------------- -dp8344_device::dp8344_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +dp8344_device::dp8344_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_inst_config("instruction", ENDIANNESS_LITTLE, 16, 16, -1) , m_data_config("data", ENDIANNESS_LITTLE, 8, 16, 0) @@ -118,7 +118,7 @@ dp8344_device::dp8344_device(const machine_config &mconfig, device_type type, co // dp8344a_device - constructor //------------------------------------------------- -dp8344a_device::dp8344a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +dp8344a_device::dp8344a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : dp8344_device(mconfig, DP8344A, tag, owner, clock) { } @@ -128,7 +128,7 @@ dp8344a_device::dp8344a_device(const machine_config &mconfig, const char *tag, d // dp8344b_device - constructor //------------------------------------------------- -dp8344b_device::dp8344b_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +dp8344b_device::dp8344b_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : dp8344_device(mconfig, DP8344B, tag, owner, clock) { // TODO: emulate differences between DP8344A and DP8344B diff --git a/src/devices/cpu/bcp/dp8344.h b/src/devices/cpu/bcp/dp8344.h index f4e1e674da9..f035157f6a8 100644 --- a/src/devices/cpu/bcp/dp8344.h +++ b/src/devices/cpu/bcp/dp8344.h @@ -62,7 +62,7 @@ public: protected: // construction/destruction - dp8344_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + dp8344_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-specific overrides virtual void device_resolve_objects() override; @@ -227,7 +227,7 @@ class dp8344a_device : public dp8344_device { public: // device type constructor - dp8344a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + dp8344a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // ======================> dp8344b_device @@ -236,7 +236,7 @@ class dp8344b_device : public dp8344_device { public: // device type constructor - dp8344b_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + dp8344b_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type declarations diff --git a/src/devices/cpu/capricorn/capricorn.cpp b/src/devices/cpu/capricorn/capricorn.cpp index ee398f5296a..a5d00f16ec3 100644 --- a/src/devices/cpu/capricorn/capricorn.cpp +++ b/src/devices/cpu/capricorn/capricorn.cpp @@ -138,7 +138,7 @@ static constexpr uint8_t E_MASK = 0xf; DEFINE_DEVICE_TYPE(HP_CAPRICORN , capricorn_cpu_device , "capricorn" , "HP-Capricorn") -capricorn_cpu_device::capricorn_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +capricorn_cpu_device::capricorn_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, HP_CAPRICORN, tag, owner, clock), m_program_config("program" , ENDIANNESS_LITTLE , 8 , 16), m_opcode_func(*this), diff --git a/src/devices/cpu/capricorn/capricorn.h b/src/devices/cpu/capricorn/capricorn.h index 40bbb2cc3ab..c9aec4f56eb 100644 --- a/src/devices/cpu/capricorn/capricorn.h +++ b/src/devices/cpu/capricorn/capricorn.h @@ -17,7 +17,7 @@ class capricorn_cpu_device : public cpu_device { public: - capricorn_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + capricorn_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t flatten_burst(); diff --git a/src/devices/cpu/ccpu/ccpu.cpp b/src/devices/cpu/ccpu/ccpu.cpp index d13c272b21a..2c1f85c4418 100644 --- a/src/devices/cpu/ccpu/ccpu.cpp +++ b/src/devices/cpu/ccpu/ccpu.cpp @@ -62,7 +62,7 @@ do { \ INITIALIZATION AND SHUTDOWN ***************************************************************************/ -ccpu_cpu_device::ccpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ccpu_cpu_device::ccpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, CCPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 15, 0) , m_data_config("data", ENDIANNESS_BIG, 16, 32, -1) diff --git a/src/devices/cpu/ccpu/ccpu.h b/src/devices/cpu/ccpu/ccpu.h index c4377f251e3..2c17b2e623f 100644 --- a/src/devices/cpu/ccpu/ccpu.h +++ b/src/devices/cpu/ccpu/ccpu.h @@ -42,7 +42,7 @@ public: typedef device_delegate<void (int16_t, int16_t, int16_t, int16_t, uint8_t)> vector_delegate; // construction/destruction - ccpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ccpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto external_func() { return m_external_input.bind(); } diff --git a/src/devices/cpu/clipper/clipper.cpp b/src/devices/cpu/clipper/clipper.cpp index e310b66ea62..d48ef9ae9b0 100644 --- a/src/devices/cpu/clipper/clipper.cpp +++ b/src/devices/cpu/clipper/clipper.cpp @@ -51,28 +51,28 @@ DEFINE_DEVICE_TYPE(CLIPPER_C100, clipper_c100_device, "clipper_c100", "C100 CLIP DEFINE_DEVICE_TYPE(CLIPPER_C300, clipper_c300_device, "clipper_c300", "C300 CLIPPER") DEFINE_DEVICE_TYPE(CLIPPER_C400, clipper_c400_device, "clipper_c400", "C400 CLIPPER") -clipper_c100_device::clipper_c100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +clipper_c100_device::clipper_c100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : clipper_device(mconfig, CLIPPER_C100, tag, owner, clock, ENDIANNESS_LITTLE, SSW_ID_C1R1) , m_icammu(*this, "^cammu_i") , m_dcammu(*this, "^cammu_d") { } -clipper_c300_device::clipper_c300_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +clipper_c300_device::clipper_c300_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : clipper_device(mconfig, CLIPPER_C300, tag, owner, clock, ENDIANNESS_LITTLE, SSW_ID_C3R1) , m_icammu(*this, "^cammu_i") , m_dcammu(*this, "^cammu_d") { } -clipper_c400_device::clipper_c400_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +clipper_c400_device::clipper_c400_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : clipper_device(mconfig, CLIPPER_C400, tag, owner, clock, ENDIANNESS_LITTLE, SSW_ID_C4R4) , m_db_pc(0) , m_cammu(*this, "^cammu") { } -clipper_device::clipper_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, const endianness_t endianness, const u32 cpuid) +clipper_device::clipper_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const endianness_t endianness, const u32 cpuid) : cpu_device(mconfig, type, tag, owner, clock) , m_main_config("main", endianness, 32, 32, 0) , m_io_config("io", endianness, 32, 32, 0) diff --git a/src/devices/cpu/clipper/clipper.h b/src/devices/cpu/clipper/clipper.h index 3e78a5fdfff..f6e492f5496 100644 --- a/src/devices/cpu/clipper/clipper.h +++ b/src/devices/cpu/clipper/clipper.h @@ -148,7 +148,7 @@ public: }; protected: - clipper_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, const endianness_t endianness, const u32 cpuid); + clipper_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const endianness_t endianness, const u32 cpuid); // device-level overrides virtual void device_start() override; @@ -325,7 +325,7 @@ protected: class clipper_c100_device : public clipper_device { public: - clipper_c100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + clipper_c100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual cammu_device &get_icammu() const override { return *m_icammu; } @@ -339,7 +339,7 @@ private: class clipper_c300_device : public clipper_device { public: - clipper_c300_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + clipper_c300_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual cammu_device &get_icammu() const override { return *m_icammu; } @@ -353,7 +353,7 @@ private: class clipper_c400_device : public clipper_device { public: - clipper_c400_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + clipper_c400_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/cop400/cop400.cpp b/src/devices/cpu/cop400/cop400.cpp index dcd9a6edc0f..e9669d9ea2a 100644 --- a/src/devices/cpu/cop400/cop400.cpp +++ b/src/devices/cpu/cop400/cop400.cpp @@ -170,7 +170,7 @@ void cop400_cpu_device::data_128b(address_map &map) } -cop400_cpu_device::cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data) +cop400_cpu_device::cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, program_addr_bits, 0, internal_map_program) , m_data_config("data", ENDIANNESS_LITTLE, 8, data_addr_bits, 0, internal_map_data) // data width is really 4 @@ -247,87 +247,87 @@ cop400_cpu_device::cop400_cpu_device(const machine_config &mconfig, device_type } } -cop401_cpu_device::cop401_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop401_cpu_device::cop401_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP401, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, address_map_constructor(), address_map_constructor(FUNC(cop401_cpu_device::data_32b), this)) { } -cop410_cpu_device::cop410_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop410_cpu_device::cop410_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP410, tag, owner, clock, 9, 6, COP410_FEATURE, 0xf, 0xf, 0, false, false, address_map_constructor(FUNC(cop410_cpu_device::program_512b), this), address_map_constructor(FUNC(cop410_cpu_device::data_32b), this)) { } -cop411_cpu_device::cop411_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop411_cpu_device::cop411_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP411, tag, owner, clock, 9, 6, COP410_FEATURE, 0x7, 0x3, 0, false, false, address_map_constructor(FUNC(cop411_cpu_device::program_512b), this), address_map_constructor(FUNC(cop411_cpu_device::data_32b), this)) { } -cop402_cpu_device::cop402_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop402_cpu_device::cop402_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP402, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop402_cpu_device::data_64b), this)) { } -cop420_cpu_device::cop420_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop420_cpu_device::cop420_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP420, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop420_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop420_cpu_device::data_64b), this)) { } -cop421_cpu_device::cop421_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop421_cpu_device::cop421_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP421, tag, owner, clock, 10, 6, COP420_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop421_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop421_cpu_device::data_64b), this)) { } -cop422_cpu_device::cop422_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop422_cpu_device::cop422_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP422, tag, owner, clock, 10, 6, COP420_FEATURE, 0xe, 0xe, 0, true, false, address_map_constructor(FUNC(cop422_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop422_cpu_device::data_64b), this)) { } -cop404l_cpu_device::cop404l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop404l_cpu_device::cop404l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP404L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop404l_cpu_device::data_128b), this)) { } -cop444l_cpu_device::cop444l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop444l_cpu_device::cop444l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP444L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop444l_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop444l_cpu_device::data_128b), this)) { } -cop445l_cpu_device::cop445l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop445l_cpu_device::cop445l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP445L, tag, owner, clock, 11, 7, COP444L_FEATURE, 0x7, 0x3, 0, true, false, address_map_constructor(FUNC(cop445l_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop445l_cpu_device::data_128b), this)) { } -cop404c_cpu_device::cop404c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop404c_cpu_device::cop404c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP404C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(), address_map_constructor(FUNC(cop404c_cpu_device::data_128b), this)) { } -cop424c_cpu_device::cop424c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop424c_cpu_device::cop424c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP424C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop424c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop424c_cpu_device::data_64b), this)) { } -cop425c_cpu_device::cop425c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop425c_cpu_device::cop425c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP425C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop425c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop425c_cpu_device::data_64b), this)) { } -cop426c_cpu_device::cop426c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop426c_cpu_device::cop426c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP426C, tag, owner, clock, 10, 6, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, address_map_constructor(FUNC(cop426c_cpu_device::program_1kb), this), address_map_constructor(FUNC(cop426c_cpu_device::data_64b), this)) { } -cop444c_cpu_device::cop444c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop444c_cpu_device::cop444c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP444C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0xf, true, true, address_map_constructor(FUNC(cop444c_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop444c_cpu_device::data_128b), this)) { } -cop445c_cpu_device::cop445c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop445c_cpu_device::cop445c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP445C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xf, 0xf, 0, true, false, address_map_constructor(FUNC(cop445c_cpu_device::program_2kb), this), address_map_constructor(FUNC(cop445c_cpu_device::data_128b), this)) { } -cop446c_cpu_device::cop446c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cop446c_cpu_device::cop446c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cop400_cpu_device(mconfig, COP446C, tag, owner, clock, 11, 7, COP424C_FEATURE, 0xe, 0xe, 0xf, true, true, address_map_constructor(FUNC(cop446c_cpu_device::program_2kb),this), address_map_constructor(FUNC(cop446c_cpu_device::data_128b), this)) { } diff --git a/src/devices/cpu/cop400/cop400.h b/src/devices/cpu/cop400/cop400.h index 45b2b4d0f25..4653dee10d3 100644 --- a/src/devices/cpu/cop400/cop400.h +++ b/src/devices/cpu/cop400/cop400.h @@ -129,7 +129,7 @@ public: protected: // construction/destruction - cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data); + cop400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t program_addr_bits, uint8_t data_addr_bits, uint8_t featuremask, uint8_t g_mask, uint8_t d_mask, uint8_t in_mask, bool has_counter, bool has_inil, address_map_constructor internal_map_program, address_map_constructor internal_map_data); // device-level overrides virtual void device_start() override; @@ -364,7 +364,7 @@ class cop401_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop401_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop401_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -372,7 +372,7 @@ class cop410_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop410_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop410_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -381,7 +381,7 @@ class cop411_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop411_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop411_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -391,7 +391,7 @@ class cop402_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop402_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop402_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -399,7 +399,7 @@ class cop420_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop420_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop420_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -408,7 +408,7 @@ class cop421_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop421_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop421_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -417,7 +417,7 @@ class cop422_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop422_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop422_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -427,7 +427,7 @@ class cop404l_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop404l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop404l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -435,7 +435,7 @@ class cop444l_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop444l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop444l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -444,7 +444,7 @@ class cop445l_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop445l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop445l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -453,7 +453,7 @@ class cop404c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop404c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop404c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -462,7 +462,7 @@ class cop424c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop424c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop424c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -471,7 +471,7 @@ class cop425c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop425c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop425c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -480,7 +480,7 @@ class cop426c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop426c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop426c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -489,7 +489,7 @@ class cop444c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop444c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop444c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -498,7 +498,7 @@ class cop445c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop445c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop445c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -507,7 +507,7 @@ class cop446c_cpu_device : public cop400_cpu_device { public: // construction/destruction - cop446c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cop446c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/cops1/cops1base.cpp b/src/devices/cpu/cops1/cops1base.cpp index 3bba883377b..b69700d6b91 100644 --- a/src/devices/cpu/cops1/cops1base.cpp +++ b/src/devices/cpu/cops1/cops1base.cpp @@ -34,7 +34,7 @@ TODO: #include "cops1base.h" -cops1_base_device::cops1_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +cops1_base_device::cops1_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, prgwidth, 0, program), m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data), diff --git a/src/devices/cpu/cops1/cops1base.h b/src/devices/cpu/cops1/cops1base.h index 75009fe7b49..8e8934009b6 100644 --- a/src/devices/cpu/cops1/cops1base.h +++ b/src/devices/cpu/cops1/cops1base.h @@ -67,7 +67,7 @@ public: protected: // construction/destruction - cops1_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + cops1_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/cops1/mm5799.cpp b/src/devices/cpu/cops1/mm5799.cpp index 7f6515760a4..3a6c427d146 100644 --- a/src/devices/cpu/cops1/mm5799.cpp +++ b/src/devices/cpu/cops1/mm5799.cpp @@ -16,7 +16,7 @@ DEFINE_DEVICE_TYPE(MM5799, mm5799_device, "mm5799", "National Semiconductor MM57 // constructor -mm5799_device::mm5799_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm5799_device::mm5799_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cops1_base_device(mconfig, MM5799, tag, owner, clock, 11, address_map_constructor(FUNC(mm5799_device::program_map), this), 7, address_map_constructor(FUNC(mm5799_device::data_map), this)) { } diff --git a/src/devices/cpu/cops1/mm5799.h b/src/devices/cpu/cops1/mm5799.h index a07aecd97fa..03e6d71e41b 100644 --- a/src/devices/cpu/cops1/mm5799.h +++ b/src/devices/cpu/cops1/mm5799.h @@ -37,7 +37,7 @@ class mm5799_device : public cops1_base_device { public: - mm5799_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm5799_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/cosmac/cosmac.cpp b/src/devices/cpu/cosmac/cosmac.cpp index bc38bf034c2..60f40fedbee 100644 --- a/src/devices/cpu/cosmac/cosmac.cpp +++ b/src/devices/cpu/cosmac/cosmac.cpp @@ -358,7 +358,7 @@ DEFINE_DEVICE_TYPE(CDP1806, cdp1806_device, "cdp1806", "RCA CDP1806") // cosmac_device - constructor //------------------------------------------------- -cosmac_device::cosmac_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +cosmac_device::cosmac_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), cosmac_disassembler::config(), m_program_config("program", ENDIANNESS_LITTLE, 8, 16), @@ -391,7 +391,7 @@ cosmac_device::cosmac_device(const machine_config &mconfig, device_type type, co // cdp1801_device - constructor //------------------------------------------------- -cdp1801_device::cdp1801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +cdp1801_device::cdp1801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cosmac_device(mconfig, CDP1801, tag, owner, clock) { } @@ -400,11 +400,11 @@ cdp1801_device::cdp1801_device(const machine_config &mconfig, const char *tag, d // cdp1802_device - constructor //------------------------------------------------- -cdp1802_device::cdp1802_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +cdp1802_device::cdp1802_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cdp1802_device(mconfig, CDP1802, tag, owner, clock) { } -cdp1802_device::cdp1802_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +cdp1802_device::cdp1802_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cosmac_device(mconfig, type, tag, owner, clock) { } @@ -413,11 +413,11 @@ cdp1802_device::cdp1802_device(const machine_config &mconfig, device_type type, // cdp1804_device - constructor //------------------------------------------------- -cdp1804_device::cdp1804_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +cdp1804_device::cdp1804_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cdp1804_device(mconfig, CDP1804, tag, owner, clock) { } -cdp1804_device::cdp1804_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +cdp1804_device::cdp1804_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cdp1802_device(mconfig, type, tag, owner, clock) { } @@ -426,11 +426,11 @@ cdp1804_device::cdp1804_device(const machine_config &mconfig, device_type type, // cdp1805_device - constructor //------------------------------------------------- -cdp1805_device::cdp1805_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +cdp1805_device::cdp1805_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cdp1805_device(mconfig, CDP1805, tag, owner, clock) { } -cdp1805_device::cdp1805_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +cdp1805_device::cdp1805_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cdp1804_device(mconfig, type, tag, owner, clock) { } @@ -439,7 +439,7 @@ cdp1805_device::cdp1805_device(const machine_config &mconfig, device_type type, // cdp1806_device - constructor //------------------------------------------------- -cdp1806_device::cdp1806_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +cdp1806_device::cdp1806_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cdp1805_device(mconfig, CDP1806, tag, owner, clock) { } diff --git a/src/devices/cpu/cosmac/cosmac.h b/src/devices/cpu/cosmac/cosmac.h index 2d29a10ce44..1d8e9c55612 100644 --- a/src/devices/cpu/cosmac/cosmac.h +++ b/src/devices/cpu/cosmac/cosmac.h @@ -183,7 +183,7 @@ public: protected: // construction/destruction - cosmac_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + cosmac_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -457,7 +457,7 @@ class cdp1801_device : public cosmac_device { public: // construction/destruction - cdp1801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cdp1801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -478,10 +478,10 @@ class cdp1802_device : public cosmac_device { public: // construction/destruction - cdp1802_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cdp1802_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - cdp1802_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + cdp1802_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -499,10 +499,10 @@ class cdp1804_device : public cdp1802_device { public: // construction/destruction - cdp1804_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cdp1804_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - cdp1804_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + cdp1804_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual cosmac_device::ophandler get_ophandler(uint16_t opcode) const override; virtual bool has_extended_opcodes() override { return true; } @@ -520,10 +520,10 @@ class cdp1805_device : public cdp1804_device { public: // construction/destruction - cdp1805_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cdp1805_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - cdp1805_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + cdp1805_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -536,7 +536,7 @@ class cdp1806_device : public cdp1805_device { public: // construction/destruction - cdp1806_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cdp1806_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/cp1610/cp1610.cpp b/src/devices/cpu/cp1610/cp1610.cpp index 71d41844be8..c73bd969ebb 100644 --- a/src/devices/cpu/cp1610/cp1610.cpp +++ b/src/devices/cpu/cp1610/cp1610.cpp @@ -3390,7 +3390,7 @@ void cp1610_cpu_device::execute_set_input(int irqline, int state) } -cp1610_cpu_device::cp1610_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +cp1610_cpu_device::cp1610_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, CP1610, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 16, -1) , m_intr_state(0) diff --git a/src/devices/cpu/cr16b/cr16b.cpp b/src/devices/cpu/cr16b/cr16b.cpp index c9c6d414caf..89a8cbd15dc 100644 --- a/src/devices/cpu/cr16b/cr16b.cpp +++ b/src/devices/cpu/cr16b/cr16b.cpp @@ -15,7 +15,7 @@ // device type definitions DEFINE_DEVICE_TYPE(CR16B, cr16b_device, "cr16b", "CompactRISC CR16B") -cr16b_device::cr16b_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +cr16b_device::cr16b_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : cpu_device(mconfig, type, tag, owner, clock) , m_space_config("program", ENDIANNESS_LITTLE, 16, 21, 0, map) , m_regs{0} @@ -32,7 +32,7 @@ cr16b_device::cr16b_device(const machine_config &mconfig, device_type type, cons } // TODO: figure out some actual device types instead -cr16b_device::cr16b_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +cr16b_device::cr16b_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cr16b_device(mconfig, CR16B, tag, owner, clock, address_map_constructor()) { } diff --git a/src/devices/cpu/cr16b/cr16b.h b/src/devices/cpu/cr16b/cr16b.h index a8028b03108..73d5c59787e 100644 --- a/src/devices/cpu/cr16b/cr16b.h +++ b/src/devices/cpu/cr16b/cr16b.h @@ -10,7 +10,7 @@ class cr16b_device : public cpu_device { public: - cr16b_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + cr16b_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); enum { CR16_PC, CR16_ISP, CR16_INTBASE, @@ -23,7 +23,7 @@ public: protected: // construction/destruction - cr16b_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + cr16b_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/cubeqcpu/cubeqcpu.cpp b/src/devices/cpu/cubeqcpu/cubeqcpu.cpp index da608c33d65..72ad7fac169 100644 --- a/src/devices/cpu/cubeqcpu/cubeqcpu.cpp +++ b/src/devices/cpu/cubeqcpu/cubeqcpu.cpp @@ -75,7 +75,7 @@ DEFINE_DEVICE_TYPE(CQUESTROT, cquestrot_cpu_device, "cquestrot", "Cube Quest Rot DEFINE_DEVICE_TYPE(CQUESTLIN, cquestlin_cpu_device, "cquestlin", "Cube Quest Line CPU") -cquestsnd_cpu_device::cquestsnd_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +cquestsnd_cpu_device::cquestsnd_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, CQUESTSND, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 64, 8, -3) , m_dac_w(*this) @@ -97,7 +97,7 @@ std::unique_ptr<util::disasm_interface> cquestsnd_cpu_device::create_disassemble } -cquestrot_cpu_device::cquestrot_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +cquestrot_cpu_device::cquestrot_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, CQUESTROT, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 64, 9, -3) , m_linedata_w(*this) @@ -117,7 +117,7 @@ std::unique_ptr<util::disasm_interface> cquestrot_cpu_device::create_disassemble } -cquestlin_cpu_device::cquestlin_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +cquestlin_cpu_device::cquestlin_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, CQUESTLIN, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 64, 8, -3) , m_linedata_r(*this) diff --git a/src/devices/cpu/cubeqcpu/cubeqcpu.h b/src/devices/cpu/cubeqcpu/cubeqcpu.h index 54070a1bd48..5ab672d6c79 100644 --- a/src/devices/cpu/cubeqcpu/cubeqcpu.h +++ b/src/devices/cpu/cubeqcpu/cubeqcpu.h @@ -20,7 +20,7 @@ class cquestsnd_cpu_device : public cpu_device { public: // construction/destruction - cquestsnd_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + cquestsnd_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto dac_w() { return m_dac_w.bind(); } @@ -112,7 +112,7 @@ class cquestrot_cpu_device : public cpu_device { public: // construction/destruction - cquestrot_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + cquestrot_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto linedata_w() { return m_linedata_w.bind(); } @@ -224,7 +224,7 @@ class cquestlin_cpu_device : public cpu_device { public: // construction/destruction - cquestlin_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + cquestlin_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto linedata_r() { return m_linedata_r.bind(); } diff --git a/src/devices/cpu/diablo/diablo1300.cpp b/src/devices/cpu/diablo/diablo1300.cpp index baaf6f8bc47..361016a43a2 100644 --- a/src/devices/cpu/diablo/diablo1300.cpp +++ b/src/devices/cpu/diablo/diablo1300.cpp @@ -86,7 +86,7 @@ DEFINE_DEVICE_TYPE(DIABLO1300, diablo1300_cpu_device, "diablo1300", "DIABLO 1300 // diablo1300_cpu_device - constructor //------------------------------------------------- -diablo1300_cpu_device::diablo1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +diablo1300_cpu_device::diablo1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, DIABLO1300, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 9, -1) , m_data_config("data", ENDIANNESS_LITTLE, 8, 5) diff --git a/src/devices/cpu/diablo/diablo1300.h b/src/devices/cpu/diablo/diablo1300.h index 753d2f7b2b1..fa510664b74 100644 --- a/src/devices/cpu/diablo/diablo1300.h +++ b/src/devices/cpu/diablo/diablo1300.h @@ -20,7 +20,7 @@ class diablo1300_cpu_device : public cpu_device { public: // construction/destruction - diablo1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + diablo1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/dsp16/dsp16.cpp b/src/devices/cpu/dsp16/dsp16.cpp index 4078389e2bc..75bb5f39ac8 100644 --- a/src/devices/cpu/dsp16/dsp16.cpp +++ b/src/devices/cpu/dsp16/dsp16.cpp @@ -171,7 +171,7 @@ dsp16_device_base::dsp16_device_base( device_type type, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, u8 yaau_bits, address_map_constructor &&data_map) : cpu_device(mconfig, type, tag, owner, clock) @@ -2075,7 +2075,7 @@ void dsp16_device_base::pio_pdx_write(u16 sel, u16 value) DSP16 SPECIALISATION ***************************************************************************/ -dsp16_device::dsp16_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +dsp16_device::dsp16_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : dsp16_device_base( mconfig, DSP16, tag, owner, clock, 9, @@ -2107,7 +2107,7 @@ void dsp16_device::data_map(address_map &map) DSP16A SPECIALISATION ***************************************************************************/ -dsp16a_device::dsp16a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +dsp16a_device::dsp16a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : dsp16_device_base( mconfig, DSP16A, tag, owner, clock, 16, diff --git a/src/devices/cpu/dsp16/dsp16.h b/src/devices/cpu/dsp16/dsp16.h index 3f7ae66dd53..c8c2e4b631a 100644 --- a/src/devices/cpu/dsp16/dsp16.h +++ b/src/devices/cpu/dsp16/dsp16.h @@ -70,7 +70,7 @@ protected: device_type type, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, u8 yaau_bits, address_map_constructor &&data_map); @@ -342,7 +342,7 @@ class dsp16_device : public dsp16_device_base { public: // construction/destruction - dsp16_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + dsp16_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: // dsp16_device_base implementation @@ -360,7 +360,7 @@ class dsp16a_device : public dsp16_device_base { public: // construction/destruction - dsp16a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + dsp16a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: // dsp16_device_base implementation diff --git a/src/devices/cpu/dsp32/dsp32.cpp b/src/devices/cpu/dsp32/dsp32.cpp index 9ef3aef63c9..e4a4316fdb0 100644 --- a/src/devices/cpu/dsp32/dsp32.cpp +++ b/src/devices/cpu/dsp32/dsp32.cpp @@ -142,7 +142,7 @@ DEFINE_DEVICE_TYPE(DSP32C, dsp32c_device, "dsp32c", "AT&T DSP32C") // dsp32c_device - constructor //------------------------------------------------- -dsp32c_device::dsp32c_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +dsp32c_device::dsp32c_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, DSP32C, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 32, 24), m_pin(0), diff --git a/src/devices/cpu/dsp32/dsp32.h b/src/devices/cpu/dsp32/dsp32.h index 90ede0181fa..babec516eef 100644 --- a/src/devices/cpu/dsp32/dsp32.h +++ b/src/devices/cpu/dsp32/dsp32.h @@ -36,7 +36,7 @@ class dsp32c_device : public cpu_device { public: // construction/destruction - dsp32c_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + dsp32c_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto out_cb() { return m_output_pins_changed.bind(); } diff --git a/src/devices/cpu/dsp56000/dsp56000.cpp b/src/devices/cpu/dsp56000/dsp56000.cpp index eed944bdc0a..0bb28ef0b40 100644 --- a/src/devices/cpu/dsp56000/dsp56000.cpp +++ b/src/devices/cpu/dsp56000/dsp56000.cpp @@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(DSP56000, dsp56000_device, "dsp56000", "Motorola DSP56000") DEFINE_DEVICE_TYPE(DSP56001, dsp56001_device, "dsp56001", "Motorola DSP56001") -dsp56000_device_base::dsp56000_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock) +dsp56000_device_base::dsp56000_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_p_config("p", ENDIANNESS_BIG, 32, 16, -2) , m_x_config("x", ENDIANNESS_BIG, 32, 16, -2) @@ -33,12 +33,12 @@ dsp56000_device_base::dsp56000_device_base(machine_config const &mconfig, device { } -dsp56000_device::dsp56000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +dsp56000_device::dsp56000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : dsp56000_device_base(mconfig, DSP56000, tag, owner, clock) { } -dsp56001_device::dsp56001_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +dsp56001_device::dsp56001_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : dsp56000_device_base(mconfig, DSP56001, tag, owner, clock) { } diff --git a/src/devices/cpu/dsp56000/dsp56000.h b/src/devices/cpu/dsp56000/dsp56000.h index 0a47b2fe078..bd813e2021f 100644 --- a/src/devices/cpu/dsp56000/dsp56000.h +++ b/src/devices/cpu/dsp56000/dsp56000.h @@ -9,7 +9,7 @@ class dsp56000_device_base : public cpu_device { protected: - dsp56000_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock); + dsp56000_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock); // device_t overrides virtual void device_start() override; @@ -44,13 +44,13 @@ protected: class dsp56000_device : public dsp56000_device_base { public: - dsp56000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + dsp56000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class dsp56001_device : public dsp56000_device_base { public: - dsp56001_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + dsp56001_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(DSP56000, dsp56000_device) diff --git a/src/devices/cpu/dsp56156/dsp56156.cpp b/src/devices/cpu/dsp56156/dsp56156.cpp index f8685d080ae..4a6e724ea2b 100644 --- a/src/devices/cpu/dsp56156/dsp56156.cpp +++ b/src/devices/cpu/dsp56156/dsp56156.cpp @@ -122,7 +122,7 @@ void dsp56156_device::dsp56156_x_data_map(address_map &map) } -dsp56156_device::dsp56156_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +dsp56156_device::dsp56156_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, DSP56156, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, -1, address_map_constructor(FUNC(dsp56156_device::dsp56156_program_map), this)) , m_data_config("data", ENDIANNESS_LITTLE, 16, 16, -1, address_map_constructor(FUNC(dsp56156_device::dsp56156_x_data_map), this)) diff --git a/src/devices/cpu/dsp56156/dsp56156.h b/src/devices/cpu/dsp56156/dsp56156.h index 4317fa249f5..7326b809e97 100644 --- a/src/devices/cpu/dsp56156/dsp56156.h +++ b/src/devices/cpu/dsp56156/dsp56156.h @@ -203,7 +203,7 @@ struct dsp56156_core class dsp56156_device : public cpu_device { public: - dsp56156_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + dsp56156_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); uint16_t peripheral_register_r(offs_t offset); void peripheral_register_w(offs_t offset, uint16_t data); diff --git a/src/devices/cpu/dspp/dspp.cpp b/src/devices/cpu/dspp/dspp.cpp index 70bc923a67e..995bdd27cf2 100644 --- a/src/devices/cpu/dspp/dspp.cpp +++ b/src/devices/cpu/dspp/dspp.cpp @@ -85,13 +85,13 @@ DEFINE_DEVICE_TYPE(DSPP, dspp_device, "dspp", "3DO DSPP") // dspp_device - constructor //------------------------------------------------- -dspp_device::dspp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +dspp_device::dspp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : dspp_device(mconfig, DSPP, tag, owner, clock, address_map_constructor(FUNC(dspp_device::code_map), this), address_map_constructor(FUNC(dspp_device::data_map), this)) { } -dspp_device::dspp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor code_map_ctor, address_map_constructor data_map_ctor) +dspp_device::dspp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor code_map_ctor, address_map_constructor data_map_ctor) : cpu_device(mconfig, type, tag, owner, clock), m_int_handler(*this), m_dma_read_handler(*this), diff --git a/src/devices/cpu/dspp/dspp.h b/src/devices/cpu/dspp/dspp.h index 68492fb7f40..75a502501c9 100644 --- a/src/devices/cpu/dspp/dspp.h +++ b/src/devices/cpu/dspp/dspp.h @@ -31,9 +31,9 @@ class dspp_device : public cpu_device friend class dspp_frontend; public: // Construction/destruction - dspp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor code_map_ctor, + dspp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor code_map_ctor, address_map_constructor data_map_ctor); - dspp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + dspp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // Static configuration helpers auto int_handler() { return m_int_handler.bind(); } @@ -389,5 +389,6 @@ public: // TODO // device type definition DECLARE_DEVICE_TYPE(DSPP, dspp_device); +#include "dsppfe.h" #endif // MAME_CPU_DSPP_DSPP_H diff --git a/src/devices/cpu/e0c6200/e0c6200.cpp b/src/devices/cpu/e0c6200/e0c6200.cpp index 303ad5d5754..fb56dd3babb 100644 --- a/src/devices/cpu/e0c6200/e0c6200.cpp +++ b/src/devices/cpu/e0c6200/e0c6200.cpp @@ -24,7 +24,7 @@ // construction/destruction -e0c6200_cpu_device::e0c6200_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor program, address_map_constructor data) +e0c6200_cpu_device::e0c6200_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 13, -1, program) , m_data_config("data", ENDIANNESS_BIG, 8, 12, 0, data), m_program(nullptr), m_data(nullptr), m_op(0), m_prev_op(0), m_irq_vector(0), m_irq_id(0), m_possible_irq(false), m_halt(false), diff --git a/src/devices/cpu/e0c6200/e0c6200.h b/src/devices/cpu/e0c6200/e0c6200.h index 5222983e09b..62da9ec213c 100644 --- a/src/devices/cpu/e0c6200/e0c6200.h +++ b/src/devices/cpu/e0c6200/e0c6200.h @@ -14,7 +14,7 @@ class e0c6200_cpu_device : public cpu_device { public: // construction/destruction - e0c6200_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor program, address_map_constructor data); + e0c6200_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program, address_map_constructor data); protected: // device-level overrides diff --git a/src/devices/cpu/e0c6200/e0c6s46.cpp b/src/devices/cpu/e0c6200/e0c6s46.cpp index 5e30570ae76..578edfa481b 100644 --- a/src/devices/cpu/e0c6200/e0c6s46.cpp +++ b/src/devices/cpu/e0c6200/e0c6s46.cpp @@ -48,7 +48,7 @@ void e0c6s46_device::e0c6s46_data(address_map &map) // device definitions -e0c6s46_device::e0c6s46_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +e0c6s46_device::e0c6s46_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : e0c6200_cpu_device(mconfig, E0C6S46, tag, owner, clock, address_map_constructor(FUNC(e0c6s46_device::e0c6s46_program), this), address_map_constructor(FUNC(e0c6s46_device::e0c6s46_data), this)) , m_vram1(*this, "vram1") , m_vram2(*this, "vram2") diff --git a/src/devices/cpu/e0c6200/e0c6s46.h b/src/devices/cpu/e0c6200/e0c6s46.h index 0fb7a67e44c..658b69208f8 100644 --- a/src/devices/cpu/e0c6200/e0c6s46.h +++ b/src/devices/cpu/e0c6200/e0c6s46.h @@ -51,7 +51,7 @@ class e0c6s46_device : public e0c6200_cpu_device public: typedef device_delegate<void (bitmap_ind16 &bitmap, const rectangle &cliprect, int contrast, int seg, int com, int state)> pixel_update_delegate; - e0c6s46_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + e0c6s46_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // 5 4-bit R output ports template <std::size_t Port> auto write_r() { return m_write_r[Port].bind(); } diff --git a/src/devices/cpu/e132xs/e132xs.cpp b/src/devices/cpu/e132xs/e132xs.cpp index 1331bb1a890..8b3819be1cc 100644 --- a/src/devices/cpu/e132xs/e132xs.cpp +++ b/src/devices/cpu/e132xs/e132xs.cpp @@ -201,7 +201,7 @@ void hyperstone_device::e132_16k_iram_map(address_map &map) // hyperstone_device - constructor //------------------------------------------------- -hyperstone_device::hyperstone_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, +hyperstone_device::hyperstone_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, uint32_t prg_data_width, uint32_t io_data_width, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, prg_data_width, 32, 0, internal_map) @@ -237,7 +237,7 @@ hyperstone_device::~hyperstone_device() // e116t_device - constructor //------------------------------------------------- -e116t_device::e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e116t_device::e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E116T, 16, 16, address_map_constructor(FUNC(e116t_device::e116_4k_iram_map), this)) { } @@ -247,7 +247,7 @@ e116t_device::e116t_device(const machine_config &mconfig, const char *tag, devic // e116xt_device - constructor //------------------------------------------------- -e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E116XT, 16, 16, address_map_constructor(FUNC(e116t_device::e116_8k_iram_map), this)) { } @@ -257,7 +257,7 @@ e116xt_device::e116xt_device(const machine_config &mconfig, const char *tag, dev // e116xs_device - constructor //------------------------------------------------- -e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E116XS, 16, 16, address_map_constructor(FUNC(e116xs_device::e116_16k_iram_map), this)) { } @@ -267,7 +267,7 @@ e116xs_device::e116xs_device(const machine_config &mconfig, const char *tag, dev // e116xsr_device - constructor //------------------------------------------------- -e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E116XSR, 16, 16, address_map_constructor(FUNC(e116xsr_device::e116_16k_iram_map), this)) { } @@ -277,7 +277,7 @@ e116xsr_device::e116xsr_device(const machine_config &mconfig, const char *tag, d // e132n_device - constructor //------------------------------------------------- -e132n_device::e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132n_device::e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132N, 32, 32, address_map_constructor(FUNC(e132n_device::e132_4k_iram_map), this)) { } @@ -287,7 +287,7 @@ e132n_device::e132n_device(const machine_config &mconfig, const char *tag, devic // e132t_device - constructor //------------------------------------------------- -e132t_device::e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132t_device::e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132T, 32, 32, address_map_constructor(FUNC(e132t_device::e132_4k_iram_map), this)) { } @@ -297,7 +297,7 @@ e132t_device::e132t_device(const machine_config &mconfig, const char *tag, devic // e132xn_device - constructor //------------------------------------------------- -e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132XN, 32, 32, address_map_constructor(FUNC(e132xn_device::e132_8k_iram_map), this)) { } @@ -307,7 +307,7 @@ e132xn_device::e132xn_device(const machine_config &mconfig, const char *tag, dev // e132xt_device - constructor //------------------------------------------------- -e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132XT, 32, 32, address_map_constructor(FUNC(e132xt_device::e132_8k_iram_map), this)) { } @@ -317,7 +317,7 @@ e132xt_device::e132xt_device(const machine_config &mconfig, const char *tag, dev // e132xs_device - constructor //------------------------------------------------- -e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132XS, 32, 32, address_map_constructor(FUNC(e132xs_device::e132_16k_iram_map), this)) { } @@ -327,7 +327,7 @@ e132xs_device::e132xs_device(const machine_config &mconfig, const char *tag, dev // e132xsr_device - constructor //------------------------------------------------- -e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, E132XSR, 32, 32, address_map_constructor(FUNC(e132xsr_device::e132_16k_iram_map), this)) { } @@ -337,7 +337,7 @@ e132xsr_device::e132xsr_device(const machine_config &mconfig, const char *tag, d // gms30c2116_device - constructor //------------------------------------------------- -gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, GMS30C2116, 16, 16, address_map_constructor(FUNC(gms30c2116_device::e116_4k_iram_map), this)) { } @@ -347,7 +347,7 @@ gms30c2116_device::gms30c2116_device(const machine_config &mconfig, const char * // gms30c2132_device - constructor //------------------------------------------------- -gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, GMS30C2132, 32, 32, address_map_constructor(FUNC(gms30c2132_device::e132_4k_iram_map), this)) { } @@ -357,7 +357,7 @@ gms30c2132_device::gms30c2132_device(const machine_config &mconfig, const char * // gms30c2216_device - constructor //------------------------------------------------- -gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, GMS30C2216, 16, 16, address_map_constructor(FUNC(gms30c2216_device::e116_8k_iram_map), this)) { } @@ -367,7 +367,7 @@ gms30c2216_device::gms30c2216_device(const machine_config &mconfig, const char * // gms30c2232_device - constructor //------------------------------------------------- -gms30c2232_device::gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +gms30c2232_device::gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hyperstone_device(mconfig, tag, owner, clock, GMS30C2232, 32, 32, address_map_constructor(FUNC(gms30c2232_device::e132_8k_iram_map), this)) { } diff --git a/src/devices/cpu/e132xs/e132xs.h b/src/devices/cpu/e132xs/e132xs.h index 51f9c5cc3c1..bb8d6b066b9 100644 --- a/src/devices/cpu/e132xs/e132xs.h +++ b/src/devices/cpu/e132xs/e132xs.h @@ -273,7 +273,7 @@ protected: }; // construction/destruction - hyperstone_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, + hyperstone_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, uint32_t prg_data_width, uint32_t io_data_width, address_map_constructor internal_map); void init(int scale_mask); @@ -617,7 +617,7 @@ class e116t_device : public hyperstone_device { public: // construction/destruction - e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e116t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -630,7 +630,7 @@ class e116xt_device : public hyperstone_device { public: // construction/destruction - e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e116xt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -643,7 +643,7 @@ class e116xs_device : public hyperstone_device { public: // construction/destruction - e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e116xs_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -656,7 +656,7 @@ class e116xsr_device : public hyperstone_device { public: // construction/destruction - e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e116xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -669,7 +669,7 @@ class e132n_device : public hyperstone_device { public: // construction/destruction - e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132n_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -682,7 +682,7 @@ class e132t_device : public hyperstone_device { public: // construction/destruction - e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -695,7 +695,7 @@ class e132xn_device : public hyperstone_device { public: // construction/destruction - e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132xn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -708,7 +708,7 @@ class e132xt_device : public hyperstone_device { public: // construction/destruction - e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132xt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -721,7 +721,7 @@ class e132xs_device : public hyperstone_device { public: // construction/destruction - e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132xs_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -734,7 +734,7 @@ class e132xsr_device : public hyperstone_device { public: // construction/destruction - e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + e132xsr_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -747,7 +747,7 @@ class gms30c2116_device : public hyperstone_device { public: // construction/destruction - gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gms30c2116_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -760,7 +760,7 @@ class gms30c2132_device : public hyperstone_device { public: // construction/destruction - gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gms30c2132_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -773,7 +773,7 @@ class gms30c2216_device : public hyperstone_device { public: // construction/destruction - gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gms30c2216_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -786,7 +786,7 @@ class gms30c2232_device : public hyperstone_device { public: // construction/destruction - gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gms30c2232_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; diff --git a/src/devices/cpu/es5510/es5510.cpp b/src/devices/cpu/es5510/es5510.cpp index 6614c03ab52..2520fcf729d 100644 --- a/src/devices/cpu/es5510/es5510.cpp +++ b/src/devices/cpu/es5510/es5510.cpp @@ -134,7 +134,7 @@ inline static int32_t asl(int32_t value, int shift, uint8_t &flags) { } // Initialize ESP to mostly zeroed, configured for 64k samples of delay line memory, running (not halted) -es5510_device::es5510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +es5510_device::es5510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ES5510, tag, owner, clock) , icount(0) , halt_asserted(false) diff --git a/src/devices/cpu/es5510/es5510.h b/src/devices/cpu/es5510/es5510.h index 9f8d10035ca..7f046416205 100644 --- a/src/devices/cpu/es5510/es5510.h +++ b/src/devices/cpu/es5510/es5510.h @@ -19,7 +19,7 @@ public: static constexpr uint32_t DRAM_MASK = (DRAM_SIZE-1); static constexpr feature_type imperfect_features() { return feature::SOUND; } - es5510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + es5510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t host_r(address_space &space, offs_t offset); void host_w(offs_t offset, uint8_t data); diff --git a/src/devices/cpu/esrip/esrip.cpp b/src/devices/cpu/esrip/esrip.cpp index 40457212abb..8372be41eda 100644 --- a/src/devices/cpu/esrip/esrip.cpp +++ b/src/devices/cpu/esrip/esrip.cpp @@ -1667,7 +1667,7 @@ DEFINE_DEVICE_TYPE(ESRIP, esrip_device, "esrip", "Entertainment Sciences RIP") // esrip_device - constructor //------------------------------------------------- -esrip_device::esrip_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +esrip_device::esrip_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ESRIP, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 64, 9, -3) , m_fdt_r(*this) diff --git a/src/devices/cpu/esrip/esrip.h b/src/devices/cpu/esrip/esrip.h index f58b2d41a97..64b041549bd 100644 --- a/src/devices/cpu/esrip/esrip.h +++ b/src/devices/cpu/esrip/esrip.h @@ -32,7 +32,7 @@ public: typedef device_delegate<int (int l, int r, int fig, int attr, int addr, int col, int x_scale, int bank)> draw_delegate; // construction/destruction - esrip_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + esrip_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // inline configuration helpers void set_lbrm_prom_region(const char *name) { m_lbrm_prom = name; } diff --git a/src/devices/cpu/f2mc16/f2mc16.cpp b/src/devices/cpu/f2mc16/f2mc16.cpp index de4098685c7..804c7a4482a 100644 --- a/src/devices/cpu/f2mc16/f2mc16.cpp +++ b/src/devices/cpu/f2mc16/f2mc16.cpp @@ -31,7 +31,7 @@ std::unique_ptr<util::disasm_interface> f2mc16_device::create_disassembler() return std::make_unique<f2mc16_disassembler>(); } -f2mc16_device::f2mc16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +f2mc16_device::f2mc16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 24, 0) , m_program(nullptr) @@ -43,7 +43,7 @@ f2mc16_device::f2mc16_device(const machine_config &mconfig, device_type type, co m_prefix_valid = false; } -f2mc16_device::f2mc16_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +f2mc16_device::f2mc16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : f2mc16_device(mconfig, F2MC16, tag, owner, clock) { } diff --git a/src/devices/cpu/f2mc16/f2mc16.h b/src/devices/cpu/f2mc16/f2mc16.h index fc1ffc3aa55..766af666301 100644 --- a/src/devices/cpu/f2mc16/f2mc16.h +++ b/src/devices/cpu/f2mc16/f2mc16.h @@ -38,10 +38,10 @@ public: }; // construction/destruction - f2mc16_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + f2mc16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - f2mc16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + f2mc16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/f2mc16/mb9061x.cpp b/src/devices/cpu/f2mc16/mb9061x.cpp index e8940162329..11b41da4e05 100644 --- a/src/devices/cpu/f2mc16/mb9061x.cpp +++ b/src/devices/cpu/f2mc16/mb9061x.cpp @@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(MB90641A, mb90641_device, "mb90641a", "Fujitsu MB90641A") //------------------------------------------------- // mb9061x_device - constructor //------------------------------------------------- -mb9061x_device::mb9061x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) : +mb9061x_device::mb9061x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : f2mc16_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, 24, 0, internal_map) { @@ -82,12 +82,12 @@ void mb90610_device::mb90610_map(address_map &map) map(0x0100, 0x10ff).ram(); // 4K of internal RAM from 0x100 to 0x1100 } -mb90610_device::mb90610_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +mb90610_device::mb90610_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb90610_device(mconfig, MB90610A, tag, owner, clock) { } -mb90610_device::mb90610_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +mb90610_device::mb90610_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : mb9061x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(mb90610_device::mb90610_map), this)) { } @@ -412,12 +412,12 @@ void mb90611_device::mb90611_map(address_map &map) map(0x0100, 0x04ff).ram(); // 1K of internal RAM from 0x100 to 0x500 } -mb90611_device::mb90611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +mb90611_device::mb90611_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb90611_device(mconfig, MB90611A, tag, owner, clock) { } -mb90611_device::mb90611_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +mb90611_device::mb90611_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : mb9061x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(mb90611_device::mb90611_map), this)) { } @@ -431,12 +431,12 @@ void mb90641_device::mb90641_map(address_map &map) map(0x0100, 0x08ff).ram(); // 2K of internal RAM } -mb90641_device::mb90641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +mb90641_device::mb90641_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb90641_device(mconfig, MB90641A, tag, owner, clock) { } -mb90641_device::mb90641_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +mb90641_device::mb90641_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : mb9061x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(mb90641_device::mb90641_map), this)) { } diff --git a/src/devices/cpu/f2mc16/mb9061x.h b/src/devices/cpu/f2mc16/mb9061x.h index c09bdef1b96..29257e46a53 100644 --- a/src/devices/cpu/f2mc16/mb9061x.h +++ b/src/devices/cpu/f2mc16/mb9061x.h @@ -38,7 +38,7 @@ public: protected: // construction/destruction - mb9061x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); + mb9061x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); // device-level overrides virtual void device_start() override; @@ -81,31 +81,31 @@ private: class mb90610_device : public mb9061x_device { public: - mb90610_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb90610_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void mb90610_map(address_map &map); protected: - mb90610_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + mb90610_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; class mb90611_device : public mb9061x_device { public: - mb90611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb90611_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void mb90611_map(address_map &map); protected: - mb90611_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + mb90611_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; class mb90641_device : public mb9061x_device { public: - mb90641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb90641_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void mb90641_map(address_map &map); protected: - mb90641_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + mb90641_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(MB90610A, mb90610_device) diff --git a/src/devices/cpu/f8/f8.cpp b/src/devices/cpu/f8/f8.cpp index b7168380dad..d403dec600e 100644 --- a/src/devices/cpu/f8/f8.cpp +++ b/src/devices/cpu/f8/f8.cpp @@ -63,7 +63,7 @@ static constexpr int cL = 6; DEFINE_DEVICE_TYPE(F8, f8_cpu_device, "f8", "Fairchild F8") -f8_cpu_device::f8_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +f8_cpu_device::f8_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, F8, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, 8, 16, 0), m_regs_config("register", ENDIANNESS_BIG, 8, 6, 0, address_map_constructor(FUNC(f8_cpu_device::regs_map), this)), diff --git a/src/devices/cpu/f8/f8.h b/src/devices/cpu/f8/f8.h index fd823acb705..3c14f0fb5bd 100644 --- a/src/devices/cpu/f8/f8.h +++ b/src/devices/cpu/f8/f8.h @@ -18,7 +18,7 @@ class f8_cpu_device : public cpu_device { public: // construction/destruction - f8_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + f8_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // used by F3850 systems that override the normal zero reset address auto romc08_callback() { return m_romc08_callback.bind(); } diff --git a/src/devices/cpu/fr/fr.cpp b/src/devices/cpu/fr/fr.cpp index 51ae7313780..964a7689bda 100644 --- a/src/devices/cpu/fr/fr.cpp +++ b/src/devices/cpu/fr/fr.cpp @@ -15,7 +15,7 @@ // device type definition DEFINE_DEVICE_TYPE(MB91F155A, mb91f155a_device, "mb91f155a", "Fujitsu MB91F155A") -fr_cpu_device::fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, address_map_constructor map) +fr_cpu_device::fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, address_map_constructor map) : cpu_device(mconfig, type, tag, owner, clock) , m_space_config("program", ENDIANNESS_BIG, 32, addrbits, 0, map) , m_regs{0} @@ -28,7 +28,7 @@ fr_cpu_device::fr_cpu_device(const machine_config &mconfig, device_type type, co { } -mb91f155a_device::mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mb91f155a_device::mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : fr_cpu_device(mconfig, MB91F155A, tag, owner, clock, 24, address_map_constructor(FUNC(mb91f155a_device::internal_map), this)) { } diff --git a/src/devices/cpu/fr/fr.h b/src/devices/cpu/fr/fr.h index 60e6eb8469f..e148109758b 100644 --- a/src/devices/cpu/fr/fr.h +++ b/src/devices/cpu/fr/fr.h @@ -21,7 +21,7 @@ public: protected: // construction/destruction - fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, address_map_constructor map); + fr_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, address_map_constructor map); // device-level overrides virtual void device_start() override; @@ -60,7 +60,7 @@ class mb91f155a_device : public fr_cpu_device { public: // device type constructor - mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mb91f155a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); diff --git a/src/devices/cpu/g65816/g65816.cpp b/src/devices/cpu/g65816/g65816.cpp index 7476fb8cde0..747863b8a42 100644 --- a/src/devices/cpu/g65816/g65816.cpp +++ b/src/devices/cpu/g65816/g65816.cpp @@ -113,18 +113,18 @@ enum }; -g65816_device::g65816_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +g65816_device::g65816_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : g65816_device(mconfig, G65816, tag, owner, clock, CPU_TYPE_W65C816, address_map_constructor()) { } -g65802_device::g65802_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +g65802_device::g65802_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : g65816_device(mconfig, G65802, tag, owner, clock, CPU_TYPE_W65C802, address_map_constructor()) { } -g65816_device::g65816_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type, address_map_constructor internal) +g65816_device::g65816_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cpu_type, address_map_constructor internal) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, (cpu_type == CPU_TYPE_W65C802) ? 16 : 24, 0, internal) , m_data_config("data", ENDIANNESS_LITTLE, 8, (cpu_type == CPU_TYPE_W65C802) ? 16 : 24, 0, internal) @@ -168,7 +168,7 @@ void _5a22_device::_5a22_map(address_map &map) } -_5a22_device::_5a22_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +_5a22_device::_5a22_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : g65816_device(mconfig, _5A22, tag, owner, clock, CPU_TYPE_5A22, address_map_constructor(FUNC(_5a22_device::_5a22_map), this)) { } diff --git a/src/devices/cpu/g65816/g65816.h b/src/devices/cpu/g65816/g65816.h index b21845e76ec..37a750806fd 100644 --- a/src/devices/cpu/g65816/g65816.h +++ b/src/devices/cpu/g65816/g65816.h @@ -54,7 +54,7 @@ public: }; // construction/destruction - g65816_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + g65816_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto wdm_handler() { return m_wdm_w.bind(); } @@ -68,7 +68,7 @@ public: }; protected: - g65816_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type, address_map_constructor internal); + g65816_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cpu_type, address_map_constructor internal); // device-level overrides virtual void device_start() override; @@ -1543,14 +1543,14 @@ protected: class g65802_device : public g65816_device { public: - g65802_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + g65802_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class _5a22_device : public g65816_device { public: - _5a22_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + _5a22_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void wrmpya_w(uint8_t data); void wrmpyb_w(uint8_t data); diff --git a/src/devices/cpu/gigatron/gigatron.cpp b/src/devices/cpu/gigatron/gigatron.cpp index 5729a33633e..b26e7da86b8 100644 --- a/src/devices/cpu/gigatron/gigatron.cpp +++ b/src/devices/cpu/gigatron/gigatron.cpp @@ -339,7 +339,7 @@ void gigatron_cpu_device::execute_set_input(int irqline, int state) #endif } -gigatron_cpu_device::gigatron_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +gigatron_cpu_device::gigatron_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, GTRON, tag, owner, clock) , m_ramMask(0xffff) , m_romMask(0xffff) diff --git a/src/devices/cpu/gigatron/gigatron.h b/src/devices/cpu/gigatron/gigatron.h index b224b4ab280..1d019106fec 100644 --- a/src/devices/cpu/gigatron/gigatron.h +++ b/src/devices/cpu/gigatron/gigatron.h @@ -28,7 +28,7 @@ class gigatron_cpu_device : public cpu_device { public: // construction/destruction - gigatron_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gigatron_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto outx_cb() { return m_outx_cb.bind(); } auto out_cb() { return m_out_cb.bind(); } auto ir_cb() { return m_ir_cb.bind(); } diff --git a/src/devices/cpu/h16/hd641016.cpp b/src/devices/cpu/h16/hd641016.cpp index 9bfaa6a5cd4..c4bbe1f540a 100644 --- a/src/devices/cpu/h16/hd641016.cpp +++ b/src/devices/cpu/h16/hd641016.cpp @@ -15,7 +15,7 @@ // device type definition DEFINE_DEVICE_TYPE(HD641016, hd641016_device, "hd641016", "Hitachi HD641016") -hd641016_device::hd641016_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd641016_device::hd641016_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, HD641016, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 24, 0) , m_data_config("data", ENDIANNESS_BIG, 32, 10, 0, address_map_constructor(FUNC(hd641016_device::ram_map), this)) diff --git a/src/devices/cpu/h16/hd641016.h b/src/devices/cpu/h16/hd641016.h index 1c93f5a2ff3..24d29165730 100644 --- a/src/devices/cpu/h16/hd641016.h +++ b/src/devices/cpu/h16/hd641016.h @@ -85,7 +85,7 @@ public: }; // device type constructor - hd641016_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd641016_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/h6280/h6280.cpp b/src/devices/cpu/h6280/h6280.cpp index 27c042ab299..766d0ed12ce 100644 --- a/src/devices/cpu/h6280/h6280.cpp +++ b/src/devices/cpu/h6280/h6280.cpp @@ -167,7 +167,7 @@ DEFINE_DEVICE_TYPE(H6280, h6280_device, "h6280", "Hudson Soft HuC6280") // h6280_device - constructor //------------------------------------------------- -h6280_device::h6280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +h6280_device::h6280_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, H6280, tag, owner, clock) , device_mixer_interface(mconfig, *this, 2) , m_program_config("program", ENDIANNESS_LITTLE, 8, 21, 0, 16, 0, address_map_constructor(FUNC(h6280_device::internal_map), this)) diff --git a/src/devices/cpu/h6280/h6280.h b/src/devices/cpu/h6280/h6280.h index 22d3ac06ce6..1b5f386ea12 100644 --- a/src/devices/cpu/h6280/h6280.h +++ b/src/devices/cpu/h6280/h6280.h @@ -32,7 +32,7 @@ class h6280_device : public cpu_device, public device_mixer_interface { public: // construction/destruction - h6280_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h6280_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // public interfaces void set_irq_line(int irqline, int state); diff --git a/src/devices/cpu/h8/gt913.cpp b/src/devices/cpu/h8/gt913.cpp index c56c8ed94f3..ef9edb1bb8b 100644 --- a/src/devices/cpu/h8/gt913.cpp +++ b/src/devices/cpu/h8/gt913.cpp @@ -25,7 +25,7 @@ DEFINE_DEVICE_TYPE(GT913, gt913_device, "gt913", "Casio GT913F") -gt913_device::gt913_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +gt913_device::gt913_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_device(mconfig, GT913, tag, owner, clock, address_map_constructor(FUNC(gt913_device::map), this)), device_mixer_interface(mconfig, *this, 2), m_rom(*this, DEVICE_SELF), @@ -104,7 +104,7 @@ void gt913_device::device_add_mconfig(machine_config &config) m_sound->add_route(0, *this, 1.0, AUTO_ALLOC_INPUT, 0); m_sound->add_route(1, *this, 1.0, AUTO_ALLOC_INPUT, 1); - GT913_KBD_HLE(config, m_kbd, 0); + GT913_KBD_HLE(config, m_kbd); m_kbd->irq_cb().set([this] (int val) { if (val) diff --git a/src/devices/cpu/h8/gt913.h b/src/devices/cpu/h8/gt913.h index 4ba89661abb..07ea286a5aa 100644 --- a/src/devices/cpu/h8/gt913.h +++ b/src/devices/cpu/h8/gt913.h @@ -23,7 +23,7 @@ class gt913_device : public h8_device, public device_mixer_interface { public: - gt913_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + gt913_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/h8/h8.cpp b/src/devices/cpu/h8/h8.cpp index cd40624586c..dc5e394bcc1 100644 --- a/src/devices/cpu/h8/h8.cpp +++ b/src/devices/cpu/h8/h8.cpp @@ -15,7 +15,7 @@ #include "h8_dtc.h" #include "h8d.h" -h8_device::h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) : +h8_device::h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate) : cpu_device(mconfig, type, tag, owner, clock), program_config("program", ENDIANNESS_BIG, 16, 16, 0, map_delegate), io_config("io", ENDIANNESS_BIG, 16, 16, -1), PPC(0), NPC(0), PC(0), PIR(0), EXR(0), CCR(0), MAC(0), MACF(0), diff --git a/src/devices/cpu/h8/h8.h b/src/devices/cpu/h8/h8.h index 78ee9425142..7f744ad3709 100644 --- a/src/devices/cpu/h8/h8.h +++ b/src/devices/cpu/h8/h8.h @@ -87,7 +87,7 @@ protected: EXR_I = 0x07 }; - h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); + h8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate); // device-level overrides virtual void device_config_complete() override; diff --git a/src/devices/cpu/h8/h83002.cpp b/src/devices/cpu/h8/h83002.cpp index 664134669c9..beeb917f05b 100644 --- a/src/devices/cpu/h8/h83002.cpp +++ b/src/devices/cpu/h8/h83002.cpp @@ -5,7 +5,7 @@ DEFINE_DEVICE_TYPE(H83002, h83002_device, "h83002", "Hitachi H8/3002") -h83002_device::h83002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83002_device::h83002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8h_device(mconfig, H83002, tag, owner, clock, address_map_constructor(FUNC(h83002_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), diff --git a/src/devices/cpu/h8/h83002.h b/src/devices/cpu/h8/h83002.h index 94c1d603230..dce30bd0b3d 100644 --- a/src/devices/cpu/h8/h83002.h +++ b/src/devices/cpu/h8/h83002.h @@ -27,7 +27,7 @@ class h83002_device : public h8h_device { public: - h83002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto tend0() { return tend0_cb.bind(); } auto tend1() { return tend1_cb.bind(); } diff --git a/src/devices/cpu/h8/h83003.cpp b/src/devices/cpu/h8/h83003.cpp index 39829d5de12..31e60831bce 100644 --- a/src/devices/cpu/h8/h83003.cpp +++ b/src/devices/cpu/h8/h83003.cpp @@ -5,7 +5,7 @@ DEFINE_DEVICE_TYPE(H83003, h83003_device, "h83003", "Hitachi H8/3003") -h83003_device::h83003_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83003_device::h83003_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8h_device(mconfig, H83003, tag, owner, clock, address_map_constructor(FUNC(h83003_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), diff --git a/src/devices/cpu/h8/h83003.h b/src/devices/cpu/h8/h83003.h index 6c4f7cfaced..b2fc17a7eb6 100644 --- a/src/devices/cpu/h8/h83003.h +++ b/src/devices/cpu/h8/h83003.h @@ -27,7 +27,7 @@ class h83003_device : public h8h_device { public: - h83003_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83003_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto tend0() { return tend0_cb.bind(); } auto tend1() { return tend1_cb.bind(); } diff --git a/src/devices/cpu/h8/h83006.cpp b/src/devices/cpu/h8/h83006.cpp index d19937e93dc..cb562bfbb87 100644 --- a/src/devices/cpu/h8/h83006.cpp +++ b/src/devices/cpu/h8/h83006.cpp @@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(H83006, h83006_device, "h83006", "Hitachi H8/3006") DEFINE_DEVICE_TYPE(H83007, h83007_device, "h83007", "Hitachi H8/3007") -h83006_device::h83006_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h83006_device::h83006_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83006_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -35,13 +35,13 @@ h83006_device::h83006_device(const machine_config &mconfig, device_type type, co { } -h83006_device::h83006_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83006_device::h83006_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83006_device(mconfig, H83006, tag, owner, clock, 0xff720) { } -h83007_device::h83007_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83007_device::h83007_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83006_device(mconfig, H83007, tag, owner, clock, 0xfef20) { } diff --git a/src/devices/cpu/h8/h83006.h b/src/devices/cpu/h8/h83006.h index 083b91ea664..65fdc9fe211 100644 --- a/src/devices/cpu/h8/h83006.h +++ b/src/devices/cpu/h8/h83006.h @@ -27,7 +27,7 @@ class h83006_device : public h8h_device { public: - h83006_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83006_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_mode_a20() { mode_a20 = true; } void set_mode_a24() { mode_a20 = false; } @@ -36,7 +36,7 @@ public: void syscr_w(uint8_t data); protected: - h83006_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h83006_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); required_device<h8h_intc_device> intc; required_device<h8_adc_device> adc; @@ -79,7 +79,7 @@ protected: class h83007_device : public h83006_device { public: - h83007_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83007_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H83006, h83006_device) diff --git a/src/devices/cpu/h8/h83008.cpp b/src/devices/cpu/h8/h83008.cpp index 3db7c5a71aa..2f515c22192 100644 --- a/src/devices/cpu/h8/h83008.cpp +++ b/src/devices/cpu/h8/h83008.cpp @@ -5,7 +5,7 @@ DEFINE_DEVICE_TYPE(H83008, h83008_device, "h83008", "Hitachi H8/3008") -h83008_device::h83008_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83008_device::h83008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8h_device(mconfig, H83008, tag, owner, clock, address_map_constructor(FUNC(h83008_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), diff --git a/src/devices/cpu/h8/h83008.h b/src/devices/cpu/h8/h83008.h index bb65adfcc9d..62858dfd537 100644 --- a/src/devices/cpu/h8/h83008.h +++ b/src/devices/cpu/h8/h83008.h @@ -27,7 +27,7 @@ class h83008_device : public h8h_device { public: - h83008_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_mode_a20() { mode_a20 = true; } void set_mode_a24() { mode_a20 = false; } diff --git a/src/devices/cpu/h8/h83032.cpp b/src/devices/cpu/h8/h83032.cpp index f1abc18b912..613606440b7 100644 --- a/src/devices/cpu/h8/h83032.cpp +++ b/src/devices/cpu/h8/h83032.cpp @@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(H83032, h83032_device, "h83032", "Hitachi H8/3032") DEFINE_DEVICE_TYPE(H83031, h83031_device, "h83031", "Hitachi H8/3031") DEFINE_DEVICE_TYPE(H83030, h83030_device, "h83030", "Hitachi H8/3030") -h83032_device::h83032_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h83032_device::h83032_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83032_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -36,17 +36,17 @@ h83032_device::h83032_device(const machine_config &mconfig, device_type type, co mode_a20 = true; } -h83032_device::h83032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83032_device::h83032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83032_device(mconfig, H83032, tag, owner, clock, 0xf710) { } -h83031_device::h83031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83031_device::h83031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83032_device(mconfig, H83031, tag, owner, clock, 0xfb10) { } -h83030_device::h83030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83030_device::h83030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83032_device(mconfig, H83030, tag, owner, clock, 0xfd10) { } diff --git a/src/devices/cpu/h8/h83032.h b/src/devices/cpu/h8/h83032.h index fd2d99593da..58d0a2170b1 100644 --- a/src/devices/cpu/h8/h83032.h +++ b/src/devices/cpu/h8/h83032.h @@ -29,13 +29,13 @@ class h83032_device : public h8h_device { public: - h83032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); protected: - h83032_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h83032_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); required_device<h8h_intc_device> intc; required_device<h8_adc_device> adc; @@ -77,12 +77,12 @@ protected: class h83031_device : public h83032_device { public: - h83031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h83030_device : public h83032_device { public: - h83030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H83032, h83032_device) diff --git a/src/devices/cpu/h8/h83042.cpp b/src/devices/cpu/h8/h83042.cpp index 2b0631d201e..a0896f68ad5 100644 --- a/src/devices/cpu/h8/h83042.cpp +++ b/src/devices/cpu/h8/h83042.cpp @@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(H83040, h83040_device, "h83040", "Hitachi H8/3040") DEFINE_DEVICE_TYPE(H83041, h83041_device, "h83041", "Hitachi H8/3041") DEFINE_DEVICE_TYPE(H83042, h83042_device, "h83042", "Hitachi H8/3042") -h83042_device::h83042_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h83042_device::h83042_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83042_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -36,17 +36,17 @@ h83042_device::h83042_device(const machine_config &mconfig, device_type type, co mode_a20 = true; } -h83040_device::h83040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83040_device::h83040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83042_device(mconfig, H83040, tag, owner, clock) { } -h83041_device::h83041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83041_device::h83041_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83042_device(mconfig, H83041, tag, owner, clock) { } -h83042_device::h83042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83042_device::h83042_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83042_device(mconfig, H83042, tag, owner, clock) { } diff --git a/src/devices/cpu/h8/h83042.h b/src/devices/cpu/h8/h83042.h index 8caa5a4e690..5037d05e165 100644 --- a/src/devices/cpu/h8/h83042.h +++ b/src/devices/cpu/h8/h83042.h @@ -32,13 +32,13 @@ class h83042_device : public h8h_device { public: - h83042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83042_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); protected: - h83042_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h83042_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); required_device<h8h_intc_device> intc; required_device<h8_adc_device> adc; @@ -80,12 +80,12 @@ protected: class h83040_device : public h83042_device { public: - h83040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h83041_device : public h83042_device { public: - h83041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83041_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H83040, h83040_device) diff --git a/src/devices/cpu/h8/h83048.cpp b/src/devices/cpu/h8/h83048.cpp index 2358914e6cf..3e4372bb221 100644 --- a/src/devices/cpu/h8/h83048.cpp +++ b/src/devices/cpu/h8/h83048.cpp @@ -8,7 +8,7 @@ DEFINE_DEVICE_TYPE(H83045, h83045_device, "h83045", "Hitachi H8/3045") DEFINE_DEVICE_TYPE(H83047, h83047_device, "h83047", "Hitachi H8/3047") DEFINE_DEVICE_TYPE(H83048, h83048_device, "h83048", "Hitachi H8/3048") -h83048_device::h83048_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h83048_device::h83048_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8h_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83048_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -37,22 +37,22 @@ h83048_device::h83048_device(const machine_config &mconfig, device_type type, co { } -h83048_device::h83048_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83048_device::h83048_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83048_device(mconfig, H83048, tag, owner, clock, 0xef10) { } -h83044_device::h83044_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83044_device::h83044_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83048_device(mconfig, H83044, tag, owner, clock, 0xf710) { } -h83045_device::h83045_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83045_device::h83045_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83048_device(mconfig, H83045, tag, owner, clock, 0xf710) { } -h83047_device::h83047_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83047_device::h83047_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83048_device(mconfig, H83047, tag, owner, clock, 0xef10) { } diff --git a/src/devices/cpu/h8/h83048.h b/src/devices/cpu/h8/h83048.h index d5afb5e67c8..3df24384c6e 100644 --- a/src/devices/cpu/h8/h83048.h +++ b/src/devices/cpu/h8/h83048.h @@ -32,7 +32,7 @@ class h83048_device : public h8h_device { public: - h83048_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83048_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_mode_a20() { mode_a20 = true; } void set_mode_a24() { mode_a20 = false; } @@ -41,7 +41,7 @@ public: void syscr_w(uint8_t data); protected: - h83048_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h83048_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); required_device<h8h_intc_device> intc; required_device<h8_adc_device> adc; @@ -84,17 +84,17 @@ protected: class h83044_device : public h83048_device { public: - h83044_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83044_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h83045_device : public h83048_device { public: - h83045_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83045_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h83047_device : public h83048_device { public: - h83047_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83047_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H83044, h83044_device) diff --git a/src/devices/cpu/h8/h83337.cpp b/src/devices/cpu/h8/h83337.cpp index 7f9e835513c..3ed10f5ae97 100644 --- a/src/devices/cpu/h8/h83337.cpp +++ b/src/devices/cpu/h8/h83337.cpp @@ -8,7 +8,7 @@ DEFINE_DEVICE_TYPE(H83336, h83336_device, "h83336", "Hitachi H8/3336") DEFINE_DEVICE_TYPE(H83337, h83337_device, "h83337", "Hitachi H8/3337") -h83337_device::h83337_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h83337_device::h83337_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h83337_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -33,17 +33,17 @@ h83337_device::h83337_device(const machine_config &mconfig, device_type type, co { } -h83337_device::h83337_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83337_device::h83337_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83337_device(mconfig, H83337, tag, owner, clock, 0xf780) { } -h83334_device::h83334_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83334_device::h83334_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83337_device(mconfig, H83334, tag, owner, clock, 0xfb80) { } -h83336_device::h83336_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h83336_device::h83336_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h83337_device(mconfig, H83336, tag, owner, clock, 0xf780) { } diff --git a/src/devices/cpu/h8/h83337.h b/src/devices/cpu/h8/h83337.h index cc0d9735a34..9ed5958b47a 100644 --- a/src/devices/cpu/h8/h83337.h +++ b/src/devices/cpu/h8/h83337.h @@ -34,7 +34,7 @@ class h83337_device : public h8_device { public: - h83337_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83337_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t wscr_r(); void wscr_w(uint8_t data); @@ -46,7 +46,7 @@ public: void mdcr_w(uint8_t data); protected: - h83337_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h83337_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); required_device<h8_intc_device> intc; required_device<h8_adc_device> adc; @@ -84,12 +84,12 @@ protected: class h83334_device : public h83337_device { public: - h83334_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83334_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h83336_device : public h83337_device { public: - h83336_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h83336_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H83334, h83334_device) diff --git a/src/devices/cpu/h8/h8_adc.cpp b/src/devices/cpu/h8/h8_adc.cpp index 3235ac8c6c8..73176384a31 100644 --- a/src/devices/cpu/h8/h8_adc.cpp +++ b/src/devices/cpu/h8/h8_adc.cpp @@ -15,7 +15,7 @@ DEFINE_DEVICE_TYPE(H8_ADC_2320, h8_adc_2320_device, "h8_adc_2320", "H8/2320 ADC" DEFINE_DEVICE_TYPE(H8_ADC_2357, h8_adc_2357_device, "h8_adc_2357", "H8/2357 ADC") DEFINE_DEVICE_TYPE(H8_ADC_2655, h8_adc_2655_device, "h8_adc_2655", "H8/2655 ADC") -h8_adc_device::h8_adc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_device::h8_adc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER), intc(nullptr), io(nullptr), intc_tag(nullptr), intc_vector(0), adcsr(0), adcr(0), register_mask(0), trigger(0), start_mode(0), start_channel(0), @@ -272,7 +272,7 @@ int h8_adc_device::get_channel_index(int count) } -h8_adc_3337_device::h8_adc_3337_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_3337_device::h8_adc_3337_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_3337, tag, owner, clock) { register_mask = 3; @@ -303,7 +303,7 @@ void h8_adc_3337_device::mode_update() } -h8_adc_3006_device::h8_adc_3006_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_3006_device::h8_adc_3006_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_3006, tag, owner, clock) { register_mask = 3; @@ -334,7 +334,7 @@ void h8_adc_3006_device::mode_update() } -h8_adc_2245_device::h8_adc_2245_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_2245_device::h8_adc_2245_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_2245, tag, owner, clock) { register_mask = 3; @@ -365,7 +365,7 @@ void h8_adc_2245_device::mode_update() } -h8_adc_2320_device::h8_adc_2320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_2320_device::h8_adc_2320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_2320, tag, owner, clock) { register_mask = 3; @@ -402,7 +402,7 @@ void h8_adc_2320_device::mode_update() } -h8_adc_2357_device::h8_adc_2357_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_2357_device::h8_adc_2357_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_2357, tag, owner, clock) { register_mask = 3; @@ -433,7 +433,7 @@ void h8_adc_2357_device::mode_update() } -h8_adc_2655_device::h8_adc_2655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_adc_2655_device::h8_adc_2655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_adc_device(mconfig, H8_ADC_2655, tag, owner, clock) { suspend_on_interrupt = true; diff --git a/src/devices/cpu/h8/h8_adc.h b/src/devices/cpu/h8/h8_adc.h index e54d3b747d9..8b4008eb4eb 100644 --- a/src/devices/cpu/h8/h8_adc.h +++ b/src/devices/cpu/h8/h8_adc.h @@ -33,7 +33,7 @@ public: uint64_t internal_update(uint64_t current_time); protected: - h8_adc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8_adc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); required_device<h8_device> cpu; h8_intc_device *intc; @@ -93,9 +93,9 @@ protected: class h8_adc_3337_device : public h8_adc_device { public: - h8_adc_3337_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_3337_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_3337_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_3337_device(mconfig, tag, owner, 0) + : h8_adc_3337_device(mconfig, tag, owner) { set_info(intc_tag, vect); } @@ -107,9 +107,9 @@ protected: class h8_adc_3006_device : public h8_adc_device { public: - h8_adc_3006_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_3006_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_3006_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_3006_device(mconfig, tag, owner, 0) + : h8_adc_3006_device(mconfig, tag, owner) { set_info(intc_tag, vect); } @@ -121,9 +121,9 @@ protected: class h8_adc_2245_device : public h8_adc_device { public: - h8_adc_2245_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_2245_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_2245_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_2245_device(mconfig, tag, owner, 0) + : h8_adc_2245_device(mconfig, tag, owner) { set_info(intc_tag, vect); } @@ -135,9 +135,9 @@ protected: class h8_adc_2320_device : public h8_adc_device { public: - h8_adc_2320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_2320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_2320_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_2320_device(mconfig, tag, owner, 0) + : h8_adc_2320_device(mconfig, tag, owner) { set_info(intc_tag, vect); } @@ -149,9 +149,9 @@ protected: class h8_adc_2357_device : public h8_adc_device { public: - h8_adc_2357_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_2357_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_2357_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_2357_device(mconfig, tag, owner, 0) + : h8_adc_2357_device(mconfig, tag, owner) { set_info(intc_tag, vect); } @@ -163,9 +163,9 @@ protected: class h8_adc_2655_device : public h8_adc_device { public: - h8_adc_2655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_adc_2655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_adc_2655_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc_tag, int vect) - : h8_adc_2655_device(mconfig, tag, owner, 0) + : h8_adc_2655_device(mconfig, tag, owner) { set_info(intc_tag, vect); } diff --git a/src/devices/cpu/h8/h8_dma.cpp b/src/devices/cpu/h8/h8_dma.cpp index d70cced09f3..ba014974ec3 100644 --- a/src/devices/cpu/h8/h8_dma.cpp +++ b/src/devices/cpu/h8/h8_dma.cpp @@ -4,7 +4,7 @@ DEFINE_DEVICE_TYPE(H8_DMA, h8_dma_device, "h8_dma", "H8 DMA controller") DEFINE_DEVICE_TYPE(H8_DMA_CHANNEL, h8_dma_channel_device, "h8_dma_channel", "H8 DMA channel") -h8_dma_device::h8_dma_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_dma_device::h8_dma_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_DMA, tag, owner, clock), dmach0(*this, "0"), dmach1(*this, "1") @@ -118,7 +118,7 @@ void h8_dma_device::dmabcr_w(offs_t offset, uint16_t data, uint16_t mem_mask) -h8_dma_channel_device::h8_dma_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_dma_channel_device::h8_dma_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_DMA_CHANNEL, tag, owner, clock), dmac(*this, "^"), cpu(*this, "^^") diff --git a/src/devices/cpu/h8/h8_dma.h b/src/devices/cpu/h8/h8_dma.h index 4a4eeda837b..7448300f4cd 100644 --- a/src/devices/cpu/h8/h8_dma.h +++ b/src/devices/cpu/h8/h8_dma.h @@ -43,7 +43,7 @@ enum { class h8_dma_device : public device_t { public: - h8_dma_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); + h8_dma_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); uint8_t dmawer_r(); void dmawer_w(uint8_t data); @@ -88,7 +88,7 @@ public: MODE16_MEM_DACK }; - h8_dma_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_dma_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_dma_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int irq_base, int v0, int v1, int v2, int v3, int v4, int v5, int v6, int v7, int v8, int v9 = h8_dma_channel_device::NONE, @@ -98,7 +98,7 @@ public: int vd = h8_dma_channel_device::NONE, int ve = h8_dma_channel_device::NONE, int vf = h8_dma_channel_device::NONE) - : h8_dma_channel_device(mconfig, tag, owner, 0) + : h8_dma_channel_device(mconfig, tag, owner) { set_info(intc, irq_base, v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, va, vb, vc, vd, ve, vf); } diff --git a/src/devices/cpu/h8/h8_dtc.cpp b/src/devices/cpu/h8/h8_dtc.cpp index a2668456414..08aab92bfb7 100644 --- a/src/devices/cpu/h8/h8_dtc.cpp +++ b/src/devices/cpu/h8/h8_dtc.cpp @@ -24,7 +24,7 @@ const int h8_dtc_device::vector_to_enable[92] = { -1, 40, 41, -1 // ERI2, RXI2, TXI2, TEI2 }; -h8_dtc_device::h8_dtc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_dtc_device::h8_dtc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_DTC, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER) { diff --git a/src/devices/cpu/h8/h8_dtc.h b/src/devices/cpu/h8/h8_dtc.h index 6b1a32b8a9b..22052b8a757 100644 --- a/src/devices/cpu/h8/h8_dtc.h +++ b/src/devices/cpu/h8/h8_dtc.h @@ -29,9 +29,9 @@ class h8_dtc_device : public device_t { public: enum { DTC_CHAINED = 1000 }; - h8_dtc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_dtc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_dtc_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int irq) - : h8_dtc_device(mconfig, tag, owner, 0) + : h8_dtc_device(mconfig, tag, owner) { set_info(intc, irq); } diff --git a/src/devices/cpu/h8/h8_intc.cpp b/src/devices/cpu/h8/h8_intc.cpp index f2a7b192164..465b346e604 100644 --- a/src/devices/cpu/h8/h8_intc.cpp +++ b/src/devices/cpu/h8/h8_intc.cpp @@ -8,7 +8,7 @@ DEFINE_DEVICE_TYPE(H8H_INTC, h8h_intc_device, "h8h_intc", "H8H interrupt c DEFINE_DEVICE_TYPE(H8S_INTC, h8s_intc_device, "h8s_intc", "H8S interrupt controller") DEFINE_DEVICE_TYPE(GT913_INTC, gt913_intc_device, "gt913_intc", "Casio GT913F interrupt controller") -h8_intc_device::h8_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_intc_device::h8_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_intc_device(mconfig, H8_INTC, tag, owner, clock) { irq_vector_base = 4; @@ -16,7 +16,7 @@ h8_intc_device::h8_intc_device(const machine_config &mconfig, const char *tag, d irq_vector_nmi = 3; } -h8_intc_device::h8_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8_intc_device::h8_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock), irq_vector_base(0), irq_vector_count(0), irq_vector_nmi(0), cpu(*this, DEVICE_SELF_OWNER), nmi_input(false), irq_input(0), ier(0), isr(0), iscr(0), icr_filter(0), ipr_filter(0) { @@ -199,7 +199,7 @@ void h8_intc_device::get_priority(int vect, int &icr_pri, int &ipr_pri) const } -gt913_intc_device::gt913_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +gt913_intc_device::gt913_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : gt913_intc_device(mconfig, GT913_INTC, tag, owner, clock) { irq_vector_base = 4; @@ -207,7 +207,7 @@ gt913_intc_device::gt913_intc_device(const machine_config &mconfig, const char * irq_vector_nmi = 3; } -gt913_intc_device::gt913_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +gt913_intc_device::gt913_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8_intc_device(mconfig, type, tag, owner, clock) { } @@ -226,7 +226,7 @@ void gt913_intc_device::clear_interrupt(int vector) } -h8h_intc_device::h8h_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8h_intc_device::h8h_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8h_intc_device(mconfig, H8H_INTC, tag, owner, clock) { irq_vector_base = 12; @@ -234,7 +234,7 @@ h8h_intc_device::h8h_intc_device(const machine_config &mconfig, const char *tag, irq_vector_nmi = 7; } -h8h_intc_device::h8h_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8h_intc_device::h8h_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8_intc_device(mconfig, type, tag, owner, clock) { } @@ -353,7 +353,7 @@ void h8h_intc_device::get_priority(int vect, int &icr_pri, int &ipr_pri) const icr_pri = (icr >> (slot ^ 7)) & 1; } -h8s_intc_device::h8s_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s_intc_device::h8s_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8h_intc_device(mconfig, H8S_INTC, tag, owner, clock) { irq_vector_base = 16; diff --git a/src/devices/cpu/h8/h8_intc.h b/src/devices/cpu/h8/h8_intc.h index 43569dc3b9b..23ec3244cfa 100644 --- a/src/devices/cpu/h8/h8_intc.h +++ b/src/devices/cpu/h8/h8_intc.h @@ -19,7 +19,7 @@ class h8_intc_device : public device_t { public: - h8_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); + h8_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); int interrupt_taken(int vector); void internal_interrupt(int vector); @@ -50,7 +50,7 @@ protected: uint16_t iscr; int icr_filter, ipr_filter; - h8_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -63,18 +63,18 @@ protected: class gt913_intc_device : public h8_intc_device { public: - gt913_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); + gt913_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); void clear_interrupt(int vector); protected: - gt913_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + gt913_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_reset() override; }; class h8h_intc_device : public h8_intc_device { public: - h8h_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); + h8h_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); uint8_t isr_r(); void isr_w(uint8_t data); @@ -92,7 +92,7 @@ protected: uint32_t icr; - h8h_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8h_intc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -103,7 +103,7 @@ protected: class h8s_intc_device : public h8h_intc_device { public: - h8s_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); + h8s_intc_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); uint8_t ipr_r(offs_t offset); void ipr_w(offs_t offset, uint8_t data); diff --git a/src/devices/cpu/h8/h8_port.cpp b/src/devices/cpu/h8/h8_port.cpp index e366e0d49a5..86390382274 100644 --- a/src/devices/cpu/h8/h8_port.cpp +++ b/src/devices/cpu/h8/h8_port.cpp @@ -5,7 +5,7 @@ DEFINE_DEVICE_TYPE(H8_PORT, h8_port_device, "h8_digital_port", "H8 digital port") -h8_port_device::h8_port_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_port_device::h8_port_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_PORT, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER), io(nullptr), address(0), default_ddr(0), ddr(0), pcr(0), odr(0), mask(0), dr(0), last_output(0) { diff --git a/src/devices/cpu/h8/h8_port.h b/src/devices/cpu/h8/h8_port.h index 6c60b0c7621..45e6d387599 100644 --- a/src/devices/cpu/h8/h8_port.h +++ b/src/devices/cpu/h8/h8_port.h @@ -18,9 +18,9 @@ class h8_port_device : public device_t { public: - h8_port_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_port_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_port_device(const machine_config &mconfig, const char *tag, device_t *owner, int address, uint8_t default_ddr, uint8_t mask) - : h8_port_device(mconfig, tag, owner, 0) + : h8_port_device(mconfig, tag, owner) { set_info(address, default_ddr, mask); } diff --git a/src/devices/cpu/h8/h8_sci.cpp b/src/devices/cpu/h8/h8_sci.cpp index 6bc650af5c6..c7ec19d382d 100644 --- a/src/devices/cpu/h8/h8_sci.cpp +++ b/src/devices/cpu/h8/h8_sci.cpp @@ -15,7 +15,7 @@ DEFINE_DEVICE_TYPE(H8_SCI, h8_sci_device, "h8_sci", "H8 Serial Communications In const char *const h8_sci_device::state_names[] = { "idle", "start", "bit", "parity", "stop", "last-tick" }; -h8_sci_device::h8_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_sci_device::h8_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_SCI, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER), tx_cb(*this), diff --git a/src/devices/cpu/h8/h8_sci.h b/src/devices/cpu/h8/h8_sci.h index 8c07ffe5ec2..1c9c04b38fe 100644 --- a/src/devices/cpu/h8/h8_sci.h +++ b/src/devices/cpu/h8/h8_sci.h @@ -19,9 +19,9 @@ class h8_sci_device : public device_t { public: - h8_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int eri, int rxi, int txi, int tei) - : h8_sci_device(mconfig, tag, owner, 0) + : h8_sci_device(mconfig, tag, owner) { set_info(intc, eri, rxi, txi, tei); } diff --git a/src/devices/cpu/h8/h8_timer16.cpp b/src/devices/cpu/h8/h8_timer16.cpp index f74acb4816f..40d0d015db4 100644 --- a/src/devices/cpu/h8/h8_timer16.cpp +++ b/src/devices/cpu/h8/h8_timer16.cpp @@ -13,13 +13,13 @@ DEFINE_DEVICE_TYPE(H8_TIMER16_CHANNEL, h8_timer16_channel_device, "h8_timer16_ DEFINE_DEVICE_TYPE(H8H_TIMER16_CHANNEL, h8h_timer16_channel_device, "h8h_timer16_channel", "H8H 16-bit timer channel") DEFINE_DEVICE_TYPE(H8S_TIMER16_CHANNEL, h8s_timer16_channel_device, "h8s_timer16_channel", "H8S 16-bit timer channel") -h8_timer16_channel_device::h8_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_timer16_channel_device::h8_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_timer16_channel_device(mconfig, H8_TIMER16_CHANNEL, tag, owner, clock) { chain_tag = nullptr; } -h8_timer16_channel_device::h8_timer16_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8_timer16_channel_device::h8_timer16_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock), cpu(*this, "^^"), chained_timer(nullptr), intc(nullptr), intc_tag(nullptr), tier_mask(0), tgr_count(0), tbr_count(0), tgr_clearing(0), tcr(0), tier(0), ier(0), isr(0), clock_type(0), clock_divider(0), tcnt(0), last_clock_update(0), event_time(0), phase(0), counter_cycle(0), counter_incrementing(false), channel_active(false) @@ -313,7 +313,7 @@ void h8_timer16_channel_device::recalc_event(uint64_t cur_time) cpu->internal_update(); } -h8_timer16_device::h8_timer16_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_timer16_device::h8_timer16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_TIMER16, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER) { @@ -519,7 +519,7 @@ uint8_t h8_timer16_channel_device::tisr_r(int offset) const return 0x00; } -h8h_timer16_channel_device::h8h_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8h_timer16_channel_device::h8h_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_timer16_channel_device(mconfig, H8H_TIMER16_CHANNEL, tag, owner, clock) { } @@ -617,7 +617,7 @@ void h8h_timer16_channel_device::tcr_update() } } -h8s_timer16_channel_device::h8s_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s_timer16_channel_device::h8s_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_timer16_channel_device(mconfig, H8S_TIMER16_CHANNEL, tag, owner, clock) { } diff --git a/src/devices/cpu/h8/h8_timer16.h b/src/devices/cpu/h8/h8_timer16.h index 6543b9ccb7c..a22e0a3caac 100644 --- a/src/devices/cpu/h8/h8_timer16.h +++ b/src/devices/cpu/h8/h8_timer16.h @@ -56,9 +56,9 @@ public: }; - h8_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, int tgr_count, int tbr_count, const char *intc, int irq_base) - : h8_timer16_channel_device(mconfig, tag, owner, 0) + : h8_timer16_channel_device(mconfig, tag, owner) { set_info(tgr_count, tbr_count, intc, irq_base); } @@ -106,7 +106,7 @@ protected: bool counter_incrementing; bool channel_active; - h8_timer16_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8_timer16_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -121,9 +121,9 @@ protected: class h8h_timer16_channel_device : public h8_timer16_channel_device { public: - h8h_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8h_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8h_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, int tgr_count, int tbr_count, const char *intc, int irq_base) - : h8h_timer16_channel_device(mconfig, tag, owner, 0) + : h8h_timer16_channel_device(mconfig, tag, owner) { set_info(tgr_count, tbr_count, intc, irq_base); } @@ -140,10 +140,10 @@ protected: class h8s_timer16_channel_device : public h8_timer16_channel_device { public: - h8s_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8s_timer16_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, int tgr_count, int _tier_mask, const char *intc, int irq_base, int t0, int t1, int t2, int t3, int t4, int t5, int t6, int t7) - : h8s_timer16_channel_device(mconfig, tag, owner, 0) + : h8s_timer16_channel_device(mconfig, tag, owner) { set_info(tgr_count, _tier_mask, intc, irq_base, t0, t1, t2, t3, t4, t5, t6, t7); } @@ -164,9 +164,9 @@ protected: class h8_timer16_device : public device_t { public: - h8_timer16_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_timer16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_timer16_device(const machine_config &mconfig, const char *tag, device_t *owner, int timer_count, uint8_t default_tstr) - : h8_timer16_device(mconfig, tag, owner, 0) + : h8_timer16_device(mconfig, tag, owner) { set_info(timer_count, default_tstr); } diff --git a/src/devices/cpu/h8/h8_timer8.cpp b/src/devices/cpu/h8/h8_timer8.cpp index 352b4a7f7d9..07550cd7954 100644 --- a/src/devices/cpu/h8/h8_timer8.cpp +++ b/src/devices/cpu/h8/h8_timer8.cpp @@ -12,12 +12,12 @@ const int V = 1; DEFINE_DEVICE_TYPE(H8_TIMER8_CHANNEL, h8_timer8_channel_device, "h8_timer8_channel", "H8 8-bit timer channel") DEFINE_DEVICE_TYPE(H8H_TIMER8_CHANNEL, h8h_timer8_channel_device, "h8h_timer8_channel", "H8H 8-bit timer channel") -h8_timer8_channel_device::h8_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_timer8_channel_device::h8_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_timer8_channel_device(mconfig, H8_TIMER8_CHANNEL, tag, owner, clock) { } -h8_timer8_channel_device::h8_timer8_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8_timer8_channel_device::h8_timer8_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock), cpu(*this, "^"), chained_timer(nullptr), intc(nullptr), chain_tag(nullptr), intc_tag(nullptr), irq_ca(0), irq_cb(0), irq_v(0), chain_type(0), tcr(0), tcsr(0), tcnt(0), extra_clock_bit(false), has_adte(false), has_ice(false), clock_type(0), clock_divider(0), clear_type(0), counter_cycle(0), last_clock_update(0), event_time(0) @@ -351,7 +351,7 @@ void h8_timer8_channel_device::timer_tick() } } -h8h_timer8_channel_device::h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8h_timer8_channel_device::h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8_timer8_channel_device(mconfig, H8H_TIMER8_CHANNEL, tag, owner, clock) { } diff --git a/src/devices/cpu/h8/h8_timer8.h b/src/devices/cpu/h8/h8_timer8.h index 0ba06d933ba..fa4a6c1ac33 100644 --- a/src/devices/cpu/h8/h8_timer8.h +++ b/src/devices/cpu/h8/h8_timer8.h @@ -29,10 +29,10 @@ public: DIV }; - h8_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int irq_ca, int irq_cb, int irq_v, int div1, int div2, int div3, int div4, int div5, int div6) - : h8_timer8_channel_device(mconfig, tag, owner, 0) + : h8_timer8_channel_device(mconfig, tag, owner) { set_info(intc, irq_ca, irq_cb, irq_v, div1, div2, div3, div4, div5, div6); } @@ -88,7 +88,7 @@ protected: int clock_type, clock_divider, clear_type, counter_cycle; uint64_t last_clock_update, event_time; - h8_timer8_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8_timer8_channel_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -102,10 +102,10 @@ protected: class h8h_timer8_channel_device : public h8_timer8_channel_device { public: - h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8h_timer8_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int irq_ca, int irq_cb, int irq_v, const char *chain_tag, int chain_type, bool has_adte, bool has_ice) - : h8h_timer8_channel_device(mconfig, tag, owner, 0) + : h8h_timer8_channel_device(mconfig, tag, owner) { set_info(intc, irq_ca, irq_cb, irq_v, chain_tag, chain_type, has_adte, has_ice); } diff --git a/src/devices/cpu/h8/h8_watchdog.cpp b/src/devices/cpu/h8/h8_watchdog.cpp index d3386b465fe..8770eddf4e0 100644 --- a/src/devices/cpu/h8/h8_watchdog.cpp +++ b/src/devices/cpu/h8/h8_watchdog.cpp @@ -6,7 +6,7 @@ DEFINE_DEVICE_TYPE(H8_WATCHDOG, h8_watchdog_device, "h8_watchdog", "H8 watchdog" const int h8_watchdog_device::div_bh[8] = { 1, 6, 7, 9, 11, 13, 15, 17 }; const int h8_watchdog_device::div_s [8] = { 1, 5, 6, 7, 8, 9, 11, 12 }; -h8_watchdog_device::h8_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8_watchdog_device::h8_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, H8_WATCHDOG, tag, owner, clock), cpu(*this, DEVICE_SELF_OWNER) { diff --git a/src/devices/cpu/h8/h8_watchdog.h b/src/devices/cpu/h8/h8_watchdog.h index 1cb63025141..06d5f1b7bdf 100644 --- a/src/devices/cpu/h8/h8_watchdog.h +++ b/src/devices/cpu/h8/h8_watchdog.h @@ -49,9 +49,9 @@ class h8_watchdog_device : public device_t { public: enum { B, H, S }; - h8_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); h8_watchdog_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *intc, int irq, int type) - : h8_watchdog_device(mconfig, tag, owner, 0) + : h8_watchdog_device(mconfig, tag, owner) { set_info(intc, irq, type); } diff --git a/src/devices/cpu/h8/h8h.cpp b/src/devices/cpu/h8/h8h.cpp index 21f40f77600..829c1a01244 100644 --- a/src/devices/cpu/h8/h8h.cpp +++ b/src/devices/cpu/h8/h8h.cpp @@ -4,7 +4,7 @@ #include "h8h.h" #include "h8hd.h" -h8h_device::h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) : +h8h_device::h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate) : h8_device(mconfig, type, tag, owner, clock, map_delegate) { supports_advanced = true; diff --git a/src/devices/cpu/h8/h8h.h b/src/devices/cpu/h8/h8h.h index 1b0c9b4b3ce..ad9a94e4400 100644 --- a/src/devices/cpu/h8/h8h.h +++ b/src/devices/cpu/h8/h8h.h @@ -20,7 +20,7 @@ class h8h_device : public h8_device { protected: - h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); + h8h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/h8/h8s2000.cpp b/src/devices/cpu/h8/h8s2000.cpp index 04da92cdee3..41279505e69 100644 --- a/src/devices/cpu/h8/h8s2000.cpp +++ b/src/devices/cpu/h8/h8s2000.cpp @@ -4,7 +4,7 @@ #include "h8s2000.h" #include "h8s2000d.h" -h8s2000_device::h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) : +h8s2000_device::h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate) : h8h_device(mconfig, type, tag, owner, clock, map_delegate) { has_exr = true; diff --git a/src/devices/cpu/h8/h8s2000.h b/src/devices/cpu/h8/h8s2000.h index 8f7721928c3..a2f79b40fb4 100644 --- a/src/devices/cpu/h8/h8s2000.h +++ b/src/devices/cpu/h8/h8s2000.h @@ -22,7 +22,7 @@ class h8s2000_device : public h8h_device { protected: - h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); + h8s2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/h8/h8s2245.cpp b/src/devices/cpu/h8/h8s2245.cpp index b5101017f07..2ce4124e6cc 100644 --- a/src/devices/cpu/h8/h8s2245.cpp +++ b/src/devices/cpu/h8/h8s2245.cpp @@ -9,7 +9,7 @@ DEFINE_DEVICE_TYPE(H8S2245, h8s2245_device, "h8s2245", "Hitachi H8S/2245") DEFINE_DEVICE_TYPE(H8S2246, h8s2246_device, "h8s2246", "Hitachi H8S/2246") -h8s2245_device::h8s2245_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h8s2245_device::h8s2245_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2245_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -41,22 +41,22 @@ h8s2245_device::h8s2245_device(const machine_config &mconfig, device_type type, { } -h8s2245_device::h8s2245_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2245_device::h8s2245_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2245_device(mconfig, H8S2245, tag, owner, clock, 0xffec00) { } -h8s2241_device::h8s2241_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2241_device::h8s2241_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2245_device(mconfig, H8S2241, tag, owner, clock, 0xffec00) { } -h8s2242_device::h8s2242_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2242_device::h8s2242_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2245_device(mconfig, H8S2242, tag, owner, clock, 0xffdc00) { } -h8s2246_device::h8s2246_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2246_device::h8s2246_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2245_device(mconfig, H8S2246, tag, owner, clock, 0xffdc00) { } diff --git a/src/devices/cpu/h8/h8s2245.h b/src/devices/cpu/h8/h8s2245.h index 4fca522bbc5..342d9e8e854 100644 --- a/src/devices/cpu/h8/h8s2245.h +++ b/src/devices/cpu/h8/h8s2245.h @@ -35,7 +35,7 @@ class h8s2245_device : public h8s2000_device { public: - h8s2245_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2245_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); @@ -73,7 +73,7 @@ protected: uint16_t mstpcr; uint8_t syscr; - h8s2245_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h8s2245_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); virtual bool exr_in_stack() const override; virtual void update_irq_filter() override; @@ -91,17 +91,17 @@ protected: class h8s2241_device : public h8s2245_device { public: - h8s2241_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2241_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2242_device : public h8s2245_device { public: - h8s2242_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2242_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2246_device : public h8s2245_device { public: - h8s2246_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2246_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H8S2241, h8s2241_device) diff --git a/src/devices/cpu/h8/h8s2320.cpp b/src/devices/cpu/h8/h8s2320.cpp index 14cd0e0a396..8b359fa74f0 100644 --- a/src/devices/cpu/h8/h8s2320.cpp +++ b/src/devices/cpu/h8/h8s2320.cpp @@ -14,7 +14,7 @@ DEFINE_DEVICE_TYPE(H8S2328, h8s2328_device, "h8s2328", "Hitachi H8S/2328") DEFINE_DEVICE_TYPE(H8S2329, h8s2329_device, "h8s2329", "Hitachi H8S/2329") -h8s2320_device::h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h8s2320_device::h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2320_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -53,47 +53,47 @@ h8s2320_device::h8s2320_device(const machine_config &mconfig, device_type type, { } -h8s2320_device::h8s2320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2320_device::h8s2320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2320, tag, owner, clock, 0xffec00) { } -h8s2321_device::h8s2321_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2321_device::h8s2321_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2321, tag, owner, clock, 0xffec00) { } -h8s2322_device::h8s2322_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2322_device::h8s2322_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2322, tag, owner, clock, 0xffdc00) { } -h8s2323_device::h8s2323_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2323_device::h8s2323_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2323, tag, owner, clock, 0xffdc00) { } -h8s2324_device::h8s2324_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2324_device::h8s2324_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2324, tag, owner, clock, 0xff7c00) { } -h8s2326_device::h8s2326_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2326_device::h8s2326_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2326, tag, owner, clock, 0xffdc00) { } -h8s2327_device::h8s2327_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2327_device::h8s2327_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2327, tag, owner, clock, 0xffdc00) { } -h8s2328_device::h8s2328_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2328_device::h8s2328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2328, tag, owner, clock, 0xffdc00) { } -h8s2329_device::h8s2329_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2329_device::h8s2329_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2320_device(mconfig, H8S2329, tag, owner, clock, 0xff7c00) { } diff --git a/src/devices/cpu/h8/h8s2320.h b/src/devices/cpu/h8/h8s2320.h index 4ea272d283f..ef8da4a9303 100644 --- a/src/devices/cpu/h8/h8s2320.h +++ b/src/devices/cpu/h8/h8s2320.h @@ -41,7 +41,7 @@ class h8s2320_device : public h8s2000_device { public: - h8s2320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); @@ -83,7 +83,7 @@ protected: uint32_t ram_start; uint8_t syscr; - h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h8s2320_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); virtual bool exr_in_stack() const override; virtual void update_irq_filter() override; @@ -102,42 +102,42 @@ protected: class h8s2321_device : public h8s2320_device { public: - h8s2321_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2321_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2322_device : public h8s2320_device { public: - h8s2322_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2322_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2323_device : public h8s2320_device { public: - h8s2323_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2323_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2324_device : public h8s2320_device { public: - h8s2324_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2324_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2326_device : public h8s2320_device { public: - h8s2326_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2326_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2327_device : public h8s2320_device { public: - h8s2327_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2327_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2328_device : public h8s2320_device { public: - h8s2328_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2329_device : public h8s2320_device { public: - h8s2329_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2329_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H8S2320, h8s2320_device) diff --git a/src/devices/cpu/h8/h8s2357.cpp b/src/devices/cpu/h8/h8s2357.cpp index eda704291c5..2bef42912f6 100644 --- a/src/devices/cpu/h8/h8s2357.cpp +++ b/src/devices/cpu/h8/h8s2357.cpp @@ -10,7 +10,7 @@ DEFINE_DEVICE_TYPE(H8S2394, h8s2394_device, "h8s2394", "Hitachi H8S/2394") DEFINE_DEVICE_TYPE(H8S2392, h8s2392_device, "h8s2392", "Hitachi H8S/2392") DEFINE_DEVICE_TYPE(H8S2390, h8s2390_device, "h8s2390", "Hitachi H8S/2390") -h8s2357_device::h8s2357_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start) : +h8s2357_device::h8s2357_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start) : h8s2000_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2357_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -45,32 +45,32 @@ h8s2357_device::h8s2357_device(const machine_config &mconfig, device_type type, { } -h8s2357_device::h8s2357_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2357_device::h8s2357_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2357, tag, owner, clock, 0xffdc00) { } -h8s2352_device::h8s2352_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2352_device::h8s2352_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2352, tag, owner, clock, 0xffdc00) { } -h8s2398_device::h8s2398_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2398_device::h8s2398_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2398, tag, owner, clock, 0xffdc00) { } -h8s2394_device::h8s2394_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2394_device::h8s2394_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2394, tag, owner, clock, 0xff7c00) { } -h8s2392_device::h8s2392_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2392_device::h8s2392_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2392, tag, owner, clock, 0xffdc00) { } -h8s2390_device::h8s2390_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2390_device::h8s2390_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2357_device(mconfig, H8S2390, tag, owner, clock, 0xffec00) { } diff --git a/src/devices/cpu/h8/h8s2357.h b/src/devices/cpu/h8/h8s2357.h index 3f20c062d01..cfd7f3bb8e7 100644 --- a/src/devices/cpu/h8/h8s2357.h +++ b/src/devices/cpu/h8/h8s2357.h @@ -36,7 +36,7 @@ class h8s2357_device : public h8s2000_device { public: - h8s2357_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2357_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); @@ -74,7 +74,7 @@ protected: uint32_t ram_start; unsigned char syscr; - h8s2357_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t start); + h8s2357_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t start); virtual bool exr_in_stack() const override; virtual void update_irq_filter() override; @@ -93,27 +93,27 @@ protected: class h8s2352_device : public h8s2357_device { public: - h8s2352_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2352_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2398_device : public h8s2357_device { public: - h8s2398_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2398_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2394_device : public h8s2357_device { public: - h8s2394_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2394_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2392_device : public h8s2357_device { public: - h8s2392_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2392_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8s2390_device : public h8s2357_device { public: - h8s2390_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2390_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H8S2357, h8s2357_device) diff --git a/src/devices/cpu/h8/h8s2600.cpp b/src/devices/cpu/h8/h8s2600.cpp index be04b3382df..1cc751757dd 100644 --- a/src/devices/cpu/h8/h8s2600.cpp +++ b/src/devices/cpu/h8/h8s2600.cpp @@ -4,7 +4,7 @@ #include "h8s2600.h" #include "h8s2600d.h" -h8s2600_device::h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) : +h8s2600_device::h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate) : h8s2000_device(mconfig, type, tag, owner, clock, map_delegate) { has_mac = true; diff --git a/src/devices/cpu/h8/h8s2600.h b/src/devices/cpu/h8/h8s2600.h index 84c611dd8f7..dd323c3f85f 100644 --- a/src/devices/cpu/h8/h8s2600.h +++ b/src/devices/cpu/h8/h8s2600.h @@ -20,7 +20,7 @@ class h8s2600_device : public h8s2000_device { protected: - h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); + h8s2600_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/h8/h8s2655.cpp b/src/devices/cpu/h8/h8s2655.cpp index eb29b29bdc3..c6dab386354 100644 --- a/src/devices/cpu/h8/h8s2655.cpp +++ b/src/devices/cpu/h8/h8s2655.cpp @@ -6,7 +6,7 @@ DEFINE_DEVICE_TYPE(H8S2655, h8s2655_device, "h8s2655", "Hitachi H8S/2655") DEFINE_DEVICE_TYPE(H8S2653, h8s2653_device, "h8s2653", "Hitachi H8S/2653") -h8s2655_device::h8s2655_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +h8s2655_device::h8s2655_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8s2600_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8s2655_device::map), this)), intc(*this, "intc"), adc(*this, "adc"), @@ -41,13 +41,13 @@ h8s2655_device::h8s2655_device(const machine_config &mconfig, device_type type, has_trace = true; } -h8s2655_device::h8s2655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2655_device::h8s2655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2655_device(mconfig, H8S2655, tag, owner, clock) { } -h8s2653_device::h8s2653_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +h8s2653_device::h8s2653_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8s2655_device(mconfig, H8S2653, tag, owner, clock) { } diff --git a/src/devices/cpu/h8/h8s2655.h b/src/devices/cpu/h8/h8s2655.h index aa8384bce73..b8854f9d397 100644 --- a/src/devices/cpu/h8/h8s2655.h +++ b/src/devices/cpu/h8/h8s2655.h @@ -28,7 +28,7 @@ class h8s2655_device : public h8s2600_device { public: - h8s2655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t syscr_r(); void syscr_w(uint8_t data); @@ -65,7 +65,7 @@ protected: uint8_t syscr; - h8s2655_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + h8s2655_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual bool exr_in_stack() const override; virtual void update_irq_filter() override; @@ -84,7 +84,7 @@ protected: class h8s2653_device : public h8s2655_device { public: - h8s2653_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + h8s2653_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(H8S2655, h8s2655_device) diff --git a/src/devices/cpu/h8500/h8500.cpp b/src/devices/cpu/h8500/h8500.cpp index b022749197c..563ab9ce214 100644 --- a/src/devices/cpu/h8500/h8500.cpp +++ b/src/devices/cpu/h8500/h8500.cpp @@ -12,7 +12,7 @@ #include "h8500.h" #include "h8500dasm.h" -h8500_device::h8500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, int buswidth, int ramsize, int defmode, address_map_constructor map) +h8500_device::h8500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, int buswidth, int ramsize, int defmode, address_map_constructor map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, buswidth, addrbits, 0, map) , m_ram_config("intram", ENDIANNESS_BIG, 16, ramsize, 0, address_map_constructor(FUNC(h8500_device::ram_map), this)) diff --git a/src/devices/cpu/h8500/h8500.h b/src/devices/cpu/h8500/h8500.h index 3755ab7a4ab..7959b872639 100644 --- a/src/devices/cpu/h8500/h8500.h +++ b/src/devices/cpu/h8500/h8500.h @@ -21,7 +21,7 @@ public: void set_mode(u8 mode) { assert(!configured()); m_mode_control = mode; } protected: - h8500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, int buswidth, int ramsize, int defmode, address_map_constructor map); + h8500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, int buswidth, int ramsize, int defmode, address_map_constructor map); // device-level overrides virtual void device_config_complete() override; diff --git a/src/devices/cpu/h8500/h8510.cpp b/src/devices/cpu/h8500/h8510.cpp index b4ade58d8d5..40aedafe93e 100644 --- a/src/devices/cpu/h8500/h8510.cpp +++ b/src/devices/cpu/h8500/h8510.cpp @@ -11,12 +11,12 @@ DEFINE_DEVICE_TYPE(HD6415108, hd6415108_device, "hd6415108", "Hitachi HD6415108 (H8/510)") -h8510_device::h8510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +h8510_device::h8510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8500_device(mconfig, type, tag, owner, clock, 24, 16, 0, 4, address_map_constructor(FUNC(h8510_device::internal_map), this)) { } -hd6415108_device::hd6415108_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6415108_device::hd6415108_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8510_device(mconfig, HD6415108, tag, owner, clock) { } diff --git a/src/devices/cpu/h8500/h8510.h b/src/devices/cpu/h8500/h8510.h index 1cbefe87aa3..96809f0bf63 100644 --- a/src/devices/cpu/h8500/h8510.h +++ b/src/devices/cpu/h8500/h8510.h @@ -11,7 +11,7 @@ class h8510_device : public h8500_device { protected: - h8510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + h8510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); @@ -21,7 +21,7 @@ class hd6415108_device : public h8510_device { public: // device type constructor - hd6415108_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6415108_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(HD6415108, hd6415108_device) diff --git a/src/devices/cpu/h8500/h8520.cpp b/src/devices/cpu/h8500/h8520.cpp index 459a979da98..2298459cbcc 100644 --- a/src/devices/cpu/h8500/h8520.cpp +++ b/src/devices/cpu/h8500/h8520.cpp @@ -12,17 +12,17 @@ DEFINE_DEVICE_TYPE(HD6435208, hd6435208_device, "hd6435208", "Hitachi HD6435208 (H8/520)") DEFINE_DEVICE_TYPE(HD6475208, hd6475208_device, "hd6475208", "Hitachi HD6475208 (H8/520)") -h8520_device::h8520_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +h8520_device::h8520_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8500_device(mconfig, type, tag, owner, clock, 20, 8, 9, 4, address_map_constructor(FUNC(h8520_device::internal_map), this)) { } -hd6435208_device::hd6435208_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6435208_device::hd6435208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8520_device(mconfig, HD6435208, tag, owner, clock) { } -hd6475208_device::hd6475208_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6475208_device::hd6475208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8520_device(mconfig, HD6475208, tag, owner, clock) { } diff --git a/src/devices/cpu/h8500/h8520.h b/src/devices/cpu/h8500/h8520.h index 7f66327c796..b43d622476f 100644 --- a/src/devices/cpu/h8500/h8520.h +++ b/src/devices/cpu/h8500/h8520.h @@ -11,7 +11,7 @@ class h8520_device : public h8500_device { protected: - h8520_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + h8520_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); @@ -21,14 +21,14 @@ class hd6435208_device : public h8520_device { public: // device type constructor - hd6435208_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6435208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd6475208_device : public h8520_device { public: // device type constructor - hd6475208_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6475208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(HD6435208, hd6435208_device) diff --git a/src/devices/cpu/h8500/h8532.cpp b/src/devices/cpu/h8500/h8532.cpp index 20c9869c4ee..484b09573ca 100644 --- a/src/devices/cpu/h8500/h8532.cpp +++ b/src/devices/cpu/h8500/h8532.cpp @@ -12,17 +12,17 @@ DEFINE_DEVICE_TYPE(HD6435328, hd6435328_device, "hd6435328", "Hitachi HD6435328 (H8/532)") DEFINE_DEVICE_TYPE(HD6475328, hd6475328_device, "hd6475328", "Hitachi HD6475328 (H8/532)") -h8532_device::h8532_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +h8532_device::h8532_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8500_device(mconfig, type, tag, owner, clock, 20, 8, 10, 4, address_map_constructor(FUNC(h8532_device::internal_map), this)) { } -hd6435328_device::hd6435328_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6435328_device::hd6435328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8532_device(mconfig, HD6435328, tag, owner, clock) { } -hd6475328_device::hd6475328_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6475328_device::hd6475328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8532_device(mconfig, HD6475328, tag, owner, clock) { } diff --git a/src/devices/cpu/h8500/h8532.h b/src/devices/cpu/h8500/h8532.h index 71ec652a465..6aa703bd63c 100644 --- a/src/devices/cpu/h8500/h8532.h +++ b/src/devices/cpu/h8500/h8532.h @@ -11,7 +11,7 @@ class h8532_device : public h8500_device { protected: - h8532_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + h8532_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); @@ -21,14 +21,14 @@ class hd6435328_device : public h8532_device { public: // device type constructor - hd6435328_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6435328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd6475328_device : public h8532_device { public: // device type constructor - hd6475328_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6475328_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(HD6435328, hd6435328_device) diff --git a/src/devices/cpu/h8500/h8534.cpp b/src/devices/cpu/h8500/h8534.cpp index 06c9b0dc24f..78e63d11f71 100644 --- a/src/devices/cpu/h8500/h8534.cpp +++ b/src/devices/cpu/h8500/h8534.cpp @@ -14,37 +14,37 @@ DEFINE_DEVICE_TYPE(HD6475348, hd6475348_device, "hd6475348", "Hitachi HD6475348 DEFINE_DEVICE_TYPE(HD6435368, hd6435368_device, "hd6435368", "Hitachi HD6435368 (H8/536)") DEFINE_DEVICE_TYPE(HD6475368, hd6475368_device, "hd6475368", "Hitachi HD6475368 (H8/536)") -h8534_device::h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +h8534_device::h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : h8500_device(mconfig, type, tag, owner, clock, 20, 8, 11, 4, map) { } -h8534_device::h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +h8534_device::h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8534_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8534_device::internal_map), this)) { } -hd6435348_device::hd6435348_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6435348_device::hd6435348_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8534_device(mconfig, HD6435348, tag, owner, clock) { } -hd6475348_device::hd6475348_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6475348_device::hd6475348_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8534_device(mconfig, HD6475348, tag, owner, clock) { } -h8536_device::h8536_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +h8536_device::h8536_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : h8534_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(h8536_device::internal_map), this)) { } -hd6435368_device::hd6435368_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6435368_device::hd6435368_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8536_device(mconfig, HD6435368, tag, owner, clock) { } -hd6475368_device::hd6475368_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd6475368_device::hd6475368_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : h8536_device(mconfig, HD6475368, tag, owner, clock) { } diff --git a/src/devices/cpu/h8500/h8534.h b/src/devices/cpu/h8500/h8534.h index 2fad7985a70..c73faaf7ad9 100644 --- a/src/devices/cpu/h8500/h8534.h +++ b/src/devices/cpu/h8500/h8534.h @@ -12,8 +12,8 @@ class h8534_device : public h8500_device { protected: // delegating constructors - h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); - h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); + h8534_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); void register_field_map(address_map &map); @@ -25,20 +25,20 @@ class hd6435348_device : public h8534_device { public: // device type constructor - hd6435348_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6435348_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd6475348_device : public h8534_device { public: // device type constructor - hd6475348_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6475348_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class h8536_device : public h8534_device { protected: - h8536_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + h8536_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); @@ -48,14 +48,14 @@ class hd6435368_device : public h8536_device { public: // device type constructor - hd6435368_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6435368_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd6475368_device : public h8536_device { public: // device type constructor - hd6475368_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd6475368_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(HD6435348, hd6435348_device) diff --git a/src/devices/cpu/hcd62121/hcd62121.cpp b/src/devices/cpu/hcd62121/hcd62121.cpp index e05fe883d65..20ce50af3fd 100644 --- a/src/devices/cpu/hcd62121/hcd62121.cpp +++ b/src/devices/cpu/hcd62121/hcd62121.cpp @@ -50,7 +50,7 @@ constexpr u8 FLAG_ZH = 0x01; DEFINE_DEVICE_TYPE(HCD62121, hcd62121_cpu_device, "hcd62121", "Hitachi HCD62121") -hcd62121_cpu_device::hcd62121_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hcd62121_cpu_device::hcd62121_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, HCD62121, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 24, 0) , m_prev_pc(0) diff --git a/src/devices/cpu/hcd62121/hcd62121.h b/src/devices/cpu/hcd62121/hcd62121.h index d7d35a881dd..dad5bc53b2b 100644 --- a/src/devices/cpu/hcd62121/hcd62121.h +++ b/src/devices/cpu/hcd62121/hcd62121.h @@ -9,7 +9,7 @@ class hcd62121_cpu_device : public cpu_device { public: // construction/destruction - hcd62121_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hcd62121_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto kol_cb() { return m_kol_cb.bind(); } auto koh_cb() { return m_koh_cb.bind(); } diff --git a/src/devices/cpu/hd61700/hd61700.cpp b/src/devices/cpu/hd61700/hd61700.cpp index 2241855cf1c..095cc742406 100644 --- a/src/devices/cpu/hd61700/hd61700.cpp +++ b/src/devices/cpu/hd61700/hd61700.cpp @@ -102,7 +102,7 @@ DEFINE_DEVICE_TYPE(HD61700, hd61700_cpu_device, "hd61700", "Hitachi HD61700") // hd61700_cpu_device - constructor //------------------------------------------------- -hd61700_cpu_device::hd61700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd61700_cpu_device::hd61700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, HD61700, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 18, -1) , m_ppc(0x0000) diff --git a/src/devices/cpu/hd61700/hd61700.h b/src/devices/cpu/hd61700/hd61700.h index 6f7ef9462ff..25d1a37f113 100644 --- a/src/devices/cpu/hd61700/hd61700.h +++ b/src/devices/cpu/hd61700/hd61700.h @@ -33,7 +33,7 @@ class hd61700_cpu_device : public cpu_device { public: // construction/destruction - hd61700_cpu_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + hd61700_cpu_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); auto lcd_ctrl() { return m_lcd_ctrl_cb.bind(); } auto lcd_write() { return m_lcd_write_cb.bind(); } diff --git a/src/devices/cpu/hmcs40/hmcs40.cpp b/src/devices/cpu/hmcs40/hmcs40.cpp index 841e37e1558..1c2f1a29b01 100644 --- a/src/devices/cpu/hmcs40/hmcs40.cpp +++ b/src/devices/cpu/hmcs40/hmcs40.cpp @@ -93,7 +93,7 @@ void hmcs40_cpu_device::data_160x4(address_map &map) // device definitions -hmcs40_cpu_device::hmcs40_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, u16 polarity, int stack_levels, int pcwidth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) +hmcs40_cpu_device::hmcs40_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int family, u16 polarity, int stack_levels, int pcwidth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, prgwidth, -1, program) , m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data) @@ -110,56 +110,56 @@ hmcs40_cpu_device::hmcs40_cpu_device(const machine_config &mconfig, device_type { } -hmcs43_cpu_device::hmcs43_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity) +hmcs43_cpu_device::hmcs43_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity) : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS43, polarity, 3 /* stack levels */, 10 /* pc width */, 11 /* prg width */, address_map_constructor(FUNC(hmcs43_cpu_device::program_1k), this), 7 /* data width */, address_map_constructor(FUNC(hmcs43_cpu_device::data_80x4), this)) { } -hd38750_device::hd38750_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38750_device::hd38750_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs43_cpu_device(mconfig, HD38750, tag, owner, clock, IS_PMOS) { } -hd38755_device::hd38755_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38755_device::hd38755_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs43_cpu_device(mconfig, HD38755, tag, owner, clock, IS_PMOS) { } -hd44750_device::hd44750_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44750_device::hd44750_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs43_cpu_device(mconfig, HD44750, tag, owner, clock, IS_CMOS) { } -hd44758_device::hd44758_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44758_device::hd44758_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs43_cpu_device(mconfig, HD44758, tag, owner, clock, IS_CMOS) { } -hmcs44_cpu_device::hmcs44_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity) +hmcs44_cpu_device::hmcs44_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity) : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS44, polarity, 4, 11, 12, address_map_constructor(FUNC(hmcs44_cpu_device::program_2k), this), 8, address_map_constructor(FUNC(hmcs44_cpu_device::data_160x4), this)) { } -hd38800_device::hd38800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38800_device::hd38800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs44_cpu_device(mconfig, HD38800, tag, owner, clock, IS_PMOS) { } -hd38805_device::hd38805_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38805_device::hd38805_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs44_cpu_device(mconfig, HD38805, tag, owner, clock, IS_PMOS) { } -hd44801_device::hd44801_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44801_device::hd44801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs44_cpu_device(mconfig, HD44801, tag, owner, clock, IS_CMOS) { } -hd44808_device::hd44808_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44808_device::hd44808_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs44_cpu_device(mconfig, HD44808, tag, owner, clock, IS_CMOS) { } -hmcs45_cpu_device::hmcs45_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity) +hmcs45_cpu_device::hmcs45_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity) : hmcs40_cpu_device(mconfig, type, tag, owner, clock, HMCS40_FAMILY_HMCS45, polarity, 4, 11, 12, address_map_constructor(FUNC(hmcs45_cpu_device::program_2k), this), 8, address_map_constructor(FUNC(hmcs45_cpu_device::data_160x4), this)) { } -hd38820_device::hd38820_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38820_device::hd38820_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs45_cpu_device(mconfig, HD38820, tag, owner, clock, IS_PMOS) { } -hd38825_device::hd38825_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd38825_device::hd38825_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs45_cpu_device(mconfig, HD38825, tag, owner, clock, IS_PMOS) { } -hd44820_device::hd44820_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44820_device::hd44820_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs45_cpu_device(mconfig, HD44820, tag, owner, clock, IS_CMOS) { } -hd44828_device::hd44828_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hd44828_device::hd44828_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hmcs45_cpu_device(mconfig, HD44828, tag, owner, clock, IS_CMOS) { } diff --git a/src/devices/cpu/hmcs40/hmcs40.h b/src/devices/cpu/hmcs40/hmcs40.h index 0738eab209a..ac0ae2f75c0 100644 --- a/src/devices/cpu/hmcs40/hmcs40.h +++ b/src/devices/cpu/hmcs40/hmcs40.h @@ -101,7 +101,7 @@ protected: }; // construction/destruction - hmcs40_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, u16 polarity, int stack_levels, int pcwidth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + hmcs40_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int family, u16 polarity, int stack_levels, int pcwidth, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; @@ -302,7 +302,7 @@ protected: class hmcs43_cpu_device : public hmcs40_cpu_device { protected: - hmcs43_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity); + hmcs43_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity); // overrides virtual u8 read_r(int index) override; @@ -313,32 +313,32 @@ protected: class hd38750_device : public hmcs43_cpu_device { public: - hd38750_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38750_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd38755_device : public hmcs43_cpu_device { public: - hd38755_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38755_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44750_device : public hmcs43_cpu_device { public: - hd44750_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44750_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44758_device : public hmcs43_cpu_device { public: - hd44758_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44758_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hmcs44_cpu_device : public hmcs40_cpu_device { protected: - hmcs44_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity); + hmcs44_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity); // overrides virtual u8 read_r(int index) override; @@ -348,32 +348,32 @@ protected: class hd38800_device : public hmcs44_cpu_device { public: - hd38800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd38805_device : public hmcs44_cpu_device { public: - hd38805_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38805_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44801_device : public hmcs44_cpu_device { public: - hd44801_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44808_device : public hmcs44_cpu_device { public: - hd44808_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44808_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hmcs45_cpu_device : public hmcs40_cpu_device { protected: - hmcs45_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 polarity); + hmcs45_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 polarity); // overrides virtual u8 read_r(int index) override; @@ -383,25 +383,25 @@ protected: class hd38820_device : public hmcs45_cpu_device { public: - hd38820_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38820_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd38825_device : public hmcs45_cpu_device { public: - hd38825_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd38825_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44820_device : public hmcs45_cpu_device { public: - hd44820_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44820_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd44828_device : public hmcs45_cpu_device { public: - hd44828_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hd44828_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/hpc/hpc.cpp b/src/devices/cpu/hpc/hpc.cpp index 399ca9164af..60de068da6b 100644 --- a/src/devices/cpu/hpc/hpc.cpp +++ b/src/devices/cpu/hpc/hpc.cpp @@ -65,7 +65,7 @@ std::unique_ptr<util::disasm_interface> hpc46104_device::create_disassembler() } -hpc_device::hpc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +hpc_device::hpc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, 0, map) , m_program(nullptr) @@ -75,12 +75,12 @@ hpc_device::hpc_device(const machine_config &mconfig, device_type type, const ch { } -hpc46003_device::hpc46003_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hpc46003_device::hpc46003_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hpc_device(mconfig, HPC46003, tag, owner, clock, address_map_constructor(FUNC(hpc46003_device::internal_map), this)) { } -hpc46104_device::hpc46104_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +hpc46104_device::hpc46104_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hpc_device(mconfig, HPC46104, tag, owner, clock, address_map_constructor(FUNC(hpc46104_device::internal_map), this)) { } diff --git a/src/devices/cpu/hpc/hpc.h b/src/devices/cpu/hpc/hpc.h index 5f73a0ee2e6..685bae90c61 100644 --- a/src/devices/cpu/hpc/hpc.h +++ b/src/devices/cpu/hpc/hpc.h @@ -22,7 +22,7 @@ public: protected: // construction/destruction - hpc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + hpc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); // device-level overrides virtual void device_start() override; @@ -56,7 +56,7 @@ class hpc46003_device : public hpc_device { public: // construction/destruction - hpc46003_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hpc46003_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -70,7 +70,7 @@ class hpc46104_device : public hpc_device { public: // construction/destruction - hpc46104_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + hpc46104_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/hphybrid/hphybrid.cpp b/src/devices/cpu/hphybrid/hphybrid.cpp index a4eb434167a..eedfcee51bb 100644 --- a/src/devices/cpu/hphybrid/hphybrid.cpp +++ b/src/devices/cpu/hphybrid/hphybrid.cpp @@ -166,7 +166,7 @@ WRITE_LINE_MEMBER(hp_hybrid_cpu_device::flag_w) BIT_CLR(m_flags, HPHYBRID_FLG_BIT); } -hp_hybrid_cpu_device::hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t addrwidth) +hp_hybrid_cpu_device::hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t addrwidth) : cpu_device(mconfig, type, tag, owner, clock) , m_pa_changed_func(*this) , m_opcode_func(*this) @@ -1525,12 +1525,12 @@ void hp_hybrid_cpu_device::do_mpy() // ******************************************************************************** // hp_5061_3011_cpu_device // ******************************************************************************** -hp_5061_3011_cpu_device::hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hp_5061_3011_cpu_device::hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hp_hybrid_cpu_device(mconfig, HP_5061_3011, tag, owner, clock, 16) { } -hp_5061_3011_cpu_device::hp_5061_3011_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t addrwidth) +hp_5061_3011_cpu_device::hp_5061_3011_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t addrwidth) : hp_hybrid_cpu_device(mconfig, type, tag, owner, clock, addrwidth) { } @@ -1728,7 +1728,7 @@ std::unique_ptr<util::disasm_interface> hp_5061_3011_cpu_device::create_disassem // ******************************************************************************** // hp_5061_3001_cpu_device // ******************************************************************************** -hp_5061_3001_cpu_device::hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hp_5061_3001_cpu_device::hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hp_5061_3011_cpu_device(mconfig, HP_5061_3001, tag, owner, clock, 22) { } @@ -1922,7 +1922,7 @@ void hp_5061_3001_cpu_device::enter_isr() // ******************************************************************************** // hp_09825_67907_cpu_device // ******************************************************************************** -hp_09825_67907_cpu_device::hp_09825_67907_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hp_09825_67907_cpu_device::hp_09825_67907_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hp_hybrid_cpu_device(mconfig , HP_09825_67907 , tag , owner , clock , 15) { } diff --git a/src/devices/cpu/hphybrid/hphybrid.h b/src/devices/cpu/hphybrid/hphybrid.h index 3864282245d..041e4b8e06f 100644 --- a/src/devices/cpu/hphybrid/hphybrid.h +++ b/src/devices/cpu/hphybrid/hphybrid.h @@ -95,7 +95,7 @@ public: template <typename... T> void set_int_cb(T &&... args) { m_int_func.set(std::forward<T>(args)...); } protected: - hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t addrwidth); + hp_hybrid_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t addrwidth); // device-level overrides virtual void device_start() override; @@ -230,10 +230,10 @@ private: class hp_5061_3011_cpu_device : public hp_hybrid_cpu_device { public: - hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hp_5061_3011_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - hp_5061_3011_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint8_t addrwidth); + hp_5061_3011_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint8_t addrwidth); // TODO: fix virtual uint32_t execute_max_cycles() const noexcept override { return 25; } virtual bool execute_no_bpc(uint16_t opcode , uint16_t& next_pc) override; @@ -248,7 +248,7 @@ protected: class hp_5061_3001_cpu_device : public hp_5061_3011_cpu_device { public: - hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hp_5061_3001_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // Set boot mode of 5061-3001: either normal (false) or as in HP9845 system (true) void set_9845_boot_mode(bool mode) { m_boot_mode = mode; } @@ -275,7 +275,7 @@ private: class hp_09825_67907_cpu_device : public hp_hybrid_cpu_device { public: - hp_09825_67907_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hp_09825_67907_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/i386/athlon.cpp b/src/devices/cpu/i386/athlon.cpp index dddfa80fa35..692f0e4d1d1 100644 --- a/src/devices/cpu/i386/athlon.cpp +++ b/src/devices/cpu/i386/athlon.cpp @@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(ATHLONXP, athlonxp_device, "athlonxp", "Amd Athlon XP") -athlonxp_device::athlonxp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +athlonxp_device::athlonxp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_device(mconfig, ATHLONXP, tag, owner, clock) , m_data_config("mmio", ENDIANNESS_LITTLE, 32, 32, 0, 32, 12) , m_opcodes_config("debugger", ENDIANNESS_LITTLE, 32, 32, 0, 32, 12) diff --git a/src/devices/cpu/i386/athlon.h b/src/devices/cpu/i386/athlon.h index 69cc6d84794..9c41b90cd2a 100644 --- a/src/devices/cpu/i386/athlon.h +++ b/src/devices/cpu/i386/athlon.h @@ -13,7 +13,7 @@ class athlonxp_device : public pentium_device { public: // construction/destruction - athlonxp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + athlonxp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void opcode_cpuid() override; diff --git a/src/devices/cpu/i386/i386.cpp b/src/devices/cpu/i386/i386.cpp index 152691db3c3..81765619596 100644 --- a/src/devices/cpu/i386/i386.cpp +++ b/src/devices/cpu/i386/i386.cpp @@ -44,13 +44,13 @@ DEFINE_DEVICE_TYPE(PENTIUM3, pentium3_device, "pentium3", "Intel Pentiu DEFINE_DEVICE_TYPE(PENTIUM4, pentium4_device, "pentium4", "Intel Pentium 4") -i386_device::i386_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i386_device::i386_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i386_device(mconfig, I386, tag, owner, clock, 32, 32, 32) { } -i386_device::i386_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_data_width, int program_addr_width, int io_data_width) +i386_device::i386_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_data_width, int program_addr_width, int io_data_width) : cpu_device(mconfig, type, tag, owner, clock) , device_vtlb_interface(mconfig, *this, AS_PROGRAM) , m_program_config("program", ENDIANNESS_LITTLE, program_data_width, program_addr_width, 0, 32, 12) @@ -62,75 +62,75 @@ i386_device::i386_device(const machine_config &mconfig, device_type type, const set_vtlb_dynamic_entries(32); } -i386sx_device::i386sx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i386sx_device::i386sx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i386_device(mconfig, I386SX, tag, owner, clock, 16, 24, 16) { } -i486_device::i486_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i486_device::i486_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i486_device(mconfig, I486, tag, owner, clock) { } -i486_device::i486_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +i486_device::i486_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : i386_device(mconfig, type, tag, owner, clock, 32, 32, 32) { } -i486dx4_device::i486dx4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i486dx4_device::i486dx4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i486_device(mconfig, I486DX4, tag, owner, clock) { } -pentium_device::pentium_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium_device::pentium_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_device(mconfig, PENTIUM, tag, owner, clock) { } -pentium_device::pentium_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +pentium_device::pentium_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : i386_device(mconfig, type, tag, owner, clock, 32, 32, 32) { // 64 dtlb small, 8 dtlb large, 32 itlb set_vtlb_dynamic_entries(96); } -mediagx_device::mediagx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mediagx_device::mediagx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i386_device(mconfig, MEDIAGX, tag, owner, clock, 32, 32, 32) { } -pentium_pro_device::pentium_pro_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium_pro_device::pentium_pro_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_pro_device(mconfig, PENTIUM_PRO, tag, owner, clock) { } -pentium_pro_device::pentium_pro_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +pentium_pro_device::pentium_pro_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : pentium_device(mconfig, type, tag, owner, clock) { } -pentium_mmx_device::pentium_mmx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium_mmx_device::pentium_mmx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_device(mconfig, PENTIUM_MMX, tag, owner, clock) { // 64 dtlb small, 8 dtlb large, 32 itlb small, 2 itlb large set_vtlb_dynamic_entries(96); } -pentium2_device::pentium2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium2_device::pentium2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_pro_device(mconfig, PENTIUM2, tag, owner, clock) { // 64 dtlb small, 8 dtlb large, 32 itlb small, 2 itlb large set_vtlb_dynamic_entries(96); } -pentium3_device::pentium3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium3_device::pentium3_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_pro_device(mconfig, PENTIUM3, tag, owner, clock) { // 64 dtlb small, 8 dtlb large, 32 itlb small, 2 itlb large set_vtlb_dynamic_entries(96); } -pentium4_device::pentium4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pentium4_device::pentium4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pentium_device(mconfig, PENTIUM4, tag, owner, clock) { // 128 dtlb, 64 itlb diff --git a/src/devices/cpu/i386/i386.h b/src/devices/cpu/i386/i386.h index 60bf5b59b8d..6bb28ee9ff1 100644 --- a/src/devices/cpu/i386/i386.h +++ b/src/devices/cpu/i386/i386.h @@ -29,7 +29,7 @@ class i386_device : public cpu_device, public device_vtlb_interface, public i386 { public: // construction/destruction - i386_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i386_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto smiact() { return m_smiact.bind(); } @@ -42,7 +42,7 @@ public: uint64_t debug_cacheflush(int params, const uint64_t *param); protected: - i386_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_data_width, int program_addr_width, int io_data_width); + i386_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_data_width, int program_addr_width, int io_data_width); // device-level overrides virtual void device_start() override; @@ -1528,7 +1528,7 @@ class i386sx_device : public i386_device { public: // construction/destruction - i386sx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i386sx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 mem_pr8(offs_t address) override { return macache16.read_byte(address); } @@ -1551,10 +1551,10 @@ class i486_device : public i386_device { public: // construction/destruction - i486_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i486_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - i486_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + i486_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -1564,7 +1564,7 @@ class i486dx4_device : public i486_device { public: // construction/destruction - i486dx4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i486dx4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -1575,10 +1575,10 @@ class pentium_device : public i386_device { public: // construction/destruction - pentium_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - pentium_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + pentium_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual bool execute_input_edge_triggered(int inputnum) const noexcept override { return inputnum == INPUT_LINE_NMI || inputnum == INPUT_LINE_SMI; } virtual void execute_set_input(int inputnum, int state) override; @@ -1593,7 +1593,7 @@ class pentium_mmx_device : public pentium_device { public: // construction/destruction - pentium_mmx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium_mmx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -1605,7 +1605,7 @@ class mediagx_device : public i386_device { public: // construction/destruction - mediagx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mediagx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -1617,10 +1617,10 @@ class pentium_pro_device : public pentium_device { public: // construction/destruction - pentium_pro_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium_pro_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - pentium_pro_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + pentium_pro_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual uint64_t opcode_rdmsr(bool &valid_msr) override; virtual void opcode_wrmsr(uint64_t data, bool &valid_msr) override; @@ -1633,7 +1633,7 @@ class pentium2_device : public pentium_pro_device { public: // construction/destruction - pentium2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -1645,7 +1645,7 @@ class pentium3_device : public pentium_pro_device { public: // construction/destruction - pentium3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium3_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -1659,7 +1659,7 @@ class pentium4_device : public pentium_device { public: // construction/destruction - pentium4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pentium4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual uint64_t opcode_rdmsr(bool &valid_msr) override; diff --git a/src/devices/cpu/i8008/i8008.cpp b/src/devices/cpu/i8008/i8008.cpp index c404508560b..9ada7fd875b 100644 --- a/src/devices/cpu/i8008/i8008.cpp +++ b/src/devices/cpu/i8008/i8008.cpp @@ -33,7 +33,7 @@ DEFINE_DEVICE_TYPE(I8008, i8008_device, "i8008", "Intel 8008") //------------------------------------------------- // i8008_device - constructor //------------------------------------------------- -i8008_device::i8008_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8008_device::i8008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, I8008, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 14) , m_io_config("io", ENDIANNESS_LITTLE, 8, 16) diff --git a/src/devices/cpu/i8008/i8008.h b/src/devices/cpu/i8008/i8008.h index 5b7882f7958..a10d9cf882d 100644 --- a/src/devices/cpu/i8008/i8008.h +++ b/src/devices/cpu/i8008/i8008.h @@ -14,7 +14,7 @@ class i8008_device : public cpu_device { public: // construction/destruction - i8008_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: enum diff --git a/src/devices/cpu/i8085/i8085.cpp b/src/devices/cpu/i8085/i8085.cpp index 9dc530c0567..646f0471032 100644 --- a/src/devices/cpu/i8085/i8085.cpp +++ b/src/devices/cpu/i8085/i8085.cpp @@ -201,12 +201,12 @@ DEFINE_DEVICE_TYPE(I8080A, i8080a_cpu_device, "i8080a", "Intel 8080A") DEFINE_DEVICE_TYPE(I8085A, i8085a_cpu_device, "i8085a", "Intel 8085A") -i8085a_cpu_device::i8085a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +i8085a_cpu_device::i8085a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8085a_cpu_device(mconfig, I8085A, tag, owner, clock, CPUTYPE_8085A) { } -i8085a_cpu_device::i8085a_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int cputype) +i8085a_cpu_device::i8085a_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cputype) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0) , m_io_config("io", ENDIANNESS_LITTLE, 8, 8, 0) @@ -221,12 +221,12 @@ i8085a_cpu_device::i8085a_cpu_device(const machine_config &mconfig, device_type { } -i8080_cpu_device::i8080_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +i8080_cpu_device::i8080_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8085a_cpu_device(mconfig, I8080, tag, owner, clock, CPUTYPE_8080) { } -i8080a_cpu_device::i8080a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +i8080a_cpu_device::i8080a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8085a_cpu_device(mconfig, I8080A, tag, owner, clock, CPUTYPE_8080A) { } diff --git a/src/devices/cpu/i8085/i8085.h b/src/devices/cpu/i8085/i8085.h index 5378a712e5e..66186946a40 100644 --- a/src/devices/cpu/i8085/i8085.h +++ b/src/devices/cpu/i8085/i8085.h @@ -40,7 +40,7 @@ public: static constexpr u8 STATUS_MEMR = 0x80; // construction/destruction - i8085a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + i8085a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // CLK rate callback (8085A only) template <typename... T> void set_clk_out(T &&... args) { m_clk_out_func.set(std::forward<T>(args)...); } @@ -61,7 +61,7 @@ public: auto out_sod_func() { return m_out_sod_func.bind(); } protected: - i8085a_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int cputype); + i8085a_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cputype); // device-level overrides virtual void device_config_complete() override; @@ -181,7 +181,7 @@ class i8080_cpu_device : public i8085a_cpu_device { public: // construction/destruction - i8080_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + i8080_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u32 execute_input_lines() const noexcept override { return 1; } @@ -194,7 +194,7 @@ class i8080a_cpu_device : public i8085a_cpu_device { public: // construction/destruction - i8080a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + i8080a_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u32 execute_input_lines() const noexcept override { return 1; } diff --git a/src/devices/cpu/i8089/i8089.cpp b/src/devices/cpu/i8089/i8089.cpp index 7cc3420a619..3a9d3915536 100644 --- a/src/devices/cpu/i8089/i8089.cpp +++ b/src/devices/cpu/i8089/i8089.cpp @@ -34,7 +34,7 @@ DEFINE_DEVICE_TYPE(I8089, i8089_device, "i8089", "Intel 8089 I/O Processor") // i8089_device - constructor //------------------------------------------------- -i8089_device::i8089_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +i8089_device::i8089_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, I8089, tag, owner, clock), m_icount(0), m_ch1(*this, "1"), @@ -210,8 +210,8 @@ void i8089_device::state_string_export(const device_state_entry &entry, std::str void i8089_device::device_add_mconfig(machine_config &config) { - I8089_CHANNEL(config, m_ch1, 0).sintr().set(FUNC(i8089_device::ch1_sintr_w)); - I8089_CHANNEL(config, m_ch2, 0).sintr().set(FUNC(i8089_device::ch2_sintr_w)); + I8089_CHANNEL(config, m_ch1).sintr().set(FUNC(i8089_device::ch1_sintr_w)); + I8089_CHANNEL(config, m_ch2).sintr().set(FUNC(i8089_device::ch2_sintr_w)); } diff --git a/src/devices/cpu/i8089/i8089.h b/src/devices/cpu/i8089/i8089.h index 19f81136336..36068c8c4e7 100644 --- a/src/devices/cpu/i8089/i8089.h +++ b/src/devices/cpu/i8089/i8089.h @@ -11,20 +11,12 @@ #pragma once -#ifdef _MSC_VER -// MSVC seems to want to actually instantiate templates when it gets an extern template declaration, effectively defeating the purpose of extern template declatations altogether -// In this case it causes a problem because the required_device template can't be instantiated for the incomplete i8089_channel_device type #include "i8089_channel.h" -#endif - //************************************************************************** // TYPE DEFINITIONS //************************************************************************** -// forward declaration -class i8089_channel_device; - // ======================> i8089_device class i8089_device : public cpu_device @@ -33,7 +25,7 @@ class i8089_device : public cpu_device public: // construction/destruction - i8089_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8089_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callbacks auto sintr1() { return m_write_sintr1.bind(); } diff --git a/src/devices/cpu/i8089/i8089_channel.cpp b/src/devices/cpu/i8089/i8089_channel.cpp index d13606a1ca5..fd88674fb86 100644 --- a/src/devices/cpu/i8089/i8089_channel.cpp +++ b/src/devices/cpu/i8089/i8089_channel.cpp @@ -49,7 +49,7 @@ DEFINE_DEVICE_TYPE(I8089_CHANNEL, i8089_channel_device, "i8089_channel", "Intel // i8089_channel_device - constructor //------------------------------------------------- -i8089_channel_device::i8089_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +i8089_channel_device::i8089_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, I8089_CHANNEL, tag, owner, clock), m_write_sintr(*this), m_iop(nullptr), diff --git a/src/devices/cpu/i8089/i8089_channel.h b/src/devices/cpu/i8089/i8089_channel.h index 89aa511193b..c7d7d8aeac4 100644 --- a/src/devices/cpu/i8089/i8089_channel.h +++ b/src/devices/cpu/i8089/i8089_channel.h @@ -25,7 +25,7 @@ class i8089_channel_device : public device_t { public: // construction/destruction - i8089_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8089_channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto sintr() { return m_write_sintr.bind(); } diff --git a/src/devices/cpu/i86/i186.cpp b/src/devices/cpu/i86/i186.cpp index 2847607a278..77465ea053c 100644 --- a/src/devices/cpu/i86/i186.cpp +++ b/src/devices/cpu/i86/i186.cpp @@ -133,27 +133,27 @@ DEFINE_DEVICE_TYPE(I80188, i80188_cpu_device, "i80188", "Intel 80188") DEFINE_DEVICE_TYPE(AM186EM, am186em_device, "am186em", "AMD Am186EM") DEFINE_DEVICE_TYPE(AM188EM, am188em_device, "am188em", "AMD Am188EM") -i80186_cpu_device::i80186_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80186_cpu_device::i80186_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80186_cpu_device(mconfig, I80186, tag, owner, clock, 16) { } -i80188_cpu_device::i80188_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80188_cpu_device::i80188_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80186_cpu_device(mconfig, I80188, tag, owner, clock, 8) { } -am186em_device::am186em_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +am186em_device::am186em_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80186_cpu_device(mconfig, AM186EM, tag, owner, clock, 16) { } -am188em_device::am188em_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +am188em_device::am188em_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80186_cpu_device(mconfig, AM188EM, tag, owner, clock, 8) { } -i80186_cpu_device::i80186_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size) +i80186_cpu_device::i80186_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_bus_size) : i8086_common_cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, data_bus_size, 20, 0) , m_opcodes_config("opcodes", ENDIANNESS_LITTLE, data_bus_size, 20, 0) diff --git a/src/devices/cpu/i86/i186.h b/src/devices/cpu/i86/i186.h index f1b8c4633ea..8dda202b4bc 100644 --- a/src/devices/cpu/i86/i186.h +++ b/src/devices/cpu/i86/i186.h @@ -16,7 +16,7 @@ class i80186_cpu_device : public i8086_common_cpu_device { public: // construction/destruction - i80186_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80186_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto read_slave_ack_callback() { return m_read_slave_ack_func.bind(); } auto chip_select_callback() { return m_out_chip_select_func.bind(); } @@ -60,7 +60,7 @@ protected: I80186_POLLSTS }; - i80186_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size); + i80186_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_bus_size); // device_execute_interface overrides virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks / 2); } @@ -168,14 +168,14 @@ class i80188_cpu_device : public i80186_cpu_device { public: // construction/destruction - i80188_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80188_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class am186em_device : public i80186_cpu_device { public: // construction/destruction - am186em_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + am186em_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -187,7 +187,7 @@ class am188em_device : public i80186_cpu_device { public: // construction/destruction - am188em_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + am188em_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides diff --git a/src/devices/cpu/i86/i286.cpp b/src/devices/cpu/i86/i286.cpp index 2d2f2d1b650..d56b4f99895 100644 --- a/src/devices/cpu/i86/i286.cpp +++ b/src/devices/cpu/i86/i286.cpp @@ -166,7 +166,7 @@ const uint8_t i80286_cpu_device::m_i80286_timing[] = DEFINE_DEVICE_TYPE(I80286, i80286_cpu_device, "i80286", "Intel 80286") -i80286_cpu_device::i80286_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80286_cpu_device::i80286_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8086_common_cpu_device(mconfig, I80286, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 24, 0) , m_opcodes_config("opcodes", ENDIANNESS_LITTLE, 16, 24, 0) diff --git a/src/devices/cpu/i86/i286.h b/src/devices/cpu/i86/i286.h index 489e7beb099..1454f14c67e 100644 --- a/src/devices/cpu/i86/i286.h +++ b/src/devices/cpu/i86/i286.h @@ -76,7 +76,7 @@ class i80286_cpu_device : public i8086_common_cpu_device { public: // construction/destruction - i80286_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80286_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // device_memory_interface overrides virtual space_config_vector memory_space_config() const override; diff --git a/src/devices/cpu/i86/i86.cpp b/src/devices/cpu/i86/i86.cpp index fd85830e86b..446ce7981dc 100644 --- a/src/devices/cpu/i86/i86.cpp +++ b/src/devices/cpu/i86/i86.cpp @@ -90,19 +90,19 @@ const uint8_t i8086_cpu_device::m_i8086_timing[] = DEFINE_DEVICE_TYPE(I8086, i8086_cpu_device, "i8086", "Intel 8086") DEFINE_DEVICE_TYPE(I8088, i8088_cpu_device, "i8088", "Intel 8088") -i8088_cpu_device::i8088_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8088_cpu_device::i8088_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8086_cpu_device(mconfig, I8088, tag, owner, clock, 8) { memcpy(m_timing, m_i8086_timing, sizeof(m_i8086_timing)); } -i8086_cpu_device::i8086_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8086_cpu_device::i8086_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8086_cpu_device(mconfig, I8086, tag, owner, clock, 16) { memcpy(m_timing, m_i8086_timing, sizeof(m_i8086_timing)); } -i8086_cpu_device::i8086_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size) +i8086_cpu_device::i8086_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_bus_size) : i8086_common_cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, data_bus_size, 20, 0) , m_opcodes_config("opcodes", ENDIANNESS_LITTLE, data_bus_size, 20, 0) @@ -362,7 +362,7 @@ void i8086_cpu_device::device_start() state_add( I8086_HALT, "HALT", m_halt ).mask(1); } -i8086_common_cpu_device::i8086_common_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +i8086_common_cpu_device::i8086_common_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_ip(0) , m_TF(0) diff --git a/src/devices/cpu/i86/i86.h b/src/devices/cpu/i86/i86.h index f08a8e0c2ba..a3fb2ab4fd8 100644 --- a/src/devices/cpu/i86/i86.h +++ b/src/devices/cpu/i86/i86.h @@ -108,7 +108,7 @@ protected: enum WREGS { AX=0, CX, DX, BX, SP, BP, SI, DI }; // construction/destruction - i8086_common_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + i8086_common_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -345,7 +345,7 @@ public: AS_EXTRA }; // construction/destruction - i8086_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8086_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // device_memory_interface overrides virtual space_config_vector memory_space_config() const override; @@ -354,7 +354,7 @@ public: auto esc_data_handler() { return m_esc_data_handler.bind(); } protected: - i8086_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size); + i8086_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_bus_size); virtual void execute_run() override; virtual void device_start() override; @@ -387,7 +387,7 @@ class i8088_cpu_device : public i8086_cpu_device { public: // construction/destruction - i8088_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8088_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/i860/i860.cpp b/src/devices/cpu/i860/i860.cpp index 0cef6e6bec4..9f56afa8ea4 100644 --- a/src/devices/cpu/i860/i860.cpp +++ b/src/devices/cpu/i860/i860.cpp @@ -34,7 +34,7 @@ enum { DEFINE_DEVICE_TYPE(I860, i860_cpu_device, "i860xr", "Intel i860XR") -i860_cpu_device::i860_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i860_cpu_device::i860_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, I860, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 64, 32, 0) , m_pc(0), m_merge(0), m_pin_bus_hold(0), m_pin_reset(0), m_exiting_readmem(0), m_exiting_ifetch(0), m_pc_updated(0), m_pending_trap(0), m_fir_gets_trap_addr(0), m_single_stepping(0), m_program(nullptr), m_icount(0) diff --git a/src/devices/cpu/i860/i860.h b/src/devices/cpu/i860/i860.h index 3f37dda5b87..a9207ad3491 100644 --- a/src/devices/cpu/i860/i860.h +++ b/src/devices/cpu/i860/i860.h @@ -24,7 +24,7 @@ class i860_cpu_device : public cpu_device { public: // construction/destruction - i860_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i860_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); /* This is the external interface for asserting an external interrupt to the i860. */ diff --git a/src/devices/cpu/i960/i960.cpp b/src/devices/cpu/i960/i960.cpp index 7d87f4955b0..d89689826c4 100644 --- a/src/devices/cpu/i960/i960.cpp +++ b/src/devices/cpu/i960/i960.cpp @@ -14,7 +14,7 @@ DEFINE_DEVICE_TYPE(I960, i960_cpu_device, "i960kb", "Intel i960KB") -i960_cpu_device::i960_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i960_cpu_device::i960_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, I960, tag, owner, clock) , m_stalled(false), m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) , m_rcache_pos(0), m_SAT(0), m_PRCB(0), m_PC(0), m_AC(0), m_IP(0), m_PIP(0), m_ICR(0), m_immediate_irq(0) diff --git a/src/devices/cpu/i960/i960.h b/src/devices/cpu/i960/i960.h index 1efab1d328a..e8fa1dfff2f 100644 --- a/src/devices/cpu/i960/i960.h +++ b/src/devices/cpu/i960/i960.h @@ -69,7 +69,7 @@ public: static constexpr uint16_t BURST = 0x0001; // construction/destruction - i960_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i960_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void i960_stall() { diff --git a/src/devices/cpu/ie15/ie15.cpp b/src/devices/cpu/ie15/ie15.cpp index d3db6f0ef1b..0bed6be6070 100644 --- a/src/devices/cpu/ie15/ie15.cpp +++ b/src/devices/cpu/ie15/ie15.cpp @@ -29,7 +29,7 @@ DEFINE_DEVICE_TYPE(IE15_CPU, ie15_cpu_device, "ie15_cpu", "ie15 CPU") //------------------------------------------------- // ie15_cpu_device - constructor //------------------------------------------------- -ie15_cpu_device::ie15_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ie15_cpu_device::ie15_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, IE15_CPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 14) , m_io_config("io", ENDIANNESS_LITTLE, 8, 8), m_A(0), m_CF(0), m_ZF(0), m_RF(0), m_flags(0) diff --git a/src/devices/cpu/ie15/ie15.h b/src/devices/cpu/ie15/ie15.h index a0885ce55f1..b07c7741e41 100644 --- a/src/devices/cpu/ie15/ie15.h +++ b/src/devices/cpu/ie15/ie15.h @@ -13,7 +13,7 @@ class ie15_cpu_device : public cpu_device { public: // construction/destruction - ie15_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ie15_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: enum diff --git a/src/devices/cpu/jaguar/jaguar.cpp b/src/devices/cpu/jaguar/jaguar.cpp index 84d5a999dbb..504fab20b10 100644 --- a/src/devices/cpu/jaguar/jaguar.cpp +++ b/src/devices/cpu/jaguar/jaguar.cpp @@ -149,7 +149,7 @@ DEFINE_DEVICE_TYPE(JAGUARGPU, jaguargpu_cpu_device, "jaguargpu", "Motorola Atari DEFINE_DEVICE_TYPE(JAGUARDSP, jaguardsp_cpu_device, "jaguardsp", "Motorola Atari Jaguar DSP \"Jerry\"") -jaguar_cpu_device::jaguar_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 version, bool isdsp, address_map_constructor io_map) +jaguar_cpu_device::jaguar_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 version, bool isdsp, address_map_constructor io_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 24, 0) , m_io_config("io", ENDIANNESS_BIG, 32, 8, 0, io_map) @@ -190,13 +190,13 @@ jaguar_cpu_device::jaguar_cpu_device(const machine_config &mconfig, device_type } -jaguargpu_cpu_device::jaguargpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +jaguargpu_cpu_device::jaguargpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : jaguar_cpu_device(mconfig, JAGUARGPU, tag, owner, clock, 2, false, address_map_constructor(FUNC(jaguargpu_cpu_device::io_map), this)) { } -jaguardsp_cpu_device::jaguardsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +jaguardsp_cpu_device::jaguardsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : jaguar_cpu_device(mconfig, JAGUARDSP, tag, owner, clock, 2, true, address_map_constructor(FUNC(jaguardsp_cpu_device::io_map), this)) { } diff --git a/src/devices/cpu/jaguar/jaguar.h b/src/devices/cpu/jaguar/jaguar.h index 90ee5aef405..b034fc05895 100644 --- a/src/devices/cpu/jaguar/jaguar.h +++ b/src/devices/cpu/jaguar/jaguar.h @@ -64,7 +64,7 @@ public: DECLARE_WRITE_LINE_MEMBER(go_w); protected: - jaguar_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 version, bool isdsp, address_map_constructor io_map); + jaguar_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 version, bool isdsp, address_map_constructor io_map); // device-level overrides virtual void device_start() override; @@ -270,7 +270,7 @@ class jaguargpu_cpu_device : public jaguar_cpu_device { public: // construction/destruction - jaguargpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + jaguargpu_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void io_map(address_map &map); @@ -287,7 +287,7 @@ class jaguardsp_cpu_device : public jaguar_cpu_device { public: // construction/destruction - jaguardsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + jaguardsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void io_map(address_map &map); diff --git a/src/devices/cpu/ks0164/ks0164.cpp b/src/devices/cpu/ks0164/ks0164.cpp index 5b8f57fb776..ca8eabe5cd4 100644 --- a/src/devices/cpu/ks0164/ks0164.cpp +++ b/src/devices/cpu/ks0164/ks0164.cpp @@ -14,7 +14,7 @@ const u16 ks0164_cpu_device::imask[16] = { 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff }; -ks0164_cpu_device::ks0164_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ks0164_cpu_device::ks0164_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, KS0164CPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 16) { diff --git a/src/devices/cpu/ks0164/ks0164.h b/src/devices/cpu/ks0164/ks0164.h index 1df7e6f5e4b..e4a046d8080 100644 --- a/src/devices/cpu/ks0164/ks0164.h +++ b/src/devices/cpu/ks0164/ks0164.h @@ -11,7 +11,7 @@ class ks0164_cpu_device : public cpu_device { public: - ks0164_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ks0164_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: enum { diff --git a/src/devices/cpu/lc8670/lc8670.cpp b/src/devices/cpu/lc8670/lc8670.cpp index d0ab5bbc19d..452b3d118f8 100644 --- a/src/devices/cpu/lc8670/lc8670.cpp +++ b/src/devices/cpu/lc8670/lc8670.cpp @@ -170,7 +170,7 @@ void lc8670_cpu_device::lc8670_internal_map(address_map &map) // lc8670_cpu_device - constructor //------------------------------------------------- -lc8670_cpu_device::lc8670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +lc8670_cpu_device::lc8670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, LC8670, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0) , m_data_config("data", ENDIANNESS_BIG, 8, 9, 0, address_map_constructor(FUNC(lc8670_cpu_device::lc8670_internal_map), this)) diff --git a/src/devices/cpu/lc8670/lc8670.h b/src/devices/cpu/lc8670/lc8670.h index a00658a7d4d..946850e1957 100644 --- a/src/devices/cpu/lc8670/lc8670.h +++ b/src/devices/cpu/lc8670/lc8670.h @@ -68,7 +68,7 @@ public: void xram_w(offs_t offset, uint8_t data); // configuration helpers - void set_cpu_clock(clock_source source, uint32_t clock) { m_clocks[unsigned(source)] = clock; } + void set_cpu_clock(clock_source source, const XTAL &clock) { m_clocks[unsigned(source)] = clock; } void set_cpu_clock(clock_source source, const XTAL &clock) { set_cpu_clock(source, clock.value()); } template <typename T, typename U, typename V> void set_clock_sources(T &&sub_clock, U &&rc_clock, V &&cf_clock) diff --git a/src/devices/cpu/lh5801/lh5801.cpp b/src/devices/cpu/lh5801/lh5801.cpp index 3f9045ae57e..ce7e8f7610b 100644 --- a/src/devices/cpu/lh5801/lh5801.cpp +++ b/src/devices/cpu/lh5801/lh5801.cpp @@ -65,7 +65,7 @@ enum DEFINE_DEVICE_TYPE(LH5801, lh5801_cpu_device, "lh5801", "Sharp LH5801") -lh5801_cpu_device::lh5801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +lh5801_cpu_device::lh5801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, LH5801, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0) , m_io_config("io", ENDIANNESS_LITTLE, 8, 16, 0) diff --git a/src/devices/cpu/lh5801/lh5801.h b/src/devices/cpu/lh5801/lh5801.h index 68c028289af..9f9a20376a4 100644 --- a/src/devices/cpu/lh5801/lh5801.h +++ b/src/devices/cpu/lh5801/lh5801.h @@ -64,7 +64,7 @@ class lh5801_cpu_device : public cpu_device { public: // construction/destruction - lh5801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + lh5801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto in_func() { return m_in_func.bind(); } diff --git a/src/devices/cpu/lr35902/lr35902.cpp b/src/devices/cpu/lr35902/lr35902.cpp index 86eba6464d2..227eda6c369 100644 --- a/src/devices/cpu/lr35902/lr35902.cpp +++ b/src/devices/cpu/lr35902/lr35902.cpp @@ -63,7 +63,7 @@ enum lr35902_flag DEFINE_DEVICE_TYPE(LR35902, lr35902_cpu_device, "lr35902", "Sharp LR35902") -lr35902_cpu_device::lr35902_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +lr35902_cpu_device::lr35902_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, LR35902, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0) , m_A(0) diff --git a/src/devices/cpu/lr35902/lr35902.h b/src/devices/cpu/lr35902/lr35902.h index f723213137c..75f36d09486 100644 --- a/src/devices/cpu/lr35902/lr35902.h +++ b/src/devices/cpu/lr35902/lr35902.h @@ -20,7 +20,7 @@ class lr35902_cpu_device : public cpu_device { public: // construction/destruction - lr35902_cpu_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + lr35902_cpu_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); // configuration helpers auto timer_cb() { return m_timer_func.bind(); } diff --git a/src/devices/cpu/m37710/m37710.cpp b/src/devices/cpu/m37710/m37710.cpp index 6ca096d1e4f..9d0ed9ea66b 100644 --- a/src/devices/cpu/m37710/m37710.cpp +++ b/src/devices/cpu/m37710/m37710.cpp @@ -334,7 +334,7 @@ void m37732s4_device::map(address_map &map) // many other combinations of RAM and ROM size exist -m37710_cpu_device::m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate) +m37710_cpu_device::m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 24, 0, map_delegate) , m_port_in_cb(*this) @@ -344,40 +344,40 @@ m37710_cpu_device::m37710_cpu_device(const machine_config &mconfig, device_type } -m37702m2_device::m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37702m2_device::m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37702m2_device(mconfig, M37702M2, tag, owner, clock) { } -m37702m2_device::m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +m37702m2_device::m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m37702m2_device::map), this)) { } -m37702s1_device::m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37702s1_device::m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, M37702S1, tag, owner, clock, address_map_constructor(FUNC(m37702s1_device::map), this)) { } -m37710s4_device::m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37710s4_device::m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, M37710S4, tag, owner, clock, address_map_constructor(FUNC(m37710s4_device::map), this)) { } -m37720s1_device::m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37720s1_device::m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, M37720S1, tag, owner, clock, address_map_constructor(FUNC(m37720s1_device::map), this)) { } -m37730s2_device::m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37730s2_device::m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, M37730S2, tag, owner, clock, address_map_constructor(FUNC(m37730s2_device::map), this)) { } -m37732s4_device::m37732s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m37732s4_device::m37732s4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37710_cpu_device(mconfig, M37732S4, tag, owner, clock, address_map_constructor(FUNC(m37732s4_device::map), this)) { } diff --git a/src/devices/cpu/m37710/m37710.h b/src/devices/cpu/m37710/m37710.h index 6426c2eb54f..3ac8036c81c 100644 --- a/src/devices/cpu/m37710/m37710.h +++ b/src/devices/cpu/m37710/m37710.h @@ -197,7 +197,7 @@ protected: void set_int_control(int level, uint8_t data); // construction/destruction - m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor map_delegate); + m37710_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map_delegate); // device-level overrides virtual void device_start() override; @@ -2144,7 +2144,7 @@ class m37702s1_device : public m37710_cpu_device { public: // construction/destruction - m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37702s1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void map(address_map &map); }; @@ -2153,9 +2153,9 @@ class m37702m2_device : public m37710_cpu_device { public: // construction/destruction - m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37702m2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m37702m2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); void map(address_map &map); }; @@ -2163,7 +2163,7 @@ class m37710s4_device : public m37710_cpu_device { public: // construction/destruction - m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37710s4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void map(address_map &map); }; @@ -2172,7 +2172,7 @@ class m37720s1_device : public m37710_cpu_device { public: // construction/destruction - m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37720s1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void map(address_map &map); }; @@ -2181,7 +2181,7 @@ class m37730s2_device : public m37710_cpu_device { public: // construction/destruction - m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37730s2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void map(address_map &map); }; @@ -2190,7 +2190,7 @@ class m37732s4_device : public m37710_cpu_device { public: // construction/destruction - m37732s4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37732s4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void map(address_map &map); }; diff --git a/src/devices/cpu/m6502/deco16.cpp b/src/devices/cpu/m6502/deco16.cpp index acd9983cc12..0b16a6db8b3 100644 --- a/src/devices/cpu/m6502/deco16.cpp +++ b/src/devices/cpu/m6502/deco16.cpp @@ -19,7 +19,7 @@ DEFINE_DEVICE_TYPE(DECO16, deco16_device, "deco16", "Data East DECO16") -deco16_device::deco16_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +deco16_device::deco16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, DECO16, tag, owner, clock), io(nullptr), io_config("io", ENDIANNESS_LITTLE, 8, 16) diff --git a/src/devices/cpu/m6502/deco16.h b/src/devices/cpu/m6502/deco16.h index 63494f6b1d4..0d170f43df0 100644 --- a/src/devices/cpu/m6502/deco16.h +++ b/src/devices/cpu/m6502/deco16.h @@ -16,7 +16,7 @@ class deco16_device : public m6502_device { public: - deco16_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + deco16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m6502/m3745x.cpp b/src/devices/cpu/m6502/m3745x.cpp index 20b881f217e..60c23046544 100644 --- a/src/devices/cpu/m6502/m3745x.cpp +++ b/src/devices/cpu/m6502/m3745x.cpp @@ -37,7 +37,7 @@ DEFINE_DEVICE_TYPE(M37450, m37450_device, "m37450", "Mitsubishi M37450") //------------------------------------------------- // m3745x_device - constructor //------------------------------------------------- -m3745x_device::m3745x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) : +m3745x_device::m3745x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : m740_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, internal_map), m_read_p(*this), @@ -393,12 +393,12 @@ void m37450_device::m37450_map(address_map &map) map(0x0100, 0x01ff).ram(); } -m37450_device::m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m37450_device::m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m37450_device(mconfig, M37450, tag, owner, clock) { } -m37450_device::m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m37450_device::m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m3745x_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(m37450_device::m37450_map), this)) { } diff --git a/src/devices/cpu/m6502/m3745x.h b/src/devices/cpu/m6502/m3745x.h index bab3558e0a2..c98c3d32f7c 100644 --- a/src/devices/cpu/m6502/m3745x.h +++ b/src/devices/cpu/m6502/m3745x.h @@ -53,7 +53,7 @@ public: protected: // construction/destruction - m3745x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); + m3745x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); // device-level overrides virtual void device_start() override; @@ -88,11 +88,11 @@ private: class m37450_device : public m3745x_device { public: - m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m37450_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void m37450_map(address_map &map); protected: - m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m37450_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(M37450, m37450_device) diff --git a/src/devices/cpu/m6502/m4510.cpp b/src/devices/cpu/m6502/m4510.cpp index aa29a820dcd..56867b2a3ea 100644 --- a/src/devices/cpu/m6502/m4510.cpp +++ b/src/devices/cpu/m6502/m4510.cpp @@ -17,7 +17,7 @@ DEFINE_DEVICE_TYPE(M4510, m4510_device, "m4510", "CSG 4510") -m4510_device::m4510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m4510_device::m4510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m65ce02_device(mconfig, M4510, tag, owner, clock), map_enable(0), nomap(false) diff --git a/src/devices/cpu/m6502/m4510.h b/src/devices/cpu/m6502/m4510.h index eb6cf818489..fdbf3831a39 100644 --- a/src/devices/cpu/m6502/m4510.h +++ b/src/devices/cpu/m6502/m4510.h @@ -17,7 +17,7 @@ class m4510_device : public m65ce02_device { public: - m4510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m4510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m6502/m50734.cpp b/src/devices/cpu/m6502/m50734.cpp index b4e31f003c7..bd6cb72cf2f 100644 --- a/src/devices/cpu/m6502/m50734.cpp +++ b/src/devices/cpu/m6502/m50734.cpp @@ -23,7 +23,7 @@ // device type definition DEFINE_DEVICE_TYPE(M50734, m50734_device, "m50734", "Mitsubishi M50734") -m50734_device::m50734_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m50734_device::m50734_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m740_device(mconfig, M50734, tag, owner, clock) , m_data_config("data", ENDIANNESS_LITTLE, 8, 16, 0) , m_port_in_cb(*this) diff --git a/src/devices/cpu/m6502/m50734.h b/src/devices/cpu/m6502/m50734.h index 0c98f86aa31..2e48f4c5cd5 100644 --- a/src/devices/cpu/m6502/m50734.h +++ b/src/devices/cpu/m6502/m50734.h @@ -54,7 +54,7 @@ public: //enum { //}; - m50734_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m50734_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // port callback configuration auto p0_in_cb() { return m_port_in_cb[0].bind(); } diff --git a/src/devices/cpu/m6502/m5074x.cpp b/src/devices/cpu/m6502/m5074x.cpp index 2d961b694a5..ca272aec3b5 100644 --- a/src/devices/cpu/m6502/m5074x.cpp +++ b/src/devices/cpu/m6502/m5074x.cpp @@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(M50753, m50753_device, "m50753", "Mitsubishi M50753") //------------------------------------------------- // m5074x_device - constructor //------------------------------------------------- -m5074x_device::m5074x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, address_map_constructor internal_map) : +m5074x_device::m5074x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, address_map_constructor internal_map) : m740_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, addrbits, 0, internal_map), m_read_p(*this), @@ -231,13 +231,13 @@ void m5074x_device::recalc_timer(int timer) switch (timer) { case 0: - hz = clock() / 16; + hz = clock().value() / 16; hz /= (m_tmr12pre + 2); m_timers[TIMER_1]->adjust(attotime::from_hz(hz), 0, attotime::from_hz(hz)); break; case 1: - hz = clock() / 16; + hz = clock().value() / 16; hz /= (m_tmr12pre + 2); m_timers[TIMER_2]->adjust(attotime::from_hz(hz), 0, attotime::from_hz(hz)); break; @@ -254,7 +254,7 @@ void m5074x_device::recalc_timer(int timer) } else { - hz = clock() / 16; + hz = clock().value() / 16; hz /= (m_tmrxpre + 2); m_timers[TIMER_X]->adjust(attotime::from_hz(hz), 0, attotime::from_hz(hz)); } @@ -458,12 +458,12 @@ void m50740_device::m50740_map(address_map &map) map(0x1400, 0x1fff).rom().region(DEVICE_SELF, 0); } -m50740_device::m50740_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m50740_device::m50740_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m50740_device(mconfig, M50740, tag, owner, clock) { } -m50740_device::m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m50740_device::m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m5074x_device(mconfig, type, tag, owner, clock, 13, address_map_constructor(FUNC(m50740_device::m50740_map), this)) { } @@ -477,12 +477,12 @@ void m50741_device::m50741_map(address_map &map) map(0x1000, 0x1fff).rom().region(DEVICE_SELF, 0); } -m50741_device::m50741_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m50741_device::m50741_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m50741_device(mconfig, M50741, tag, owner, clock) { } -m50741_device::m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m50741_device::m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m5074x_device(mconfig, type, tag, owner, clock, 13, address_map_constructor(FUNC(m50741_device::m50741_map), this)) { } @@ -506,12 +506,12 @@ static constexpr u8 IRQ_50753_INT1REQ = 0x80; static constexpr u8 IRQ_50753_INTADC = 0x20; static constexpr u8 IRQ_50753_INT2REQ = 0x02; -m50753_device::m50753_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m50753_device::m50753_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m50753_device(mconfig, M50753, tag, owner, clock) { } -m50753_device::m50753_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m50753_device::m50753_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m5074x_device(mconfig, type, tag, owner, clock, 16, address_map_constructor(FUNC(m50753_device::m50753_map), this)), m_ad_in(*this), m_in_p(*this), diff --git a/src/devices/cpu/m6502/m5074x.h b/src/devices/cpu/m6502/m5074x.h index 2b860a56e83..21f0b21402b 100644 --- a/src/devices/cpu/m6502/m5074x.h +++ b/src/devices/cpu/m6502/m5074x.h @@ -51,7 +51,7 @@ public: protected: // construction/destruction - m5074x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, address_map_constructor internal_map); + m5074x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, address_map_constructor internal_map); // device-level overrides virtual void device_start() override; @@ -90,10 +90,10 @@ private: class m50740_device : public m5074x_device { public: - m50740_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m50740_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m50740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void m50740_map(address_map &map); @@ -102,10 +102,10 @@ private: class m50741_device : public m5074x_device { public: - m50741_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m50741_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m50741_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); private: void m50741_map(address_map &map); @@ -114,7 +114,7 @@ private: class m50753_device : public m5074x_device { public: - m50753_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m50753_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); enum { @@ -127,7 +127,7 @@ public: auto read_in_p() { return m_in_p.bind(); } protected: - m50753_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m50753_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/m6502/m6500_1.cpp b/src/devices/cpu/m6502/m6500_1.cpp index 5767899755e..c40582e13b3 100644 --- a/src/devices/cpu/m6502/m6500_1.cpp +++ b/src/devices/cpu/m6502/m6500_1.cpp @@ -91,7 +91,7 @@ constexpr u8 CR_CTRO = 0x80U; DEFINE_DEVICE_TYPE(M6500_1, m6500_1_device, "m6500_1", "MOS Technology 6500/1"); -m6500_1_device::m6500_1_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m6500_1_device::m6500_1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6502_mcu_device(mconfig, M6500_1, tag, owner, clock) , m_port_in_cb{ *this } , m_port_out_cb{ *this } diff --git a/src/devices/cpu/m6502/m6500_1.h b/src/devices/cpu/m6502/m6500_1.h index 0a4a07a6ff9..45cc3acea90 100644 --- a/src/devices/cpu/m6502/m6500_1.h +++ b/src/devices/cpu/m6502/m6500_1.h @@ -44,7 +44,7 @@ class m6500_1_device : public m6502_mcu_device { public: - m6500_1_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6500_1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); auto pa_in_cb() { return m_port_in_cb[0].bind(); } auto pb_in_cb() { return m_port_in_cb[1].bind(); } diff --git a/src/devices/cpu/m6502/m6502.cpp b/src/devices/cpu/m6502/m6502.cpp index 55276aeba00..eece2c86708 100644 --- a/src/devices/cpu/m6502/m6502.cpp +++ b/src/devices/cpu/m6502/m6502.cpp @@ -15,17 +15,17 @@ DEFINE_DEVICE_TYPE(M6502, m6502_device, "m6502", "MOS Technology 6502") DEFINE_DEVICE_TYPE(M6512, m6512_device, "m6512", "MOS Technology 6512") -m6502_device::m6502_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6502_device::m6502_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M6502, tag, owner, clock) { } -m6512_device::m6512_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6512_device::m6512_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M6512, tag, owner, clock) { } -m6502_device::m6502_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m6502_device::m6502_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), sync_w(*this), program_config("program", ENDIANNESS_LITTLE, 8, 16), @@ -565,7 +565,7 @@ void m6502_device::mi_default14::write(uint16_t adr, uint8_t val) program14.write_byte(adr, val); } -m6502_mcu_device::m6502_mcu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m6502_mcu_device::m6502_mcu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m6502.h b/src/devices/cpu/m6502/m6502.h index 4b05d7a0846..445050e739e 100644 --- a/src/devices/cpu/m6502/m6502.h +++ b/src/devices/cpu/m6502/m6502.h @@ -35,7 +35,7 @@ public: virtual void write_9(uint16_t adr, uint8_t val); }; - m6502_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6502_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_address_width(int width, bool custom_interface) { program_config.m_addr_width = width; @@ -54,7 +54,7 @@ public: devcb_write_line sync_w; protected: - m6502_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m6502_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); class mi_default : public memory_interface { public: @@ -278,7 +278,7 @@ protected: class m6502_mcu_device : public m6502_device { protected: - m6502_mcu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m6502_mcu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); void internal_update() { internal_update(total_cycles()); } virtual void internal_update(uint64_t current_time) = 0; @@ -290,7 +290,7 @@ protected: class m6512_device : public m6502_device { public: - m6512_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6512_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/m6504.cpp b/src/devices/cpu/m6502/m6504.cpp index 51859f178f5..5d34e784249 100644 --- a/src/devices/cpu/m6502/m6504.cpp +++ b/src/devices/cpu/m6502/m6504.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M6504, m6504_device, "m6504", "MOS Technology 6504") -m6504_device::m6504_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6504_device::m6504_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M6504, tag, owner, clock) { program_config.m_addr_width = 13; diff --git a/src/devices/cpu/m6502/m6504.h b/src/devices/cpu/m6502/m6504.h index bf4dee43a76..83dfe25b22c 100644 --- a/src/devices/cpu/m6502/m6504.h +++ b/src/devices/cpu/m6502/m6504.h @@ -15,7 +15,7 @@ class m6504_device : public m6502_device { public: - m6504_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6504_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/m6502/m6507.cpp b/src/devices/cpu/m6502/m6507.cpp index 7a102e4b110..6ec2a023881 100644 --- a/src/devices/cpu/m6502/m6507.cpp +++ b/src/devices/cpu/m6502/m6507.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M6507, m6507_device, "m6507", "MOS Technology 6507") -m6507_device::m6507_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6507_device::m6507_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M6507, tag, owner, clock) { program_config.m_addr_width = 13; diff --git a/src/devices/cpu/m6502/m6507.h b/src/devices/cpu/m6502/m6507.h index 50466608d2a..037dc7a7c87 100644 --- a/src/devices/cpu/m6502/m6507.h +++ b/src/devices/cpu/m6502/m6507.h @@ -15,7 +15,7 @@ class m6507_device : public m6502_device { public: - m6507_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6507_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/m6502/m6509.cpp b/src/devices/cpu/m6502/m6509.cpp index 3ffbeda05fc..212ca66171f 100644 --- a/src/devices/cpu/m6502/m6509.cpp +++ b/src/devices/cpu/m6502/m6509.cpp @@ -14,7 +14,7 @@ DEFINE_DEVICE_TYPE(M6509, m6509_device, "m6509", "MOS Technology 6509") -m6509_device::m6509_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6509_device::m6509_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M6509, tag, owner, clock), bank_i(0), bank_y(0) { program_config.m_addr_width = 20; diff --git a/src/devices/cpu/m6502/m6509.h b/src/devices/cpu/m6502/m6509.h index 4359c691c0e..d86f14e2d0c 100644 --- a/src/devices/cpu/m6502/m6509.h +++ b/src/devices/cpu/m6502/m6509.h @@ -15,7 +15,7 @@ class m6509_device : public m6502_device { public: - m6509_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6509_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; diff --git a/src/devices/cpu/m6502/m6510.cpp b/src/devices/cpu/m6502/m6510.cpp index 706c1407fcb..2188fa17802 100644 --- a/src/devices/cpu/m6502/m6510.cpp +++ b/src/devices/cpu/m6502/m6510.cpp @@ -18,12 +18,12 @@ DEFINE_DEVICE_TYPE(M6510, m6510_device, "m6510", "MOS Technology 6510") DEFINE_DEVICE_TYPE(M6508, m6508_device, "m6508", "MOS Technology 6508") -m6510_device::m6510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6510_device::m6510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6510_device(mconfig, M6510, tag, owner, clock) { } -m6510_device::m6510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m6510_device::m6510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock), read_port(*this), write_port(*this), dir(0), port(0), drive(0) @@ -151,7 +151,7 @@ void m6510_device::mi_6510::write(uint16_t adr, uint8_t val) } -m6508_device::m6508_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6508_device::m6508_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6510_device(mconfig, M6508, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m6510.h b/src/devices/cpu/m6502/m6510.h index 284bc885180..6e96f36bd6d 100644 --- a/src/devices/cpu/m6502/m6510.h +++ b/src/devices/cpu/m6502/m6510.h @@ -16,7 +16,7 @@ class m6510_device : public m6502_device { public: - m6510_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t get_port(); void set_pulls(uint8_t pullup, uint8_t pulldown); @@ -29,7 +29,7 @@ public: virtual void do_exec_partial() override; protected: - m6510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m6510_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); class mi_6510 : public memory_interface { public: @@ -75,7 +75,7 @@ protected: class m6508_device : public m6510_device { public: - m6508_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6508_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; diff --git a/src/devices/cpu/m6502/m6510t.cpp b/src/devices/cpu/m6502/m6510t.cpp index a8b543a8198..6094a20ff29 100644 --- a/src/devices/cpu/m6502/m6510t.cpp +++ b/src/devices/cpu/m6502/m6510t.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M6510T, m6510t_device, "m6510t", "MOS Technology 6510T") -m6510t_device::m6510t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m6510t_device::m6510t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6510_device(mconfig, M6510T, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m6510t.h b/src/devices/cpu/m6502/m6510t.h index 20db82b97e9..47fa8063355 100644 --- a/src/devices/cpu/m6502/m6510t.h +++ b/src/devices/cpu/m6502/m6510t.h @@ -15,7 +15,7 @@ class m6510t_device : public m6510_device { public: - m6510t_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6510t_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/m65c02.cpp b/src/devices/cpu/m6502/m65c02.cpp index fbfd2964f20..61d8b09c3e2 100644 --- a/src/devices/cpu/m6502/m65c02.cpp +++ b/src/devices/cpu/m6502/m65c02.cpp @@ -15,12 +15,12 @@ DEFINE_DEVICE_TYPE(M65C02, m65c02_device, "m65c02", "WDC W65C02") -m65c02_device::m65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m65c02_device::m65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, M65C02, tag, owner, clock) { } -m65c02_device::m65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m65c02_device::m65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m65c02.h b/src/devices/cpu/m6502/m65c02.h index 5a89f301236..3f2a39e6871 100644 --- a/src/devices/cpu/m6502/m65c02.h +++ b/src/devices/cpu/m6502/m65c02.h @@ -17,14 +17,14 @@ class m65c02_device : public m6502_device { public: - m65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; virtual void do_exec_partial() override; protected: - m65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); #define O(o) void o ## _full(); void o ## _partial() diff --git a/src/devices/cpu/m6502/m65ce02.cpp b/src/devices/cpu/m6502/m65ce02.cpp index e6f80e4df09..88c391e7a6b 100644 --- a/src/devices/cpu/m6502/m65ce02.cpp +++ b/src/devices/cpu/m6502/m65ce02.cpp @@ -14,12 +14,12 @@ DEFINE_DEVICE_TYPE(M65CE02, m65ce02_device, "m65ce02", "CSG 65CE02") -m65ce02_device::m65ce02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m65ce02_device::m65ce02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m65ce02_device(mconfig, M65CE02, tag, owner, clock) { } -m65ce02_device::m65ce02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m65ce02_device::m65ce02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m65c02_device(mconfig, type, tag, owner, clock), TMP3(0), Z(0), B(0) { } diff --git a/src/devices/cpu/m6502/m65ce02.h b/src/devices/cpu/m6502/m65ce02.h index 6e27c66e010..159e214f75f 100644 --- a/src/devices/cpu/m6502/m65ce02.h +++ b/src/devices/cpu/m6502/m65ce02.h @@ -16,14 +16,14 @@ class m65ce02_device : public m65c02_device { public: - m65ce02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m65ce02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; virtual void do_exec_partial() override; protected: - m65ce02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m65ce02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); uint16_t TMP3; /* temporary internal values */ uint8_t Z; /* Z index register */ diff --git a/src/devices/cpu/m6502/m65sc02.cpp b/src/devices/cpu/m6502/m65sc02.cpp index 93a9f18c7b6..9dc161f973a 100644 --- a/src/devices/cpu/m6502/m65sc02.cpp +++ b/src/devices/cpu/m6502/m65sc02.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M65SC02, m65sc02_device, "m65sc02", "GTE G65SC02") -m65sc02_device::m65sc02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m65sc02_device::m65sc02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r65c02_device(mconfig, M65SC02, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m65sc02.h b/src/devices/cpu/m6502/m65sc02.h index 686411c0b22..6ebd3602792 100644 --- a/src/devices/cpu/m6502/m65sc02.h +++ b/src/devices/cpu/m6502/m65sc02.h @@ -15,7 +15,7 @@ class m65sc02_device : public r65c02_device { public: - m65sc02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m65sc02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/m740.cpp b/src/devices/cpu/m6502/m740.cpp index d9feb8071d5..e1494e0e7fa 100644 --- a/src/devices/cpu/m6502/m740.cpp +++ b/src/devices/cpu/m6502/m740.cpp @@ -11,7 +11,7 @@ #include "emu.h" #include "m740.h" -m740_device::m740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +m740_device::m740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock), m_irq_multiplex(0), m_irq_vector(0) { } diff --git a/src/devices/cpu/m6502/m740.h b/src/devices/cpu/m6502/m740.h index de483675f81..a1a243bf258 100644 --- a/src/devices/cpu/m6502/m740.h +++ b/src/devices/cpu/m6502/m740.h @@ -51,7 +51,7 @@ protected: virtual void do_exec_partial() override; virtual void execute_set_input(int inputnum, int state) override; - m740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + m740_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); #define O(o) void o ## _full(); void o ## _partial() diff --git a/src/devices/cpu/m6502/m7501.cpp b/src/devices/cpu/m6502/m7501.cpp index 912a7a023dd..b5b86dde7d3 100644 --- a/src/devices/cpu/m6502/m7501.cpp +++ b/src/devices/cpu/m6502/m7501.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M7501, m7501_device, "m7501", "M7501") -m7501_device::m7501_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m7501_device::m7501_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6510_device(mconfig, M7501, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m7501.h b/src/devices/cpu/m6502/m7501.h index baa26668fab..88c711df2db 100644 --- a/src/devices/cpu/m6502/m7501.h +++ b/src/devices/cpu/m6502/m7501.h @@ -15,7 +15,7 @@ class m7501_device : public m6510_device { public: - m7501_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m7501_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/m8502.cpp b/src/devices/cpu/m6502/m8502.cpp index 356ed95c0fe..f956a98a08f 100644 --- a/src/devices/cpu/m6502/m8502.cpp +++ b/src/devices/cpu/m6502/m8502.cpp @@ -13,7 +13,7 @@ DEFINE_DEVICE_TYPE(M8502, m8502_device, "m8502", "MOS Technology 8502") -m8502_device::m8502_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +m8502_device::m8502_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6510_device(mconfig, M8502, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/m8502.h b/src/devices/cpu/m6502/m8502.h index cdd9c8c702f..734d5509e88 100644 --- a/src/devices/cpu/m6502/m8502.h +++ b/src/devices/cpu/m6502/m8502.h @@ -16,7 +16,7 @@ class m8502_device : public m6510_device { public: - m8502_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m8502_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/r65c02.cpp b/src/devices/cpu/m6502/r65c02.cpp index 190f370c933..ecda0a9f29d 100644 --- a/src/devices/cpu/m6502/r65c02.cpp +++ b/src/devices/cpu/m6502/r65c02.cpp @@ -14,12 +14,12 @@ DEFINE_DEVICE_TYPE(R65C02, r65c02_device, "r65c02", "Rockwell R65C02") -r65c02_device::r65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +r65c02_device::r65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r65c02_device(mconfig, R65C02, tag, owner, clock) { } -r65c02_device::r65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +r65c02_device::r65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m65c02_device(mconfig, type, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/r65c02.h b/src/devices/cpu/m6502/r65c02.h index a28ccd9d932..2e8fa666d68 100644 --- a/src/devices/cpu/m6502/r65c02.h +++ b/src/devices/cpu/m6502/r65c02.h @@ -15,14 +15,14 @@ class r65c02_device : public m65c02_device { public: - r65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + r65c02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; virtual void do_exec_partial() override; protected: - r65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + r65c02_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; enum { diff --git a/src/devices/cpu/m6502/r65c19.cpp b/src/devices/cpu/m6502/r65c19.cpp index ffd6c3ee2db..d685b3e6703 100644 --- a/src/devices/cpu/m6502/r65c19.cpp +++ b/src/devices/cpu/m6502/r65c19.cpp @@ -16,7 +16,7 @@ DEFINE_DEVICE_TYPE(R65C19, r65c19_device, "r65c19", "Rockwell R65C19 MCU") DEFINE_DEVICE_TYPE(L2800, l2800_device, "l2800", "Rockwell L2800 MCU") -r65c19_device::r65c19_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map) +r65c19_device::r65c19_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : r65c02_device(mconfig, type, tag, owner, clock) , m_w(0) , m_i(0) @@ -26,19 +26,19 @@ r65c19_device::r65c19_device(const machine_config &mconfig, device_type type, co program_config.m_internal_map = std::move(internal_map); } -r65c19_device::r65c19_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +r65c19_device::r65c19_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r65c19_device(mconfig, R65C19, tag, owner, clock, address_map_constructor()) { } -c39_device::c39_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map) +c39_device::c39_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : r65c19_device(mconfig, type, tag, owner, clock, internal_map) , m_exp_config("expansion", ENDIANNESS_LITTLE, 8, 21, 0) , m_es4_config("es4", ENDIANNESS_LITTLE, 8, 9, 0) { } -l2800_device::l2800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +l2800_device::l2800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : c39_device(mconfig, L2800, tag, owner, clock, address_map_constructor(FUNC(l2800_device::internal_map), this)) { } diff --git a/src/devices/cpu/m6502/r65c19.h b/src/devices/cpu/m6502/r65c19.h index 6f018fb661b..20cd9fe7442 100644 --- a/src/devices/cpu/m6502/r65c19.h +++ b/src/devices/cpu/m6502/r65c19.h @@ -18,10 +18,10 @@ public: R65C19_I }; - r65c19_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + r65c19_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - r65c19_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map); + r65c19_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); virtual void device_start() override; virtual void device_reset() override; @@ -110,7 +110,7 @@ public: }; protected: - c39_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map); + c39_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); virtual space_config_vector memory_space_config() const override; @@ -153,7 +153,7 @@ private: class l2800_device : public c39_device { public: - l2800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + l2800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); diff --git a/src/devices/cpu/m6502/rp2a03.cpp b/src/devices/cpu/m6502/rp2a03.cpp index 25e43144db8..c14b3995445 100644 --- a/src/devices/cpu/m6502/rp2a03.cpp +++ b/src/devices/cpu/m6502/rp2a03.cpp @@ -53,19 +53,19 @@ void rp2a03_device::rp2a03_map(address_map &map) -rp2a03_core_device::rp2a03_core_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +rp2a03_core_device::rp2a03_core_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock) { } -rp2a03_core_device::rp2a03_core_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +rp2a03_core_device::rp2a03_core_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : rp2a03_core_device(mconfig, RP2A03_CORE, tag, owner, clock) { } -rp2a03_device::rp2a03_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +rp2a03_device::rp2a03_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : rp2a03_core_device(mconfig, type, tag, owner, clock) , device_mixer_interface(mconfig, *this, 1) , m_apu(*this, "nesapu") @@ -73,12 +73,12 @@ rp2a03_device::rp2a03_device(const machine_config &mconfig, device_type type, co program_config.m_internal_map = address_map_constructor(FUNC(rp2a03_device::rp2a03_map), this); } -rp2a03_device::rp2a03_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +rp2a03_device::rp2a03_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : rp2a03_device(mconfig, RP2A03, tag, owner, clock) { } -rp2a03g_device::rp2a03g_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +rp2a03g_device::rp2a03g_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : rp2a03_device(mconfig, RP2A03G, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/rp2a03.h b/src/devices/cpu/m6502/rp2a03.h index 412837cd885..99079341623 100644 --- a/src/devices/cpu/m6502/rp2a03.h +++ b/src/devices/cpu/m6502/rp2a03.h @@ -17,7 +17,7 @@ class rp2a03_core_device : public m6502_device { public: - rp2a03_core_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + rp2a03_core_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -25,7 +25,7 @@ public: virtual void do_exec_partial() override; protected: - rp2a03_core_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + rp2a03_core_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); #define O(o) void o ## _full(); void o ## _partial() @@ -43,7 +43,7 @@ private: class rp2a03_device : public rp2a03_core_device, public device_mixer_interface { public: - rp2a03_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + rp2a03_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t psg1_4014_r(); uint8_t psg1_4015_r(); @@ -53,7 +53,7 @@ public: void rp2a03_map(address_map &map); protected: - rp2a03_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + rp2a03_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); required_device<nesapu_device> m_apu; @@ -66,7 +66,7 @@ protected: class rp2a03g_device : public rp2a03_device { public: - rp2a03g_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + rp2a03g_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_add_mconfig(machine_config &config) override; diff --git a/src/devices/cpu/m6502/st2204.cpp b/src/devices/cpu/m6502/st2204.cpp index 0e8541be87a..dc1fb605de4 100644 --- a/src/devices/cpu/m6502/st2204.cpp +++ b/src/devices/cpu/m6502/st2204.cpp @@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(ST2202, st2202_device, "st2202", "Sitronix ST2202 Integrated Microcontroller") DEFINE_DEVICE_TYPE(ST2204, st2204_device, "st2204", "Sitronix ST2204 Integrated Microcontroller") -st2204_device::st2204_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +st2204_device::st2204_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : st2xxx_device(mconfig, type, tag, owner, clock, map, 26, false) // logical; only 23 address lines are brought out , m_dac_callback(*this) , m_tmode{0} @@ -58,12 +58,12 @@ st2204_device::st2204_device(const machine_config &mconfig, device_type type, co { } -st2204_device::st2204_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +st2204_device::st2204_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : st2204_device(mconfig, ST2204, tag, owner, clock, address_map_constructor(FUNC(st2204_device::int_map), this)) { } -st2202_device::st2202_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +st2202_device::st2202_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : st2204_device(mconfig, ST2202, tag, owner, clock, address_map_constructor(FUNC(st2202_device::int_map), this)) { } diff --git a/src/devices/cpu/m6502/st2204.h b/src/devices/cpu/m6502/st2204.h index c1fbe707fd9..f30b3765f50 100644 --- a/src/devices/cpu/m6502/st2204.h +++ b/src/devices/cpu/m6502/st2204.h @@ -30,12 +30,12 @@ public: ST_DMD }; - st2204_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + st2204_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto dac_callback() { return m_dac_callback.bind(); } protected: - st2204_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor int_map); + st2204_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor int_map); virtual void device_resolve_objects() override; virtual void device_start() override; @@ -148,7 +148,7 @@ private: class st2202_device : public st2204_device { public: - st2202_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + st2202_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 st2xxx_misc_mask() const override { return 0x0f; } diff --git a/src/devices/cpu/m6502/st2205u.cpp b/src/devices/cpu/m6502/st2205u.cpp index ac50492e325..673c0815770 100644 --- a/src/devices/cpu/m6502/st2205u.cpp +++ b/src/devices/cpu/m6502/st2205u.cpp @@ -51,7 +51,7 @@ DEFINE_DEVICE_TYPE(ST2205U, st2205u_device, "st2205u", "Sitronix ST2205U Integrated Microcontroller") DEFINE_DEVICE_TYPE(ST2302U, st2302u_device, "st2302u", "Sitronix ST2302U Integrated Microcontroller") -st2205u_base_device::st2205u_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram) +st2205u_base_device::st2205u_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram) : st2xxx_device(mconfig, type, tag, owner, clock, internal_map, data_bits, has_banked_ram) , device_sound_interface(mconfig, *this) , m_stream(nullptr) @@ -82,7 +82,7 @@ st2205u_base_device::st2205u_base_device(const machine_config &mconfig, device_t { } -st2205u_device::st2205u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +st2205u_device::st2205u_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : st2205u_base_device(mconfig, ST2205U, tag, owner, clock, address_map_constructor(FUNC(st2205u_device::int_map), this), 26, // logical; only 23 address lines are brought out @@ -93,7 +93,7 @@ st2205u_device::st2205u_device(const machine_config &mconfig, const char *tag, d { } -st2302u_device::st2302u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +st2302u_device::st2302u_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : st2205u_base_device(mconfig, ST2302U, tag, owner, clock, address_map_constructor(FUNC(st2302u_device::int_map), this), 26, // ??? diff --git a/src/devices/cpu/m6502/st2205u.h b/src/devices/cpu/m6502/st2205u.h index bd73e481822..bbf0e8f05cd 100644 --- a/src/devices/cpu/m6502/st2205u.h +++ b/src/devices/cpu/m6502/st2205u.h @@ -59,7 +59,7 @@ public: static constexpr feature_type imperfect_features() { return feature::SOUND; } protected: - st2205u_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); + st2205u_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); virtual void device_reset() override; @@ -180,7 +180,7 @@ public: ST_BRR }; - st2205u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + st2205u_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -254,7 +254,7 @@ private: class st2302u_device : public st2205u_base_device { public: - st2302u_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + st2302u_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; diff --git a/src/devices/cpu/m6502/st2xxx.cpp b/src/devices/cpu/m6502/st2xxx.cpp index 480460bbe67..c9dd74ca018 100644 --- a/src/devices/cpu/m6502/st2xxx.cpp +++ b/src/devices/cpu/m6502/st2xxx.cpp @@ -42,7 +42,7 @@ //#define VERBOSE (LOG_IRQ | LOG_BT | LOG_LCDC) #include "logmacro.h" -st2xxx_device::st2xxx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram) +st2xxx_device::st2xxx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram) : w65c02s_device(mconfig, type, tag, owner, clock) , m_data_config("data", ENDIANNESS_LITTLE, 8, data_bits, 0) , m_in_port_cb(*this) diff --git a/src/devices/cpu/m6502/st2xxx.h b/src/devices/cpu/m6502/st2xxx.h index 811c2008d49..430fac1df1e 100644 --- a/src/devices/cpu/m6502/st2xxx.h +++ b/src/devices/cpu/m6502/st2xxx.h @@ -85,7 +85,7 @@ public: auto out_pl_callback() { return m_out_port_cb[6].bind(); } protected: - st2xxx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); + st2xxx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map, int data_bits, bool has_banked_ram); virtual space_config_vector memory_space_config() const override; virtual void device_resolve_objects() override; diff --git a/src/devices/cpu/m6502/w65c02s.cpp b/src/devices/cpu/m6502/w65c02s.cpp index 171db777dc2..d44c05ec5a8 100644 --- a/src/devices/cpu/m6502/w65c02s.cpp +++ b/src/devices/cpu/m6502/w65c02s.cpp @@ -15,12 +15,12 @@ DEFINE_DEVICE_TYPE(W65C02S, w65c02s_device, "w65c02s", "WDC W65C02S") -w65c02s_device::w65c02s_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +w65c02s_device::w65c02s_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : w65c02s_device(mconfig, W65C02S, tag, owner, clock) { } -w65c02s_device::w65c02s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +w65c02s_device::w65c02s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m65c02_device(mconfig, type, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/w65c02s.h b/src/devices/cpu/m6502/w65c02s.h index a5848f86e68..b07da3ab58b 100644 --- a/src/devices/cpu/m6502/w65c02s.h +++ b/src/devices/cpu/m6502/w65c02s.h @@ -16,14 +16,14 @@ class w65c02s_device : public m65c02_device { public: - w65c02s_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + w65c02s_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; virtual void do_exec_partial() override; protected: - w65c02s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + w65c02s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual uint8_t read_vector(uint16_t adr) { return mintf->read_arg(adr); } virtual void end_interrupt() { } diff --git a/src/devices/cpu/m6502/xavix.cpp b/src/devices/cpu/m6502/xavix.cpp index c8f98a0e8f7..1ae031ee81f 100644 --- a/src/devices/cpu/m6502/xavix.cpp +++ b/src/devices/cpu/m6502/xavix.cpp @@ -33,12 +33,12 @@ DEFINE_DEVICE_TYPE(XAVIX, xavix_device, "xavix", "XaviX (SSD 97 / SSD 98)") -xavix_device::xavix_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +xavix_device::xavix_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : xavix_device(mconfig, XAVIX, tag, owner, clock) { } -xavix_device::xavix_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +xavix_device::xavix_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6502_device(mconfig, type, tag, owner, clock), XPC(0), m_lowbus_config("lowbus", ENDIANNESS_LITTLE, 8, 15), diff --git a/src/devices/cpu/m6502/xavix.h b/src/devices/cpu/m6502/xavix.h index ccab73f75d4..7fe24a30587 100644 --- a/src/devices/cpu/m6502/xavix.h +++ b/src/devices/cpu/m6502/xavix.h @@ -14,7 +14,7 @@ class xavix_device : public m6502_device { public: - xavix_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + xavix_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void do_exec_full() override; @@ -164,7 +164,7 @@ protected: uint8_t m_codebank; uint32_t XPC; - xavix_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + xavix_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); uint32_t adr_with_codebank(uint16_t adr) { return adr | (get_codebank() << 16); } diff --git a/src/devices/cpu/m6502/xavix2000.cpp b/src/devices/cpu/m6502/xavix2000.cpp index 35da0f522b3..78f2cedffe5 100644 --- a/src/devices/cpu/m6502/xavix2000.cpp +++ b/src/devices/cpu/m6502/xavix2000.cpp @@ -36,7 +36,7 @@ DEFINE_DEVICE_TYPE(XAVIX2002, xavix2002_device, "xavix2002", "XaviX (SSD 2002) ( -xavix2000_device::xavix2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +xavix2000_device::xavix2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : xavix_device(mconfig, type, tag, owner, clock) { program_config.m_addr_width = 24; @@ -45,12 +45,12 @@ xavix2000_device::xavix2000_device(const machine_config &mconfig, device_type ty sprogram_config.m_logaddr_width = 24; } -xavix2000_device::xavix2000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +xavix2000_device::xavix2000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : xavix2000_device(mconfig, XAVIX2000, tag, owner, clock) { } -xavix2002_device::xavix2002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +xavix2002_device::xavix2002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : xavix2000_device(mconfig, XAVIX2002, tag, owner, clock) { } diff --git a/src/devices/cpu/m6502/xavix2000.h b/src/devices/cpu/m6502/xavix2000.h index c5e3113e840..80cc55f1895 100644 --- a/src/devices/cpu/m6502/xavix2000.h +++ b/src/devices/cpu/m6502/xavix2000.h @@ -14,12 +14,12 @@ class xavix2000_device : public xavix_device { public: - xavix2000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + xavix2000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; protected: - xavix2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + xavix2000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void do_exec_full() override; virtual void do_exec_partial() override; @@ -164,7 +164,7 @@ enum { class xavix2002_device : public xavix2000_device { public: - xavix2002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + xavix2002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/m6800/m6800.cpp b/src/devices/cpu/m6800/m6800.cpp index 4df393c0a4c..674cb487fd9 100644 --- a/src/devices/cpu/m6800/m6800.cpp +++ b/src/devices/cpu/m6800/m6800.cpp @@ -383,12 +383,12 @@ DEFINE_DEVICE_TYPE(M6808, m6808_cpu_device, "m6808", "Motorola MC6808") DEFINE_DEVICE_TYPE(NSC8105, nsc8105_cpu_device, "nsc8105", "NSC8105") -m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6800_cpu_device(mconfig, M6800, tag, owner, clock, m6800_insn, cycles_6800, address_map_constructor()) { } -m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const op_func *insn, const uint8_t *cycles, address_map_constructor internal) +m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const op_func *insn, const uint8_t *cycles, address_map_constructor internal) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0, internal) , m_decrypted_opcodes_config("program", ENDIANNESS_BIG, 8, 16, 0) @@ -397,12 +397,12 @@ m6800_cpu_device::m6800_cpu_device(const machine_config &mconfig, device_type ty { } -m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6802_cpu_device(mconfig, M6802, tag, owner, clock, m6800_insn, cycles_6800) { } -m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const op_func *insn, const uint8_t *cycles) +m6802_cpu_device::m6802_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const op_func *insn, const uint8_t *cycles) : m6800_cpu_device(mconfig, type, tag, owner, clock, insn, cycles, address_map_constructor(FUNC(m6802_cpu_device::ram_map), this)) , m_ram_enable(true) { @@ -414,7 +414,7 @@ void m6802_cpu_device::ram_map(address_map &map) map(0x0000, 0x007f).ram(); } -m6808_cpu_device::m6808_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6808_cpu_device::m6808_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6802_cpu_device(mconfig, M6808, tag, owner, clock, m6800_insn, cycles_6800) { set_ram_enable(false); @@ -426,7 +426,7 @@ void m6808_cpu_device::device_validity_check(validity_checker &valid) const osd_printf_error("MC6808 should not have internal RAM enabled\n"); } -nsc8105_cpu_device::nsc8105_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +nsc8105_cpu_device::nsc8105_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6802_cpu_device(mconfig, NSC8105, tag, owner, clock, nsc8105_insn, cycles_nsc8105) { } diff --git a/src/devices/cpu/m6800/m6800.h b/src/devices/cpu/m6800/m6800.h index 10e40ab3a3f..c4229d07fa3 100644 --- a/src/devices/cpu/m6800/m6800.h +++ b/src/devices/cpu/m6800/m6800.h @@ -34,7 +34,7 @@ public: typedef void (m6800_cpu_device::*op_func)(); // construction/destruction - m6800_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6800_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: enum @@ -43,7 +43,7 @@ protected: M6800_SLP = 0x10 /* HD63701 only */ }; - m6800_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal); + m6800_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal); // device-level overrides virtual void device_start() override; @@ -364,12 +364,12 @@ protected: class m6802_cpu_device : public m6800_cpu_device { public: - m6802_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6802_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_ram_enable(bool re) { assert(!configured()); m_ram_enable = re; } protected: - m6802_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles); + m6802_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles); virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 4 - 1) / 4; } virtual uint64_t execute_cycles_to_clocks(uint64_t cycles) const noexcept override { return (cycles * 4); } @@ -385,7 +385,7 @@ private: class m6808_cpu_device : public m6802_cpu_device { public: - m6808_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6808_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -396,7 +396,7 @@ protected: class nsc8105_cpu_device : public m6802_cpu_device { public: - nsc8105_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + nsc8105_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m6800/m6801.cpp b/src/devices/cpu/m6800/m6801.cpp index e759a0b57cc..9bce8f303fb 100644 --- a/src/devices/cpu/m6800/m6801.cpp +++ b/src/devices/cpu/m6800/m6801.cpp @@ -309,12 +309,12 @@ DEFINE_DEVICE_TYPE(HD6303R, hd6303r_cpu_device, "hd6303r", "Hitachi HD6303R") DEFINE_DEVICE_TYPE(HD6303X, hd6303x_cpu_device, "hd6303x", "Hitachi HD6303X") DEFINE_DEVICE_TYPE(HD6303Y, hd6303y_cpu_device, "hd6303y", "Hitachi HD6303Y") -m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6801_cpu_device(mconfig, M6801, tag, owner, clock, m6803_insn, cycles_6803, address_map_constructor()) { } -m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const op_func *insn, const uint8_t *cycles, address_map_constructor internal) +m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const op_func *insn, const uint8_t *cycles, address_map_constructor internal) : m6800_cpu_device(mconfig, type, tag, owner, clock, insn, cycles, internal) , m_in_port_func(*this) , m_out_port_func(*this) @@ -324,37 +324,37 @@ m6801_cpu_device::m6801_cpu_device(const machine_config &mconfig, device_type ty { } -m6803_cpu_device::m6803_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6803_cpu_device::m6803_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6801_cpu_device(mconfig, M6803, tag, owner, clock, m6803_insn, cycles_6803, address_map_constructor(FUNC(m6803_cpu_device::m6803_mem), this)) { } -m6803e_cpu_device::m6803e_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6803e_cpu_device::m6803e_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6801_cpu_device(mconfig, M6803E, tag, owner, clock, m6803_insn, cycles_6803, address_map_constructor(FUNC(m6803e_cpu_device::m6803_mem), this)) { } -hd6301_cpu_device::hd6301_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +hd6301_cpu_device::hd6301_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : m6801_cpu_device(mconfig, type, tag, owner, clock, hd63701_insn, cycles_63701) { } -hd6301v1_cpu_device::hd6301v1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6301v1_cpu_device::hd6301v1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301_cpu_device(mconfig, HD6301V1, tag, owner, clock) { } -hd63701v0_cpu_device::hd63701v0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd63701v0_cpu_device::hd63701v0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301_cpu_device(mconfig, HD63701V0, tag, owner, clock) { } -hd6303r_cpu_device::hd6303r_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6303r_cpu_device::hd6303r_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301_cpu_device(mconfig, HD6303R, tag, owner, clock) { } -hd6301x_cpu_device::hd6301x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +hd6301x_cpu_device::hd6301x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : hd6301_cpu_device(mconfig, type, tag, owner, clock) , m_in_portx_func(*this) , m_out_portx_func(*this) @@ -362,37 +362,37 @@ hd6301x_cpu_device::hd6301x_cpu_device(const machine_config &mconfig, device_typ m_sclk_divider = 16; } -hd6301x0_cpu_device::hd6301x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6301x0_cpu_device::hd6301x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301x_cpu_device(mconfig, HD6301X0, tag, owner, clock) { } -hd63701x0_cpu_device::hd63701x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd63701x0_cpu_device::hd63701x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301x_cpu_device(mconfig, HD63701X0, tag, owner, clock) { } -hd6303x_cpu_device::hd6303x_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6303x_cpu_device::hd6303x_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301x_cpu_device(mconfig, HD6303X, tag, owner, clock) { } -hd6301y_cpu_device::hd6301y_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +hd6301y_cpu_device::hd6301y_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : hd6301x_cpu_device(mconfig, type, tag, owner, clock) { } -hd6301y0_cpu_device::hd6301y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6301y0_cpu_device::hd6301y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301y_cpu_device(mconfig, HD6301Y0, tag, owner, clock) { } -hd63701y0_cpu_device::hd63701y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd63701y0_cpu_device::hd63701y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301y_cpu_device(mconfig, HD63701Y0, tag, owner, clock) { } -hd6303y_cpu_device::hd6303y_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd6303y_cpu_device::hd6303y_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6301y_cpu_device(mconfig, HD6303Y, tag, owner, clock) { } diff --git a/src/devices/cpu/m6800/m6801.h b/src/devices/cpu/m6800/m6801.h index de74fed4ff7..435c3e7836a 100644 --- a/src/devices/cpu/m6800/m6801.h +++ b/src/devices/cpu/m6800/m6801.h @@ -43,7 +43,7 @@ enum class m6801_cpu_device : public m6800_cpu_device { public: - m6801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6801_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto in_p1_cb() { return m_in_port_func[0].bind(); } auto out_p1_cb() { return m_out_port_func[0].bind(); } @@ -62,7 +62,7 @@ public: void m6801_clock_serial(); protected: - m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal = address_map_constructor()); + m6801_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const m6800_cpu_device::op_func *insn, const uint8_t *cycles, address_map_constructor internal = address_map_constructor()); // device-level overrides virtual void device_resolve_objects() override; @@ -184,7 +184,7 @@ protected: class m6803_cpu_device : public m6801_cpu_device { public: - m6803_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6803_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -194,7 +194,7 @@ protected: class m6803e_cpu_device : public m6801_cpu_device { public: - m6803e_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6803e_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return clocks; } @@ -207,7 +207,7 @@ protected: class hd6301_cpu_device : public m6801_cpu_device { protected: - hd6301_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + hd6301_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -224,7 +224,7 @@ protected: class hd6301v1_cpu_device : public hd6301_cpu_device { public: - hd6301v1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6301v1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -233,7 +233,7 @@ public: class hd63701v0_cpu_device : public hd6301_cpu_device { public: - hd63701v0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd63701v0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -244,7 +244,7 @@ public: class hd6303r_cpu_device : public hd6301_cpu_device { public: - hd6303r_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6303r_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -261,7 +261,7 @@ public: void hd6301x_io(address_map &map); protected: - hd6301x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + hd6301x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_resolve_objects() override; @@ -328,7 +328,7 @@ protected: class hd6301x0_cpu_device : public hd6301x_cpu_device { public: - hd6301x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6301x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -337,7 +337,7 @@ public: class hd63701x0_cpu_device : public hd6301x_cpu_device { public: - hd63701x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd63701x0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -348,7 +348,7 @@ public: class hd6303x_cpu_device : public hd6301x_cpu_device { public: - hd6303x_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6303x_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -359,7 +359,7 @@ public: void hd6301y_io(address_map &map); protected: - hd6301y_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + hd6301y_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -392,7 +392,7 @@ protected: class hd6301y0_cpu_device : public hd6301y_cpu_device { public: - hd6301y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6301y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -401,7 +401,7 @@ public: class hd63701y0_cpu_device : public hd6301y_cpu_device { public: - hd63701y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd63701y0_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -413,7 +413,7 @@ public: class hd6303y_cpu_device : public hd6301y_cpu_device { public: - hd6303y_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6303y_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/m68000/fscpu32.cpp b/src/devices/cpu/m68000/fscpu32.cpp index e633d7a059d..a1ce0e2814f 100644 --- a/src/devices/cpu/m68000/fscpu32.cpp +++ b/src/devices/cpu/m68000/fscpu32.cpp @@ -10,7 +10,7 @@ std::unique_ptr<util::disasm_interface> fscpu32_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_CPU32); } -fscpu32_device::fscpu32_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, +fscpu32_device::fscpu32_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, address_map_constructor internal_map) : m68000_base_device(mconfig, tag, owner, clock, type, 16,32, internal_map) { diff --git a/src/devices/cpu/m68000/fscpu32.h b/src/devices/cpu/m68000/fscpu32.h index 66bb7e1f114..7ff86b870d9 100644 --- a/src/devices/cpu/m68000/fscpu32.h +++ b/src/devices/cpu/m68000/fscpu32.h @@ -19,7 +19,7 @@ public: virtual void device_start() override; protected: - fscpu32_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, + fscpu32_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, address_map_constructor internal_map); }; diff --git a/src/devices/cpu/m68000/m68000.cpp b/src/devices/cpu/m68000/m68000.cpp index 751ded698d2..8cf4ea3d28f 100644 --- a/src/devices/cpu/m68000/m68000.cpp +++ b/src/devices/cpu/m68000/m68000.cpp @@ -12,12 +12,12 @@ std::unique_ptr<util::disasm_interface> m68000_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_68000); } -m68000_device::m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68000_device::m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_device(mconfig, M68000, tag, owner, clock) { } -m68000_device::m68000_device(const machine_config &mconfig, const device_type type, const char *tag, device_t *owner, u32 clock) +m68000_device::m68000_device(const machine_config &mconfig, const device_type type, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, type, 16,24) { } @@ -28,7 +28,7 @@ void m68000_device::device_start() init_cpu_m68000(); } -m68000_device::m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, +m68000_device::m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits, address_map_constructor internal_map) : m68000_base_device(mconfig, tag, owner, clock, type, prg_data_width, prg_address_bits, internal_map) { diff --git a/src/devices/cpu/m68000/m68000.h b/src/devices/cpu/m68000/m68000.h index f97fd11c1c7..a53042f3018 100644 --- a/src/devices/cpu/m68000/m68000.h +++ b/src/devices/cpu/m68000/m68000.h @@ -11,7 +11,7 @@ class m68000_device : public m68000_base_device { public: // construction/destruction - m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -23,9 +23,9 @@ public: virtual void device_start() override; protected: - m68000_device(const machine_config &mconfig, const device_type type, const char *tag, device_t *owner, u32 clock); + m68000_device(const machine_config &mconfig, const device_type type, const char *tag, device_t *owner, const XTAL &clock); - m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, + m68000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits, address_map_constructor internal_map); }; diff --git a/src/devices/cpu/m68000/m68008.cpp b/src/devices/cpu/m68000/m68008.cpp index 2b83211d9c5..f29f671fea1 100644 --- a/src/devices/cpu/m68000/m68008.cpp +++ b/src/devices/cpu/m68000/m68008.cpp @@ -18,7 +18,7 @@ std::unique_ptr<util::disasm_interface> m68008fn_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_68008); } -m68008_device::m68008_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68008_device::m68008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68008, 8,20) { } @@ -30,7 +30,7 @@ void m68008_device::device_start() } -m68008fn_device::m68008fn_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68008fn_device::m68008fn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68008FN, 8,22) { } diff --git a/src/devices/cpu/m68000/m68008.h b/src/devices/cpu/m68000/m68008.h index b6d4e06062e..442d8b8f22a 100644 --- a/src/devices/cpu/m68000/m68008.h +++ b/src/devices/cpu/m68000/m68008.h @@ -11,7 +11,7 @@ class m68008_device : public m68000_base_device { public: // construction/destruction - m68008_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -26,7 +26,7 @@ class m68008fn_device : public m68000_base_device { public: // construction/destruction - m68008fn_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68008fn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/m68010.cpp b/src/devices/cpu/m68000/m68010.cpp index 6983ec1d7fc..3d37cf0c533 100644 --- a/src/devices/cpu/m68000/m68010.cpp +++ b/src/devices/cpu/m68000/m68010.cpp @@ -13,7 +13,7 @@ std::unique_ptr<util::disasm_interface> m68010_device::create_disassembler() } -m68010_device::m68010_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68010_device::m68010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68010, 16,24) { } diff --git a/src/devices/cpu/m68000/m68010.h b/src/devices/cpu/m68000/m68010.h index dff4a1d96e5..6d0ef8e6f31 100644 --- a/src/devices/cpu/m68000/m68010.h +++ b/src/devices/cpu/m68000/m68010.h @@ -11,7 +11,7 @@ class m68010_device : public m68000_base_device { public: // construction/destruction - m68010_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/m68020.cpp b/src/devices/cpu/m68000/m68020.cpp index 0e0e0ea3992..9a54c6a284e 100644 --- a/src/devices/cpu/m68000/m68020.cpp +++ b/src/devices/cpu/m68000/m68020.cpp @@ -36,7 +36,7 @@ std::unique_ptr<util::disasm_interface> m68020hmmu_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_68020); } -m68020_device::m68020_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68020_device::m68020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68020, 32,32) { } @@ -48,7 +48,7 @@ void m68020_device::device_start() } -m68020fpu_device::m68020fpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68020fpu_device::m68020fpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68020FPU, 32,32) { } @@ -60,7 +60,7 @@ void m68020fpu_device::device_start() } // 68020 with 68851 PMMU -m68020pmmu_device::m68020pmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68020pmmu_device::m68020pmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68020PMMU, 32,32) { } @@ -86,7 +86,7 @@ bool m68020hmmu_device::memory_translate(int space, int intention, offs_t &addre // 68020 with Apple HMMU & 68881 FPU // case CPUINFO_FCT_TRANSLATE: info->translate = CPU_TRANSLATE_NAME(m68khmmu); break; -m68020hmmu_device::m68020hmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68020hmmu_device::m68020hmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68020HMMU, 32,32) { } @@ -98,7 +98,7 @@ void m68020hmmu_device::device_start() } -m68ec020_device::m68ec020_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68ec020_device::m68ec020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68EC020, 32,24) { } diff --git a/src/devices/cpu/m68000/m68020.h b/src/devices/cpu/m68000/m68020.h index 265174c5076..19b643a0f93 100644 --- a/src/devices/cpu/m68000/m68020.h +++ b/src/devices/cpu/m68000/m68020.h @@ -11,7 +11,7 @@ class m68ec020_device : public m68000_base_device { public: // construction/destruction - m68ec020_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68ec020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -26,7 +26,7 @@ class m68020_device : public m68000_base_device { public: // construction/destruction - m68020_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -41,7 +41,7 @@ class m68020fpu_device : public m68000_base_device { public: // construction/destruction - m68020fpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68020fpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -56,7 +56,7 @@ class m68020pmmu_device : public m68000_base_device { public: // construction/destruction - m68020pmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68020pmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -71,7 +71,7 @@ class m68020hmmu_device : public m68000_base_device { public: // construction/destruction - m68020hmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68020hmmu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/m68030.cpp b/src/devices/cpu/m68000/m68030.cpp index f2e7c3c759a..84b69d81631 100644 --- a/src/devices/cpu/m68000/m68030.cpp +++ b/src/devices/cpu/m68000/m68030.cpp @@ -18,7 +18,7 @@ std::unique_ptr<util::disasm_interface> m68030_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_68030); } -m68030_device::m68030_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68030_device::m68030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68030, 32,32) { } @@ -29,7 +29,7 @@ void m68030_device::device_start() init_cpu_m68030(); } -m68ec030_device::m68ec030_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68ec030_device::m68ec030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68EC030, 32,32) { } diff --git a/src/devices/cpu/m68000/m68030.h b/src/devices/cpu/m68000/m68030.h index d2206e5f084..527edd536df 100644 --- a/src/devices/cpu/m68000/m68030.h +++ b/src/devices/cpu/m68000/m68030.h @@ -11,7 +11,7 @@ class m68ec030_device : public m68000_base_device { public: // construction/destruction - m68ec030_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68ec030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -26,7 +26,7 @@ class m68030_device : public m68000_base_device { public: // construction/destruction - m68030_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/m68040.cpp b/src/devices/cpu/m68000/m68040.cpp index d01b7cc927c..7dcb3b12746 100644 --- a/src/devices/cpu/m68000/m68040.cpp +++ b/src/devices/cpu/m68000/m68040.cpp @@ -24,7 +24,7 @@ std::unique_ptr<util::disasm_interface> m68040_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_68040); } -m68040_device::m68040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68040_device::m68040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68040, 32,32) { } @@ -38,7 +38,7 @@ void m68040_device::device_start() -m68ec040_device::m68ec040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68ec040_device::m68ec040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68EC040, 32,32) { } @@ -51,7 +51,7 @@ void m68ec040_device::device_start() -m68lc040_device::m68lc040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m68lc040_device::m68lc040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, M68LC040, 32,32) { } diff --git a/src/devices/cpu/m68000/m68040.h b/src/devices/cpu/m68000/m68040.h index b09def174d8..bef31785212 100644 --- a/src/devices/cpu/m68000/m68040.h +++ b/src/devices/cpu/m68000/m68040.h @@ -11,7 +11,7 @@ class m68ec040_device : public m68000_base_device { public: // construction/destruction - m68ec040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68ec040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -26,7 +26,7 @@ class m68lc040_device : public m68000_base_device { public: // construction/destruction - m68lc040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68lc040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -41,7 +41,7 @@ class m68040_device : public m68000_base_device { public: // construction/destruction - m68040_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/m68kcommon.h b/src/devices/cpu/m68000/m68kcommon.h index 6e2ab7de5d7..86659ec7beb 100644 --- a/src/devices/cpu/m68000/m68kcommon.h +++ b/src/devices/cpu/m68000/m68kcommon.h @@ -102,7 +102,7 @@ public: }; // construction/destruction - m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); static constexpr u8 autovector(int level) { return 0x18 + level; } void autovectors_map(address_map &map); @@ -173,10 +173,10 @@ public: void set_cpu_space(int space_id) { m_cpu_space_id = space_id; } protected: - m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, + m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits); - m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, + m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits, address_map_constructor internal_map); int m_has_fpu; /* Indicates if a FPU is available (yes on 030, 040, may be on 020) */ diff --git a/src/devices/cpu/m68000/m68kcpu.cpp b/src/devices/cpu/m68000/m68kcpu.cpp index 2b00922c9e1..8ccdebe84b2 100644 --- a/src/devices/cpu/m68000/m68kcpu.cpp +++ b/src/devices/cpu/m68000/m68kcpu.cpp @@ -2257,7 +2257,7 @@ void m68000_base_device::m68ki_exception_interrupt(u32 int_level) // m68000_base_device - constructor //------------------------------------------------- -m68000_base_device::m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, +m68000_base_device::m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, internal_map), @@ -2274,7 +2274,7 @@ m68000_base_device::m68000_base_device(const machine_config &mconfig, const char } -m68000_base_device::m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, +m68000_base_device::m68000_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, u32 prg_data_width, u32 prg_address_bits) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, prg_data_width, prg_address_bits), diff --git a/src/devices/cpu/m68000/mcf5206e.cpp b/src/devices/cpu/m68000/mcf5206e.cpp index 3a20ad7e473..fd5835d7fd8 100644 --- a/src/devices/cpu/m68000/mcf5206e.cpp +++ b/src/devices/cpu/m68000/mcf5206e.cpp @@ -12,7 +12,7 @@ std::unique_ptr<util::disasm_interface> mcf5206e_device::create_disassembler() return std::make_unique<m68k_disassembler>(m68k_disassembler::TYPE_COLDFIRE); } -mcf5206e_device::mcf5206e_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mcf5206e_device::mcf5206e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68000_base_device(mconfig, tag, owner, clock, MCF5206E, 32,32) { } diff --git a/src/devices/cpu/m68000/mcf5206e.h b/src/devices/cpu/m68000/mcf5206e.h index 508f2c812a7..8a190b2f3b4 100644 --- a/src/devices/cpu/m68000/mcf5206e.h +++ b/src/devices/cpu/m68000/mcf5206e.h @@ -11,7 +11,7 @@ class mcf5206e_device : public m68000_base_device { public: // construction/destruction - mcf5206e_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mcf5206e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/m68000/scc68070.cpp b/src/devices/cpu/m68000/scc68070.cpp index e0daf10b68f..bff9340edc9 100644 --- a/src/devices/cpu/m68000/scc68070.cpp +++ b/src/devices/cpu/m68000/scc68070.cpp @@ -11,7 +11,7 @@ std::unique_ptr<util::disasm_interface> scc68070_base_device::create_disassemble } -scc68070_base_device::scc68070_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, +scc68070_base_device::scc68070_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, address_map_constructor internal_map) : m68000_base_device(mconfig, tag, owner, clock, type, 16,32, internal_map) { diff --git a/src/devices/cpu/m68000/scc68070.h b/src/devices/cpu/m68000/scc68070.h index 20d2d8c62d6..1e6b5b46278 100644 --- a/src/devices/cpu/m68000/scc68070.h +++ b/src/devices/cpu/m68000/scc68070.h @@ -18,7 +18,7 @@ protected: // device-level overrides virtual void device_start() override; - scc68070_base_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, + scc68070_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, address_map_constructor internal_map); }; diff --git a/src/devices/cpu/m6805/m6805.cpp b/src/devices/cpu/m6805/m6805.cpp index 26cc630f3bb..8a01e0fef5d 100644 --- a/src/devices/cpu/m6805/m6805.cpp +++ b/src/devices/cpu/m6805/m6805.cpp @@ -314,7 +314,7 @@ m6805_base_device::m6805_base_device( machine_config const &mconfig, char const *tag, device_t *owner, - uint32_t clock, + const XTAL &clock, device_type const type, configuration_params const ¶ms) : cpu_device(mconfig, type, tag, owner, clock) @@ -327,7 +327,7 @@ m6805_base_device::m6805_base_device( machine_config const &mconfig, char const *tag, device_t *owner, - uint32_t clock, + const XTAL &clock, device_type const type, configuration_params const ¶ms, address_map_constructor internal_map) @@ -632,7 +632,7 @@ void m6805_base_device::execute_set_input(int inputnum, int state) /**************************************************************************** * M68HC05EG section ****************************************************************************/ -m68hc05eg_device::m68hc05eg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m68hc05eg_device::m68hc05eg_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6805_base_device( mconfig, tag, @@ -687,7 +687,7 @@ std::unique_ptr<util::disasm_interface> m68hc05eg_device::create_disassembler() /**************************************************************************** * HD63705 section ****************************************************************************/ -hd63705_device::hd63705_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd63705_device::hd63705_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6805_base_device(mconfig, tag, owner, diff --git a/src/devices/cpu/m6805/m6805.h b/src/devices/cpu/m6805/m6805.h index 824c664b829..f0ce42bc0f8 100644 --- a/src/devices/cpu/m6805/m6805.h +++ b/src/devices/cpu/m6805/m6805.h @@ -111,14 +111,14 @@ protected: machine_config const &mconfig, char const *tag, device_t *owner, - uint32_t clock, + const XTAL &clock, device_type const type, configuration_params const ¶ms); m6805_base_device( machine_config const &mconfig, char const *tag, device_t *owner, - uint32_t clock, + const XTAL &clock, device_type const type, configuration_params const ¶ms, address_map_constructor internal_map); @@ -313,7 +313,7 @@ class m68hc05eg_device : public m6805_base_device { public: // construction/destruction - m68hc05eg_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m68hc05eg_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides @@ -332,7 +332,7 @@ class hd63705_device : public m6805_base_device { public: // construction/destruction - hd63705_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd63705_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/m6805/m68705.cpp b/src/devices/cpu/m6805/m68705.cpp index 96a36d2c711..7c9284fe74e 100644 --- a/src/devices/cpu/m6805/m68705.cpp +++ b/src/devices/cpu/m6805/m68705.cpp @@ -214,7 +214,7 @@ Ux Parts: */ -m6805_hmos_device::m6805_hmos_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size) +m6805_hmos_device::m6805_hmos_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type, u32 addr_width, unsigned ram_size) : m6805_base_device(mconfig, tag, owner, clock, type, { addr_width > 13 ? s_hmos_b_ops : s_hmos_s_ops, s_hmos_cycles, addr_width, 0x007f, 0x0060, M6805_VECTOR_SWI }, address_map_constructor(FUNC(m6805_hmos_device::map), this)) , m_timer(*this) , m_port_open_drain{ false, false, false, false } @@ -228,7 +228,7 @@ m6805_hmos_device::m6805_hmos_device(machine_config const &mconfig, char const * { } -m68705_device::m68705_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size) +m68705_device::m68705_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type, u32 addr_width, unsigned ram_size) : m6805_hmos_device(mconfig, tag, owner, clock, type, addr_width, ram_size) , device_nvram_interface(mconfig, *this) , m_user_rom(*this, DEVICE_SELF) @@ -634,7 +634,7 @@ void m68705p_device::internal_map(address_map &map) map(0x07f8, 0x07ff).rw(FUNC(m68705p_device::eprom_r<0x07f8>), FUNC(m68705p_device::eprom_w<0x07f8>)); // Interrupt vectors } -m68705p_device::m68705p_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type) +m68705p_device::m68705p_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type) : m68705_device(mconfig, tag, owner, clock, type, 11, 112) { set_port_open_drain<0>(true); // Port A is open drain with internal pull-ups @@ -669,7 +669,7 @@ void m68705u_device::internal_map(address_map &map) map(0x0ff8, 0x0fff).rw(FUNC(m68705u_device::eprom_r<0x0ff8>), FUNC(m68705u_device::eprom_w<0x0ff8>)); // Interrupt vectors } -m68705u_device::m68705u_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type) +m68705u_device::m68705u_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type) : m68705_device(mconfig, tag, owner, clock, type, 12, 112) { set_port_open_drain<0>(true); // Port A is open drain with internal pull-ups @@ -705,7 +705,7 @@ void m68705r_device::internal_map(address_map &map) map(0x0ff8, 0x0fff).rw(FUNC(m68705r_device::eprom_r<0x0ff8>), FUNC(m68705r_device::eprom_w<0x0ff8>)); // Interrupt vectors } -m68705r_device::m68705r_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type) +m68705r_device::m68705r_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type) : m68705u_device(mconfig, tag, owner, clock, type) { } @@ -726,7 +726,7 @@ std::unique_ptr<util::disasm_interface> m68705r_device::create_disassembler() * M68705P3 device ****************************************************************************/ -m68705p3_device::m68705p3_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m68705p3_device::m68705p3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68705p_device(mconfig, tag, owner, clock, M68705P3) { } @@ -746,7 +746,7 @@ u8 m68705p3_device::get_mask_options() const * M68705P5 device ****************************************************************************/ -m68705p5_device::m68705p5_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m68705p5_device::m68705p5_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68705p_device(mconfig, tag, owner, clock, M68705P5) { } @@ -766,7 +766,7 @@ u8 m68705p5_device::get_mask_options() const * M68705R3 device ****************************************************************************/ -m68705r3_device::m68705r3_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m68705r3_device::m68705r3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68705r_device(mconfig, tag, owner, clock, M68705R3) { } @@ -786,7 +786,7 @@ u8 m68705r3_device::get_mask_options() const * M68705U3 device ****************************************************************************/ -m68705u3_device::m68705u3_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m68705u3_device::m68705u3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68705u_device(mconfig, tag, owner, clock, M68705U3) { } @@ -801,7 +801,7 @@ u8 m68705u3_device::get_mask_options() const return get_user_rom()[0x0f38] & 0xf7; // no SNM bit } -m6805p2_device::m6805p2_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805p2_device::m6805p2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805P2, 11, 64) { /* @@ -816,7 +816,7 @@ m6805p2_device::m6805p2_device(machine_config const &mconfig, char const *tag, d set_port_mask<3>(0xff); // Port D isn't present } -m6805p6_device::m6805p6_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805p6_device::m6805p6_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805P6, 11, 64) { m_timer.set_options(m6805_timer::TIMER_MOR /* | m6805::TIMER_NPC */); @@ -826,33 +826,33 @@ m6805p6_device::m6805p6_device(machine_config const &mconfig, char const *tag, d set_port_mask<3>(0xff); // Port D isn't present } -m6805r2_device::m6805r2_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805r2_device::m6805r2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805R2, 12, 64) { m_timer.set_options(m6805_timer::TIMER_MOR); m_timer.set_source(m6805_timer::CLOCK_TIMER); } -m6805r3_device::m6805r3_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805r3_device::m6805r3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805R3, 12, 112) { m_timer.set_options(m6805_timer::TIMER_PGM); } -m6805u2_device::m6805u2_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805u2_device::m6805u2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805U2, 12, 64) { m_timer.set_options(m6805_timer::TIMER_MOR); m_timer.set_source(m6805_timer::CLOCK_TIMER); } -m6805u3_device::m6805u3_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +m6805u3_device::m6805u3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, M6805U3, 12, 112) { m_timer.set_options(m6805_timer::TIMER_PGM); } -hd6805s1_device::hd6805s1_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +hd6805s1_device::hd6805s1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, HD6805S1, 11, 64) { m_timer.set_options(m6805_timer::TIMER_NPC); @@ -861,7 +861,7 @@ hd6805s1_device::hd6805s1_device(machine_config const &mconfig, char const *tag, set_port_mask<3>(0xff); // Port D isn't present } -hd6805u1_device::hd6805u1_device(machine_config const &mconfig, char const *tag, device_t *owner, uint32_t clock) +hd6805u1_device::hd6805u1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m6805_mrom_device(mconfig, tag, owner, clock, HD6805U1, 12, 96) { // Port D has optional analog comparator but no INT2 (no MISC register, either) diff --git a/src/devices/cpu/m6805/m68705.h b/src/devices/cpu/m6805/m68705.h index e8bd0659135..af90a7d7d4c 100644 --- a/src/devices/cpu/m6805/m68705.h +++ b/src/devices/cpu/m6805/m68705.h @@ -164,7 +164,7 @@ protected: static unsigned const PORT_COUNT = 4; - m6805_hmos_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size); + m6805_hmos_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type, u32 addr_width, unsigned ram_size); void map(address_map &map) { internal_map(map); } virtual void internal_map(address_map &map); @@ -225,7 +225,7 @@ private: class m6805_mrom_device : public m6805_hmos_device { protected: - m6805_mrom_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size) + m6805_mrom_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type, u32 addr_width, unsigned ram_size) : m6805_hmos_device(mconfig, tag, owner, clock, type, addr_width, ram_size) { } @@ -248,7 +248,7 @@ public: protected: virtual void internal_map(address_map &map) override; - m68705_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type, u32 addr_width, unsigned ram_size); + m68705_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type, u32 addr_width, unsigned ram_size); template <offs_t B> u8 eprom_r(offs_t offset); template <offs_t B> void eprom_w(offs_t offset, u8 data); @@ -290,7 +290,7 @@ public: protected: virtual void internal_map(address_map &map) override; - m68705p_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); + m68705p_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type); virtual void device_start() override; @@ -308,7 +308,7 @@ public: protected: virtual void internal_map(address_map &map) override; - m68705u_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); + m68705u_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type); virtual void device_start() override; @@ -323,7 +323,7 @@ public: protected: virtual void internal_map(address_map &map) override; - m68705r_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, device_type type); + m68705r_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, device_type type); virtual void device_start() override; @@ -334,7 +334,7 @@ protected: class m6805p2_device : public m6805_mrom_device { public: - m6805p2_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805p2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); // mask options void set_timer_divisor(unsigned divisor) { m_timer.set_divisor(divisor); } @@ -344,7 +344,7 @@ public: class m6805p6_device : public m6805_mrom_device { public: - m6805p6_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805p6_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); // mask options void set_timer_divisor(unsigned divisor) { m_timer.set_divisor(divisor); } @@ -354,7 +354,7 @@ public: class m6805r2_device : public m6805_mrom_device { public: - m6805r2_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805r2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); // mask options void set_timer_divisor(unsigned divisor) { m_timer.set_divisor(divisor); } @@ -367,7 +367,7 @@ protected: class m6805r3_device : public m6805_mrom_device { public: - m6805r3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805r3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: virtual void internal_map(address_map &map) override; @@ -376,7 +376,7 @@ protected: class m6805u2_device : public m6805_mrom_device { public: - m6805u2_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805u2_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); // mask options void set_timer_divisor(unsigned divisor) { m_timer.set_divisor(divisor); } @@ -386,7 +386,7 @@ public: class m6805u3_device : public m6805_mrom_device { public: - m6805u3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m6805u3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: }; @@ -394,19 +394,19 @@ protected: class hd6805s1_device : public m6805_mrom_device { public: - hd6805s1_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + hd6805s1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class hd6805u1_device : public m6805_mrom_device { public: - hd6805u1_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + hd6805u1_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class m68705p3_device : public m68705p_device { public: - m68705p3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68705p3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: virtual tiny_rom_entry const *device_rom_region() const override; @@ -417,7 +417,7 @@ protected: class m68705p5_device : public m68705p_device { public: - m68705p5_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68705p5_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: virtual tiny_rom_entry const *device_rom_region() const override; @@ -428,7 +428,7 @@ protected: class m68705r3_device : public m68705r_device { public: - m68705r3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68705r3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: virtual tiny_rom_entry const *device_rom_region() const override; @@ -439,7 +439,7 @@ protected: class m68705u3_device : public m68705u_device { public: - m68705u3_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68705u3_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); static auto parent_rom_device_type() { return &M68705R3; } diff --git a/src/devices/cpu/m6805/m68hc05.cpp b/src/devices/cpu/m6805/m68hc05.cpp index df7c590d3a3..a18fdd7ccfb 100644 --- a/src/devices/cpu/m6805/m68hc05.cpp +++ b/src/devices/cpu/m6805/m68hc05.cpp @@ -138,7 +138,7 @@ m68hc05_device::m68hc05_device( machine_config const &mconfig, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, device_type type, u32 addr_width, u16 vector_mask, @@ -759,7 +759,7 @@ m68hc705_device::m68hc705_device( machine_config const &mconfig, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, device_type type, u32 addr_width, address_map_constructor internal_map) @@ -805,7 +805,7 @@ void m68hc05c4_device::c4_map(address_map &map) } -m68hc05c4_device::m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc05c4_device::m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc05_device( mconfig, tag, @@ -872,7 +872,7 @@ void m68hc05c8_device::c8_map(address_map &map) } -m68hc05c8_device::m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc05c8_device::m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc05_device( mconfig, tag, @@ -943,7 +943,7 @@ void m68hc705c4a_device::c4a_map(address_map &map) } -m68hc705c4a_device::m68hc705c4a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc705c4a_device::m68hc705c4a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc705_device( mconfig, tag, @@ -1039,7 +1039,7 @@ void m68hc705c8a_device::c8a_map(address_map &map) } -m68hc705c8a_device::m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc705c8a_device::m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc705_device( mconfig, tag, @@ -1155,7 +1155,7 @@ void m68hc705j1a_device::j1a_map(address_map &map) } -m68hc705j1a_device::m68hc705j1a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc705j1a_device::m68hc705j1a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc705_device( mconfig, tag, @@ -1235,7 +1235,7 @@ void m68hc05l9_device::l9_map(address_map &map) } -m68hc05l9_device::m68hc05l9_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc05l9_device::m68hc05l9_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc05_device( mconfig, tag, @@ -1318,7 +1318,7 @@ void m68hc05l11_device::l11_map(address_map &map) } -m68hc05l11_device::m68hc05l11_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +m68hc05l11_device::m68hc05l11_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : m68hc05_device( mconfig, tag, diff --git a/src/devices/cpu/m6805/m68hc05.h b/src/devices/cpu/m6805/m68hc05.h index 939f71de211..5843a7df2f0 100644 --- a/src/devices/cpu/m6805/m68hc05.h +++ b/src/devices/cpu/m6805/m68hc05.h @@ -87,7 +87,7 @@ protected: machine_config const &mconfig, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, device_type type, u32 addr_width, u16 vector_mask, @@ -189,7 +189,7 @@ protected: machine_config const &mconfig, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, device_type type, u32 addr_width, address_map_constructor internal_map); @@ -201,7 +201,7 @@ protected: class m68hc05c4_device : public m68hc05_device { public: - m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc05c4_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void c4_map(address_map &map); @@ -217,7 +217,7 @@ protected: class m68hc05c8_device : public m68hc05_device { public: - m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc05c8_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void c8_map(address_map &map); @@ -233,7 +233,7 @@ protected: class m68hc705c4a_device : public m68hc705_device { public: - m68hc705c4a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc705c4a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void c4a_map(address_map &map); @@ -257,7 +257,7 @@ private: class m68hc705c8a_device : public m68hc705_device { public: - m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc705c8a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void c8a_map(address_map &map); @@ -287,7 +287,7 @@ private: class m68hc705j1a_device : public m68hc705_device { public: - m68hc705j1a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc705j1a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void j1a_map(address_map &map); @@ -304,7 +304,7 @@ protected: class m68hc05l9_device : public m68hc05_device { public: - m68hc05l9_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc05l9_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void l9_map(address_map &map); @@ -320,7 +320,7 @@ protected: class m68hc05l11_device : public m68hc05_device { public: - m68hc05l11_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + m68hc05l11_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: void l11_map(address_map &map); diff --git a/src/devices/cpu/m6809/hd6309.cpp b/src/devices/cpu/m6809/hd6309.cpp index 03eb11336e2..6da69f8ca05 100644 --- a/src/devices/cpu/m6809/hd6309.cpp +++ b/src/devices/cpu/m6809/hd6309.cpp @@ -132,19 +132,19 @@ DEFINE_DEVICE_TYPE(HD6309E, hd6309e_device, "hd6309e", "Hitachi HD6309E") // hd6309_device - constructor //------------------------------------------------- -hd6309_device::hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, device_type type, int divider) : +hd6309_device::hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, device_type type, int divider) : m6809_base_device(mconfig, tag, owner, clock, type, divider), m_md(0), m_temp_im(0) { } -hd6309_device::hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +hd6309_device::hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6309_device(mconfig, tag, owner, clock, HD6309, 4) { } -hd6309e_device::hd6309e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +hd6309e_device::hd6309e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : hd6309_device(mconfig, tag, owner, clock, HD6309E, 1) { } diff --git a/src/devices/cpu/m6809/hd6309.h b/src/devices/cpu/m6809/hd6309.h index 99065882116..5764d5314de 100644 --- a/src/devices/cpu/m6809/hd6309.h +++ b/src/devices/cpu/m6809/hd6309.h @@ -30,11 +30,11 @@ class hd6309_device : public m6809_base_device { public: // construction/destruction - hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // delegating constructor - hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, device_type type, int divider); + hd6309_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, device_type type, int divider); // device-level overrides virtual void device_start() override; @@ -148,7 +148,7 @@ class hd6309e_device : public hd6309_device { public: // construction/destruction - hd6309e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd6309e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; #define HD6309_IRQ_LINE M6809_IRQ_LINE /* 0 - IRQ line number */ diff --git a/src/devices/cpu/m6809/konami.cpp b/src/devices/cpu/m6809/konami.cpp index 95bd6765526..b0c76e0f8fc 100644 --- a/src/devices/cpu/m6809/konami.cpp +++ b/src/devices/cpu/m6809/konami.cpp @@ -84,7 +84,7 @@ DEFINE_DEVICE_TYPE(KONAMI, konami_cpu_device, "konami_cpu", "KONAMI CPU") // konami_cpu_device - constructor //------------------------------------------------- -konami_cpu_device::konami_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +konami_cpu_device::konami_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6809_base_device(mconfig, tag, owner, clock, KONAMI, 1) , m_set_lines(*this) { diff --git a/src/devices/cpu/m6809/konami.h b/src/devices/cpu/m6809/konami.h index edb595d771e..44e08872724 100644 --- a/src/devices/cpu/m6809/konami.h +++ b/src/devices/cpu/m6809/konami.h @@ -29,7 +29,7 @@ class konami_cpu_device : public m6809_base_device { public: // construction/destruction - konami_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + konami_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration auto line() { return m_set_lines.bind(); } diff --git a/src/devices/cpu/m6809/m6809.cpp b/src/devices/cpu/m6809/m6809.cpp index 52ddfa433c6..9536081d001 100644 --- a/src/devices/cpu/m6809/m6809.cpp +++ b/src/devices/cpu/m6809/m6809.cpp @@ -136,7 +136,7 @@ DEFINE_DEVICE_TYPE(M6809, m6809_device, "m6809", "MC6809 (legacy)") // m6809_base_device - constructor //------------------------------------------------- -m6809_base_device::m6809_base_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, const device_type type, int divider) +m6809_base_device::m6809_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, int divider) : cpu_device(mconfig, type, tag, owner, clock), m_lic_func(*this), m_program_config("program", ENDIANNESS_BIG, 8, 16), @@ -603,7 +603,7 @@ void m6809_base_device::mi_default::write(uint16_t adr, uint8_t val) // mc6809_device //------------------------------------------------- -mc6809_device::mc6809_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc6809_device::mc6809_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6809_base_device(mconfig, tag, owner, clock, MC6809, 4) { } @@ -614,7 +614,7 @@ mc6809_device::mc6809_device(const machine_config &mconfig, const char *tag, dev // mc6809e_device //------------------------------------------------- -mc6809e_device::mc6809e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc6809e_device::mc6809e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6809_base_device(mconfig, tag, owner, clock, MC6809E, 1) { } @@ -625,7 +625,7 @@ mc6809e_device::mc6809e_device(const machine_config &mconfig, const char *tag, d // m6809_device //------------------------------------------------- -m6809_device::m6809_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m6809_device::m6809_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m6809_base_device(mconfig, tag, owner, clock, M6809, 1) { } diff --git a/src/devices/cpu/m6809/m6809.h b/src/devices/cpu/m6809/m6809.h index 3fc0b8bae1d..490a7658511 100644 --- a/src/devices/cpu/m6809/m6809.h +++ b/src/devices/cpu/m6809/m6809.h @@ -30,7 +30,7 @@ class m6809_base_device : public cpu_device { protected: // construction/destruction - m6809_base_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, const device_type type, int divider); + m6809_base_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, const device_type type, int divider); class memory_interface { public: @@ -302,7 +302,7 @@ class mc6809_device : public m6809_base_device { public: // construction/destruction - mc6809_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc6809_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // ======================> mc6809e_device @@ -311,7 +311,7 @@ class mc6809e_device : public m6809_base_device { public: // construction/destruction - mc6809e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc6809e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // MC6809E has LIC line to indicate opcode/data fetch auto lic() { return m_lic_func.bind(); } @@ -323,7 +323,7 @@ class m6809_device : public m6809_base_device { public: // construction/destruction - m6809_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m6809_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; enum diff --git a/src/devices/cpu/m68hc16/cpu16.cpp b/src/devices/cpu/m68hc16/cpu16.cpp index ea6bfbefe78..313f28dff79 100644 --- a/src/devices/cpu/m68hc16/cpu16.cpp +++ b/src/devices/cpu/m68hc16/cpu16.cpp @@ -181,7 +181,7 @@ enum class cpu16_device::seq : u16 ALLOW_SAVE_TYPE(cpu16_device::seq) -cpu16_device::cpu16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +cpu16_device::cpu16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 20, 0, map) , m_data_config("data", ENDIANNESS_BIG, 16, 20, 0, map) diff --git a/src/devices/cpu/m68hc16/cpu16.h b/src/devices/cpu/m68hc16/cpu16.h index bb8c47bbd1c..48c6dce7848 100644 --- a/src/devices/cpu/m68hc16/cpu16.h +++ b/src/devices/cpu/m68hc16/cpu16.h @@ -26,7 +26,7 @@ public: protected: // construction/destruction - cpu16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + cpu16_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/m68hc16/m68hc16z.cpp b/src/devices/cpu/m68hc16/m68hc16z.cpp index 9bd136eb053..0974727634a 100644 --- a/src/devices/cpu/m68hc16/m68hc16z.cpp +++ b/src/devices/cpu/m68hc16/m68hc16z.cpp @@ -29,7 +29,7 @@ // device type definition DEFINE_DEVICE_TYPE(MC68HC16Z1, mc68hc16z1_device, "mc68hc16z1", "Motorola MC68HC16Z1") -m68hc16z_device::m68hc16z_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +m68hc16z_device::m68hc16z_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : cpu16_device(mconfig, type, tag, owner, clock, map) , m_pitr(0) , m_sccr{0, 0} @@ -38,7 +38,7 @@ m68hc16z_device::m68hc16z_device(const machine_config &mconfig, device_type type { } -mc68hc16z1_device::mc68hc16z1_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mc68hc16z1_device::mc68hc16z1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : m68hc16z_device(mconfig, MC68HC16Z1, tag, owner, clock, address_map_constructor(FUNC(mc68hc16z1_device::internal_map), this)) { } diff --git a/src/devices/cpu/m68hc16/m68hc16z.h b/src/devices/cpu/m68hc16/m68hc16z.h index e28fb879df1..ebfc7fc08a0 100644 --- a/src/devices/cpu/m68hc16/m68hc16z.h +++ b/src/devices/cpu/m68hc16/m68hc16z.h @@ -12,7 +12,7 @@ class m68hc16z_device : public cpu16_device { protected: - m68hc16z_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + m68hc16z_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); // device-level overrides virtual void device_start() override; @@ -92,7 +92,7 @@ class mc68hc16z1_device : public m68hc16z_device { public: // device type constructor - mc68hc16z1_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mc68hc16z1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); private: void internal_map(address_map &map); diff --git a/src/devices/cpu/m88000/m88000.cpp b/src/devices/cpu/m88000/m88000.cpp index f3921bc8667..89d369d4020 100644 --- a/src/devices/cpu/m88000/m88000.cpp +++ b/src/devices/cpu/m88000/m88000.cpp @@ -127,7 +127,7 @@ enum fcr_mask : u32 // device type definitions DEFINE_DEVICE_TYPE(MC88100, mc88100_device, "mc88100", "Motorola MC88100") -mc88100_device::mc88100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mc88100_device::mc88100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, MC88100, tag, owner, clock) , m_code_config("code", ENDIANNESS_BIG, 32, 32, 0) , m_data_config("data", ENDIANNESS_BIG, 32, 32, 0) diff --git a/src/devices/cpu/m88000/m88000.h b/src/devices/cpu/m88000/m88000.h index 896ab05df51..cb361970f1a 100644 --- a/src/devices/cpu/m88000/m88000.h +++ b/src/devices/cpu/m88000/m88000.h @@ -17,7 +17,7 @@ class mc88100_device : public cpu_device { public: // construction/destruction - mc88100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mc88100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/mb86233/mb86233.cpp b/src/devices/cpu/mb86233/mb86233.cpp index 479b6fa0399..180e61d7472 100644 --- a/src/devices/cpu/mb86233/mb86233.cpp +++ b/src/devices/cpu/mb86233/mb86233.cpp @@ -48,7 +48,7 @@ DEFINE_DEVICE_TYPE(MB86233, mb86233_device, "mb86233", "Fujitsu MB86233 (TGP)") DEFINE_DEVICE_TYPE(MB86234, mb86234_device, "mb86234", "Fujitsu MB86234 (TGP)") -mb86233_device::mb86233_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +mb86233_device::mb86233_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 16, -2) , m_data_config("data", ENDIANNESS_LITTLE, 32, 16, -2) @@ -57,12 +57,12 @@ mb86233_device::mb86233_device(const machine_config &mconfig, device_type type, { } -mb86233_device::mb86233_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb86233_device::mb86233_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb86233_device(mconfig, MB86233, tag, owner, clock) { } -mb86234_device::mb86234_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb86234_device::mb86234_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb86233_device(mconfig, MB86234, tag, owner, clock) { } diff --git a/src/devices/cpu/mb86233/mb86233.h b/src/devices/cpu/mb86233/mb86233.h index 4b1915dc836..d62f24db785 100644 --- a/src/devices/cpu/mb86233/mb86233.h +++ b/src/devices/cpu/mb86233/mb86233.h @@ -58,7 +58,7 @@ public: F_ZC1 = 0x80000000 }; - mb86233_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb86233_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void stall() { m_stall = true; } @@ -68,7 +68,7 @@ public: DECLARE_WRITE_LINE_MEMBER(gpio3_w); protected: - mb86233_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + mb86233_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -134,7 +134,7 @@ private: class mb86234_device : public mb86233_device { public: - mb86234_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb86234_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/mb86235/mb86235.cpp b/src/devices/cpu/mb86235/mb86235.cpp index 23e52b6d1be..5449c900ab3 100644 --- a/src/devices/cpu/mb86235/mb86235.cpp +++ b/src/devices/cpu/mb86235/mb86235.cpp @@ -258,7 +258,7 @@ void mb86235_cpu_device::execute_set_input(int irqline, int state) } #endif -mb86235_device::mb86235_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb86235_device::mb86235_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, MB86235, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 64, 32, -3) , m_dataa_config("data_a", ENDIANNESS_LITTLE, 32, 24, -2, address_map_constructor(FUNC(mb86235_device::internal_abus), this)) diff --git a/src/devices/cpu/mb86235/mb86235.h b/src/devices/cpu/mb86235/mb86235.h index c859807bf56..652b5798684 100644 --- a/src/devices/cpu/mb86235/mb86235.h +++ b/src/devices/cpu/mb86235/mb86235.h @@ -23,7 +23,7 @@ class mb86235_device : public cpu_device public: // construction/destruction - mb86235_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t clock); + mb86235_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &clock); virtual ~mb86235_device() override; template <typename T> void set_fifoin_tag(T &&fifo_tag) { m_fifoin.set_tag(std::forward<T>(fifo_tag)); } diff --git a/src/devices/cpu/mb88xx/mb88xx.cpp b/src/devices/cpu/mb88xx/mb88xx.cpp index 1ef53c5e00b..c45520262e2 100644 --- a/src/devices/cpu/mb88xx/mb88xx.cpp +++ b/src/devices/cpu/mb88xx/mb88xx.cpp @@ -112,7 +112,7 @@ void mb88_cpu_device::data_7bit(address_map &map) } -mb88_cpu_device::mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width) +mb88_cpu_device::mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, program_width, 0, (program_width == 9) ? address_map_constructor(FUNC(mb88_cpu_device::program_9bit), this) : (program_width == 10) ? address_map_constructor(FUNC(mb88_cpu_device::program_10bit), this) : address_map_constructor(FUNC(mb88_cpu_device::program_11bit), this)) , m_data_config("data", ENDIANNESS_BIG, 8, data_width, 0, (data_width == 4) ? address_map_constructor(FUNC(mb88_cpu_device::data_4bit), this) : (data_width == 5) ? address_map_constructor(FUNC(mb88_cpu_device::data_5bit), this) : (data_width == 6) ? address_map_constructor(FUNC(mb88_cpu_device::data_6bit), this) : address_map_constructor(FUNC(mb88_cpu_device::data_7bit), this)) @@ -127,36 +127,36 @@ mb88_cpu_device::mb88_cpu_device(const machine_config &mconfig, device_type type { } -mb88201_cpu_device::mb88201_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb88201_cpu_device::mb88201_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB88201, tag, owner, clock, 9, 4) { } -mb88202_cpu_device::mb88202_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb88202_cpu_device::mb88202_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB88202, tag, owner, clock, 10, 5) { } -mb8841_cpu_device::mb8841_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb8841_cpu_device::mb8841_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB8841, tag, owner, clock, 11, 7) { } -mb8842_cpu_device::mb8842_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb8842_cpu_device::mb8842_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB8842, tag, owner, clock, 11, 7) { } -mb8843_cpu_device::mb8843_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb8843_cpu_device::mb8843_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB8843, tag, owner, clock, 10, 6) { } -mb8844_cpu_device::mb8844_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb8844_cpu_device::mb8844_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mb88_cpu_device(mconfig, MB8844, tag, owner, clock, 10, 6) { } diff --git a/src/devices/cpu/mb88xx/mb88xx.h b/src/devices/cpu/mb88xx/mb88xx.h index 6bae70de879..fc4b23950eb 100644 --- a/src/devices/cpu/mb88xx/mb88xx.h +++ b/src/devices/cpu/mb88xx/mb88xx.h @@ -106,7 +106,7 @@ public: void program_11bit(address_map &map); void program_9bit(address_map &map); protected: - mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width); + mb88_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width); // device-level overrides virtual void device_start() override; @@ -199,7 +199,7 @@ class mb88201_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb88201_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb88201_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -207,7 +207,7 @@ class mb88202_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb88202_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb88202_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -215,7 +215,7 @@ class mb8841_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb8841_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb8841_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -223,7 +223,7 @@ class mb8842_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb8842_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb8842_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -231,7 +231,7 @@ class mb8843_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb8843_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb8843_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -239,7 +239,7 @@ class mb8844_cpu_device : public mb88_cpu_device { public: // construction/destruction - mb8844_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb8844_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/mc68hc11/mc68hc11.cpp b/src/devices/cpu/mc68hc11/mc68hc11.cpp index 6a03dcb769b..2a9da9bb22a 100644 --- a/src/devices/cpu/mc68hc11/mc68hc11.cpp +++ b/src/devices/cpu/mc68hc11/mc68hc11.cpp @@ -53,7 +53,7 @@ DEFINE_DEVICE_TYPE(MC68HC11K1, mc68hc11k1_device, "mc68hc11k1", "Motorola MC68HC DEFINE_DEVICE_TYPE(MC68HC11M0, mc68hc11m0_device, "mc68hc11m0", "Motorola MC68HC11M0") -mc68hc11_cpu_device::mc68hc11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint16_t ram_size, uint16_t reg_block_size, uint16_t rom_size, uint16_t eeprom_size, uint8_t init_value, uint8_t config_mask, uint8_t option_mask) +mc68hc11_cpu_device::mc68hc11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint16_t ram_size, uint16_t reg_block_size, uint16_t rom_size, uint16_t eeprom_size, uint8_t init_value, uint8_t config_mask, uint8_t option_mask) : cpu_device(mconfig, type, tag, owner, clock) , device_nvram_interface(mconfig, *this, (config_mask & 0xf9) != 0) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0, address_map_constructor(FUNC(mc68hc11_cpu_device::internal_map), this)) @@ -107,38 +107,38 @@ void mc68hc11_cpu_device::internal_map(address_map &map) } } -mc68hc11a1_device::mc68hc11a1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11a1_device::mc68hc11a1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11A1, tag, owner, clock, 256, 64, 0, 512, 0x01, 0x0f, 0xfb) { } -mc68hc11d0_device::mc68hc11d0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11d0_device::mc68hc11d0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11D0, tag, owner, clock, 192, 64, 0, 0, 0x00, 0x06, 0x3b) { } -mc68hc11e1_device::mc68hc11e1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11e1_device::mc68hc11e1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11E1, tag, owner, clock, 512, 64, 0, 512, 0x01, 0x0f, 0xfb) { } -mc68hc811e2_device::mc68hc811e2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc811e2_device::mc68hc811e2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC811E2, tag, owner, clock, 256, 64, 0, 2048, 0x01, 0xf5, 0xfb) { } -mc68hc11f1_device::mc68hc11f1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11f1_device::mc68hc11f1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11F1, tag, owner, clock, 1024, 96, 0, 512, 0x01, 0xf5, 0xff) { m_config &= 0x0f; } -mc68hc11k1_device::mc68hc11k1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11k1_device::mc68hc11k1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11K1, tag, owner, clock, 768, 128, 0, 640, 0x00, 0xbf, 0xff) { } -mc68hc11m0_device::mc68hc11m0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mc68hc11m0_device::mc68hc11m0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mc68hc11_cpu_device(mconfig, MC68HC11M0, tag, owner, clock, 1280, 256, 0, 0, 0x00, 0x06, 0xff) { } diff --git a/src/devices/cpu/mc68hc11/mc68hc11.h b/src/devices/cpu/mc68hc11/mc68hc11.h index f4b60849063..45564643f3b 100644 --- a/src/devices/cpu/mc68hc11/mc68hc11.h +++ b/src/devices/cpu/mc68hc11/mc68hc11.h @@ -54,7 +54,7 @@ public: void set_default_config(uint8_t data) { assert(!configured()); m_config = data & m_config_mask; } protected: - mc68hc11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint16_t ram_size, uint16_t reg_block_size, uint16_t rom_size, uint16_t eeprom_size, uint8_t init_value, uint8_t config_mask, uint8_t option_mask); + mc68hc11_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint16_t ram_size, uint16_t reg_block_size, uint16_t rom_size, uint16_t eeprom_size, uint8_t init_value, uint8_t config_mask, uint8_t option_mask); // device-level overrides virtual void device_resolve_objects() override; @@ -560,7 +560,7 @@ class mc68hc11a1_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11a1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11a1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -575,7 +575,7 @@ class mc68hc11d0_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11d0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11d0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -590,7 +590,7 @@ class mc68hc11e1_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11e1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11e1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -602,7 +602,7 @@ class mc68hc811e2_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc811e2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc811e2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -614,7 +614,7 @@ class mc68hc11f1_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11f1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11f1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -626,7 +626,7 @@ class mc68hc11k1_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11k1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11k1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; @@ -636,7 +636,7 @@ class mc68hc11m0_device : public mc68hc11_cpu_device { public: // construction/destruction - mc68hc11m0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mc68hc11m0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void mc68hc11_reg_map(memory_view::memory_view_entry &block, offs_t base) override; diff --git a/src/devices/cpu/mcs40/mcs40.cpp b/src/devices/cpu/mcs40/mcs40.cpp index 0b9b80c719f..9e2c10031fd 100644 --- a/src/devices/cpu/mcs40/mcs40.cpp +++ b/src/devices/cpu/mcs40/mcs40.cpp @@ -85,7 +85,7 @@ mcs40_cpu_device_base::mcs40_cpu_device_base( device_type type, const char *tag, device_t *owner, - u32 clock, + const XTAL &clock, bool extended_cm, unsigned rom_width, unsigned stack_ptr_mask, @@ -822,7 +822,7 @@ inline void mcs40_cpu_device_base::update_4289_f_l(u8 val) -i4004_cpu_device::i4004_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +i4004_cpu_device::i4004_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mcs40_cpu_device_base(mconfig, I4004, tag, owner, clock, false, 12U, 0x3U, 16U, 0x7U) { } @@ -1132,7 +1132,7 @@ u8 i4004_cpu_device::do_io(u8 opr, u8 opa) -i4040_cpu_device::i4040_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +i4040_cpu_device::i4040_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : i4004_cpu_device(mconfig, I4040, tag, owner, clock, true, 13U, 0x7U, 24U, 0xfU) { } diff --git a/src/devices/cpu/mcs40/mcs40.h b/src/devices/cpu/mcs40/mcs40.h index 68a8dca161f..69e11def3c9 100644 --- a/src/devices/cpu/mcs40/mcs40.h +++ b/src/devices/cpu/mcs40/mcs40.h @@ -74,7 +74,7 @@ protected: device_type type, char const *tag, device_t *owner, - u32 clock, + const XTAL &clock, bool extended_cm, unsigned rom_width, unsigned stack_ptr_mask, @@ -253,7 +253,7 @@ public: auto cm_rom_cb() { return mcs40_cpu_device_base::cm_rom_cb<0>(); } template <unsigned N> auto cm_ram_cb() { return mcs40_cpu_device_base::cm_ram_cb<N>(); } - i4004_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + i4004_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: using mcs40_cpu_device_base::mcs40_cpu_device_base; @@ -282,7 +282,7 @@ public: auto cy_cb() { return i4004_cpu_device::cy_cb(); } using mcs40_cpu_device_base::stp_ack_cb; - i4040_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + i4040_cpu_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface implementation diff --git a/src/devices/cpu/mcs48/mcs48.cpp b/src/devices/cpu/mcs48/mcs48.cpp index b429ac28ead..df57397e7ee 100644 --- a/src/devices/cpu/mcs48/mcs48.cpp +++ b/src/devices/cpu/mcs48/mcs48.cpp @@ -199,7 +199,7 @@ void mcs48_cpu_device::data_8bit(address_map &map) } -mcs48_cpu_device::mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rom_size, int ram_size, uint8_t feature_mask, const mcs48_cpu_device::mcs48_ophandler *opcode_table) +mcs48_cpu_device::mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int rom_size, int ram_size, uint8_t feature_mask, const mcs48_cpu_device::mcs48_ophandler *opcode_table) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, (feature_mask & MB_FEATURE) != 0 ? 12 : 11, 0 , (rom_size == 1024) ? address_map_constructor(FUNC(mcs48_cpu_device::program_10bit), this) : (rom_size == 2048) ? address_map_constructor(FUNC(mcs48_cpu_device::program_11bit), this) : (rom_size == 4096) ? address_map_constructor(FUNC(mcs48_cpu_device::program_12bit), this) : address_map_constructor()) @@ -231,117 +231,117 @@ mcs48_cpu_device::mcs48_cpu_device(const machine_config &mconfig, device_type ty } } -i8021_device::i8021_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8021_device::i8021_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8021, tag, owner, clock, 1024, 64, I802X_FEATURE, s_i8021_opcodes) { } -i8022_device::i8022_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8022_device::i8022_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8022, tag, owner, clock, 2048, 128, I802X_FEATURE, s_i8022_opcodes) { } -i8035_device::i8035_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8035_device::i8035_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8035, tag, owner, clock, 0, 64, I8048_FEATURE, s_mcs48_opcodes) { } -i8048_device::i8048_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8048_device::i8048_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8048, tag, owner, clock, 1024, 64, I8048_FEATURE, s_mcs48_opcodes) { } -i8648_device::i8648_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8648_device::i8648_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8648, tag, owner, clock, 1024, 64, I8048_FEATURE, s_mcs48_opcodes) { } -i8748_device::i8748_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8748_device::i8748_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8748, tag, owner, clock, 1024, 64, I8048_FEATURE, s_mcs48_opcodes) { } -i8039_device::i8039_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8039_device::i8039_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8039, tag, owner, clock, 0, 128, I8048_FEATURE, s_mcs48_opcodes) { } -i8049_device::i8049_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8049_device::i8049_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8049, tag, owner, clock, 2048, 128, I8048_FEATURE, s_mcs48_opcodes) { } -i8749_device::i8749_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8749_device::i8749_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8749, tag, owner, clock, 2048, 128, I8048_FEATURE, s_mcs48_opcodes) { } -i8040_device::i8040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8040_device::i8040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8040, tag, owner, clock, 0, 256, I8048_FEATURE, s_mcs48_opcodes) { } -i8050_device::i8050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8050_device::i8050_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, I8050, tag, owner, clock, 4096, 256, I8048_FEATURE, s_mcs48_opcodes) { } -mb8884_device::mb8884_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb8884_device::mb8884_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, MB8884, tag, owner, clock, 0, 64, I8048_FEATURE, s_mcs48_opcodes) { } -n7751_device::n7751_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +n7751_device::n7751_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, N7751, tag, owner, clock, 1024, 64, I8048_FEATURE, s_mcs48_opcodes) { } -m58715_device::m58715_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +m58715_device::m58715_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs48_cpu_device(mconfig, M58715, tag, owner, clock, 2048, 128, I8048_FEATURE, s_mcs48_opcodes) { } -upi41_cpu_device::upi41_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rom_size, int ram_size) +upi41_cpu_device::upi41_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int rom_size, int ram_size) : mcs48_cpu_device(mconfig, type, tag, owner, clock, rom_size, ram_size, UPI41_FEATURE, s_upi41_opcodes) { } -i8041a_device::i8041a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8041a_device::i8041a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8041A, tag, owner, clock, 1024, 64) { } -i8741a_device::i8741a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8741a_device::i8741a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &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) +i8041ah_device::i8041ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &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) +i8741ah_device::i8741ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8741AH, tag, owner, clock, 1024, 128) { } -i8042_device::i8042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8042_device::i8042_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8042, tag, owner, clock, 2048, 128) { } -i8742_device::i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8742_device::i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8742, tag, owner, clock, 2048, 128) { } -i8042ah_device::i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8042ah_device::i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8042AH, tag, owner, clock, 2048, 256) { } -i8742ah_device::i8742ah_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8742ah_device::i8742ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upi41_cpu_device(mconfig, I8742AH, tag, owner, clock, 2048, 256) { } @@ -1226,7 +1226,7 @@ void mcs48_cpu_device::device_reset() m_flags_enabled = false; m_dma_enabled = false; if (!m_t0_clk_func.isnull()) - m_t0_clk_func(0); + m_t0_clk_func(XTAL()); // confirmed from interrupt logic description m_irq_in_progress = false; diff --git a/src/devices/cpu/mcs48/mcs48.h b/src/devices/cpu/mcs48/mcs48.h index bb5d3da44f9..f61609b3907 100644 --- a/src/devices/cpu/mcs48/mcs48.h +++ b/src/devices/cpu/mcs48/mcs48.h @@ -141,7 +141,7 @@ protected: typedef void (mcs48_cpu_device::*mcs48_ophandler)(); // construction/destruction - mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rom_size, int ram_size, uint8_t feature_mask, const mcs48_ophandler *opcode_table); + mcs48_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int rom_size, int ram_size, uint8_t feature_mask, const mcs48_ophandler *opcode_table); // device-level overrides virtual void device_start() override; @@ -516,7 +516,7 @@ public: auto p0_out_cb() { return bus_out_cb(); } // construction/destruction - i8021_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8021_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -528,7 +528,7 @@ class i8022_device : public mcs48_cpu_device { public: // construction/destruction - i8022_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8022_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -540,84 +540,84 @@ class i8035_device : public mcs48_cpu_device { public: // construction/destruction - i8035_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8035_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8048_device : public mcs48_cpu_device { public: // construction/destruction - i8048_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8048_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8648_device : public mcs48_cpu_device { public: // construction/destruction - i8648_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8648_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8748_device : public mcs48_cpu_device { public: // construction/destruction - i8748_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8748_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8039_device : public mcs48_cpu_device { public: // construction/destruction - i8039_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8039_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8049_device : public mcs48_cpu_device { public: // construction/destruction - i8049_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8049_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8749_device : public mcs48_cpu_device { public: // construction/destruction - i8749_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8749_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8040_device : public mcs48_cpu_device { public: // construction/destruction - i8040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8050_device : public mcs48_cpu_device { public: // construction/destruction - i8050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8050_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mb8884_device : public mcs48_cpu_device { public: // construction/destruction - mb8884_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb8884_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class n7751_device : public mcs48_cpu_device { public: // construction/destruction - n7751_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + n7751_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class m58715_device : public mcs48_cpu_device { public: // construction/destruction - m58715_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + m58715_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -630,7 +630,7 @@ public: protected: // construction/destruction - upi41_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int rom_size, int ram_size); + upi41_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int rom_size, int ram_size); TIMER_CALLBACK_MEMBER( master_callback ); }; @@ -639,56 +639,56 @@ class i8041a_device : public upi41_cpu_device { public: // construction/destruction - i8041a_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, const XTAL &clock); }; class i8741a_device : public upi41_cpu_device { public: // construction/destruction - i8741a_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, const XTAL &clock); }; class i8041ah_device : public upi41_cpu_device { public: // construction/destruction - i8041ah_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, const XTAL &clock); }; class i8741ah_device : public upi41_cpu_device { public: // construction/destruction - i8741ah_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, const XTAL &clock); }; class i8042_device : public upi41_cpu_device { public: // construction/destruction - i8042_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, const XTAL &clock); }; class i8742_device : public upi41_cpu_device { public: // construction/destruction - i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8742_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &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); + i8042ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &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); + i8742ah_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/mcs51/mcs51.cpp b/src/devices/cpu/mcs51/mcs51.cpp index 9f5bd04e4c0..a463992cebc 100644 --- a/src/devices/cpu/mcs51/mcs51.cpp +++ b/src/devices/cpu/mcs51/mcs51.cpp @@ -267,7 +267,7 @@ void mcs51_cpu_device::data_internal(address_map &map) -mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, int program_width, int data_width, uint8_t features) +mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map, address_map_constructor data_map, int program_width, int data_width, uint8_t features) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, program_map) , m_data_config("data", ENDIANNESS_LITTLE, 8, 9, 0, data_map) @@ -295,147 +295,147 @@ mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type ty } -mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +mcs51_cpu_device::mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : mcs51_cpu_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(mcs51_cpu_device::program_internal), this), address_map_constructor(FUNC(mcs51_cpu_device::data_internal), this), program_width, data_width, features) { } -i8031_device::i8031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8031_device::i8031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, I8031, tag, owner, clock, 0, 7) { } -i8051_device::i8051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8051_device::i8051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, I8051, tag, owner, clock, 12, 7) { } -i8751_device::i8751_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8751_device::i8751_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, I8751, tag, owner, clock, 12, 7) { } -am8753_device::am8753_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +am8753_device::am8753_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, AM8753, tag, owner, clock, 13, 7) { } -i8052_device::i8052_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +i8052_device::i8052_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : mcs51_cpu_device(mconfig, type, tag, owner, clock, program_width, data_width, features | FEATURE_I8052) { m_num_interrupts = 6; } -i8052_device::i8052_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8052_device::i8052_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8052_device(mconfig, I8052, tag, owner, clock, 13, 8) { } -i8032_device::i8032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8032_device::i8032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8052_device(mconfig, I8032, tag, owner, clock, 0, 8) { } -i8752_device::i8752_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8752_device::i8752_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8052_device(mconfig, I8752, tag, owner, clock, 13, 8) { } -i80c31_device::i80c31_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80c31_device::i80c31_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8052_device(mconfig, I80C31, tag, owner, clock, 0, 7) { } -i80c51_device::i80c51_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +i80c51_device::i80c51_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : mcs51_cpu_device(mconfig, type, tag, owner, clock, program_width, data_width, features | FEATURE_CMOS) { } -i80c51_device::i80c51_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80c51_device::i80c51_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c51_device(mconfig, I80C51, tag, owner, clock, 12, 7) { } -i87c51_device::i87c51_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i87c51_device::i87c51_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c51_device(mconfig, I87C51, tag, owner, clock, 12, 7) { } -i80c52_device::i80c52_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +i80c52_device::i80c52_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : i8052_device(mconfig, type, tag, owner, clock, program_width, data_width, features | FEATURE_I80C52 | FEATURE_CMOS) { } -i80c52_device::i80c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80c52_device::i80c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, I80C52, tag, owner, clock, 13, 8) { } -i80c32_device::i80c32_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80c32_device::i80c32_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, I80C32, tag, owner, clock, 0, 8) { } -i87c52_device::i87c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i87c52_device::i87c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, I87C52, tag, owner, clock, 13, 8) { } -i87c51fa_device::i87c51fa_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features) +i87c51fa_device::i87c51fa_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features) : i80c52_device(mconfig, type, tag, owner, clock, program_width, data_width, features) { } -i87c51fa_device::i87c51fa_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i87c51fa_device::i87c51fa_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i87c51fa_device(mconfig, I87C51FA, tag, owner, clock, 13, 8) { } -i80c51gb_device::i80c51gb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i80c51gb_device::i80c51gb_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i87c51fa_device(mconfig, I80C51GB, tag, owner, clock, 0, 8) { } -at89c52_device::at89c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +at89c52_device::at89c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, AT89C52, tag, owner, clock, 13, 8) { } -at89s52_device::at89s52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +at89s52_device::at89s52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, AT89S52, tag, owner, clock, 13, 8) { } -at89c4051_device::at89c4051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +at89c4051_device::at89c4051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c51_device(mconfig, AT89C4051, tag, owner, clock, 12, 7) { } -ds80c320_device::ds80c320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ds80c320_device::ds80c320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c52_device(mconfig, DS80C320, tag, owner, clock, 0, 8) { } -sab80c535_device::sab80c535_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sab80c535_device::sab80c535_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i80c51_device(mconfig, SAB80C535, tag, owner, clock, 0, 8) { } -i8344_device::i8344_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8344_device::i8344_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, I8344, tag, owner, clock, 0, 8) { } -i8744_device::i8744_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +i8744_device::i8744_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, I8744, tag, owner, clock, 12, 8) { } /* program width field is set to 0 because technically the SRAM isn't internal */ -ds5002fp_device::ds5002fp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ds5002fp_device::ds5002fp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mcs51_cpu_device(mconfig, DS5002FP, tag, owner, clock, 0, 7, FEATURE_DS5002FP | FEATURE_CMOS) , device_nvram_interface(mconfig, *this) , m_region(*this, "internal") diff --git a/src/devices/cpu/mcs51/mcs51.h b/src/devices/cpu/mcs51/mcs51.h index 32925c23de8..39940b2e157 100644 --- a/src/devices/cpu/mcs51/mcs51.h +++ b/src/devices/cpu/mcs51/mcs51.h @@ -71,8 +71,8 @@ public: void data_internal(address_map &map); protected: // construction/destruction - mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); - mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map, address_map_constructor data_map, int program_width, int data_width, uint8_t features = 0); + mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); + mcs51_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map, address_map_constructor data_map, int program_width, int data_width, uint8_t features = 0); // device-level overrides virtual void device_start() override; @@ -358,28 +358,28 @@ class i8031_device : public mcs51_cpu_device { public: // construction/destruction - i8031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8051_device : public mcs51_cpu_device { public: // construction/destruction - i8051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8751_device : public mcs51_cpu_device { public: // construction/destruction - i8751_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8751_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class am8753_device : public mcs51_cpu_device { public: // construction/destruction - am8753_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + am8753_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -387,10 +387,10 @@ class i8052_device : public mcs51_cpu_device { public: // construction/destruction - i8052_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8052_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - i8052_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); + i8052_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -403,21 +403,21 @@ class i8032_device : public i8052_device { public: // construction/destruction - i8032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i8752_device : public i8052_device { public: // construction/destruction - i8752_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8752_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i80c31_device : public i8052_device { public: // construction/destruction - i80c31_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80c31_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -428,10 +428,10 @@ class i80c51_device : public mcs51_cpu_device { public: // construction/destruction - i80c51_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80c51_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - i80c51_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); + i80c51_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -440,7 +440,7 @@ class i87c51_device : public i80c51_device { public: // construction/destruction - i87c51_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i87c51_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -448,10 +448,10 @@ class i80c52_device : public i8052_device { public: // construction/destruction - i80c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - i80c52_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); + i80c52_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -464,24 +464,24 @@ class i80c32_device : public i80c52_device { public: // construction/destruction - i80c32_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80c32_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i87c52_device : public i80c52_device { public: // construction/destruction - i87c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i87c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class i87c51fa_device : public i80c52_device { public: // construction/destruction - i87c51fa_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i87c51fa_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - i87c51fa_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, uint8_t features = 0); + i87c51fa_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, uint8_t features = 0); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; }; @@ -490,7 +490,7 @@ class i80c51gb_device : public i87c51fa_device { public: // construction/destruction - i80c51gb_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i80c51gb_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -500,28 +500,28 @@ class at89c52_device : public i80c52_device { public: // construction/destruction - at89c52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + at89c52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class at89s52_device : public i80c52_device { public: // construction/destruction - at89s52_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + at89s52_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class at89c4051_device : public i80c51_device { public: // construction/destruction - at89c4051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + at89c4051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ds80c320_device : public i80c52_device { public: // construction/destruction - ds80c320_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ds80c320_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -531,7 +531,7 @@ class sab80c535_device : public i80c51_device { public: // construction/destruction - sab80c535_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sab80c535_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -541,7 +541,7 @@ class i8344_device : public mcs51_cpu_device { public: // construction/destruction - i8344_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8344_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -551,7 +551,7 @@ class i8744_device : public mcs51_cpu_device { public: // construction/destruction - i8744_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + i8744_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -588,7 +588,7 @@ class ds5002fp_device : public mcs51_cpu_device, public device_nvram_interface { public: // construction/destruction - ds5002fp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ds5002fp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void set_mcon(uint8_t mcon) { m_ds5002fp.mcon = mcon; } void set_rpctl(uint8_t rpctl) { m_ds5002fp.rpctl = rpctl; } diff --git a/src/devices/cpu/mcs96/i8x9x.cpp b/src/devices/cpu/mcs96/i8x9x.cpp index 792cc1378bb..bc98ac9122b 100644 --- a/src/devices/cpu/mcs96/i8x9x.cpp +++ b/src/devices/cpu/mcs96/i8x9x.cpp @@ -12,7 +12,7 @@ #include "i8x9x.h" #include "i8x9xd.h" -i8x9x_device::i8x9x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int data_width) : +i8x9x_device::i8x9x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_width) : mcs96_device(mconfig, type, tag, owner, clock, data_width, address_map_constructor(FUNC(i8x9x_device::internal_regs), this)), m_ach_cb(*this), m_hso_cb(*this), @@ -571,22 +571,22 @@ void i8x9x_device::execute_set_input(int linenum, int state) } } -c8095_90_device::c8095_90_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +c8095_90_device::c8095_90_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8x9x_device(mconfig, C8095_90, tag, owner, clock, 16) { } -n8097bh_device::n8097bh_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +n8097bh_device::n8097bh_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8x9x_device(mconfig, N8097BH, tag, owner, clock, 16) { } -p8098_device::p8098_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +p8098_device::p8098_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8x9x_device(mconfig, P8098, tag, owner, clock, 8) { } -p8798_device::p8798_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +p8798_device::p8798_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : i8x9x_device(mconfig, P8798, tag, owner, clock, 8) { } diff --git a/src/devices/cpu/mcs96/i8x9x.h b/src/devices/cpu/mcs96/i8x9x.h index 5f4ab03f8a5..e066886a653 100644 --- a/src/devices/cpu/mcs96/i8x9x.h +++ b/src/devices/cpu/mcs96/i8x9x.h @@ -68,7 +68,7 @@ public: virtual u8 i8x9x_p2_mask() const noexcept { return 0xff; } protected: - i8x9x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int data_width); + i8x9x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_width); virtual void device_resolve_objects() override; virtual void device_start() override; @@ -170,7 +170,7 @@ private: class c8095_90_device : public i8x9x_device { public: - c8095_90_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + c8095_90_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 i8x9x_p0_mask() const noexcept override { return 0xf0; } @@ -180,12 +180,12 @@ protected: class n8097bh_device : public i8x9x_device { public: - n8097bh_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + n8097bh_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class p8098_device : public i8x9x_device { public: - p8098_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + p8098_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 i8x9x_p0_mask() const noexcept override { return 0xf0; } @@ -195,7 +195,7 @@ protected: class p8798_device : public i8x9x_device { public: - p8798_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + p8798_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 i8x9x_p0_mask() const noexcept override { return 0xf0; } diff --git a/src/devices/cpu/mcs96/i8xc196.cpp b/src/devices/cpu/mcs96/i8xc196.cpp index dd10d5a6b60..1a9b0f63bf5 100644 --- a/src/devices/cpu/mcs96/i8xc196.cpp +++ b/src/devices/cpu/mcs96/i8xc196.cpp @@ -12,7 +12,7 @@ #include "i8xc196.h" #include "i8xc196d.h" -i8xc196_device::i8xc196_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +i8xc196_device::i8xc196_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : mcs96_device(mconfig, type, tag, owner, clock, 16, address_map_constructor(FUNC(i8xc196_device::internal_regs), this)) { } diff --git a/src/devices/cpu/mcs96/i8xc196.h b/src/devices/cpu/mcs96/i8xc196.h index 02d3e3d9840..6cff1920d2c 100644 --- a/src/devices/cpu/mcs96/i8xc196.h +++ b/src/devices/cpu/mcs96/i8xc196.h @@ -15,7 +15,7 @@ class i8xc196_device : public mcs96_device { protected: - i8xc196_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + i8xc196_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/mcs96/mcs96.cpp b/src/devices/cpu/mcs96/mcs96.cpp index ddf7a7604b5..2a4d784362b 100644 --- a/src/devices/cpu/mcs96/mcs96.cpp +++ b/src/devices/cpu/mcs96/mcs96.cpp @@ -11,7 +11,7 @@ #include "emu.h" #include "mcs96.h" -mcs96_device::mcs96_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_width, address_map_constructor regs_map) : +mcs96_device::mcs96_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_width, address_map_constructor regs_map) : cpu_device(mconfig, type, tag, owner, clock), program_config("program", ENDIANNESS_LITTLE, data_width, 16), regs_config("register", ENDIANNESS_LITTLE, 16, 8, 0, regs_map), diff --git a/src/devices/cpu/mcs96/mcs96.h b/src/devices/cpu/mcs96/mcs96.h index b27d13044c7..a470aa9457f 100644 --- a/src/devices/cpu/mcs96/mcs96.h +++ b/src/devices/cpu/mcs96/mcs96.h @@ -44,7 +44,7 @@ protected: }; - mcs96_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_width, address_map_constructor regs_map); + mcs96_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int data_width, address_map_constructor regs_map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/melps4/m58846.cpp b/src/devices/cpu/melps4/m58846.cpp index 0440375e47d..1a1e5079791 100644 --- a/src/devices/cpu/melps4/m58846.cpp +++ b/src/devices/cpu/melps4/m58846.cpp @@ -27,7 +27,7 @@ void m58846_device::data_128x4(address_map &map) // device definitions -m58846_device::m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +m58846_device::m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : melps4_cpu_device(mconfig, M58846, tag, owner, clock, 11, address_map_constructor(FUNC(m58846_device::program_2kx9), this), 7, address_map_constructor(FUNC(m58846_device::data_128x4), this), 12 /* number of D pins */, 2 /* subroutine page */, 1 /* interrupt page */), m_timer(nullptr) { } diff --git a/src/devices/cpu/melps4/m58846.h b/src/devices/cpu/melps4/m58846.h index 2ba855e3dd2..2eb019e0837 100644 --- a/src/devices/cpu/melps4/m58846.h +++ b/src/devices/cpu/melps4/m58846.h @@ -19,7 +19,7 @@ class m58846_device : public melps4_cpu_device { public: - m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + m58846_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/melps4/melps4.cpp b/src/devices/cpu/melps4/melps4.cpp index 973d3b42ce3..eb2f748d9be 100644 --- a/src/devices/cpu/melps4/melps4.cpp +++ b/src/devices/cpu/melps4/melps4.cpp @@ -42,7 +42,7 @@ #include "melps4d.h" -melps4_cpu_device::melps4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, int d_pins, u8 sm_page, u8 int_page) +melps4_cpu_device::melps4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, int d_pins, u8 sm_page, u8 int_page) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, prgwidth, -1, program) , m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data) diff --git a/src/devices/cpu/melps4/melps4.h b/src/devices/cpu/melps4/melps4.h index 09894a1fa8e..0e5a576901a 100644 --- a/src/devices/cpu/melps4/melps4.h +++ b/src/devices/cpu/melps4/melps4.h @@ -90,7 +90,7 @@ public: protected: // construction/destruction - melps4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, int d_pins, u8 sm_page, u8 int_page); + melps4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data, int d_pins, u8 sm_page, u8 int_page); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/minx/minx.cpp b/src/devices/cpu/minx/minx.cpp index 018842ecfbd..bd6aa16afe1 100644 --- a/src/devices/cpu/minx/minx.cpp +++ b/src/devices/cpu/minx/minx.cpp @@ -76,7 +76,7 @@ TODO: DEFINE_DEVICE_TYPE(MINX, minx_cpu_device, "minx", "Nintendo Minx") -minx_cpu_device::minx_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +minx_cpu_device::minx_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, MINX, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 24, 0) { diff --git a/src/devices/cpu/minx/minx.h b/src/devices/cpu/minx/minx.h index 991916435ee..06f4b5a3bfb 100644 --- a/src/devices/cpu/minx/minx.h +++ b/src/devices/cpu/minx/minx.h @@ -18,7 +18,7 @@ class minx_cpu_device : public cpu_device { public: // construction/destruction - minx_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + minx_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/mips/mips1.cpp b/src/devices/cpu/mips/mips1.cpp index 6f45a954d50..824cd47e762 100644 --- a/src/devices/cpu/mips/mips1.cpp +++ b/src/devices/cpu/mips/mips1.cpp @@ -55,7 +55,7 @@ DEFINE_DEVICE_TYPE(SONYPS2_IOP, iop_device, "sonyiop", "Sony Playstation 2 ALLOW_SAVE_TYPE(mips1core_device_base::branch_state); -mips1core_device_base::mips1core_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size) +mips1core_device_base::mips1core_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 cpurev, size_t icache_size, size_t dcache_size) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config_be("program", ENDIANNESS_BIG, 32, 32) , m_program_config_le("program", ENDIANNESS_LITTLE, 32, 32) @@ -70,64 +70,64 @@ mips1core_device_base::mips1core_device_base(machine_config const &mconfig, devi { } -mips1_device_base::mips1_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size) +mips1_device_base::mips1_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 cpurev, size_t icache_size, size_t dcache_size) : mips1core_device_base(mconfig, type, tag, owner, clock, cpurev, icache_size, dcache_size) , m_fcr0(0) { } -r2000_device::r2000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r2000_device::r2000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R2000, tag, owner, clock, 0x0100, icache_size, dcache_size) { } -r2000a_device::r2000a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r2000a_device::r2000a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R2000A, tag, owner, clock, 0x0210, icache_size, dcache_size) { } -r3000_device::r3000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r3000_device::r3000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R3000, tag, owner, clock, 0x0220, icache_size, dcache_size) { } -r3000a_device::r3000a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r3000a_device::r3000a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R3000A, tag, owner, clock, 0x0230, icache_size, dcache_size) { } -r3041_device::r3041_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +r3041_device::r3041_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mips1core_device_base(mconfig, R3041, tag, owner, clock, 0x0700, 2048, 512) { } -r3051_device::r3051_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +r3051_device::r3051_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mips1core_device_base(mconfig, R3051, tag, owner, clock, 0x0200, 4096, 2048) { } -r3052_device::r3052_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +r3052_device::r3052_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mips1core_device_base(mconfig, R3052, tag, owner, clock, 0x0200, 8192, 2048) { } -r3052e_device::r3052e_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +r3052e_device::r3052e_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mips1_device_base(mconfig, R3052E, tag, owner, clock, 0x0200, 8192, 2048) { } -r3071_device::r3071_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r3071_device::r3071_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R3071, tag, owner, clock, 0x0200, icache_size, dcache_size) { } -r3081_device::r3081_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size, size_t dcache_size) +r3081_device::r3081_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size, size_t dcache_size) : mips1_device_base(mconfig, R3081, tag, owner, clock, 0x0200, icache_size, dcache_size) { set_fpu(0x0300); } -iop_device::iop_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +iop_device::iop_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : mips1core_device_base(mconfig, SONYPS2_IOP, tag, owner, clock, 0x001f, 4096, 1024) { m_endianness = ENDIANNESS_LITTLE; diff --git a/src/devices/cpu/mips/mips1.h b/src/devices/cpu/mips/mips1.h index df6b1c8e6c9..bdf5c67f51d 100644 --- a/src/devices/cpu/mips/mips1.h +++ b/src/devices/cpu/mips/mips1.h @@ -17,7 +17,7 @@ public: void berr_w(int state) { m_bus_error = bool(state); } protected: - mips1core_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size); + mips1core_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 cpurev, size_t icache_size, size_t dcache_size); enum registers : unsigned { @@ -261,7 +261,7 @@ public: void set_fpu(u32 revision, unsigned interrupt = 3) { m_fcr0 = revision; m_fpu_irq = interrupt; } protected: - mips1_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 cpurev, size_t icache_size, size_t dcache_size); + mips1_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 cpurev, size_t icache_size, size_t dcache_size); enum cp1_fcr31_mask : u32 { @@ -324,31 +324,31 @@ private: class r2000_device : public mips1_device_base { public: - r2000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 0, size_t dcache_size = 0); + r2000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 0, size_t dcache_size = 0); }; class r2000a_device : public mips1_device_base { public: - r2000a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 0, size_t dcache_size = 0); + r2000a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 0, size_t dcache_size = 0); }; class r3000_device : public mips1_device_base { public: - r3000_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 0, size_t dcache_size = 0); + r3000_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 0, size_t dcache_size = 0); }; class r3000a_device : public mips1_device_base { public: - r3000a_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 0, size_t dcache_size = 0); + r3000a_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 0, size_t dcache_size = 0); }; class r3041_device : public mips1core_device_base { public: - r3041_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + r3041_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; @@ -358,37 +358,37 @@ protected: class r3051_device : public mips1core_device_base { public: - r3051_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + r3051_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class r3052_device : public mips1core_device_base { public: - r3052_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + r3052_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class r3052e_device : public mips1_device_base { public: - r3052e_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + r3052e_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class r3071_device : public mips1_device_base { public: - r3071_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 16384, size_t dcache_size = 4096); + r3071_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 16384, size_t dcache_size = 4096); }; class r3081_device : public mips1_device_base { public: - r3081_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock, size_t icache_size = 16384, size_t dcache_size = 4096); + r3081_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock, size_t icache_size = 16384, size_t dcache_size = 4096); }; class iop_device : public mips1core_device_base { public: - iop_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + iop_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(R2000, r2000_device) diff --git a/src/devices/cpu/mips/mips3.cpp b/src/devices/cpu/mips/mips3.cpp index 9b6067e5fa4..b1e0f2d57a6 100644 --- a/src/devices/cpu/mips/mips3.cpp +++ b/src/devices/cpu/mips/mips3.cpp @@ -131,7 +131,7 @@ DEFINE_DEVICE_TYPE(RM7000LE, rm7000le_device, "rm7000le", "MIPS RM7000 (littl // VR4300 and VR5432 have 4 fewer PFN bits, and only 32 TLB entries -mips3_device::mips3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, mips3_flavor flavor, endianness_t endianness, uint32_t data_bits) +mips3_device::mips3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, mips3_flavor flavor, endianness_t endianness, uint32_t data_bits) : cpu_device(mconfig, type, tag, owner, clock) , device_vtlb_interface(mconfig, *this, AS_PROGRAM) , m_core(nullptr) diff --git a/src/devices/cpu/mips/mips3.h b/src/devices/cpu/mips/mips3.h index 0bf7e49e5cc..3801a935f18 100644 --- a/src/devices/cpu/mips/mips3.h +++ b/src/devices/cpu/mips/mips3.h @@ -297,7 +297,7 @@ protected: public: // construction/destruction - mips3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, mips3_flavor flavor, endianness_t endiannes, uint32_t data_bits); + mips3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, mips3_flavor flavor, endianness_t endiannes, uint32_t data_bits); void set_icache_size(size_t icache_size) { c_icache_size = icache_size; } void set_dcache_size(size_t dcache_size) { c_dcache_size = dcache_size; } @@ -658,7 +658,7 @@ private: class r4000be_device : public mips3_device { public: // construction/destruction - r4000be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4000be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4000BE, tag, owner, clock, MIPS3_TYPE_R4000, ENDIANNESS_BIG, 64) { } @@ -667,7 +667,7 @@ public: class r4000le_device : public mips3_device { public: // construction/destruction - r4000le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4000le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4000LE, tag, owner, clock, MIPS3_TYPE_R4000, ENDIANNESS_LITTLE, 64) { } @@ -676,7 +676,7 @@ public: class r4400be_device : public mips3_device { public: // construction/destruction - r4400be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4400be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4400BE, tag, owner, clock, MIPS3_TYPE_R4400, ENDIANNESS_BIG, 64) { } @@ -685,7 +685,7 @@ public: class r4400le_device : public mips3_device { public: // construction/destruction - r4400le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4400le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4400LE, tag, owner, clock, MIPS3_TYPE_R4400, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -694,7 +694,7 @@ public: class vr4300be_device : public mips3_device { public: // construction/destruction - vr4300be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr4300be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR4300BE, tag, owner, clock, MIPS3_TYPE_VR4300, ENDIANNESS_BIG, 32) { } @@ -703,7 +703,7 @@ public: class vr4300le_device : public mips3_device { public: // construction/destruction - vr4300le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr4300le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR4300LE, tag, owner, clock, MIPS3_TYPE_VR4300, ENDIANNESS_LITTLE, 32) { } @@ -712,7 +712,7 @@ public: class vr4310be_device : public mips3_device { public: // construction/destruction - vr4310be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr4310be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR4310BE, tag, owner, clock, MIPS3_TYPE_VR4300, ENDIANNESS_BIG, 32) { } @@ -721,7 +721,7 @@ public: class vr4310le_device : public mips3_device { public: // construction/destruction - vr4310le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr4310le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR4310LE, tag, owner, clock, MIPS3_TYPE_VR4300, ENDIANNESS_LITTLE, 32) { } @@ -730,7 +730,7 @@ public: class r4600be_device : public mips3_device { public: // construction/destruction - r4600be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4600be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4600BE, tag, owner, clock, MIPS3_TYPE_R4600, ENDIANNESS_BIG, 64) { } @@ -739,7 +739,7 @@ public: class r4600le_device : public mips3_device { public: // construction/destruction - r4600le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4600le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4600LE, tag, owner, clock, MIPS3_TYPE_R4600, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -748,7 +748,7 @@ public: class r4650be_device : public mips3_device { public: // construction/destruction - r4650be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4650be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4650BE, tag, owner, clock, MIPS3_TYPE_R4650, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -757,7 +757,7 @@ public: class r4650le_device : public mips3_device { public: // construction/destruction - r4650le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4650le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4650LE, tag, owner, clock, MIPS3_TYPE_R4650, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -766,7 +766,7 @@ public: class r4700be_device : public mips3_device { public: // construction/destruction - r4700be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4700be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4700BE, tag, owner, clock, MIPS3_TYPE_R4700, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -775,7 +775,7 @@ public: class r4700le_device : public mips3_device { public: // construction/destruction - r4700le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r4700le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R4700LE, tag, owner, clock, MIPS3_TYPE_R4700, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -784,7 +784,7 @@ public: class tx4925be_device : public mips3_device { public: // construction/destruction - tx4925be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + tx4925be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, TX4925BE, tag, owner, clock, MIPS3_TYPE_TX4925, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -793,7 +793,7 @@ public: class tx4925le_device : public mips3_device { public: // construction/destruction - tx4925le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + tx4925le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, TX4925LE, tag, owner, clock, MIPS3_TYPE_TX4925, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -802,7 +802,7 @@ public: class r5000be_device : public mips3_device { public: // construction/destruction - r5000be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r5000be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R5000BE, tag, owner, clock, MIPS3_TYPE_R5000, ENDIANNESS_BIG, 64) { } @@ -814,7 +814,7 @@ protected: class r5000le_device : public mips3_device { public: // construction/destruction - r5000le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r5000le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R5000LE, tag, owner, clock, MIPS3_TYPE_R5000, ENDIANNESS_LITTLE, 32) // FIXME: Should be 64 bits, Galileo blows up though { } @@ -823,7 +823,7 @@ public: class vr5500be_device : public mips3_device { public: // construction/destruction - vr5500be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr5500be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR5500BE, tag, owner, clock, MIPS3_TYPE_R5000, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -832,7 +832,7 @@ public: class vr5500le_device : public mips3_device { public: // construction/destruction - vr5500le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + vr5500le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, VR5500LE, tag, owner, clock, MIPS3_TYPE_R5000, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -842,13 +842,13 @@ class r5900le_device : public mips3_device { public: // construction/destruction template <typename T> - r5900le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&vu0_tag) + r5900le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, T &&vu0_tag) : r5900le_device(mconfig, tag, owner, clock) { m_vu0.set_tag(std::forward<T>(vu0_tag)); } - r5900le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + r5900le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, R5900LE, tag, owner, clock, MIPS3_TYPE_R5900, ENDIANNESS_LITTLE, 64) , m_vu0(*this, finder_base::DUMMY_TAG) { @@ -907,7 +907,7 @@ protected: class qed5271be_device : public mips3_device { public: // construction/destruction - qed5271be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + qed5271be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, QED5271BE, tag, owner, clock, MIPS3_TYPE_QED5271, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -916,7 +916,7 @@ public: class qed5271le_device : public mips3_device { public: // construction/destruction - qed5271le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + qed5271le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, QED5271LE, tag, owner, clock, MIPS3_TYPE_QED5271, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } @@ -925,7 +925,7 @@ public: class rm7000be_device : public mips3_device { public: // construction/destruction - rm7000be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + rm7000be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, RM7000BE, tag, owner, clock, MIPS3_TYPE_RM7000, ENDIANNESS_BIG, 32) // Should be 64 bits { } @@ -934,7 +934,7 @@ public: class rm7000le_device : public mips3_device { public: // construction/destruction - rm7000le_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + rm7000le_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mips3_device(mconfig, RM7000LE, tag, owner, clock, MIPS3_TYPE_RM7000, ENDIANNESS_LITTLE, 32) // Should be 64 bits { } diff --git a/src/devices/cpu/mips/ps2vif1.cpp b/src/devices/cpu/mips/ps2vif1.cpp index 43fc71a2267..091be49d774 100644 --- a/src/devices/cpu/mips/ps2vif1.cpp +++ b/src/devices/cpu/mips/ps2vif1.cpp @@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(SONYPS2_VIF1, ps2_vif1_device, "ps2vif1", "PlayStation 2 VIF1 4, 2, 1, 2 }; -ps2_vif1_device::ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ps2_vif1_device::ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, SONYPS2_VIF1, tag, owner, clock) , device_execute_interface(mconfig, *this) , m_gs(*this, finder_base::DUMMY_TAG) diff --git a/src/devices/cpu/mips/ps2vif1.h b/src/devices/cpu/mips/ps2vif1.h index 171a3839f8f..a03afe2111a 100644 --- a/src/devices/cpu/mips/ps2vif1.h +++ b/src/devices/cpu/mips/ps2vif1.h @@ -23,14 +23,14 @@ class ps2_vif1_device : public device_t, public device_execute_interface { public: template <typename T, typename U> - ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&gs_tag, U &&vu1_tag) + ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, T &&gs_tag, U &&vu1_tag) : ps2_vif1_device(mconfig, tag, owner, clock) { m_gs.set_tag(std::forward<T>(gs_tag)); m_vu1.set_tag(std::forward<U>(vu1_tag)); } - ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ps2_vif1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual ~ps2_vif1_device() override; uint64_t mmio_r(offs_t offset); diff --git a/src/devices/cpu/mips/ps2vu.cpp b/src/devices/cpu/mips/ps2vu.cpp index 8f0b125314d..b16fcc663f4 100644 --- a/src/devices/cpu/mips/ps2vu.cpp +++ b/src/devices/cpu/mips/ps2vu.cpp @@ -23,7 +23,7 @@ sonyvu_device::sonyvu_device( device_type type, const char *tag, device_t *owner, - uint32_t clock, + const XTAL &clock, address_map_constructor micro_cons, address_map_constructor vu_cons, chip_type chiptype, @@ -54,13 +54,13 @@ sonyvu_device::sonyvu_device( { } -sonyvu0_device::sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sonyvu0_device::sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sonyvu_device(mconfig, SONYPS2_VU0, tag, owner, clock, address_map_constructor(FUNC(sonyvu0_device::micro_map), this), address_map_constructor(FUNC(sonyvu0_device::vu_map), this), CHIP_TYPE_VU0, 0x1000) , m_vu1(*this, finder_base::DUMMY_TAG) { } -sonyvu1_device::sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sonyvu1_device::sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sonyvu_device(mconfig, SONYPS2_VU1, tag, owner, clock, address_map_constructor(FUNC(sonyvu1_device::micro_map), this), address_map_constructor(FUNC(sonyvu1_device::vu_map), this), CHIP_TYPE_VU0, 0x4000) , m_gs(*this, finder_base::DUMMY_TAG) , m_vif(*this, "vif") diff --git a/src/devices/cpu/mips/ps2vu.h b/src/devices/cpu/mips/ps2vu.h index cc898ffa58d..b0ccb2a2134 100644 --- a/src/devices/cpu/mips/ps2vu.h +++ b/src/devices/cpu/mips/ps2vu.h @@ -98,7 +98,7 @@ protected: CHIP_TYPE_VU1, }; - sonyvu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor micro_cons, address_map_constructor vu_cons, chip_type chiptype, uint32_t mem_size); + sonyvu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor micro_cons, address_map_constructor vu_cons, chip_type chiptype, uint32_t mem_size); enum : uint64_t { @@ -178,13 +178,13 @@ class sonyvu1_device : public sonyvu_device { public: template <typename T> - sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&gs_tag) + sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, T &&gs_tag) : sonyvu1_device(mconfig, tag, owner, clock) { m_gs.set_tag(std::forward<T>(gs_tag)); } - sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sonyvu1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); ps2_vif1_device* interface(); @@ -213,13 +213,13 @@ class sonyvu0_device : public sonyvu_device { public: template <typename T> - sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&vu1_tag) + sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, T &&vu1_tag) : sonyvu0_device(mconfig, tag, owner, clock) { m_vu1.set_tag(std::forward<T>(vu1_tag)); } - sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sonyvu0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; diff --git a/src/devices/cpu/mips/r4000.cpp b/src/devices/cpu/mips/r4000.cpp index 15f161b32c3..433f3b640fd 100644 --- a/src/devices/cpu/mips/r4000.cpp +++ b/src/devices/cpu/mips/r4000.cpp @@ -92,7 +92,7 @@ DEFINE_DEVICE_TYPE(R5000, r5000_device, "r5000", "MIPS R5000") u32 const r5000_device::s_fcc_masks[8] = { (1U << 23), (1U << 25), (1U << 26), (1U << 27), (1U << 28), (1U << 29), (1U << 30), (1U << 31) }; u32 const r5000_device::s_fcc_shifts[8] = { 23, 25, 26, 27, 28, 29, 30, 31 }; -r4000_base_device::r4000_base_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 prid, u32 fcr, cache_size icache_size, cache_size dcache_size, unsigned m32, unsigned m64, unsigned d32, unsigned d64, bool timer_interrupt_disabled) +r4000_base_device::r4000_base_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 prid, u32 fcr, cache_size icache_size, cache_size dcache_size, unsigned m32, unsigned m64, unsigned d32, unsigned d64, bool timer_interrupt_disabled) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config_le("program", ENDIANNESS_LITTLE, 64, 32) , m_program_config_be("program", ENDIANNESS_BIG, 64, 32) diff --git a/src/devices/cpu/mips/r4000.h b/src/devices/cpu/mips/r4000.h index adc9ccd1f3d..71345e45b22 100644 --- a/src/devices/cpu/mips/r4000.h +++ b/src/devices/cpu/mips/r4000.h @@ -57,7 +57,7 @@ protected: CACHE_256K = 6, CACHE_512K = 7, }; - r4000_base_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, u32 prid, u32 fcr, cache_size icache_size, cache_size dcache_size, unsigned m32, unsigned m64, unsigned d32, unsigned d64, bool timer_interrupt_disabled); + r4000_base_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, u32 prid, u32 fcr, cache_size icache_size, cache_size dcache_size, unsigned m32, unsigned m64, unsigned d32, unsigned d64, bool timer_interrupt_disabled); enum cp0_reg : int { @@ -489,14 +489,14 @@ class r4000_device : public r4000_base_device { public: // NOTE: R4000 chips prior to 3.0 have an xtlb bug - r4000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, bool timer_interrupt_disabled) + r4000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, bool timer_interrupt_disabled) : r4000_base_device(mconfig, R4000, tag, owner, clock, 0x0430, 0x0500, CACHE_8K, CACHE_8K, 10, 20, 69, 133, timer_interrupt_disabled) { // no secondary cache m_cp0[CP0_Config] |= CONFIG_SC; } - r4000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + r4000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r4000_device(mconfig, tag, owner, clock, false) { } @@ -505,7 +505,7 @@ public: class r4400_device : public r4000_base_device { public: - r4400_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, bool timer_interrupt_disabled, u32 scache_size, u8 scache_line_size) + r4400_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, bool timer_interrupt_disabled, u32 scache_size, u8 scache_line_size) : r4000_base_device(mconfig, R4400, tag, owner, clock, 0x0440, 0x0500, CACHE_16K, CACHE_16K, 10, 20, 69, 133, timer_interrupt_disabled) { m_scache_size = scache_size; @@ -513,7 +513,7 @@ public: configure_scache(); } - r4400_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + r4400_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r4400_device(mconfig, tag, owner, clock, false, 0, 0) { } @@ -522,14 +522,14 @@ public: class r4600_device : public r4000_base_device { public: - r4600_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, bool timer_interrupt_disabled) + r4600_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, bool timer_interrupt_disabled) : r4000_base_device(mconfig, R4600, tag, owner, clock, 0x2020, 0x2020, CACHE_16K, CACHE_16K, 10, 12, 42, 74, timer_interrupt_disabled) { // no secondary cache m_cp0[CP0_Config] |= CONFIG_SC; } - r4600_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + r4600_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r4600_device(mconfig, tag, owner, clock, false) { } @@ -538,14 +538,14 @@ public: class r5000_device : public r4000_base_device { public: - r5000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, bool timer_interrupt_disabled) + r5000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, bool timer_interrupt_disabled) : r4000_base_device(mconfig, R5000, tag, owner, clock, 0x2320, 0x2320, CACHE_32K, CACHE_32K, 5, 9, 36, 68, timer_interrupt_disabled) { // no secondary cache m_cp0[CP0_Config] |= CONFIG_SC; } - r5000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) + r5000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : r5000_device(mconfig, tag, owner, clock, false) { } diff --git a/src/devices/cpu/mk1/mk1.cpp b/src/devices/cpu/mk1/mk1.cpp index cdeb3fb6fcc..c67ce39f5da 100644 --- a/src/devices/cpu/mk1/mk1.cpp +++ b/src/devices/cpu/mk1/mk1.cpp @@ -45,7 +45,7 @@ // device type definition DEFINE_DEVICE_TYPE(MK1_CPU, mk1_cpu_device, "mk1_cpu", "Mark 1 CPU") -mk1_cpu_device::mk1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mk1_cpu_device::mk1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, MK1_CPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 12, 0) , m_data_config("data", ENDIANNESS_LITTLE, 8, 16, 0) diff --git a/src/devices/cpu/mk1/mk1.h b/src/devices/cpu/mk1/mk1.h index dad3f3ab9f7..66162ffb9bd 100644 --- a/src/devices/cpu/mk1/mk1.h +++ b/src/devices/cpu/mk1/mk1.h @@ -22,7 +22,7 @@ public: static constexpr int IRQ_LINE = 0; // device type constructor - mk1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mk1_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/mn10200/mn10200.cpp b/src/devices/cpu/mn10200/mn10200.cpp index 64da0efe23f..e0267f418f2 100644 --- a/src/devices/cpu/mn10200/mn10200.cpp +++ b/src/devices/cpu/mn10200/mn10200.cpp @@ -45,7 +45,7 @@ void mn10200_device::mn1020012a_internal_map(address_map &map) } -mn10200_device::mn10200_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program) +mn10200_device::mn10200_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 24, 0, program), m_program(nullptr) , m_read_port(*this) @@ -55,7 +55,7 @@ mn10200_device::mn10200_device(const machine_config &mconfig, device_type type, { } // device definitions -mn1020012a_device::mn1020012a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mn1020012a_device::mn1020012a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mn10200_device(mconfig, MN1020012A, tag, owner, clock, address_map_constructor(FUNC(mn1020012a_device::mn1020012a_internal_map), this)) { } diff --git a/src/devices/cpu/mn10200/mn10200.h b/src/devices/cpu/mn10200/mn10200.h index 8ea31fa1d4b..32994b46001 100644 --- a/src/devices/cpu/mn10200/mn10200.h +++ b/src/devices/cpu/mn10200/mn10200.h @@ -51,7 +51,7 @@ protected: // construction/destruction - mn10200_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program); + mn10200_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program); // device-level overrides virtual void device_start() override; @@ -189,7 +189,7 @@ private: class mn1020012a_device : public mn10200_device { public: - mn1020012a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mn1020012a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/mn1880/mn1880.cpp b/src/devices/cpu/mn1880/mn1880.cpp index 0843947a480..12e28ddb46f 100644 --- a/src/devices/cpu/mn1880/mn1880.cpp +++ b/src/devices/cpu/mn1880/mn1880.cpp @@ -88,7 +88,7 @@ DEFINE_DEVICE_TYPE(MN18801A, mn18801a_device, "mn18801a", "Panasonic MN18801A") ALLOW_SAVE_TYPE(mn1880_device::microstate) -mn1880_device::mn1880_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool has_mmu, address_map_constructor data_map) +mn1880_device::mn1880_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool has_mmu, address_map_constructor data_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, has_mmu ? 21 : 16, 0, 16, 14) , m_data_config("data", ENDIANNESS_LITTLE, 8, has_mmu ? 21 : 16, 0, 16, 14, data_map) @@ -107,12 +107,12 @@ mn1880_device::mn1880_device(const machine_config &mconfig, device_type type, co { } -mn1880_device::mn1880_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mn1880_device::mn1880_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mn1880_device(mconfig, MN1880, tag, owner, clock, false, address_map_constructor(FUNC(mn1880_device::internal_data_map), this)) { } -mn18801a_device::mn18801a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mn18801a_device::mn18801a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mn1880_device(mconfig, MN18801A, tag, owner, clock, true, address_map_constructor(FUNC(mn18801a_device::internal_data_map), this)) { } diff --git a/src/devices/cpu/mn1880/mn1880.h b/src/devices/cpu/mn1880/mn1880.h index 47f470c02a8..cb0b59bc656 100644 --- a/src/devices/cpu/mn1880/mn1880.h +++ b/src/devices/cpu/mn1880/mn1880.h @@ -9,7 +9,7 @@ class mn1880_device : public cpu_device { public: - mn1880_device(const machine_config &config, const char *tag, device_t *owner, u32 clock); + mn1880_device(const machine_config &config, const char *tag, device_t *owner, const XTAL &clock); enum { MN1880_IP, MN1880_IPA, MN1880_IPB, @@ -29,7 +29,7 @@ public: }; protected: - mn1880_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool has_mmu, address_map_constructor data_map); + mn1880_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool has_mmu, address_map_constructor data_map); // device-level overrides virtual void device_start() override; @@ -235,7 +235,7 @@ private: class mn18801a_device : public mn1880_device { public: - mn18801a_device(const machine_config &config, const char *tag, device_t *owner, u32 clock); + mn18801a_device(const machine_config &config, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(MN1880, mn1880_device) diff --git a/src/devices/cpu/nanoprocessor/nanoprocessor.cpp b/src/devices/cpu/nanoprocessor/nanoprocessor.cpp index 197efcc0b4a..421107fc692 100644 --- a/src/devices/cpu/nanoprocessor/nanoprocessor.cpp +++ b/src/devices/cpu/nanoprocessor/nanoprocessor.cpp @@ -50,7 +50,7 @@ namespace { DEFINE_DEVICE_TYPE(HP_NANOPROCESSOR, hp_nanoprocessor_device, "nanoprocessor", "Hewlett Packard HP-Nanoprocessor") -hp_nanoprocessor_device::hp_nanoprocessor_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +hp_nanoprocessor_device::hp_nanoprocessor_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, HP_NANOPROCESSOR, tag, owner, clock), m_dc_changed_func(*this), m_read_dc_func(*this), diff --git a/src/devices/cpu/nanoprocessor/nanoprocessor.h b/src/devices/cpu/nanoprocessor/nanoprocessor.h index 2aa8cf3a4ab..23b3d3462a9 100644 --- a/src/devices/cpu/nanoprocessor/nanoprocessor.h +++ b/src/devices/cpu/nanoprocessor/nanoprocessor.h @@ -71,7 +71,7 @@ constexpr unsigned HP_NANO_IE_DC = 7; // DC line used as interrupt enable/ma class hp_nanoprocessor_device : public cpu_device { public: - hp_nanoprocessor_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hp_nanoprocessor_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // DC changed callback // The callback receives a 8-bit word holding the state of all DC lines. diff --git a/src/devices/cpu/nec/nec.cpp b/src/devices/cpu/nec/nec.cpp index 3a961a0a4be..743b6061a46 100644 --- a/src/devices/cpu/nec/nec.cpp +++ b/src/devices/cpu/nec/nec.cpp @@ -121,7 +121,7 @@ DEFINE_DEVICE_TYPE(V33, v33_device, "v33", "NEC V33") DEFINE_DEVICE_TYPE(V33A, v33a_device, "v33a", "NEC V33A") -nec_common_device::nec_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type, address_map_constructor internal_port_map) +nec_common_device::nec_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type, address_map_constructor internal_port_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, is_16bit ? 16 : 8, chip_type == V33_TYPE ? 24 : 20, 0, 20, chip_type == V33_TYPE ? 14 : 0) , m_io_config("io", ENDIANNESS_LITTLE, is_16bit ? 16 : 8, 16, 0, internal_port_map) @@ -133,13 +133,13 @@ nec_common_device::nec_common_device(const machine_config &mconfig, device_type } -v20_device::v20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v20_device::v20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : nec_common_device(mconfig, V20, tag, owner, clock, false, 4, 4, V20_TYPE) { } -v30_device::v30_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v30_device::v30_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : nec_common_device(mconfig, V30, tag, owner, clock, true, 6, 2, V30_TYPE) { } @@ -156,19 +156,19 @@ device_memory_interface::space_config_vector nec_common_device::memory_space_con /* FIXME: Need information about prefetch size and cycles for V33. * complete guess below, nbbatman will not work * properly without. */ -v33_base_device::v33_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_port_map) +v33_base_device::v33_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_port_map) : nec_common_device(mconfig, type, tag, owner, clock, true, 6, 1, V33_TYPE, internal_port_map) { } -v33_device::v33_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v33_device::v33_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v33_base_device(mconfig, V33, tag, owner, clock, address_map_constructor(FUNC(v33_device::v33_internal_port_map), this)) { } -v33a_device::v33a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v33a_device::v33a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v33_base_device(mconfig, V33A, tag, owner, clock, address_map_constructor(FUNC(v33a_device::v33_internal_port_map), this)) { } diff --git a/src/devices/cpu/nec/nec.h b/src/devices/cpu/nec/nec.h index 764afdd76c1..19a2ee22cf5 100644 --- a/src/devices/cpu/nec/nec.h +++ b/src/devices/cpu/nec/nec.h @@ -28,7 +28,7 @@ class nec_common_device : public cpu_device, public nec_disassembler::config protected: // construction/destruction - nec_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type, address_map_constructor internal_port_map = address_map_constructor()); + nec_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type, address_map_constructor internal_port_map = address_map_constructor()); // device-level overrides virtual void device_start() override; @@ -672,21 +672,21 @@ private: class v20_device : public nec_common_device { public: - v20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class v30_device : public nec_common_device { public: - v30_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v30_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class v33_base_device : public nec_common_device { protected: - v33_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_port_map); + v33_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_port_map); // device_memory_interface overrides virtual bool memory_translate(int spacenum, int intention, offs_t &address) override; @@ -698,13 +698,13 @@ protected: class v33_device : public v33_base_device { public: - v33_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v33_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class v33a_device : public v33_base_device { public: - v33a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v33a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/nec/v25.cpp b/src/devices/cpu/nec/v25.cpp index 321db738a04..5cacb9006f9 100644 --- a/src/devices/cpu/nec/v25.cpp +++ b/src/devices/cpu/nec/v25.cpp @@ -50,7 +50,7 @@ DEFINE_DEVICE_TYPE(V25, v25_device, "v25", "NEC V25") DEFINE_DEVICE_TYPE(V35, v35_device, "v35", "NEC V35") -v25_common_device::v25_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type) +v25_common_device::v25_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, is_16bit ? 16 : 8, 20, 0) , m_data_config("data", ENDIANNESS_LITTLE, 16, 9, 0, address_map_constructor(FUNC(v25_common_device::ida_sfr_map), this)) @@ -72,13 +72,13 @@ v25_common_device::v25_common_device(const machine_config &mconfig, device_type } -v25_device::v25_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v25_device::v25_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v25_common_device(mconfig, V25, tag, owner, clock, false, 4, 4, V20_TYPE) { } -v35_device::v35_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v35_device::v35_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v25_common_device(mconfig, V35, tag, owner, clock, true, 6, 2, V30_TYPE) { } diff --git a/src/devices/cpu/nec/v25.h b/src/devices/cpu/nec/v25.h index 1afeb9a7eb5..f92460fb927 100644 --- a/src/devices/cpu/nec/v25.h +++ b/src/devices/cpu/nec/v25.h @@ -43,7 +43,7 @@ public: protected: // construction/destruction - v25_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type); + v25_common_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, uint8_t prefetch_size, uint8_t prefetch_cycles, uint32_t chip_type); // device-level overrides virtual void device_start() override; @@ -536,14 +536,14 @@ private: class v25_device : public v25_common_device { public: - v25_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v25_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class v35_device : public v25_common_device { public: - v35_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v35_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/nec/v5x.cpp b/src/devices/cpu/nec/v5x.cpp index 9faeed6bfd9..39eef1b4cc0 100644 --- a/src/devices/cpu/nec/v5x.cpp +++ b/src/devices/cpu/nec/v5x.cpp @@ -213,14 +213,14 @@ void device_v5x_interface::v5x_add_mconfig(machine_config &config) { PIT8254(config, m_tcu); - V5X_DMAU(config, m_dmau, 4000000); + V5X_DMAU(config, m_dmau, XTAL::u(4000000)); - V5X_ICU(config, m_icu, 0); + V5X_ICU(config, m_icu); m_icu->out_int_callback().set(FUNC(device_v5x_interface::internal_irq_w)); m_icu->in_sp_callback().set_constant(1); m_icu->read_slave_ack_callback().set(FUNC(device_v5x_interface::get_pic_ack)); - V5X_SCU(config, m_scu, 0); + V5X_SCU(config, m_scu); } void device_v5x_interface::remappable_io_map(address_map &map) @@ -516,7 +516,7 @@ device_memory_interface::space_config_vector v50_base_device::memory_space_confi return spaces; } -v50_base_device::v50_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool is_16bit, u8 prefetch_size, u8 prefetch_cycles, u32 chip_type) +v50_base_device::v50_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, u8 prefetch_size, u8 prefetch_cycles, u32 chip_type) : nec_common_device(mconfig, type, tag, owner, clock, is_16bit, prefetch_size, prefetch_cycles, chip_type, address_map_constructor(FUNC(v50_base_device::internal_port_map), this)) , device_v5x_interface(mconfig, *this, is_16bit) , m_tout1_callback(*this) @@ -527,12 +527,12 @@ v50_base_device::v50_base_device(const machine_config &mconfig, device_type type { } -v40_device::v40_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +v40_device::v40_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v50_base_device(mconfig, V40, tag, owner, clock, false, 4, 4, V20_TYPE) { } -v50_device::v50_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +v50_device::v50_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v50_base_device(mconfig, V50, tag, owner, clock, true, 6, 2, V30_TYPE) { } @@ -785,18 +785,18 @@ device_memory_interface::space_config_vector v53_device::memory_space_config() c }; } -v53_device::v53_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +v53_device::v53_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : v33_base_device(mconfig, type, tag, owner, clock, address_map_constructor(FUNC(v53_device::internal_port_map), this)) , device_v5x_interface(mconfig, *this, true) { } -v53_device::v53_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +v53_device::v53_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v53_device(mconfig, V53, tag, owner, clock) { } -v53a_device::v53a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +v53a_device::v53a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v53_device(mconfig, V53A, tag, owner, clock) { } diff --git a/src/devices/cpu/nec/v5x.h b/src/devices/cpu/nec/v5x.h index 23fcdc265a9..c07341fbe91 100644 --- a/src/devices/cpu/nec/v5x.h +++ b/src/devices/cpu/nec/v5x.h @@ -149,7 +149,7 @@ public: auto tout2_cb() { return subdevice<pit8253_device>("tcu")->out_handler<2>(); } protected: - v50_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, bool is_16bit, u8 prefetch_size, u8 prefetch_cycles, u32 chip_type); + v50_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool is_16bit, u8 prefetch_size, u8 prefetch_cycles, u32 chip_type); // device-specific overrides virtual void device_add_mconfig(machine_config &config) override; @@ -191,7 +191,7 @@ private: class v40_device : public v50_base_device { public: - v40_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + v40_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void install_peripheral_io() override; @@ -200,7 +200,7 @@ protected: class v50_device : public v50_base_device { public: - v50_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + v50_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void install_peripheral_io() override; @@ -209,7 +209,7 @@ protected: class v53_device : public v33_base_device, public device_v5x_interface { public: - v53_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + v53_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); template <unsigned Channel> DECLARE_WRITE_LINE_MEMBER(dreq_w) { @@ -228,7 +228,7 @@ public: template <unsigned Timer> auto out_handler() { return subdevice<pit8253_device>("tcu")->out_handler<Timer>(); } protected: - v53_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + v53_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-specific overrides virtual void device_add_mconfig(machine_config &config) override; @@ -262,7 +262,7 @@ private: class v53a_device : public v53_device { public: - v53a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + v53a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(V40, v40_device) diff --git a/src/devices/cpu/nios2/nios2.cpp b/src/devices/cpu/nios2/nios2.cpp index 39dd0fc6209..8f4893f2710 100644 --- a/src/devices/cpu/nios2/nios2.cpp +++ b/src/devices/cpu/nios2/nios2.cpp @@ -15,7 +15,7 @@ // device type definition DEFINE_DEVICE_TYPE(NIOS2, nios2_device, "nios2", "Altera Nios II Processor") -nios2_device::nios2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +nios2_device::nios2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, NIOS2, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) { diff --git a/src/devices/cpu/nios2/nios2.h b/src/devices/cpu/nios2/nios2.h index de2073e0e47..34925655a3e 100644 --- a/src/devices/cpu/nios2/nios2.h +++ b/src/devices/cpu/nios2/nios2.h @@ -18,7 +18,7 @@ public: }; // construction/destruction - nios2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + nios2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/ns32000/ns32000.cpp b/src/devices/cpu/ns32000/ns32000.cpp index d3f04bbd5d3..f28b7144532 100644 --- a/src/devices/cpu/ns32000/ns32000.cpp +++ b/src/devices/cpu/ns32000/ns32000.cpp @@ -96,7 +96,7 @@ static const u32 size_mask[] = { 0x000000ffU, 0x0000ffffU, 0x00000000U, 0xffffff #define SP ((m_psr & PSR_S) ? m_sp1 : m_sp0) -template <int Width>ns32000_device<Width>::ns32000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int databits, int addrbits) +template <int Width>ns32000_device<Width>::ns32000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int databits, int addrbits) : cpu_device(mconfig, type, tag, owner, clock) , m_address_mask(0xffffffffU >> (32 - addrbits)) , m_program_config("program", ENDIANNESS_LITTLE, databits, addrbits, 0) @@ -130,22 +130,22 @@ template <int Width>ns32000_device<Width>::ns32000_device(const machine_config & { } -ns32008_device::ns32008_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ns32008_device::ns32008_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ns32000_device(mconfig, NS32008, tag, owner, clock, 8, 24) { } -ns32016_device::ns32016_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ns32016_device::ns32016_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ns32000_device(mconfig, NS32016, tag, owner, clock, 16, 24) { } -ns32032_device::ns32032_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ns32032_device::ns32032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ns32000_device(mconfig, NS32032, tag, owner, clock, 32, 24) { } -ns32332_device::ns32332_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ns32332_device::ns32332_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ns32000_device(mconfig, NS32332, tag, owner, clock, 32, 32) { } diff --git a/src/devices/cpu/ns32000/ns32000.h b/src/devices/cpu/ns32000/ns32000.h index 654d8661f8a..ae41f9fbb07 100644 --- a/src/devices/cpu/ns32000/ns32000.h +++ b/src/devices/cpu/ns32000/ns32000.h @@ -16,10 +16,10 @@ public: template <typename T> void set_mmu(T &&tag) { m_mmu.set_tag(std::forward<T>(tag)); } // construction/destruction - ns32000_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock); + ns32000_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock); protected: - ns32000_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock, int databits, int addrbits); + ns32000_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, const XTAL &clock, int databits, int addrbits); // device_t overrides virtual void device_start() override; @@ -191,25 +191,25 @@ private: class ns32008_device : public ns32000_device<0> { public: - ns32008_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + ns32008_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class ns32016_device : public ns32000_device<1> { public: - ns32016_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + ns32016_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class ns32032_device : public ns32000_device<2> { public: - ns32032_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + ns32032_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; class ns32332_device : public ns32000_device<2> { public: - ns32332_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + ns32332_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(NS32008, ns32008_device) diff --git a/src/devices/cpu/nuon/nuon.cpp b/src/devices/cpu/nuon/nuon.cpp index 00d35cddc39..e45908b450f 100644 --- a/src/devices/cpu/nuon/nuon.cpp +++ b/src/devices/cpu/nuon/nuon.cpp @@ -22,7 +22,7 @@ DEFINE_DEVICE_TYPE(NUON, nuon_device, "nuon", "Aries 3 \"Nuon\"") // nuon_device - constructor //------------------------------------------------- -nuon_device::nuon_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +nuon_device::nuon_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, NUON, tag, owner, clock) , m_program_configs{{"program_mpe0", ENDIANNESS_BIG, 32, 32}, {"program_mpe1", ENDIANNESS_BIG, 32, 32}, diff --git a/src/devices/cpu/nuon/nuon.h b/src/devices/cpu/nuon/nuon.h index f3a7311e985..ecdb5cc6d76 100644 --- a/src/devices/cpu/nuon/nuon.h +++ b/src/devices/cpu/nuon/nuon.h @@ -20,7 +20,7 @@ class nuon_device : public cpu_device { public: - nuon_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + nuon_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/pace/pace.cpp b/src/devices/cpu/pace/pace.cpp index 2bfba2cc338..38c6d5fe4e4 100644 --- a/src/devices/cpu/pace/pace.cpp +++ b/src/devices/cpu/pace/pace.cpp @@ -62,7 +62,7 @@ ALLOW_SAVE_TYPE(pace_device::cycle); // pace_device - constructor //------------------------------------------------- -pace_device::pace_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +pace_device::pace_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_space_config("program", ENDIANNESS_LITTLE, 16, 16, -1) , m_bps_callback(*this) @@ -89,7 +89,7 @@ pace_device::pace_device(const machine_config &mconfig, device_type type, const // ins8900_device - constructor //------------------------------------------------- -ins8900_device::ins8900_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ins8900_device::ins8900_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pace_device(mconfig, INS8900, tag, owner, clock) { } diff --git a/src/devices/cpu/pace/pace.h b/src/devices/cpu/pace/pace.h index c96c38e5c02..d11c021b065 100644 --- a/src/devices/cpu/pace/pace.h +++ b/src/devices/cpu/pace/pace.h @@ -68,7 +68,7 @@ public: protected: // construction/destruction - pace_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + pace_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-specific overrides virtual void device_resolve_objects() override; @@ -216,7 +216,7 @@ class ins8900_device : public pace_device { public: // device type constructor - ins8900_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + ins8900_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type declarations diff --git a/src/devices/cpu/patinhofeio/patinho_feio.cpp b/src/devices/cpu/patinhofeio/patinho_feio.cpp index d017ff8a318..e341ea40cbc 100644 --- a/src/devices/cpu/patinhofeio/patinho_feio.cpp +++ b/src/devices/cpu/patinhofeio/patinho_feio.cpp @@ -56,7 +56,7 @@ void patinho_feio_cpu_device::prog_8bit(address_map &map) map(0x0000, 0x0fff).ram().share("internalram"); } -patinho_feio_cpu_device::patinho_feio_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +patinho_feio_cpu_device::patinho_feio_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, PATO_FEIO_CPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 12, 0, address_map_constructor(FUNC(patinho_feio_cpu_device::prog_8bit), this)) , m_update_panel_cb(*this) diff --git a/src/devices/cpu/pdp1/pdp1.cpp b/src/devices/cpu/pdp1/pdp1.cpp index 77c97ebcddc..8ef280e4860 100644 --- a/src/devices/cpu/pdp1/pdp1.cpp +++ b/src/devices/cpu/pdp1/pdp1.cpp @@ -380,7 +380,7 @@ DEFINE_DEVICE_TYPE(PDP1, pdp1_device, "pdp1_cpu", "DEC PDP-1 Central Processor") -pdp1_device::pdp1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pdp1_device::pdp1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, PDP1, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 18, -2) // data is actually 18 bits wide , m_extern_iot(*this) diff --git a/src/devices/cpu/pdp1/pdp1.h b/src/devices/cpu/pdp1/pdp1.h index f1a4e934236..db80b85e311 100644 --- a/src/devices/cpu/pdp1/pdp1.h +++ b/src/devices/cpu/pdp1/pdp1.h @@ -71,7 +71,7 @@ public: }; // construction/destruction - pdp1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pdp1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); template <int I, typename... T> void set_iot_callback(T &&... args) { m_extern_iot[I].set(std::forward<T>(args)...); } template <typename... T> void set_io_sc_callback(T &&... args) { m_io_sc_callback.set(std::forward<T>(args)...); } diff --git a/src/devices/cpu/pdp8/hd6120.cpp b/src/devices/cpu/pdp8/hd6120.cpp index fda3deea264..75a608ecde1 100644 --- a/src/devices/cpu/pdp8/hd6120.cpp +++ b/src/devices/cpu/pdp8/hd6120.cpp @@ -164,7 +164,7 @@ DEFINE_DEVICE_TYPE(HD6120, hd6120_device, "hd6120", "Harris HD-6120") ALLOW_SAVE_TYPE(hd6120_device::minor_state) -hd6120_device::hd6120_device(const machine_config &config, const char *tag, device_t *owner, u32 clock) +hd6120_device::hd6120_device(const machine_config &config, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(config, HD6120, tag, owner, clock) , m_inst_config("instruction", ENDIANNESS_BIG, 16, 16, -1) // 12 data bits , m_data_config("data", ENDIANNESS_BIG, 16, 16, -1) // 12 data bits diff --git a/src/devices/cpu/pdp8/hd6120.h b/src/devices/cpu/pdp8/hd6120.h index 126ce115040..699157b75c8 100644 --- a/src/devices/cpu/pdp8/hd6120.h +++ b/src/devices/cpu/pdp8/hd6120.h @@ -68,7 +68,7 @@ public: }; // device type constructor - hd6120_device(const machine_config &config, const char *tag, device_t *owner, u32 clock); + hd6120_device(const machine_config &config, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto lxmar_callback() { return m_lxmar_callback.bind(); } diff --git a/src/devices/cpu/pdp8/pdp8.cpp b/src/devices/cpu/pdp8/pdp8.cpp index 31086b3fb48..1aab04e1702 100644 --- a/src/devices/cpu/pdp8/pdp8.cpp +++ b/src/devices/cpu/pdp8/pdp8.cpp @@ -48,7 +48,7 @@ DEFINE_DEVICE_TYPE(PDP8, pdp8_device, "pdp8_cpu", "DEC PDP8") // pdp8_device - constructor //------------------------------------------------- -pdp8_device::pdp8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pdp8_device::pdp8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, PDP8, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, 16, 12, -1), m_pc(0), diff --git a/src/devices/cpu/pdp8/pdp8.h b/src/devices/cpu/pdp8/pdp8.h index ef6c4af95ae..fb2b2295e1b 100644 --- a/src/devices/cpu/pdp8/pdp8.h +++ b/src/devices/cpu/pdp8/pdp8.h @@ -22,7 +22,7 @@ class pdp8_device : public cpu_device { public: // construction/destruction - pdp8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pdp8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/pic16c5x/pic16c5x.cpp b/src/devices/cpu/pic16c5x/pic16c5x.cpp index 5d6f14a1071..e5bc68a1790 100644 --- a/src/devices/cpu/pic16c5x/pic16c5x.cpp +++ b/src/devices/cpu/pic16c5x/pic16c5x.cpp @@ -123,7 +123,7 @@ void pic16c5x_device::ram_7(address_map &map) } -pic16c5x_device::pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, int picmodel) +pic16c5x_device::pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, int picmodel) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, program_width, -1 , ( ( program_width == 9 ) ? address_map_constructor(FUNC(pic16c5x_device::rom_9), this): ( ( program_width == 10 ) ? address_map_constructor(FUNC(pic16c5x_device::rom_10), this) : address_map_constructor(FUNC(pic16c5x_device::rom_11), this) ))) @@ -147,42 +147,42 @@ pic16c5x_device::pic16c5x_device(const machine_config &mconfig, device_type type } -pic16c54_device::pic16c54_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c54_device::pic16c54_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC16C54, tag, owner, clock, 9, 5, 0x16C54) { } -pic16c55_device::pic16c55_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c55_device::pic16c55_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC16C55, tag, owner, clock, 9, 5, 0x16C55) { } -pic16c56_device::pic16c56_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c56_device::pic16c56_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC16C56, tag, owner, clock, 10, 5, 0x16C56) { } -pic16c57_device::pic16c57_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c57_device::pic16c57_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC16C57, tag, owner, clock, 11, 7, 0x16C57) { } -pic16c58_device::pic16c58_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c58_device::pic16c58_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC16C58, tag, owner, clock, 11, 7, 0x16C58) { } -pic1650_device::pic1650_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic1650_device::pic1650_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC1650, tag, owner, clock, 9, 5, 0x1650) { } -pic1654s_device::pic1654s_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic1654s_device::pic1654s_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC1654S, tag, owner, clock, 9, 5, 0x1654) { } -pic1655_device::pic1655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic1655_device::pic1655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c5x_device(mconfig, PIC1655, tag, owner, clock, 9, 5, 0x1655) { } diff --git a/src/devices/cpu/pic16c5x/pic16c5x.h b/src/devices/cpu/pic16c5x/pic16c5x.h index 177b9cae7a2..0ae1176a66c 100644 --- a/src/devices/cpu/pic16c5x/pic16c5x.h +++ b/src/devices/cpu/pic16c5x/pic16c5x.h @@ -79,7 +79,7 @@ public: void rom_9(address_map &map); protected: // construction/destruction - pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int data_width, int picmodel); + pic16c5x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int data_width, int picmodel); // device-level overrides virtual void device_start() override; @@ -226,7 +226,7 @@ class pic16c54_device : public pic16c5x_device { public: // construction/destruction - pic16c54_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c54_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -234,7 +234,7 @@ class pic16c55_device : public pic16c5x_device { public: // construction/destruction - pic16c55_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c55_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -242,7 +242,7 @@ class pic16c56_device : public pic16c5x_device { public: // construction/destruction - pic16c56_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c56_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -250,7 +250,7 @@ class pic16c57_device : public pic16c5x_device { public: // construction/destruction - pic16c57_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c57_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -258,7 +258,7 @@ class pic16c58_device : public pic16c5x_device { public: // construction/destruction - pic16c58_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c58_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -266,14 +266,14 @@ class pic1650_device : public pic16c5x_device { public: // construction/destruction - pic1650_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic1650_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pic1654s_device : public pic16c5x_device { public: // construction/destruction - pic1654s_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic1654s_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // 1654S has a /8 clock divider instead of the typical /4 @@ -285,7 +285,7 @@ class pic1655_device : public pic16c5x_device { public: // construction/destruction - pic1655_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic1655_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; #endif // MAME_CPU_PIC16C5X_PIC16C5X_H diff --git a/src/devices/cpu/pic16c62x/pic16c62x.cpp b/src/devices/cpu/pic16c62x/pic16c62x.cpp index ddb6d3c9bb8..59bc368faff 100644 --- a/src/devices/cpu/pic16c62x/pic16c62x.cpp +++ b/src/devices/cpu/pic16c62x/pic16c62x.cpp @@ -119,7 +119,7 @@ void pic16c62x_device::pic16c62xa_ram(address_map &map) } -pic16c62x_device::pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int picmodel) +pic16c62x_device::pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int picmodel) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, program_width, -1 , ( ( program_width == 9 ) ? address_map_constructor(FUNC(pic16c62x_device::pic16c62x_rom_9), this) : @@ -138,32 +138,32 @@ pic16c62x_device::pic16c62x_device(const machine_config &mconfig, device_type ty } -pic16c620_device::pic16c620_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c620_device::pic16c620_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C620, tag, owner, clock, 9, 0x16C620) { } -pic16c620a_device::pic16c620a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c620a_device::pic16c620a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C620A, tag, owner, clock, 9, 0x16C620A) { } -pic16c621_device::pic16c621_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c621_device::pic16c621_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C621, tag, owner, clock, 10, 0x16C621) { } -pic16c621a_device::pic16c621a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c621a_device::pic16c621a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C621A, tag, owner, clock, 10, 0x16C621A) { } -pic16c622_device::pic16c622_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c622_device::pic16c622_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C622, tag, owner, clock, 11, 0x16C622) { } -pic16c622a_device::pic16c622a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +pic16c622a_device::pic16c622a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic16c62x_device(mconfig, PIC16C622A, tag, owner, clock, 11, 0x16C622A) { } diff --git a/src/devices/cpu/pic16c62x/pic16c62x.h b/src/devices/cpu/pic16c62x/pic16c62x.h index d0b9390078f..427bcc0dad4 100644 --- a/src/devices/cpu/pic16c62x/pic16c62x.h +++ b/src/devices/cpu/pic16c62x/pic16c62x.h @@ -58,7 +58,7 @@ public: protected: // construction/destruction - pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int program_width, int picmodel); + pic16c62x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int program_width, int picmodel); // device-level overrides virtual void device_start() override; @@ -208,14 +208,14 @@ class pic16c620_device : public pic16c62x_device { public: // construction/destruction - pic16c620_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c620_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pic16c620a_device : public pic16c62x_device { public: // construction/destruction - pic16c620a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c620a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; /* @@ -223,35 +223,35 @@ class pic16cr620a_device : public pic16c62x_device { public: // construction/destruction - pic16cr620a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16cr620a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }*/ class pic16c621_device : public pic16c62x_device { public: // construction/destruction - pic16c621_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c621_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pic16c621a_device : public pic16c62x_device { public: // construction/destruction - pic16c621a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c621a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pic16c622_device : public pic16c62x_device { public: // construction/destruction - pic16c622_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c622_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class pic16c622a_device : public pic16c62x_device { public: // construction/destruction - pic16c622a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pic16c622a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/pic17/pic17.cpp b/src/devices/cpu/pic17/pic17.cpp index 99dff413d54..347b9c0e943 100644 --- a/src/devices/cpu/pic17/pic17.cpp +++ b/src/devices/cpu/pic17/pic17.cpp @@ -64,7 +64,7 @@ ALLOW_SAVE_TYPE(pic17_cpu_device::exec_phase); -pic17_cpu_device::pic17_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map) +pic17_cpu_device::pic17_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size, address_map_constructor data_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, -1, address_map_constructor(FUNC(pic17_cpu_device::program_map), this)) , m_data_config("data", ENDIANNESS_LITTLE, 8, 12, 0, data_map) diff --git a/src/devices/cpu/pic17/pic17.h b/src/devices/cpu/pic17/pic17.h index fed49748a67..f139a04568f 100644 --- a/src/devices/cpu/pic17/pic17.h +++ b/src/devices/cpu/pic17/pic17.h @@ -40,7 +40,7 @@ public: void set_mode(mode m) { m_mode = m; } protected: - pic17_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map); + pic17_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size, address_map_constructor data_map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/pic17/pic17c4x.cpp b/src/devices/cpu/pic17/pic17c4x.cpp index 07976c32b79..4ed8654bca4 100644 --- a/src/devices/cpu/pic17/pic17c4x.cpp +++ b/src/devices/cpu/pic17/pic17c4x.cpp @@ -34,7 +34,7 @@ DEFINE_DEVICE_TYPE(PIC17C43, pic17c43_device, "pic17c43", "Microchip PIC17C43") DEFINE_DEVICE_TYPE(PIC17C44, pic17c44_device, "pic17c44", "Microchip PIC17C44") -pic17c4x_device::pic17c4x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map) +pic17c4x_device::pic17c4x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size, address_map_constructor data_map) : pic17_cpu_device(mconfig, type, tag, owner, clock, rom_size, data_map) , m_port_out_cb(*this) , m_rain(0x3f) @@ -56,17 +56,17 @@ pic17c4x_device::pic17c4x_device(const machine_config &mconfig, device_type type { } -pic17c43_device::pic17c43_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size) +pic17c43_device::pic17c43_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size) : pic17c4x_device(mconfig, type, tag, owner, clock, rom_size, address_map_constructor(FUNC(pic17c43_device::data_map), this)) { } -pic17c43_device::pic17c43_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +pic17c43_device::pic17c43_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic17c43_device(mconfig, PIC17C43, tag, owner, clock, 0x1000) { } -pic17c44_device::pic17c44_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +pic17c44_device::pic17c44_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pic17c43_device(mconfig, PIC17C44, tag, owner, clock, 0x2000) { } diff --git a/src/devices/cpu/pic17/pic17c4x.h b/src/devices/cpu/pic17/pic17c4x.h index e1ae9290230..101b9cada5b 100644 --- a/src/devices/cpu/pic17/pic17c4x.h +++ b/src/devices/cpu/pic17/pic17c4x.h @@ -75,7 +75,7 @@ public: auto re_out_cb() { return m_port_out_cb[4].bind(); } protected: - pic17c4x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size, address_map_constructor data_map); + pic17c4x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size, address_map_constructor data_map); // device-level overrides virtual void device_resolve_objects() override; @@ -158,10 +158,10 @@ class pic17c43_device : public pic17c4x_device { public: // device type constructor - pic17c43_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + pic17c43_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - pic17c43_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 rom_size); + pic17c43_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 rom_size); private: void data_map(address_map &map); @@ -171,7 +171,7 @@ class pic17c44_device : public pic17c43_device { public: // device type constructor - pic17c44_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + pic17c44_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type declarations diff --git a/src/devices/cpu/powerpc/ppc.h b/src/devices/cpu/powerpc/ppc.h index b27f80efc7e..799371ca363 100644 --- a/src/devices/cpu/powerpc/ppc.h +++ b/src/devices/cpu/powerpc/ppc.h @@ -205,7 +205,7 @@ protected: }; // construction/destruction - ppc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int address_bits, int data_bits, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor, address_map_constructor internal_map); + ppc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int address_bits, int data_bits, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor, address_map_constructor internal_map); public: virtual ~ppc_device() override; @@ -686,7 +686,7 @@ private: //class ppc403_device : public ppc_device //{ //public: -// ppc403_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); +// ppc403_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // //protected: // virtual uint32_t execute_input_lines() const noexcept { return 8; } @@ -696,7 +696,7 @@ private: //class ppc405_device : public ppc_device //{ //public: -// ppc405_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); +// ppc405_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // //protected: // virtual uint32_t execute_input_lines() const noexcept { return 8; } @@ -706,49 +706,49 @@ private: class ppc603_device : public ppc_device { public: - ppc603_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc603_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc603e_device : public ppc_device { public: - ppc603e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc603e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc603r_device : public ppc_device { public: - ppc603r_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc603r_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc602_device : public ppc_device { public: - ppc602_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc602_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mpc8240_device : public ppc_device { public: - mpc8240_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mpc8240_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc601_device : public ppc_device { public: - ppc601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc604_device : public ppc_device { public: - ppc604_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc604_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -768,7 +768,7 @@ public: void internal_ppc4xx(address_map &map); protected: - ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor); + ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor); virtual uint32_t execute_input_lines() const noexcept override { return 5; } virtual void execute_set_input(int inputnum, int state) override; @@ -778,21 +778,21 @@ protected: class ppc403ga_device : public ppc4xx_device { public: - ppc403ga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc403ga_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc403gcx_device : public ppc4xx_device { public: - ppc403gcx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc403gcx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ppc405gp_device : public ppc4xx_device { public: - ppc405gp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ppc405gp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/powerpc/ppccom.cpp b/src/devices/cpu/powerpc/ppccom.cpp index aecc85d1709..86499979c61 100644 --- a/src/devices/cpu/powerpc/ppccom.cpp +++ b/src/devices/cpu/powerpc/ppccom.cpp @@ -207,7 +207,7 @@ DEFINE_DEVICE_TYPE(PPC403GCX, ppc403gcx_device, "ppc403gcx", "IBM PowerPC 403GC DEFINE_DEVICE_TYPE(PPC405GP, ppc405gp_device, "ppc405gp", "IBM PowerPC 405GP") -ppc_device::ppc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int address_bits, int data_bits, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor, address_map_constructor internal_map) +ppc_device::ppc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int address_bits, int data_bits, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock) , device_vtlb_interface(mconfig, *this, AS_PROGRAM) , m_program_config("program", ENDIANNESS_BIG, data_bits, address_bits, 0, internal_map) @@ -242,47 +242,47 @@ ppc_device::~ppc_device() { } -//ppc403_device::ppc403_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +//ppc403_device::ppc403_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) // : ppc_device(mconfig, PPC403, "PPC403", tag, owner, clock, "ppc403", 32?, 64?) //{ //} // -//ppc405_device::ppc405_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +//ppc405_device::ppc405_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) // : ppc_device(mconfig, PPC405, "PPC405", tag, owner, clock, "ppc405", 32?, 64?) //{ //} -ppc603_device::ppc603_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc603_device::ppc603_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC603, tag, owner, clock, 32, 64, PPC_MODEL_603, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor()) { } -ppc603e_device::ppc603e_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc603e_device::ppc603e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC603E, tag, owner, clock, 32, 64, PPC_MODEL_603E, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor()) { } -ppc603r_device::ppc603r_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc603r_device::ppc603r_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC603R, tag, owner, clock, 32, 64, PPC_MODEL_603R, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor()) { } -ppc602_device::ppc602_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc602_device::ppc602_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC602, tag, owner, clock, 32, 64, PPC_MODEL_602, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4, address_map_constructor()) { } -mpc8240_device::mpc8240_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mpc8240_device::mpc8240_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, MPC8240, tag, owner, clock, 32, 64, PPC_MODEL_MPC8240, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_603_MMU, 4/* unknown */, address_map_constructor()) { } -ppc601_device::ppc601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc601_device::ppc601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC601, tag, owner, clock, 32, 64, PPC_MODEL_601, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_MFIOC | PPCCAP_601BAT, 0/* no TB */, address_map_constructor()) { } -ppc604_device::ppc604_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc604_device::ppc604_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc_device(mconfig, PPC604, tag, owner, clock, 32, 64, PPC_MODEL_604, PPCCAP_OEA | PPCCAP_VEA | PPCCAP_FPU | PPCCAP_MISALIGNED | PPCCAP_604_MMU, 4, address_map_constructor()) { } @@ -292,22 +292,22 @@ void ppc4xx_device::internal_ppc4xx(address_map &map) map(0x40000000, 0x4000000f).rw(FUNC(ppc4xx_device::ppc4xx_spu_r), FUNC(ppc4xx_device::ppc4xx_spu_w)); } -ppc4xx_device::ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor) +ppc4xx_device::ppc4xx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, powerpc_flavor flavor, uint32_t cap, uint32_t tb_divisor) : ppc_device(mconfig, type, tag, owner, clock, 31, 32, flavor, cap, tb_divisor, address_map_constructor(FUNC(ppc4xx_device::internal_ppc4xx), this)) { } -ppc403ga_device::ppc403ga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc403ga_device::ppc403ga_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc4xx_device(mconfig, PPC403GA, tag, owner, clock, PPC_MODEL_403GA, PPCCAP_4XX, 1) { } -ppc403gcx_device::ppc403gcx_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc403gcx_device::ppc403gcx_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc4xx_device(mconfig, PPC403GCX, tag, owner, clock, PPC_MODEL_403GCX, PPCCAP_4XX, 1) { } -ppc405gp_device::ppc405gp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ppc405gp_device::ppc405gp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ppc4xx_device(mconfig, PPC405GP, tag, owner, clock, PPC_MODEL_405GP, PPCCAP_4XX | PPCCAP_VEA, 1) { } diff --git a/src/devices/cpu/pps4/pps4.cpp b/src/devices/cpu/pps4/pps4.cpp index 1a44fa2a39b..e5025928bc2 100644 --- a/src/devices/cpu/pps4/pps4.cpp +++ b/src/devices/cpu/pps4/pps4.cpp @@ -86,7 +86,7 @@ DEFINE_DEVICE_TYPE(PPS4, pps4_device, "pps4", "Rockwell PPS4-4") DEFINE_DEVICE_TYPE(PPS4_2, pps4_2_device, "pps4_2", "Rockwell PPS-4/2") -pps4_device::pps4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +pps4_device::pps4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 12) , m_data_config("data", ENDIANNESS_LITTLE, 8, 12) // 4bit RAM @@ -99,12 +99,12 @@ pps4_device::pps4_device(const machine_config &mconfig, device_type type, const { } -pps4_device::pps4_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +pps4_device::pps4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pps4_device(mconfig, PPS4, tag, owner, clock) { } -pps4_2_device::pps4_2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +pps4_2_device::pps4_2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : pps4_device(mconfig, PPS4_2, tag, owner, clock) { } diff --git a/src/devices/cpu/pps4/pps4.h b/src/devices/cpu/pps4/pps4.h index 4b9b82f37c0..35901965c95 100644 --- a/src/devices/cpu/pps4/pps4.h +++ b/src/devices/cpu/pps4/pps4.h @@ -40,7 +40,7 @@ class pps4_device : public cpu_device { public: // construction/destruction - pps4_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + pps4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto dia_cb() { return m_dia_cb.bind(); } @@ -50,7 +50,7 @@ public: u16 address_bus_r(address_space &space); protected: - pps4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + pps4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -171,7 +171,7 @@ class pps4_2_device : public pps4_device { public: // construction/destruction - pps4_2_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + pps4_2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/pps41/mm75.cpp b/src/devices/cpu/pps41/mm75.cpp index 83c5ae06368..d89fa319701 100644 --- a/src/devices/cpu/pps41/mm75.cpp +++ b/src/devices/cpu/pps41/mm75.cpp @@ -14,7 +14,7 @@ DEFINE_DEVICE_TYPE(MM75, mm75_device, "mm75", "Rockwell MM75 A7500") // stripped // constructor -mm75_device::mm75_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm75_device::mm75_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm76_device(mconfig, MM75, tag, owner, clock, 10, address_map_constructor(FUNC(mm75_device::program_0_6k), this), 6, address_map_constructor(FUNC(mm75_device::data_48x4), this)) { } diff --git a/src/devices/cpu/pps41/mm75.h b/src/devices/cpu/pps41/mm75.h index 39a14245cae..5eaba622bbd 100644 --- a/src/devices/cpu/pps41/mm75.h +++ b/src/devices/cpu/pps41/mm75.h @@ -37,7 +37,7 @@ class mm75_device : public mm76_device { public: - mm75_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm75_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_start() override; diff --git a/src/devices/cpu/pps41/mm76.cpp b/src/devices/cpu/pps41/mm76.cpp index bb7d9cd7a53..c0dacb2d371 100644 --- a/src/devices/cpu/pps41/mm76.cpp +++ b/src/devices/cpu/pps41/mm76.cpp @@ -19,27 +19,27 @@ DEFINE_DEVICE_TYPE(MM76EL, mm76el_device, "mm76el", "Rockwell MM76EL B8600") // // constructor -mm76_device::mm76_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm76_device::mm76_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm76_device(mconfig, MM76, tag, owner, clock, 10, address_map_constructor(FUNC(mm76_device::program_0_6k), this), 6, address_map_constructor(FUNC(mm76_device::data_48x4), this)) { } -mm76_device::mm76_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +mm76_device::mm76_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : pps41_base_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -mm76l_device::mm76l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm76l_device::mm76l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm76_device(mconfig, MM76L, tag, owner, clock, 10, address_map_constructor(FUNC(mm76l_device::program_0_6k), this), 6, address_map_constructor(FUNC(mm76l_device::data_48x4), this)) { } -mm76e_device::mm76e_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm76e_device::mm76e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm76e_device(mconfig, MM76E, tag, owner, clock, 10, address_map_constructor(FUNC(mm76e_device::program_1k), this), 6, address_map_constructor(FUNC(mm76e_device::data_48x4), this)) { } -mm76e_device::mm76e_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +mm76e_device::mm76e_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : mm76_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -mm76el_device::mm76el_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm76el_device::mm76el_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm76e_device(mconfig, MM76EL, tag, owner, clock, 10, address_map_constructor(FUNC(mm76el_device::program_1k), this), 6, address_map_constructor(FUNC(mm76el_device::data_48x4), this)) { } diff --git a/src/devices/cpu/pps41/mm76.h b/src/devices/cpu/pps41/mm76.h index 54db25fc93b..5ec1193ecb9 100644 --- a/src/devices/cpu/pps41/mm76.h +++ b/src/devices/cpu/pps41/mm76.h @@ -44,10 +44,10 @@ class mm76_device : public pps41_base_device { public: - mm76_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm76_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - mm76_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + mm76_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; @@ -136,16 +136,16 @@ protected: class mm76l_device : public mm76_device { public: - mm76l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm76l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mm76e_device : public mm76_device { public: - mm76e_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm76e_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - mm76e_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + mm76e_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_1k(address_map &map); }; @@ -153,7 +153,7 @@ protected: class mm76el_device : public mm76e_device { public: - mm76el_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm76el_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/pps41/mm78.cpp b/src/devices/cpu/pps41/mm78.cpp index 8512c8f3f07..ae23593ee3f 100644 --- a/src/devices/cpu/pps41/mm78.cpp +++ b/src/devices/cpu/pps41/mm78.cpp @@ -19,27 +19,27 @@ DEFINE_DEVICE_TYPE(MM77L, mm77l_device, "mm77l", "Rockwell MM77L B7700") // 1.5K // constructor -mm78_device::mm78_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm78_device::mm78_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm78_device(mconfig, MM78, tag, owner, clock, 11, address_map_constructor(FUNC(mm78_device::program_2k), this), 7, address_map_constructor(FUNC(mm78_device::data_128x4), this)) { } -mm78_device::mm78_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +mm78_device::mm78_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : mm76_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -mm78l_device::mm78l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm78l_device::mm78l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm78_device(mconfig, MM78L, tag, owner, clock, 11, address_map_constructor(FUNC(mm78l_device::program_2k), this), 7, address_map_constructor(FUNC(mm78l_device::data_128x4), this)) { } -mm77_device::mm77_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm77_device::mm77_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm77_device(mconfig, MM77, tag, owner, clock, 11, address_map_constructor(FUNC(mm77_device::program_1_3k), this), 7, address_map_constructor(FUNC(mm77_device::data_96x4), this)) { } -mm77_device::mm77_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +mm77_device::mm77_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : mm78_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -mm77l_device::mm77l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm77l_device::mm77l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm77_device(mconfig, MM77L, tag, owner, clock, 11, address_map_constructor(FUNC(mm77l_device::program_1_5k), this), 7, address_map_constructor(FUNC(mm77l_device::data_96x4), this)) { } diff --git a/src/devices/cpu/pps41/mm78.h b/src/devices/cpu/pps41/mm78.h index d901d87988c..14ef3f2fe3d 100644 --- a/src/devices/cpu/pps41/mm78.h +++ b/src/devices/cpu/pps41/mm78.h @@ -45,10 +45,10 @@ class mm78_device : public mm76_device { public: - mm78_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm78_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - mm78_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + mm78_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; @@ -101,22 +101,22 @@ protected: class mm78l_device : public mm78_device { public: - mm78l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm78l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mm77_device : public mm78_device { public: - mm77_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm77_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - mm77_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + mm77_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); }; class mm77l_device : public mm77_device { public: - mm77l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm77l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/pps41/mm78la.cpp b/src/devices/cpu/pps41/mm78la.cpp index 0e03e77935d..2509df48334 100644 --- a/src/devices/cpu/pps41/mm78la.cpp +++ b/src/devices/cpu/pps41/mm78la.cpp @@ -15,15 +15,15 @@ DEFINE_DEVICE_TYPE(MM77LA, mm77la_device, "mm77la", "Rockwell MM77LA B8000") // // constructor -mm78la_device::mm78la_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm78la_device::mm78la_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm78la_device(mconfig, MM78LA, tag, owner, clock, 11, address_map_constructor(FUNC(mm78la_device::program_2k), this), 7, address_map_constructor(FUNC(mm78la_device::data_128x4), this)) { } -mm78la_device::mm78la_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +mm78la_device::mm78la_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : mm78_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -mm77la_device::mm77la_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mm77la_device::mm77la_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : mm78la_device(mconfig, MM77LA, tag, owner, clock, 11, address_map_constructor(FUNC(mm77la_device::program_1_5k), this), 7, address_map_constructor(FUNC(mm77la_device::data_96x4), this)) { } diff --git a/src/devices/cpu/pps41/mm78la.h b/src/devices/cpu/pps41/mm78la.h index a9c58ab4572..a4f67d321ab 100644 --- a/src/devices/cpu/pps41/mm78la.h +++ b/src/devices/cpu/pps41/mm78la.h @@ -46,10 +46,10 @@ class mm78la_device : public mm78_device { public: - mm78la_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm78la_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - mm78la_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + mm78la_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; @@ -79,7 +79,7 @@ protected: class mm77la_device : public mm78la_device { public: - mm77la_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mm77la_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/pps41/pps41base.cpp b/src/devices/cpu/pps41/pps41base.cpp index 9fa004640b3..ff5c02426c7 100644 --- a/src/devices/cpu/pps41/pps41base.cpp +++ b/src/devices/cpu/pps41/pps41base.cpp @@ -56,7 +56,7 @@ TODO: #include "pps41base.h" -pps41_base_device::pps41_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +pps41_base_device::pps41_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, prgwidth, 0, program), m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data), diff --git a/src/devices/cpu/pps41/pps41base.h b/src/devices/cpu/pps41/pps41base.h index 2d962b5a5d3..dd19e4c633c 100644 --- a/src/devices/cpu/pps41/pps41base.h +++ b/src/devices/cpu/pps41/pps41base.h @@ -56,7 +56,7 @@ public: protected: // construction/destruction - pps41_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + pps41_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/psx/dma.cpp b/src/devices/cpu/psx/dma.cpp index 0a901228944..5b4e12d760b 100644 --- a/src/devices/cpu/psx/dma.cpp +++ b/src/devices/cpu/psx/dma.cpp @@ -29,7 +29,7 @@ static inline void ATTR_PRINTF(3,4) verboselog( device_t& device, int n_level, c DEFINE_DEVICE_TYPE(PSX_DMA, psxdma_device, "psxdma", "Sony PSX DMA") -psxdma_device::psxdma_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +psxdma_device::psxdma_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, PSX_DMA, tag, owner, clock), m_ram(), m_ramsize(0), m_dpcp(0), m_dicr(0), m_irq_handler(*this) { diff --git a/src/devices/cpu/psx/dma.h b/src/devices/cpu/psx/dma.h index 0d81d67da7d..35f1480006c 100644 --- a/src/devices/cpu/psx/dma.h +++ b/src/devices/cpu/psx/dma.h @@ -21,7 +21,7 @@ public: typedef delegate<void (uint32_t *, uint32_t, int32_t)> read_delegate; typedef delegate<void (uint32_t *, uint32_t, int32_t)> write_delegate; - psxdma_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxdma_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); //configuration helpers auto irq() { return m_irq_handler.bind(); } diff --git a/src/devices/cpu/psx/irq.cpp b/src/devices/cpu/psx/irq.cpp index d14e8f7cdc0..7207daa83c7 100644 --- a/src/devices/cpu/psx/irq.cpp +++ b/src/devices/cpu/psx/irq.cpp @@ -32,7 +32,7 @@ static inline void ATTR_PRINTF(3,4) verboselog( device_t& device, int n_level, c DEFINE_DEVICE_TYPE(PSX_IRQ, psxirq_device, "psxirq", "Sony PSX IRQ") -psxirq_device::psxirq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +psxirq_device::psxirq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, PSX_IRQ, tag, owner, clock), n_irqdata(0), n_irqmask(0), m_irq_handler(*this) { diff --git a/src/devices/cpu/psx/irq.h b/src/devices/cpu/psx/irq.h index b4ee28e712a..2708a0584a2 100644 --- a/src/devices/cpu/psx/irq.h +++ b/src/devices/cpu/psx/irq.h @@ -18,7 +18,7 @@ DECLARE_DEVICE_TYPE(PSX_IRQ, psxirq_device) class psxirq_device : public device_t { public: - psxirq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxirq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto irq() { return m_irq_handler.bind(); } diff --git a/src/devices/cpu/psx/mdec.cpp b/src/devices/cpu/psx/mdec.cpp index 8b4421e4062..a2aa588175b 100644 --- a/src/devices/cpu/psx/mdec.cpp +++ b/src/devices/cpu/psx/mdec.cpp @@ -32,7 +32,7 @@ static inline void ATTR_PRINTF(3,4) verboselog( device_t& device, int n_level, c DEFINE_DEVICE_TYPE(PSX_MDEC, psxmdec_device, "psxmdec", "Sony PSX MDEC") -psxmdec_device::psxmdec_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +psxmdec_device::psxmdec_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, PSX_MDEC, tag, owner, clock), n_decoded(0), n_offset(0), n_0_command(0), n_0_address(0), n_0_size(0), n_1_command(0), n_1_status(0) { } diff --git a/src/devices/cpu/psx/mdec.h b/src/devices/cpu/psx/mdec.h index 8d9da890069..a597c3e69c1 100644 --- a/src/devices/cpu/psx/mdec.h +++ b/src/devices/cpu/psx/mdec.h @@ -18,7 +18,7 @@ DECLARE_DEVICE_TYPE(PSX_MDEC, psxmdec_device) class psxmdec_device : public device_t { public: - psxmdec_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxmdec_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void write(offs_t offset, uint32_t data); uint32_t read(offs_t offset); diff --git a/src/devices/cpu/psx/psx.cpp b/src/devices/cpu/psx/psx.cpp index 1e7ed448c2e..cb51a087212 100644 --- a/src/devices/cpu/psx/psx.cpp +++ b/src/devices/cpu/psx/psx.cpp @@ -1784,7 +1784,7 @@ void psxcpu_device::psxcpu_internal_map(address_map &map) // psxcpu_device - constructor //------------------------------------------------- -psxcpu_device::psxcpu_device( const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock ) : +psxcpu_device::psxcpu_device( const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock ) : cpu_device( mconfig, type, tag, owner, clock ), m_program_config( "program", ENDIANNESS_LITTLE, 32, 32, 0, address_map_constructor(FUNC(psxcpu_device::psxcpu_internal_map), this)), m_gpu_read_handler( *this ), @@ -1799,32 +1799,32 @@ psxcpu_device::psxcpu_device( const machine_config &mconfig, device_type type, c m_disable_rom_berr = false; } -cxd8530aq_device::cxd8530aq_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8530aq_device::cxd8530aq_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8530AQ, tag, owner, clock) { } -cxd8530bq_device::cxd8530bq_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8530bq_device::cxd8530bq_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8530BQ, tag, owner, clock) { } -cxd8530cq_device::cxd8530cq_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8530cq_device::cxd8530cq_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8530CQ, tag, owner, clock) { } -cxd8661r_device::cxd8661r_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8661r_device::cxd8661r_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8661R, tag, owner, clock) { } -cxd8606bq_device::cxd8606bq_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8606bq_device::cxd8606bq_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8606BQ, tag, owner, clock) { } -cxd8606cq_device::cxd8606cq_device( const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock ) +cxd8606cq_device::cxd8606cq_device( const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock ) : psxcpu_device( mconfig, CXD8606CQ, tag, owner, clock) { } @@ -3450,17 +3450,17 @@ device_memory_interface::space_config_vector psxcpu_device::memory_space_config( void psxcpu_device::device_add_mconfig(machine_config &config) { - auto &irq(PSX_IRQ(config, "irq", 0)); + auto &irq(PSX_IRQ(config, "irq")); irq.irq().set_inputline(DEVICE_SELF, PSXCPU_IRQ0); - auto &dma(PSX_DMA(config, "dma", 0)); + auto &dma(PSX_DMA(config, "dma")); dma.irq().set("irq", FUNC(psxirq_device::intin3)); - auto &mdec(PSX_MDEC(config, "mdec", 0)); + auto &mdec(PSX_MDEC(config, "mdec")); dma.install_write_handler(0, psxdma_device::write_delegate(&psxmdec_device::dma_write, &mdec)); dma.install_read_handler(1, psxdma_device::write_delegate(&psxmdec_device::dma_read, &mdec)); - auto &rcnt(PSX_RCNT(config, "rcnt", 0)); + auto &rcnt(PSX_RCNT(config, "rcnt")); rcnt.irq0().set("irq", FUNC(psxirq_device::intin4)); rcnt.irq1().set("irq", FUNC(psxirq_device::intin5)); rcnt.irq2().set("irq", FUNC(psxirq_device::intin6)); diff --git a/src/devices/cpu/psx/psx.h b/src/devices/cpu/psx/psx.h index 4ab779d9139..73e756ae332 100644 --- a/src/devices/cpu/psx/psx.h +++ b/src/devices/cpu/psx/psx.h @@ -168,7 +168,7 @@ protected: static constexpr unsigned ICACHE_ENTRIES = 0x400; static constexpr unsigned DCACHE_ENTRIES = 0x100; - psxcpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + psxcpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -325,42 +325,42 @@ class cxd8530aq_device : public psxcpu_device { public: // construction/destruction - cxd8530aq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8530aq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class cxd8530bq_device : public psxcpu_device { public: // construction/destruction - cxd8530bq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8530bq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class cxd8530cq_device : public psxcpu_device { public: // construction/destruction - cxd8530cq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8530cq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class cxd8661r_device : public psxcpu_device { public: // construction/destruction - cxd8661r_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8661r_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class cxd8606bq_device : public psxcpu_device { public: // construction/destruction - cxd8606bq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8606bq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class cxd8606cq_device : public psxcpu_device { public: // construction/destruction - cxd8606cq_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + cxd8606cq_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type definition diff --git a/src/devices/cpu/psx/rcnt.cpp b/src/devices/cpu/psx/rcnt.cpp index 02e55dd5333..cdd71510846 100644 --- a/src/devices/cpu/psx/rcnt.cpp +++ b/src/devices/cpu/psx/rcnt.cpp @@ -29,7 +29,7 @@ static inline void ATTR_PRINTF(3,4) verboselog( device_t& device, int n_level, c DEFINE_DEVICE_TYPE(PSX_RCNT, psxrcnt_device, "psxrcnt", "Sony PSX RCNT") -psxrcnt_device::psxrcnt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +psxrcnt_device::psxrcnt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, PSX_RCNT, tag, owner, clock), m_irq0_handler(*this), m_irq1_handler(*this), diff --git a/src/devices/cpu/psx/rcnt.h b/src/devices/cpu/psx/rcnt.h index 8e0a471f4e1..61e1e852195 100644 --- a/src/devices/cpu/psx/rcnt.h +++ b/src/devices/cpu/psx/rcnt.h @@ -27,7 +27,7 @@ DECLARE_DEVICE_TYPE(PSX_RCNT, psxrcnt_device) class psxrcnt_device : public device_t { public: - psxrcnt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxrcnt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto irq0() { return m_irq0_handler.bind(); } diff --git a/src/devices/cpu/psx/sio.cpp b/src/devices/cpu/psx/sio.cpp index 46b73d6b3a9..fc71b4d8055 100644 --- a/src/devices/cpu/psx/sio.cpp +++ b/src/devices/cpu/psx/sio.cpp @@ -30,17 +30,17 @@ static inline void ATTR_PRINTF(3,4) verboselog( device_t& device, int n_level, c DEFINE_DEVICE_TYPE(PSX_SIO0, psxsio0_device, "psxsio0", "Sony PSX SIO-0") DEFINE_DEVICE_TYPE(PSX_SIO1, psxsio1_device, "psxsio1", "Sony PSX SIO-1") -psxsio0_device::psxsio0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +psxsio0_device::psxsio0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : psxsio_device(mconfig, PSX_SIO0, tag, owner, clock) { } -psxsio1_device::psxsio1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +psxsio1_device::psxsio1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : psxsio_device(mconfig, PSX_SIO1, tag, owner, clock) { } -psxsio_device::psxsio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +psxsio_device::psxsio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock), m_status(SIO_STATUS_TX_EMPTY | SIO_STATUS_TX_RDY), m_mode(0), m_control(0), m_baud(0), m_rxd(1), m_tx_data(0), m_rx_data(0), m_tx_shift(0), m_rx_shift(0), m_tx_bits(0), m_rx_bits(0), m_timer(nullptr), diff --git a/src/devices/cpu/psx/sio.h b/src/devices/cpu/psx/sio.h index 482a8081d6a..afe6a3dceec 100644 --- a/src/devices/cpu/psx/sio.h +++ b/src/devices/cpu/psx/sio.h @@ -50,7 +50,7 @@ public: DECLARE_WRITE_LINE_MEMBER(write_dsr); protected: - psxsio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + psxsio_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -86,13 +86,13 @@ private: class psxsio0_device : public psxsio_device { public: - psxsio0_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxsio0_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class psxsio1_device : public psxsio_device { public: - psxsio1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + psxsio1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; #endif // MAME_CPU_PSX_SIO_H diff --git a/src/devices/cpu/rii/riscii.cpp b/src/devices/cpu/rii/riscii.cpp index f7c642a2f0a..7a28cde5437 100644 --- a/src/devices/cpu/rii/riscii.cpp +++ b/src/devices/cpu/rii/riscii.cpp @@ -61,7 +61,7 @@ std::unique_ptr<util::disasm_interface> epg3231_device::create_disassembler() return std::make_unique<epg3231_disassembler>(); } -riscii_series_device::riscii_series_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, unsigned addrbits, unsigned pcbits, unsigned bankbits, u8 maxbank, u8 post_id_mask, address_map_constructor regs) +riscii_series_device::riscii_series_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, unsigned addrbits, unsigned pcbits, unsigned bankbits, u8 maxbank, u8 post_id_mask, address_map_constructor regs) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, addrbits, -1) , m_regs_config("register", ENDIANNESS_LITTLE, 8, 8 + bankbits, 0, regs) @@ -175,7 +175,7 @@ void epg3231_device::regs_map(address_map &map) map(0x0050, 0x007f).ram(); } -epg3231_device::epg3231_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +epg3231_device::epg3231_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : riscii_series_device(mconfig, EPG3231, tag, owner, clock, 22, 18, 5, 0x1f, 0xbb, address_map_constructor(FUNC(epg3231_device::regs_map), this)) { diff --git a/src/devices/cpu/rii/riscii.h b/src/devices/cpu/rii/riscii.h index 41b54d93a9e..2fe311bc6c9 100644 --- a/src/devices/cpu/rii/riscii.h +++ b/src/devices/cpu/rii/riscii.h @@ -92,7 +92,7 @@ public: auto out_portk_cb() { return m_port_out_cb[9].bind(); } protected: - riscii_series_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, unsigned addrbits, unsigned pcbits, unsigned bankbits, u8 maxbank, u8 post_id_mask, address_map_constructor regs); + riscii_series_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, unsigned addrbits, unsigned pcbits, unsigned bankbits, u8 maxbank, u8 post_id_mask, address_map_constructor regs); // device-level overrides virtual void device_resolve_objects() override; @@ -387,7 +387,7 @@ class epg3231_device : public riscii_series_device { public: // construction/destruction - epg3231_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + epg3231_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/romp/romp.cpp b/src/devices/cpu/romp/romp.cpp index bd652f7adc2..f4918f9da4b 100644 --- a/src/devices/cpu/romp/romp.cpp +++ b/src/devices/cpu/romp/romp.cpp @@ -32,7 +32,7 @@ DEFINE_DEVICE_TYPE(ROMP, romp_device, "romp", "IBM ROMP") ALLOW_SAVE_TYPE(romp_device::branch_state); -romp_device::romp_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock) +romp_device::romp_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ROMP, tag, owner, clock) , m_mem_config("memory", ENDIANNESS_BIG, 32, 32) , m_mmu(*this, finder_base::DUMMY_TAG) diff --git a/src/devices/cpu/romp/romp.h b/src/devices/cpu/romp/romp.h index 27a710f1d84..3846ff3534f 100644 --- a/src/devices/cpu/romp/romp.h +++ b/src/devices/cpu/romp/romp.h @@ -11,7 +11,7 @@ class romp_device : public cpu_device { public: - romp_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock); + romp_device(machine_config const &mconfig, char const *tag, device_t *owner, const XTAL &clock); template <typename T> void set_mmu(T &&tag) { m_mmu.set_tag(std::forward<T>(tag)); } template <typename T> void set_iou(T &&tag) { m_iou.set_tag(std::forward<T>(tag)); } diff --git a/src/devices/cpu/rsp/rsp.cpp b/src/devices/cpu/rsp/rsp.cpp index 6e280b7003c..d222053f74b 100644 --- a/src/devices/cpu/rsp/rsp.cpp +++ b/src/devices/cpu/rsp/rsp.cpp @@ -109,7 +109,7 @@ static const int vector_elements_2[16][8] = #define CACHE_SIZE (32 * 1024 * 1024) -rsp_device::rsp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +rsp_device::rsp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, RSP, tag, owner, clock) , m_imem_config("imem", ENDIANNESS_BIG, 32, 12) , m_dmem_config("dmem", ENDIANNESS_BIG, 32, 12) diff --git a/src/devices/cpu/rsp/rsp.h b/src/devices/cpu/rsp/rsp.h index b33012bddda..000e6247445 100644 --- a/src/devices/cpu/rsp/rsp.h +++ b/src/devices/cpu/rsp/rsp.h @@ -84,7 +84,7 @@ class rsp_device : public cpu_device public: // construction/destruction - rsp_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + rsp_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); virtual ~rsp_device() override; void resolve_cb(); diff --git a/src/devices/cpu/rw5000/a5000.cpp b/src/devices/cpu/rw5000/a5000.cpp index bb39455cc18..369c7a3d1eb 100644 --- a/src/devices/cpu/rw5000/a5000.cpp +++ b/src/devices/cpu/rw5000/a5000.cpp @@ -16,11 +16,11 @@ DEFINE_DEVICE_TYPE(A5000, a5000_cpu_device, "a5000", "Rockwell A5000") // constructor -a5000_cpu_device::a5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +a5000_cpu_device::a5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : b5000_cpu_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -a5000_cpu_device::a5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +a5000_cpu_device::a5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : a5000_cpu_device(mconfig, A5000, tag, owner, clock, 9, address_map_constructor(FUNC(a5000_cpu_device::program_448x8), this), 6, address_map_constructor(FUNC(a5000_cpu_device::data_45x4), this)) { } diff --git a/src/devices/cpu/rw5000/a5000.h b/src/devices/cpu/rw5000/a5000.h index 704c1e7e8e0..6926fe24224 100644 --- a/src/devices/cpu/rw5000/a5000.h +++ b/src/devices/cpu/rw5000/a5000.h @@ -17,10 +17,10 @@ class a5000_cpu_device : public b5000_cpu_device { public: - a5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + a5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - a5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + a5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/rw5000/a5500.cpp b/src/devices/cpu/rw5000/a5500.cpp index 2d8cee136f1..beef8e4433b 100644 --- a/src/devices/cpu/rw5000/a5500.cpp +++ b/src/devices/cpu/rw5000/a5500.cpp @@ -16,11 +16,11 @@ DEFINE_DEVICE_TYPE(A5500, a5500_cpu_device, "a5500", "Rockwell A5500") // constructor -a5500_cpu_device::a5500_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +a5500_cpu_device::a5500_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : a5000_cpu_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -a5500_cpu_device::a5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +a5500_cpu_device::a5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : a5500_cpu_device(mconfig, A5500, tag, owner, clock, 10, address_map_constructor(FUNC(a5500_cpu_device::program_768x8), this), 6, address_map_constructor(FUNC(a5500_cpu_device::data_48x4), this)) { } diff --git a/src/devices/cpu/rw5000/a5500.h b/src/devices/cpu/rw5000/a5500.h index 138c38df630..d2dddabef19 100644 --- a/src/devices/cpu/rw5000/a5500.h +++ b/src/devices/cpu/rw5000/a5500.h @@ -17,10 +17,10 @@ class a5500_cpu_device : public a5000_cpu_device { public: - a5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + a5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - a5500_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + a5500_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/rw5000/a5900.cpp b/src/devices/cpu/rw5000/a5900.cpp index e294469f35b..12c9794fc69 100644 --- a/src/devices/cpu/rw5000/a5900.cpp +++ b/src/devices/cpu/rw5000/a5900.cpp @@ -17,7 +17,7 @@ DEFINE_DEVICE_TYPE(A5900, a5900_cpu_device, "a5900", "Rockwell A5900") // constructor -a5900_cpu_device::a5900_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +a5900_cpu_device::a5900_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : a5000_cpu_device(mconfig, A5900, tag, owner, clock, 9, address_map_constructor(FUNC(a5900_cpu_device::program_512x8), this), 6, address_map_constructor(FUNC(a5900_cpu_device::data_45x4), this)) { } diff --git a/src/devices/cpu/rw5000/a5900.h b/src/devices/cpu/rw5000/a5900.h index b6b59508578..1976b01d0cf 100644 --- a/src/devices/cpu/rw5000/a5900.h +++ b/src/devices/cpu/rw5000/a5900.h @@ -17,7 +17,7 @@ class a5900_cpu_device : public a5000_cpu_device { public: - a5900_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + a5900_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void program_512x8(address_map &map); diff --git a/src/devices/cpu/rw5000/b5000.cpp b/src/devices/cpu/rw5000/b5000.cpp index 685fb1b5190..afc49a9f4be 100644 --- a/src/devices/cpu/rw5000/b5000.cpp +++ b/src/devices/cpu/rw5000/b5000.cpp @@ -23,11 +23,11 @@ DEFINE_DEVICE_TYPE(B5000, b5000_cpu_device, "b5000", "Rockwell B5000") // constructor -b5000_cpu_device::b5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +b5000_cpu_device::b5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : rw5000_base_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -b5000_cpu_device::b5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +b5000_cpu_device::b5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : b5000_cpu_device(mconfig, B5000, tag, owner, clock, 9, address_map_constructor(FUNC(b5000_cpu_device::program_448x8), this), 6, address_map_constructor(FUNC(b5000_cpu_device::data_45x4), this)) { } diff --git a/src/devices/cpu/rw5000/b5000.h b/src/devices/cpu/rw5000/b5000.h index 828ef1d9bd7..ee0e120f272 100644 --- a/src/devices/cpu/rw5000/b5000.h +++ b/src/devices/cpu/rw5000/b5000.h @@ -44,10 +44,10 @@ class b5000_cpu_device : public rw5000_base_device { public: - b5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + b5000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - b5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + b5000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/rw5000/b5500.cpp b/src/devices/cpu/rw5000/b5500.cpp index df3fac30507..6b0fd83b470 100644 --- a/src/devices/cpu/rw5000/b5500.cpp +++ b/src/devices/cpu/rw5000/b5500.cpp @@ -16,7 +16,7 @@ DEFINE_DEVICE_TYPE(B5500, b5500_cpu_device, "b5500", "Rockwell B5500") // constructor -b5500_cpu_device::b5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +b5500_cpu_device::b5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : a5500_cpu_device(mconfig, B5500, tag, owner, clock, 10, address_map_constructor(FUNC(b5500_cpu_device::program_768x8), this), 6, address_map_constructor(FUNC(b5500_cpu_device::data_48x4), this)) { } diff --git a/src/devices/cpu/rw5000/b5500.h b/src/devices/cpu/rw5000/b5500.h index 596cc178485..6d69164ccef 100644 --- a/src/devices/cpu/rw5000/b5500.h +++ b/src/devices/cpu/rw5000/b5500.h @@ -17,7 +17,7 @@ class b5500_cpu_device : public a5500_cpu_device { public: - b5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + b5500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/rw5000/b6000.cpp b/src/devices/cpu/rw5000/b6000.cpp index 3b18d4793b0..253640bb83b 100644 --- a/src/devices/cpu/rw5000/b6000.cpp +++ b/src/devices/cpu/rw5000/b6000.cpp @@ -23,11 +23,11 @@ DEFINE_DEVICE_TYPE(B6000, b6000_cpu_device, "b6000", "Rockwell B6000") // constructor -b6000_cpu_device::b6000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +b6000_cpu_device::b6000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : b5000_cpu_device(mconfig, type, tag, owner, clock, prgwidth, program, datawidth, data) { } -b6000_cpu_device::b6000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +b6000_cpu_device::b6000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : b6000_cpu_device(mconfig, B6000, tag, owner, clock, 9, address_map_constructor(FUNC(b6000_cpu_device::program_512x8), this), 6, address_map_constructor(FUNC(b6000_cpu_device::data_45x4), this)) { } diff --git a/src/devices/cpu/rw5000/b6000.h b/src/devices/cpu/rw5000/b6000.h index e415c353ee5..143cc08d7de 100644 --- a/src/devices/cpu/rw5000/b6000.h +++ b/src/devices/cpu/rw5000/b6000.h @@ -44,10 +44,10 @@ class b6000_cpu_device : public b5000_cpu_device { public: - b6000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + b6000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - b6000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + b6000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/rw5000/b6100.cpp b/src/devices/cpu/rw5000/b6100.cpp index cb5b9bdf23a..c0f187015ef 100644 --- a/src/devices/cpu/rw5000/b6100.cpp +++ b/src/devices/cpu/rw5000/b6100.cpp @@ -16,7 +16,7 @@ DEFINE_DEVICE_TYPE(B6100, b6100_cpu_device, "b6100", "Rockwell B6100") // constructor -b6100_cpu_device::b6100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +b6100_cpu_device::b6100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : b6000_cpu_device(mconfig, B6100, tag, owner, clock, 10, address_map_constructor(FUNC(b6100_cpu_device::program_896x8), this), 6, address_map_constructor(FUNC(b6100_cpu_device::data_48x4), this)) { } diff --git a/src/devices/cpu/rw5000/b6100.h b/src/devices/cpu/rw5000/b6100.h index bd6a3db9e1b..aa203d27079 100644 --- a/src/devices/cpu/rw5000/b6100.h +++ b/src/devices/cpu/rw5000/b6100.h @@ -44,7 +44,7 @@ class b6100_cpu_device : public b6000_cpu_device { public: - b6100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + b6100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/rw5000/rw5000base.cpp b/src/devices/cpu/rw5000/rw5000base.cpp index 1d0fc237dc8..90f54f7a5d3 100644 --- a/src/devices/cpu/rw5000/rw5000base.cpp +++ b/src/devices/cpu/rw5000/rw5000base.cpp @@ -24,7 +24,7 @@ It is similar, but too many differences to emulate in this device, probably. #include "rw5000base.h" -rw5000_base_device::rw5000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +rw5000_base_device::rw5000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, prgwidth, 0, program), m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data), diff --git a/src/devices/cpu/rw5000/rw5000base.h b/src/devices/cpu/rw5000/rw5000base.h index f6dc6146af8..850ba219963 100644 --- a/src/devices/cpu/rw5000/rw5000base.h +++ b/src/devices/cpu/rw5000/rw5000base.h @@ -38,7 +38,7 @@ public: protected: // construction/destruction - rw5000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + rw5000_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/rx01/rx01.cpp b/src/devices/cpu/rx01/rx01.cpp index 07ac688e1d7..6d02b2c4140 100644 --- a/src/devices/cpu/rx01/rx01.cpp +++ b/src/devices/cpu/rx01/rx01.cpp @@ -35,7 +35,7 @@ // device type definition DEFINE_DEVICE_TYPE(RX01_CPU, rx01_cpu_device, "rx01_cpu", "DEC RX01 CPU") -rx01_cpu_device::rx01_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +rx01_cpu_device::rx01_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, RX01_CPU, tag, owner, clock) , m_inst_config("program", ENDIANNESS_LITTLE, 8, 12, 0) , m_data_config("sectordata", ENDIANNESS_LITTLE, 8, 10, 0) // actually 1 bit wide diff --git a/src/devices/cpu/rx01/rx01.h b/src/devices/cpu/rx01/rx01.h index b8806c354f3..f543279859b 100644 --- a/src/devices/cpu/rx01/rx01.h +++ b/src/devices/cpu/rx01/rx01.h @@ -38,7 +38,7 @@ public: }; // device type constructor - rx01_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + rx01_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto error_callback() { return m_interface_callback[0].bind(); } diff --git a/src/devices/cpu/s2650/s2650.cpp b/src/devices/cpu/s2650/s2650.cpp index 4b668f569a7..f503e443f29 100644 --- a/src/devices/cpu/s2650/s2650.cpp +++ b/src/devices/cpu/s2650/s2650.cpp @@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(S2650, s2650_device, "s2650", "Signetics 2650") -s2650_device::s2650_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +s2650_device::s2650_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, S2650, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 15) , m_io_config("io", ENDIANNESS_BIG, 8, 8) diff --git a/src/devices/cpu/s2650/s2650.h b/src/devices/cpu/s2650/s2650.h index 008ea0bb31f..efd2515eb6d 100644 --- a/src/devices/cpu/s2650/s2650.h +++ b/src/devices/cpu/s2650/s2650.h @@ -29,7 +29,7 @@ class s2650_device : public cpu_device, public s2650_disassembler::config { public: // construction/destruction - s2650_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + s2650_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto sense_handler() { return m_sense_handler.bind(); } diff --git a/src/devices/cpu/saturn/saturn.cpp b/src/devices/cpu/saturn/saturn.cpp index fcbafdb5a7f..27891b1490b 100644 --- a/src/devices/cpu/saturn/saturn.cpp +++ b/src/devices/cpu/saturn/saturn.cpp @@ -40,7 +40,7 @@ DEFINE_DEVICE_TYPE(SATURN, saturn_device, "saturn_cpu", "Hewlett-Packard Saturn") -saturn_device::saturn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +saturn_device::saturn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SATURN, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0) , m_out_func(*this) diff --git a/src/devices/cpu/saturn/saturn.h b/src/devices/cpu/saturn/saturn.h index 5111de6d7ed..58eaa628c74 100644 --- a/src/devices/cpu/saturn/saturn.h +++ b/src/devices/cpu/saturn/saturn.h @@ -66,7 +66,7 @@ class saturn_device : public cpu_device, public saturn_disassembler::config { public: // construction/destruction - saturn_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + saturn_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto out_func() { return m_out_func.bind(); } diff --git a/src/devices/cpu/sc61860/sc61860.cpp b/src/devices/cpu/sc61860/sc61860.cpp index 9719ebc7069..24bc81b1ba3 100644 --- a/src/devices/cpu/sc61860/sc61860.cpp +++ b/src/devices/cpu/sc61860/sc61860.cpp @@ -47,7 +47,7 @@ DEFINE_DEVICE_TYPE(SC61860, sc61860_device, "sc61860", "Sharp SC61860") -sc61860_device::sc61860_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sc61860_device::sc61860_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SC61860, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0) , m_reset(*this) diff --git a/src/devices/cpu/sc61860/sc61860.h b/src/devices/cpu/sc61860/sc61860.h index df019b6b845..f4893f0212a 100644 --- a/src/devices/cpu/sc61860/sc61860.h +++ b/src/devices/cpu/sc61860/sc61860.h @@ -49,7 +49,7 @@ class sc61860_device : public cpu_device { public: // construction/destruction - sc61860_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sc61860_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto reset_cb() { return m_reset.bind(); } diff --git a/src/devices/cpu/scmp/scmp.cpp b/src/devices/cpu/scmp/scmp.cpp index 5eb4bba0be9..8eee52cc73f 100644 --- a/src/devices/cpu/scmp/scmp.cpp +++ b/src/devices/cpu/scmp/scmp.cpp @@ -20,13 +20,13 @@ DEFINE_DEVICE_TYPE(SCMP, scmp_device, "ins8050", "National Semiconductor I DEFINE_DEVICE_TYPE(INS8060, ins8060_device, "ins8060", "National Semiconductor INS 8060 SC/MP II") -scmp_device::scmp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +scmp_device::scmp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : scmp_device(mconfig, SCMP, tag, owner, clock) { } -scmp_device::scmp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +scmp_device::scmp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0) , m_AC(0), m_ER(0), m_SR(0), m_icount(0) @@ -47,7 +47,7 @@ device_memory_interface::space_config_vector scmp_device::memory_space_config() } -ins8060_device::ins8060_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ins8060_device::ins8060_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : scmp_device(mconfig, INS8060, tag, owner, clock) { } diff --git a/src/devices/cpu/scmp/scmp.h b/src/devices/cpu/scmp/scmp.h index 7145973bdb1..0dace0a9623 100644 --- a/src/devices/cpu/scmp/scmp.h +++ b/src/devices/cpu/scmp/scmp.h @@ -10,7 +10,7 @@ class scmp_device : public cpu_device { public: // construction/destruction - scmp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + scmp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto flag_out() { return m_flag_out_func.bind(); } @@ -26,7 +26,7 @@ protected: SCMP_PC, SCMP_P1, SCMP_P2, SCMP_P3, SCMP_AC, SCMP_ER, SCMP_SR }; - scmp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + scmp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -88,7 +88,7 @@ class ins8060_device : public scmp_device { public: // construction/destruction - ins8060_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ins8060_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual uint64_t execute_clocks_to_cycles(uint64_t clocks) const noexcept override { return (clocks + 2 - 1) / 2; } diff --git a/src/devices/cpu/score/score.cpp b/src/devices/cpu/score/score.cpp index ffa95aee8c7..df5346cd287 100644 --- a/src/devices/cpu/score/score.cpp +++ b/src/devices/cpu/score/score.cpp @@ -58,7 +58,7 @@ const score7_cpu_device::op_handler score7_cpu_device::s_opcode16_table[8] = // score7_cpu_device - constructor //------------------------------------------------- -score7_cpu_device::score7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +score7_cpu_device::score7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SCORE7, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) , m_pc(0) diff --git a/src/devices/cpu/score/score.h b/src/devices/cpu/score/score.h index b55be226043..4baa6830131 100644 --- a/src/devices/cpu/score/score.h +++ b/src/devices/cpu/score/score.h @@ -33,7 +33,7 @@ class score7_cpu_device : public cpu_device { public: // construction/destruction - score7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + score7_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/scudsp/scudsp.cpp b/src/devices/cpu/scudsp/scudsp.cpp index 4f4d697a900..858a1c736d9 100644 --- a/src/devices/cpu/scudsp/scudsp.cpp +++ b/src/devices/cpu/scudsp/scudsp.cpp @@ -1020,7 +1020,7 @@ void scudsp_cpu_device::data_map(address_map &map) map(0x00, 0xff).ram(); } -scudsp_cpu_device::scudsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +scudsp_cpu_device::scudsp_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SCUDSP, tag, owner, clock) , m_out_irq_cb(*this) , m_in_dma_cb(*this) diff --git a/src/devices/cpu/se3208/se3208.cpp b/src/devices/cpu/se3208/se3208.cpp index f67ed4e0948..ee345e3dabc 100644 --- a/src/devices/cpu/se3208/se3208.cpp +++ b/src/devices/cpu/se3208/se3208.cpp @@ -46,7 +46,7 @@ DEFINE_DEVICE_TYPE(SE3208, se3208_device, "se3208", "ADChips SE3208") -se3208_device::se3208_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +se3208_device::se3208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SE3208, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) , m_machinex_cb(*this) diff --git a/src/devices/cpu/se3208/se3208.h b/src/devices/cpu/se3208/se3208.h index d006a071bb4..4dbb2a7581a 100644 --- a/src/devices/cpu/se3208/se3208.h +++ b/src/devices/cpu/se3208/se3208.h @@ -18,7 +18,7 @@ class se3208_device : public cpu_device { public: // construction/destruction - se3208_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + se3208_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto machinex_cb() { return m_machinex_cb.bind(); } diff --git a/src/devices/cpu/sh/sh.h b/src/devices/cpu/sh/sh.h index d87c1e9742d..1533bca32e5 100644 --- a/src/devices/cpu/sh/sh.h +++ b/src/devices/cpu/sh/sh.h @@ -101,7 +101,7 @@ class sh_common_execution : public cpu_device { public: - sh_common_execution(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness, address_map_constructor internal) + sh_common_execution(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness, address_map_constructor internal) : cpu_device(mconfig, type, tag, owner, clock) , m_sh2_state(nullptr) , m_cache(CACHE_SIZE + sizeof(internal_sh2_state)) diff --git a/src/devices/cpu/sh/sh2.cpp b/src/devices/cpu/sh/sh2.cpp index c117afadbe0..fce9a07bd8d 100644 --- a/src/devices/cpu/sh/sh2.cpp +++ b/src/devices/cpu/sh/sh2.cpp @@ -232,7 +232,7 @@ void sh1_device::sh7032_map(address_map &map) map(0x05fffe00, 0x05ffffff).rw(FUNC(sh1_device::sh7032_r), FUNC(sh1_device::sh7032_w)); // SH-7032H internal i/o } -sh2_device::sh2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh2_device::sh2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh2_device(mconfig, SH2, tag, owner, clock, CPU_TYPE_SH2, address_map_constructor(FUNC(sh2_device::sh7604_map), this), 32) { } @@ -249,7 +249,7 @@ void sh2_device::device_stop() -sh2_device::sh2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type, address_map_constructor internal_map, int addrlines) +sh2_device::sh2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cpu_type, address_map_constructor internal_map, int addrlines) : sh_common_execution(mconfig, type, tag, owner, clock, ENDIANNESS_BIG, internal_map) , m_program_config("program", ENDIANNESS_BIG, 32, addrlines, 0, internal_map) , m_decrypted_program_config("decrypted_opcodes", ENDIANNESS_BIG, 32, addrlines, 0) @@ -265,13 +265,13 @@ sh2_device::sh2_device(const machine_config &mconfig, device_type type, const ch m_isdrc = allow_drc(); } -sh2a_device::sh2a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh2a_device::sh2a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh2_device(mconfig, SH2A, tag, owner, clock, CPU_TYPE_SH2, address_map_constructor(FUNC(sh2a_device::sh7021_map), this), 28) { std::fill(std::begin(m_sh7021_regs), std::end(m_sh7021_regs), 0); } -sh1_device::sh1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh1_device::sh1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh2_device(mconfig, SH1, tag, owner, clock, CPU_TYPE_SH1, address_map_constructor(FUNC(sh1_device::sh7032_map), this), 28) { std::fill(std::begin(m_sh7032_regs), std::end(m_sh7032_regs), 0); diff --git a/src/devices/cpu/sh/sh2.h b/src/devices/cpu/sh/sh2.h index c0ba7340d8b..0ce8c65bcbf 100644 --- a/src/devices/cpu/sh/sh2.h +++ b/src/devices/cpu/sh/sh2.h @@ -55,7 +55,7 @@ public: typedef device_delegate<void (uint32_t data)> ftcsr_read_delegate; // construction/destruction - sh2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual ~sh2_device() override; void set_is_slave(int slave) { m_is_slave = slave; } @@ -207,7 +207,7 @@ public: void sh7604_map(address_map &map); protected: - sh2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int cpu_type,address_map_constructor internal_map, int addrlines); + sh2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int cpu_type,address_map_constructor internal_map, int addrlines); // device-level overrides virtual void device_start() override; @@ -366,7 +366,7 @@ class sh2a_device : public sh2_device { public: // construction/destruction - sh2a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh2a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint32_t dma_sar0_r(); void dma_sar0_w(offs_t offset, uint32_t data, uint32_t mem_mask = ~0); @@ -400,7 +400,7 @@ class sh1_device : public sh2_device { public: // construction/destruction - sh1_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + sh1_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); uint16_t sh7032_r(offs_t offset); void sh7032_w(offs_t offset, uint16_t data, uint16_t mem_mask = ~0); diff --git a/src/devices/cpu/sh/sh4.cpp b/src/devices/cpu/sh/sh4.cpp index 7d64546d741..662f055d223 100644 --- a/src/devices/cpu/sh/sh4.cpp +++ b/src/devices/cpu/sh/sh4.cpp @@ -71,7 +71,7 @@ void sh3_base_device::sh3_internal_map(address_map &map) } -sh34_base_device::sh34_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness, address_map_constructor internal) +sh34_base_device::sh34_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness, address_map_constructor internal) : sh_common_execution(mconfig, type, tag, owner, clock, endianness, internal) , m_program_config("program", endianness, 64, 32, 0, internal) , m_io_config("io", endianness, 64, 8) @@ -90,7 +90,7 @@ device_memory_interface::space_config_vector sh34_base_device::memory_space_conf } -sh3_base_device::sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness) +sh3_base_device::sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness) : sh34_base_device(mconfig, type, tag, owner, clock, endianness, address_map_constructor(FUNC(sh3_base_device::sh3_internal_map), this)) { m_cpu_type = CPU_TYPE_SH3; @@ -98,7 +98,7 @@ sh3_base_device::sh3_base_device(const machine_config &mconfig, device_type type } -sh4_base_device::sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness) +sh4_base_device::sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness) : sh34_base_device(mconfig, type, tag, owner, clock, endianness, address_map_constructor(FUNC(sh4_base_device::sh4_internal_map), this)) { m_cpu_type = CPU_TYPE_SH4; @@ -106,25 +106,25 @@ sh4_base_device::sh4_base_device(const machine_config &mconfig, device_type type } -sh3_device::sh3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh3_device::sh3_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh3_base_device(mconfig, SH3LE, tag, owner, clock, ENDIANNESS_LITTLE) { } -sh3be_device::sh3be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh3be_device::sh3be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh3_base_device(mconfig, SH3BE, tag, owner, clock, ENDIANNESS_BIG) { } -sh4_device::sh4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh4_device::sh4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh4_base_device(mconfig, SH4LE, tag, owner, clock, ENDIANNESS_LITTLE) { } -sh4be_device::sh4be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh4be_device::sh4be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sh4_base_device(mconfig, SH4BE, tag, owner, clock, ENDIANNESS_BIG) { } diff --git a/src/devices/cpu/sh/sh4.h b/src/devices/cpu/sh/sh4.h index b2c97c9dc16..40b4bdd0dac 100644 --- a/src/devices/cpu/sh/sh4.h +++ b/src/devices/cpu/sh/sh4.h @@ -254,7 +254,7 @@ public: protected: // construction/destruction - sh34_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness, address_map_constructor internal); + sh34_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness, address_map_constructor internal); // device-level overrides virtual void device_start() override; @@ -690,7 +690,7 @@ public: void sh3_internal_map(address_map &map); protected: // construction/destruction - sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness); + sh3_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness); virtual void device_reset() override; }; @@ -718,7 +718,7 @@ public: void sh4_internal_map(address_map &map); protected: // construction/destruction - sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, endianness_t endianness); + sh4_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, endianness_t endianness); virtual void device_start() override; virtual void device_reset() override; @@ -729,7 +729,7 @@ class sh3_device : public sh3_base_device { friend class sh4_frontend; public: - sh3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh3_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); std::unique_ptr<sh4_frontend> m_drcfe; /* pointer to the DRC front-end state */ virtual const opcode_desc* get_desclist(offs_t pc) override; virtual void init_drc_frontend() override; @@ -741,7 +741,7 @@ class sh3be_device : public sh3_base_device friend class sh4be_frontend; public: - sh3be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh3be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); std::unique_ptr<sh4be_frontend> m_drcfe; /* pointer to the DRC front-end state */ virtual const opcode_desc* get_desclist(offs_t pc) override; virtual void init_drc_frontend() override; @@ -756,7 +756,7 @@ class sh4_device : public sh4_base_device friend class sh4_frontend; public: - sh4_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh4_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); std::unique_ptr<sh4_frontend> m_drcfe; /* pointer to the DRC front-end state */ virtual const opcode_desc* get_desclist(offs_t pc) override; virtual void init_drc_frontend() override; @@ -769,7 +769,7 @@ class sh4be_device : public sh4_base_device friend class sh4be_frontend; public: - sh4be_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh4be_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); std::unique_ptr<sh4be_frontend> m_drcfe; /* pointer to the DRC front-end state */ virtual const opcode_desc* get_desclist(offs_t pc) override; virtual void init_drc_frontend() override; diff --git a/src/devices/cpu/sh/sh7604_bus.cpp b/src/devices/cpu/sh/sh7604_bus.cpp index a4b61bddae6..1ad437546b9 100644 --- a/src/devices/cpu/sh/sh7604_bus.cpp +++ b/src/devices/cpu/sh/sh7604_bus.cpp @@ -109,7 +109,7 @@ void sh7604_bus_device::bus_regs(address_map &map) // sh7604_bus_device - constructor //------------------------------------------------- -sh7604_bus_device::sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh7604_bus_device::sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, SH7604_BUS, tag, owner, clock) { } diff --git a/src/devices/cpu/sh/sh7604_bus.h b/src/devices/cpu/sh/sh7604_bus.h index 9d2915b6b6b..30298211fb8 100644 --- a/src/devices/cpu/sh/sh7604_bus.h +++ b/src/devices/cpu/sh/sh7604_bus.h @@ -23,7 +23,7 @@ class sh7604_bus_device : public device_t { public: // construction/destruction - sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh7604_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // I/O operations void bus_regs(address_map &map); diff --git a/src/devices/cpu/sh/sh7604_sci.cpp b/src/devices/cpu/sh/sh7604_sci.cpp index 5d49eab5c31..c79b46e73ff 100644 --- a/src/devices/cpu/sh/sh7604_sci.cpp +++ b/src/devices/cpu/sh/sh7604_sci.cpp @@ -113,7 +113,7 @@ void sh7604_sci_device::sci_regs(address_map &map) // sh7604_sci_device - constructor //------------------------------------------------- -sh7604_sci_device::sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh7604_sci_device::sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, SH7604_SCI, tag, owner, clock) { diff --git a/src/devices/cpu/sh/sh7604_sci.h b/src/devices/cpu/sh/sh7604_sci.h index b77630db074..b94f9652d1f 100644 --- a/src/devices/cpu/sh/sh7604_sci.h +++ b/src/devices/cpu/sh/sh7604_sci.h @@ -23,7 +23,7 @@ class sh7604_sci_device : public device_t { public: // construction/destruction - sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh7604_sci_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // I/O operations void sci_regs(address_map &map); diff --git a/src/devices/cpu/sh/sh7604_wdt.cpp b/src/devices/cpu/sh/sh7604_wdt.cpp index 2b5ea9eb499..56d61c7b83b 100644 --- a/src/devices/cpu/sh/sh7604_wdt.cpp +++ b/src/devices/cpu/sh/sh7604_wdt.cpp @@ -39,7 +39,7 @@ void sh7604_wdt_device::wdt_regs(address_map &map) // sh7604_wdt_device - constructor //------------------------------------------------- -sh7604_wdt_device::sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sh7604_wdt_device::sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, SH7604_WDT, tag, owner, clock) { } diff --git a/src/devices/cpu/sh/sh7604_wdt.h b/src/devices/cpu/sh/sh7604_wdt.h index dd39f4be514..12b7896fe44 100644 --- a/src/devices/cpu/sh/sh7604_wdt.h +++ b/src/devices/cpu/sh/sh7604_wdt.h @@ -23,7 +23,7 @@ class sh7604_wdt_device : public device_t { public: // construction/destruction - sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sh7604_wdt_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // I/O operations void wdt_regs(address_map &map); diff --git a/src/devices/cpu/sharc/sharc.cpp b/src/devices/cpu/sharc/sharc.cpp index 7ce22652570..5c04fd3d5e2 100644 --- a/src/devices/cpu/sharc/sharc.cpp +++ b/src/devices/cpu/sharc/sharc.cpp @@ -75,7 +75,7 @@ void adsp21062_device::internal_data(address_map &map) map(0x70000, 0x7ffff).rw(FUNC(adsp21062_device::dmw1_r), FUNC(adsp21062_device::dmw1_w)); } -adsp21062_device::adsp21062_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +adsp21062_device::adsp21062_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ADSP21062, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 64, 24, -3, address_map_constructor(FUNC(adsp21062_device::internal_pgm), this)) , m_data_config("data", ENDIANNESS_LITTLE, 32, 32, -2, address_map_constructor(FUNC(adsp21062_device::internal_data), this)) diff --git a/src/devices/cpu/sharc/sharc.h b/src/devices/cpu/sharc/sharc.h index f7d2d8701cd..55a718d0fc5 100644 --- a/src/devices/cpu/sharc/sharc.h +++ b/src/devices/cpu/sharc/sharc.h @@ -90,7 +90,7 @@ public: // construction/destruction - adsp21062_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); + adsp21062_device(const machine_config &mconfig, const char *_tag, device_t *_owner, const XTAL &_clock); virtual ~adsp21062_device() override; // configuration helpers diff --git a/src/devices/cpu/sm510/sm500.cpp b/src/devices/cpu/sm510/sm500.cpp index bb440388974..13e1c248c5c 100644 --- a/src/devices/cpu/sm510/sm500.cpp +++ b/src/devices/cpu/sm510/sm500.cpp @@ -35,12 +35,12 @@ void sm500_device::data_4x10x4(address_map &map) // device definitions -sm500_device::sm500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +sm500_device::sm500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : sm510_base_device(mconfig, type, tag, owner, clock, stack_levels, prgwidth, program, datawidth, data), m_o_pins(o_pins) { } -sm500_device::sm500_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm500_device::sm500_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm500_device(mconfig, SM500, tag, owner, clock, 1 /* stack levels */, 7 /* o group pins */, 11 /* prg width */, address_map_constructor(FUNC(sm500_device::program_1_2k), this), 6 /* data width */, address_map_constructor(FUNC(sm500_device::data_4x10x4), this)) { } diff --git a/src/devices/cpu/sm510/sm500.h b/src/devices/cpu/sm510/sm500.h index 90be21ca184..44cbc423b2d 100644 --- a/src/devices/cpu/sm510/sm500.h +++ b/src/devices/cpu/sm510/sm500.h @@ -54,10 +54,10 @@ O36 48 | * | 13 K2 class sm500_device : public sm510_base_device { public: - sm500_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm500_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); protected: - sm500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + sm500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_1_2k(address_map &map); void data_4x10x4(address_map &map); diff --git a/src/devices/cpu/sm510/sm510.cpp b/src/devices/cpu/sm510/sm510.cpp index 624057181cb..75ddf45c5e5 100644 --- a/src/devices/cpu/sm510/sm510.cpp +++ b/src/devices/cpu/sm510/sm510.cpp @@ -33,7 +33,7 @@ void sm510_device::data_96_32x4(address_map &map) // device definitions -sm510_device::sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm510_device::sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm510_base_device(mconfig, SM510, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, address_map_constructor(FUNC(sm510_device::program_2_7k), this), 7 /* data width */, address_map_constructor(FUNC(sm510_device::data_96_32x4), this)) { } diff --git a/src/devices/cpu/sm510/sm510.h b/src/devices/cpu/sm510/sm510.h index af1e18d2861..4e234b0ac06 100644 --- a/src/devices/cpu/sm510/sm510.h +++ b/src/devices/cpu/sm510/sm510.h @@ -61,7 +61,7 @@ S8 60 | * | 16 b16 class sm510_device : public sm510_base_device { public: - sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm510_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); protected: void program_2_7k(address_map &map); diff --git a/src/devices/cpu/sm510/sm510base.h b/src/devices/cpu/sm510/sm510base.h index bf061967fc4..b6a164ccddc 100644 --- a/src/devices/cpu/sm510/sm510base.h +++ b/src/devices/cpu/sm510/sm510base.h @@ -37,7 +37,7 @@ class sm510_base_device : public cpu_device { public: // construction/destruction - sm510_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : + sm510_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 8, prgwidth, 0, program), m_data_config("data", ENDIANNESS_LITTLE, 8, datawidth, 0, data), diff --git a/src/devices/cpu/sm510/sm511.cpp b/src/devices/cpu/sm510/sm511.cpp index dc3a3763d6c..dbd9688d200 100644 --- a/src/devices/cpu/sm510/sm511.cpp +++ b/src/devices/cpu/sm510/sm511.cpp @@ -53,15 +53,15 @@ std::unique_ptr<util::disasm_interface> sm511_device::create_disassembler() // device definitions -sm511_device::sm511_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +sm511_device::sm511_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : sm510_base_device(mconfig, type, tag, owner, clock, stack_levels, prgwidth, program, datawidth, data) { } -sm511_device::sm511_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm511_device::sm511_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm511_device(mconfig, SM511, tag, owner, clock, 2 /* stack levels */, 12 /* prg width */, address_map_constructor(FUNC(sm511_device::program_4k), this), 7 /* data width */, address_map_constructor(FUNC(sm511_device::data_96_32x4), this)) { } -sm512_device::sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm512_device::sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm511_device(mconfig, SM512, tag, owner, clock, 2, 12, address_map_constructor(FUNC(sm512_device::program_4k), this), 7, address_map_constructor(FUNC(sm512_device::data_80_48x4), this)) { } diff --git a/src/devices/cpu/sm510/sm511.h b/src/devices/cpu/sm510/sm511.h index 463ede6be04..362c1db9f86 100644 --- a/src/devices/cpu/sm510/sm511.h +++ b/src/devices/cpu/sm510/sm511.h @@ -27,10 +27,10 @@ SM512: can't be bothered to draw one here, it's 80 pins QFP, a lot of LCD segmen class sm511_device : public sm510_base_device { public: - sm511_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm511_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); protected: - sm511_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + sm511_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_4k(address_map &map); void data_96_32x4(address_map &map); @@ -50,7 +50,7 @@ protected: class sm512_device : public sm511_device { public: - sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm512_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); protected: void data_80_48x4(address_map &map); diff --git a/src/devices/cpu/sm510/sm530.cpp b/src/devices/cpu/sm510/sm530.cpp index a17213fa1cb..bb68b73d72b 100644 --- a/src/devices/cpu/sm510/sm530.cpp +++ b/src/devices/cpu/sm510/sm530.cpp @@ -45,12 +45,12 @@ std::unique_ptr<util::disasm_interface> sm530_device::create_disassembler() // device definitions -sm530_device::sm530_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +sm530_device::sm530_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : sm511_device(mconfig, type, tag, owner, clock, stack_levels, prgwidth, program, datawidth, data), m_write_f(*this) { } -sm530_device::sm530_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm530_device::sm530_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm530_device(mconfig, SM530, tag, owner, clock, 1 /* stack levels */, 11 /* prg width */, address_map_constructor(FUNC(sm530_device::program_2k), this), 7 /* data width */, address_map_constructor(FUNC(sm530_device::data_64_24x4), this)) { } diff --git a/src/devices/cpu/sm510/sm530.h b/src/devices/cpu/sm510/sm530.h index 654bcf2963e..7580cfdc8b9 100644 --- a/src/devices/cpu/sm510/sm530.h +++ b/src/devices/cpu/sm510/sm530.h @@ -69,13 +69,13 @@ O26 80 | * class sm530_device : public sm511_device { public: - sm530_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm530_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); // 4-bit F output port auto write_f() { return m_write_f.bind(); } protected: - sm530_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + sm530_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_2k(address_map &map); void data_64_24x4(address_map &map); diff --git a/src/devices/cpu/sm510/sm590.cpp b/src/devices/cpu/sm510/sm590.cpp index 7237dbbfa5d..58b24ac880e 100644 --- a/src/devices/cpu/sm510/sm590.cpp +++ b/src/devices/cpu/sm510/sm590.cpp @@ -50,21 +50,21 @@ void sm590_device::data_56x4(address_map &map) // device definitions -sm590_device::sm590_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +sm590_device::sm590_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : sm510_base_device(mconfig, type, tag, owner, clock, stack_levels, prgwidth, program, datawidth, data), m_write_rx(*this), m_read_rx(*this) { } -sm590_device::sm590_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm590_device::sm590_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm590_device(mconfig, SM590, tag, owner, clock, 4 /* stack levels */, 9 /* prg width */, address_map_constructor(FUNC(sm590_device::program_512x8), this), 5 /* data width */, address_map_constructor(FUNC(sm590_device::data_32x4), this)) { } -sm591_device::sm591_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm591_device::sm591_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm590_device(mconfig, SM591, tag, owner, clock, 4, 10, address_map_constructor(FUNC(sm591_device::program_1kx8), this), 6, address_map_constructor(FUNC(sm591_device::data_56x4), this)) { } -sm595_device::sm595_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm595_device::sm595_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm590_device(mconfig, SM595, tag, owner, clock, 4, 10, address_map_constructor(FUNC(sm595_device::program_768x8), this), 5, address_map_constructor(FUNC(sm595_device::data_32x4), this)) { } diff --git a/src/devices/cpu/sm510/sm590.h b/src/devices/cpu/sm510/sm590.h index 8e866b954f8..2fe61fc35e0 100644 --- a/src/devices/cpu/sm510/sm590.h +++ b/src/devices/cpu/sm510/sm590.h @@ -89,7 +89,7 @@ R3.3/CL2 => |_|6 15|_| <> R1.3 class sm590_device : public sm510_base_device { public: - sm590_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + sm590_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // four 4-bit R I/O ports using sm510_base_device::write_r; @@ -97,7 +97,7 @@ public: template <std::size_t N> auto read_r() { return m_read_rx[N].bind(); } protected: - sm590_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + sm590_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_512x8(address_map &map); void program_768x8(address_map &map); @@ -158,13 +158,13 @@ protected: class sm591_device : public sm590_device { public: - sm591_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + sm591_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class sm595_device : public sm590_device { public: - sm595_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + sm595_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/sm510/sm5a.cpp b/src/devices/cpu/sm510/sm5a.cpp index c2512aeaf71..1076f70014e 100644 --- a/src/devices/cpu/sm510/sm5a.cpp +++ b/src/devices/cpu/sm510/sm5a.cpp @@ -39,19 +39,19 @@ void sm5a_device::data_5x13x4(address_map &map) // device definitions -sm5a_device::sm5a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : +sm5a_device::sm5a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : sm500_device(mconfig, type, tag, owner, clock, stack_levels, o_pins, prgwidth, program, datawidth, data) { } -sm5a_device::sm5a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm5a_device::sm5a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm5a_device(mconfig, SM5A, tag, owner, clock, 1 /* stack levels */, 9 /* o group pins */, 11 /* prg width */, address_map_constructor(FUNC(sm5a_device::program_1_8k), this), 7 /* data width */, address_map_constructor(FUNC(sm5a_device::data_5x13x4), this)) { } -sm5l_device::sm5l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +sm5l_device::sm5l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm5a_device(mconfig, SM5L, tag, owner, clock, 1, 9, 11, address_map_constructor(FUNC(sm5l_device::program_1_8k), this), 7, address_map_constructor(FUNC(sm5l_device::data_5x13x4), this)) { } -kb1013vk12_device::kb1013vk12_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +kb1013vk12_device::kb1013vk12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sm5a_device(mconfig, KB1013VK12, tag, owner, clock, 1, 9, 11, address_map_constructor(FUNC(kb1013vk12_device::program_1_8k), this), 7, address_map_constructor(FUNC(kb1013vk12_device::data_5x13x4), this)) { } diff --git a/src/devices/cpu/sm510/sm5a.h b/src/devices/cpu/sm510/sm5a.h index a44c687dfd9..86e223a5877 100644 --- a/src/devices/cpu/sm510/sm5a.h +++ b/src/devices/cpu/sm510/sm5a.h @@ -60,10 +60,10 @@ O34 60 | * | 16 O48 class sm5a_device : public sm500_device { public: - sm5a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm5a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); protected: - sm5a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + sm5a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int stack_levels, int o_pins, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); void program_1_8k(address_map &map); void data_5x13x4(address_map &map); @@ -80,13 +80,13 @@ protected: class sm5l_device : public sm5a_device { public: - sm5l_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + sm5l_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); }; class kb1013vk12_device : public sm5a_device { public: - kb1013vk12_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 32768); + kb1013vk12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL::u(32768)); }; diff --git a/src/devices/cpu/sm8500/sm8500.cpp b/src/devices/cpu/sm8500/sm8500.cpp index d85b845d3dc..80648040143 100644 --- a/src/devices/cpu/sm8500/sm8500.cpp +++ b/src/devices/cpu/sm8500/sm8500.cpp @@ -32,7 +32,7 @@ static constexpr uint8_t sm8500_b2w[8] = { }; -sm8500_cpu_device::sm8500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sm8500_cpu_device::sm8500_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SM8500, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0) , m_dma_func(*this) diff --git a/src/devices/cpu/sparc/sparc.cpp b/src/devices/cpu/sparc/sparc.cpp index 2c4ef019be1..f72b736d3ef 100644 --- a/src/devices/cpu/sparc/sparc.cpp +++ b/src/devices/cpu/sparc/sparc.cpp @@ -79,7 +79,7 @@ const sparc_disassembler::asi_desc_map::value_type mb86930_asi_desc[] = { // sparc_base_device - constructor //------------------------------------------------- -sparc_base_device::sparc_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +sparc_base_device::sparc_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_mmu(*this, finder_base::DUMMY_TAG) { @@ -100,12 +100,12 @@ sparc_base_device::sparc_base_device(const machine_config &mconfig, device_type // sparcv7_device - constructors //------------------------------------------------- -sparcv7_device::sparcv7_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sparcv7_device::sparcv7_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sparcv7_device(mconfig, SPARCV7, tag, owner, clock) { } -sparcv7_device::sparcv7_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +sparcv7_device::sparcv7_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : sparc_base_device(mconfig, type, tag, owner, clock) { } @@ -115,13 +115,13 @@ sparcv7_device::sparcv7_device(const machine_config &mconfig, device_type type, // sparcv8_device - constructor //------------------------------------------------- -sparcv8_device::sparcv8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +sparcv8_device::sparcv8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sparcv8_device(mconfig, SPARCV8, tag, owner, clock) { } -sparcv8_device::sparcv8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +sparcv8_device::sparcv8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : sparc_base_device(mconfig, type, tag, owner, clock) { } @@ -131,7 +131,7 @@ sparcv8_device::sparcv8_device(const machine_config &mconfig, device_type type, // mb86930_device - constructor //------------------------------------------------- -mb86930_device::mb86930_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +mb86930_device::mb86930_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : sparcv8_device(mconfig, MB86930, tag, owner, clock) , m_cs_r(*this) , m_cs_w(*this) diff --git a/src/devices/cpu/sparc/sparc.h b/src/devices/cpu/sparc/sparc.h index df1e531f3ea..84acfa05583 100644 --- a/src/devices/cpu/sparc/sparc.h +++ b/src/devices/cpu/sparc/sparc.h @@ -21,7 +21,7 @@ class sparc_base_device : public cpu_device, public sparc_mmu_host_interface, protected sparc_disassembler::config { public: - sparc_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + sparc_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); template <typename T> void set_mmu(T &&tag) { m_mmu.set_tag(std::forward<T>(tag)); } @@ -273,10 +273,10 @@ protected: class sparcv7_device : public sparc_base_device { public: - sparcv7_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sparcv7_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - sparcv7_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + sparcv7_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); protected: virtual bool execute_extra_group2(uint32_t op) override; @@ -288,13 +288,13 @@ protected: class sparcv8_device : public sparc_base_device { public: - sparcv8_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + sparcv8_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; protected: - sparcv8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + sparcv8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void device_start() override; virtual void device_reset() override; @@ -320,7 +320,7 @@ private: class mb86930_device : public sparcv8_device { public: - mb86930_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + mb86930_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/spc700/spc700.cpp b/src/devices/cpu/spc700/spc700.cpp index b477ee008a1..7502d7935de 100644 --- a/src/devices/cpu/spc700/spc700.cpp +++ b/src/devices/cpu/spc700/spc700.cpp @@ -202,12 +202,12 @@ Address Function Register R/W When Reset Remarks DEFINE_DEVICE_TYPE(SPC700, spc700_device, "spc700", "Sony SPC700") -spc700_device::spc700_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +spc700_device::spc700_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : spc700_device(mconfig, SPC700, tag, owner, clock) { } -spc700_device::spc700_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) +spc700_device::spc700_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, internal_map) , m_a(0) diff --git a/src/devices/cpu/spc700/spc700.h b/src/devices/cpu/spc700/spc700.h index 33e3190ac10..26e3d61aaf9 100644 --- a/src/devices/cpu/spc700/spc700.h +++ b/src/devices/cpu/spc700/spc700.h @@ -10,11 +10,11 @@ class spc700_device : public cpu_device { public: // construction/destruction - spc700_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + spc700_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // construction/destruction - spc700_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map = address_map_constructor()); + spc700_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map = address_map_constructor()); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/ssem/ssem.cpp b/src/devices/cpu/ssem/ssem.cpp index 77bc62edb14..71c743192ca 100644 --- a/src/devices/cpu/ssem/ssem.cpp +++ b/src/devices/cpu/ssem/ssem.cpp @@ -80,7 +80,7 @@ DEFINE_DEVICE_TYPE(SSEMCPU, ssem_device, "ssem_cpu", "Manchester SSEM") // ssem_device - constructor //------------------------------------------------- -ssem_device::ssem_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ssem_device::ssem_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SSEMCPU, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16) , m_pc(1) diff --git a/src/devices/cpu/ssem/ssem.h b/src/devices/cpu/ssem/ssem.h index 7cfe5d17435..9bc56283ca5 100644 --- a/src/devices/cpu/ssem/ssem.h +++ b/src/devices/cpu/ssem/ssem.h @@ -22,7 +22,7 @@ class ssem_device : public cpu_device { public: // construction/destruction - ssem_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ssem_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/ssp1601/ssp1601.cpp b/src/devices/cpu/ssp1601/ssp1601.cpp index 245cfca4541..4e4555daf69 100644 --- a/src/devices/cpu/ssp1601/ssp1601.cpp +++ b/src/devices/cpu/ssp1601/ssp1601.cpp @@ -192,7 +192,7 @@ DEFINE_DEVICE_TYPE(SSP1601, ssp1601_device, "ssp1601", "Samsung SSP1601") -ssp1601_device::ssp1601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ssp1601_device::ssp1601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, SSP1601, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 16, -1) , m_io_config("io", ENDIANNESS_BIG, 16, 4, 0) diff --git a/src/devices/cpu/ssp1601/ssp1601.h b/src/devices/cpu/ssp1601/ssp1601.h index e912ff9891b..8edee4077ea 100644 --- a/src/devices/cpu/ssp1601/ssp1601.h +++ b/src/devices/cpu/ssp1601/ssp1601.h @@ -22,7 +22,7 @@ class ssp1601_device : public cpu_device { public: // construction/destruction - ssp1601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ssp1601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/st62xx/st62xx.cpp b/src/devices/cpu/st62xx/st62xx.cpp index 81e25d72d01..5be3b3c1741 100644 --- a/src/devices/cpu/st62xx/st62xx.cpp +++ b/src/devices/cpu/st62xx/st62xx.cpp @@ -26,7 +26,7 @@ DEFINE_DEVICE_TYPE(ST6228, st6228_device, "st6228", "STmicro ST6228") -st6228_device::st6228_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +st6228_device::st6228_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, ST6228, tag, owner, clock) , m_pc(0) , m_mode(MODE_NMI) diff --git a/src/devices/cpu/st62xx/st62xx.h b/src/devices/cpu/st62xx/st62xx.h index 8442e1e798b..83fc0f4a8b9 100644 --- a/src/devices/cpu/st62xx/st62xx.h +++ b/src/devices/cpu/st62xx/st62xx.h @@ -38,7 +38,7 @@ class st6228_device : public cpu_device { public: - st6228_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + st6228_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); template <unsigned Bit> auto port_a() { diff --git a/src/devices/cpu/superfx/superfx.cpp b/src/devices/cpu/superfx/superfx.cpp index e14ac788c5e..6628c03378b 100644 --- a/src/devices/cpu/superfx/superfx.cpp +++ b/src/devices/cpu/superfx/superfx.cpp @@ -7,7 +7,7 @@ DEFINE_DEVICE_TYPE(SUPERFX1, superfx1_device, "superfx1", "Nintendo SuperFX 1") DEFINE_DEVICE_TYPE(SUPERFX2, superfx2_device, "superfx2", "Nintendo SuperFX 2") -superfx_device::superfx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +superfx_device::superfx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 32, 0) , m_out_irq_func(*this), m_pipeline(0), m_ramaddr(0), m_sfr(0), m_pbr(0), m_rombr(0), m_rambr(0), m_cbr(0), m_scbr(0), m_scmr(0), m_colr(0), m_por(0) @@ -16,12 +16,12 @@ superfx_device::superfx_device(const machine_config &mconfig, device_type type, { } -superfx1_device::superfx1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +superfx1_device::superfx1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : superfx_device(mconfig, SUPERFX1, tag, owner, clock) { } -superfx2_device::superfx2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +superfx2_device::superfx2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : superfx_device(mconfig, SUPERFX2, tag, owner, clock) { } @@ -546,7 +546,7 @@ void superfx_device::mmio_write(uint32_t addr, uint8_t data) } } -void superfx_device::superfx_add_clocks_internal(uint32_t clocks) +void superfx_device::superfx_add_clocks_internal(const XTAL &clocks) { if(m_romcl) { diff --git a/src/devices/cpu/superfx/superfx.h b/src/devices/cpu/superfx/superfx.h index 54f07ec184f..17e3a93c197 100644 --- a/src/devices/cpu/superfx/superfx.h +++ b/src/devices/cpu/superfx/superfx.h @@ -105,7 +105,7 @@ public: protected: // construction/destruction - superfx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + superfx_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -203,7 +203,7 @@ private: inline uint8_t superfx_op_read(uint16_t addr); inline uint8_t superfx_peekpipe(); inline uint8_t superfx_pipe(); - inline void superfx_add_clocks_internal(uint32_t clocks); + inline void superfx_add_clocks_internal(const XTAL &clocks); void superfx_timing_reset(); inline void superfx_dreg_sfr_sz_update(); }; @@ -212,7 +212,7 @@ class superfx1_device : public superfx_device { public: // construction/destruction - superfx1_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + superfx1_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides @@ -224,7 +224,7 @@ class superfx2_device : public superfx_device { public: // construction/destruction - superfx2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + superfx2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(SUPERFX1, superfx1_device) diff --git a/src/devices/cpu/t11/t11.cpp b/src/devices/cpu/t11/t11.cpp index 422ea6e0510..5db68492043 100644 --- a/src/devices/cpu/t11/t11.cpp +++ b/src/devices/cpu/t11/t11.cpp @@ -39,12 +39,12 @@ DEFINE_DEVICE_TYPE(T11, t11_device, "t11", "DEC T11") DEFINE_DEVICE_TYPE(K1801VM2, k1801vm2_device, "k1801vm2", "K1801VM2") -k1801vm2_device::k1801vm2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +k1801vm2_device::k1801vm2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : t11_device(mconfig, K1801VM2, tag, owner, clock) { } -t11_device::t11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +t11_device::t11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, 0) , c_initial_mode(0) @@ -63,7 +63,7 @@ t11_device::t11_device(const machine_config &mconfig, device_type type, const ch m_ppc.d = 0; } -t11_device::t11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +t11_device::t11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : t11_device(mconfig, T11, tag, owner, clock) { } diff --git a/src/devices/cpu/t11/t11.h b/src/devices/cpu/t11/t11.h index cf83f65638e..d1dd1922693 100644 --- a/src/devices/cpu/t11/t11.h +++ b/src/devices/cpu/t11/t11.h @@ -39,7 +39,7 @@ public: static constexpr uint8_t BUS_ERROR = 8; // construction/destruction - t11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + t11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers void set_initial_mode(const uint16_t mode) { c_initial_mode = mode; } @@ -59,7 +59,7 @@ protected: T11_TRAP = 034 // TRAP instruction vector }; - t11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + t11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -1166,7 +1166,7 @@ class k1801vm2_device : public t11_device { public: // construction/destruction - k1801vm2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + k1801vm2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/tlcs870/tlcs870.cpp b/src/devices/cpu/tlcs870/tlcs870.cpp index c010de7e03b..cf300ba0686 100644 --- a/src/devices/cpu/tlcs870/tlcs870.cpp +++ b/src/devices/cpu/tlcs870/tlcs870.cpp @@ -104,7 +104,7 @@ void tlcs870_device::tmp87ph40an_mem(address_map &map) } -tlcs870_device::tlcs870_device(const machine_config &mconfig, device_type optype, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map) +tlcs870_device::tlcs870_device(const machine_config &mconfig, device_type optype, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map) : cpu_device(mconfig, optype, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, program_map) , m_io_config("io", ENDIANNESS_LITTLE, 8, 16, 0) @@ -118,7 +118,7 @@ tlcs870_device::tlcs870_device(const machine_config &mconfig, device_type optype } -tmp87ph40an_device::tmp87ph40an_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp87ph40an_device::tmp87ph40an_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs870_device(mconfig, TMP87PH40AN, tag, owner, clock, address_map_constructor(FUNC(tmp87ph40an_device::tmp87ph40an_mem), this)) { } diff --git a/src/devices/cpu/tlcs870/tlcs870.h b/src/devices/cpu/tlcs870/tlcs870.h index b6c3d73478d..c04b09ffcd8 100644 --- a/src/devices/cpu/tlcs870/tlcs870.h +++ b/src/devices/cpu/tlcs870/tlcs870.h @@ -42,7 +42,7 @@ public: protected: // construction/destruction - tlcs870_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map); + tlcs870_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map); // device-level overrides virtual void device_start() override; @@ -550,7 +550,7 @@ class tmp87ph40an_device : public tlcs870_device { public: // construction/destruction - tmp87ph40an_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp87ph40an_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tlcs90/tlcs90.cpp b/src/devices/cpu/tlcs90/tlcs90.cpp index 148f2dbd4a8..2f993b7ab90 100644 --- a/src/devices/cpu/tlcs90/tlcs90.cpp +++ b/src/devices/cpu/tlcs90/tlcs90.cpp @@ -154,7 +154,7 @@ void tlcs90_device::tmp90ph44_mem(address_map &map) } -tlcs90_device::tlcs90_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map) +tlcs90_device::tlcs90_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, program_map) , m_port_read_cb(*this) @@ -163,36 +163,36 @@ tlcs90_device::tlcs90_device(const machine_config &mconfig, device_type type, co } -tmp90840_device::tmp90840_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp90840_device::tmp90840_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP90840, tag, owner, clock, address_map_constructor(FUNC(tmp90840_device::tmp90840_mem), this)) { } -tmp90841_device::tmp90841_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp90841_device::tmp90841_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP90841, tag, owner, clock, address_map_constructor(FUNC(tmp90841_device::tmp90841_mem), this)) { } -tmp90845_device::tmp90845_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp90845_device::tmp90845_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP90845, tag, owner, clock, address_map_constructor(FUNC(tmp90845_device::tmp90841_mem), this)) { } -tmp91640_device::tmp91640_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp91640_device::tmp91640_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP91640, tag, owner, clock, address_map_constructor(FUNC(tmp91640_device::tmp91640_mem), this)) { } -tmp91641_device::tmp91641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp91641_device::tmp91641_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP91641, tag, owner, clock, address_map_constructor(FUNC(tmp91641_device::tmp91641_mem), this)) { } -tmp90ph44_device::tmp90ph44_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmp90ph44_device::tmp90ph44_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs90_device(mconfig, TMP90PH44, tag, owner, clock, address_map_constructor(FUNC(tmp90ph44_device::tmp90ph44_mem), this)) { } diff --git a/src/devices/cpu/tlcs90/tlcs90.h b/src/devices/cpu/tlcs90/tlcs90.h index c1ef052dfe8..be685dc7c0e 100644 --- a/src/devices/cpu/tlcs90/tlcs90.h +++ b/src/devices/cpu/tlcs90/tlcs90.h @@ -35,7 +35,7 @@ public: protected: // construction/destruction - tlcs90_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor program_map); + tlcs90_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor program_map); // device-level overrides virtual void device_start() override; @@ -198,7 +198,7 @@ class tmp90840_device : public tlcs90_device { public: // construction/destruction - tmp90840_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp90840_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -210,7 +210,7 @@ class tmp90841_device : public tlcs90_device { public: // construction/destruction - tmp90841_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp90841_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -222,7 +222,7 @@ class tmp90845_device : public tlcs90_device { public: // construction/destruction - tmp90845_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp90845_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -234,7 +234,7 @@ class tmp91640_device : public tlcs90_device { public: // construction/destruction - tmp91640_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp91640_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -246,7 +246,7 @@ class tmp91641_device : public tlcs90_device { public: // construction/destruction - tmp91641_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp91641_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -258,7 +258,7 @@ class tmp90ph44_device : public tlcs90_device { public: // construction/destruction - tmp90ph44_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp90ph44_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/tlcs900/tlcs900.cpp b/src/devices/cpu/tlcs900/tlcs900.cpp index 3fc240cdb4a..7bc112c24bd 100644 --- a/src/devices/cpu/tlcs900/tlcs900.cpp +++ b/src/devices/cpu/tlcs900/tlcs900.cpp @@ -15,7 +15,7 @@ TODO: #include "dasm900.h" -tlcs900_device::tlcs900_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +tlcs900_device::tlcs900_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), m_am8_16(0), m_mnemonic_80(s_mnemonic_80), @@ -36,7 +36,7 @@ tlcs900_device::tlcs900_device(const machine_config &mconfig, device_type type, { } -tlcs900h_device::tlcs900h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +tlcs900h_device::tlcs900h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : tlcs900_device(mconfig, type, tag, owner, clock) { m_mnemonic_80 = s_mnemonic_80; diff --git a/src/devices/cpu/tlcs900/tlcs900.h b/src/devices/cpu/tlcs900/tlcs900.h index f3b77d44622..7f1e2d28068 100644 --- a/src/devices/cpu/tlcs900/tlcs900.h +++ b/src/devices/cpu/tlcs900/tlcs900.h @@ -48,7 +48,7 @@ public: protected: // construction/destruction - tlcs900_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tlcs900_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -641,7 +641,7 @@ class tlcs900h_device : public tlcs900_device { protected: // construction/destruction - tlcs900h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tlcs900h_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_reset() override; diff --git a/src/devices/cpu/tlcs900/tmp95c061.cpp b/src/devices/cpu/tlcs900/tmp95c061.cpp index d297ba73fcf..c38cebfd89a 100644 --- a/src/devices/cpu/tlcs900/tmp95c061.cpp +++ b/src/devices/cpu/tlcs900/tmp95c061.cpp @@ -12,7 +12,7 @@ Toshiba TMP95C061 emulation DEFINE_DEVICE_TYPE(TMP95C061, tmp95c061_device, "tmp95c061", "Toshiba TMP95C061") -tmp95c061_device::tmp95c061_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tmp95c061_device::tmp95c061_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs900h_device(mconfig, TMP95C061, tag, owner, clock), m_port1_read(*this), m_port1_write(*this), diff --git a/src/devices/cpu/tlcs900/tmp95c061.h b/src/devices/cpu/tlcs900/tmp95c061.h index 10d8193f6e6..cda71c52b74 100644 --- a/src/devices/cpu/tlcs900/tmp95c061.h +++ b/src/devices/cpu/tlcs900/tmp95c061.h @@ -15,7 +15,7 @@ class tmp95c061_device : public tlcs900h_device { public: // construction/destruction - tmp95c061_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp95c061_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto port1_read() { return m_port1_read.bind(); } diff --git a/src/devices/cpu/tlcs900/tmp95c063.cpp b/src/devices/cpu/tlcs900/tmp95c063.cpp index 90663eeaff3..17501a89c53 100644 --- a/src/devices/cpu/tlcs900/tmp95c063.cpp +++ b/src/devices/cpu/tlcs900/tmp95c063.cpp @@ -12,7 +12,7 @@ Toshiba TMP95C063 emulation DEFINE_DEVICE_TYPE(TMP95C063, tmp95c063_device, "tmp95c063", "Toshiba TMP95C063") -tmp95c063_device::tmp95c063_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tmp95c063_device::tmp95c063_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs900h_device(mconfig, TMP95C063, tag, owner, clock), m_port1_read(*this), m_port1_write(*this), diff --git a/src/devices/cpu/tlcs900/tmp95c063.h b/src/devices/cpu/tlcs900/tmp95c063.h index 4c9c05bb433..d2446f383cd 100644 --- a/src/devices/cpu/tlcs900/tmp95c063.h +++ b/src/devices/cpu/tlcs900/tmp95c063.h @@ -15,7 +15,7 @@ class tmp95c063_device : public tlcs900h_device { public: // construction/destruction - tmp95c063_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tmp95c063_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto port1_read() { return m_port1_read.bind(); } diff --git a/src/devices/cpu/tlcs900/tmp96c141.cpp b/src/devices/cpu/tlcs900/tmp96c141.cpp index b5e64be8da3..8e2f7958459 100644 --- a/src/devices/cpu/tlcs900/tmp96c141.cpp +++ b/src/devices/cpu/tlcs900/tmp96c141.cpp @@ -30,7 +30,7 @@ DEFINE_DEVICE_TYPE(TMP96C141, tmp96c141_device, "tmp96c141", "Toshiba TMP96C141" // tmp96c141_device - constructor //------------------------------------------------- -tmp96c141_device::tmp96c141_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +tmp96c141_device::tmp96c141_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tlcs900_device(mconfig, TMP96C141, tag, owner, clock) { } diff --git a/src/devices/cpu/tlcs900/tmp96c141.h b/src/devices/cpu/tlcs900/tmp96c141.h index 973693a201b..32b8f47f9b7 100644 --- a/src/devices/cpu/tlcs900/tmp96c141.h +++ b/src/devices/cpu/tlcs900/tmp96c141.h @@ -69,7 +69,7 @@ class tmp96c141_device : public tlcs900_device { public: // device type constructor - tmp96c141_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tmp96c141_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // TODO: configuration helpers diff --git a/src/devices/cpu/tms1000/tms0270.cpp b/src/devices/cpu/tms1000/tms0270.cpp index 1a90eba3da1..cbfe810e2f9 100644 --- a/src/devices/cpu/tms1000/tms0270.cpp +++ b/src/devices/cpu/tms1000/tms0270.cpp @@ -24,7 +24,7 @@ TMS0260 is same or similar? DEFINE_DEVICE_TYPE(TMS0270, tms0270_cpu_device, "tms0270", "Texas Instruments TMS0270") // 40-pin DIP, 16 O pins, 8+ R pins (some R pins are internally hooked up to support more I/O) -tms0270_cpu_device::tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms0270_cpu_device::tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0980_cpu_device(mconfig, TMS0270, tag, owner, clock, 16 /* o pins */, 16 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 1 /* stack levels */, 11 /* rom width */, address_map_constructor(FUNC(tms0270_cpu_device::rom_11bit), this), 8 /* ram width */, address_map_constructor(FUNC(tms0270_cpu_device::ram_144x4), this)) { } diff --git a/src/devices/cpu/tms1000/tms0270.h b/src/devices/cpu/tms1000/tms0270.h index e6f3f89197e..39a8ffbe696 100644 --- a/src/devices/cpu/tms1000/tms0270.h +++ b/src/devices/cpu/tms1000/tms0270.h @@ -17,7 +17,7 @@ class tms0270_cpu_device : public tms0980_cpu_device { public: - tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms0270_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // overrides diff --git a/src/devices/cpu/tms1000/tms0970.cpp b/src/devices/cpu/tms1000/tms0970.cpp index 869f3700b82..a922529895f 100644 --- a/src/devices/cpu/tms1000/tms0970.cpp +++ b/src/devices/cpu/tms1000/tms0970.cpp @@ -29,19 +29,19 @@ DEFINE_DEVICE_TYPE(TMS0970, tms0970_cpu_device, "tms0970", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS1990, tms1990_cpu_device, "tms1990", "Texas Instruments TMS1990") // 28-pin DIP, ? R pins.. -tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0970_cpu_device(mconfig, TMS0970, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 1 /* stack levels */, 10 /* rom width */, address_map_constructor(FUNC(tms0970_cpu_device::rom_10bit), this), 6 /* ram width */, address_map_constructor(FUNC(tms0970_cpu_device::ram_6bit), this)) { } -tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms0970_cpu_device::tms0970_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1000_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms0950_cpu_device::tms0950_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms0950_cpu_device::tms0950_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0970_cpu_device(mconfig, TMS0950, tag, owner, clock, 8, 11, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms0950_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(tms0950_cpu_device::ram_6bit), this)) { } -tms1990_cpu_device::tms1990_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1990_cpu_device::tms1990_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0970_cpu_device(mconfig, TMS1990, tag, owner, clock, 8, 11, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1990_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(tms1990_cpu_device::ram_6bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms0970.h b/src/devices/cpu/tms1000/tms0970.h index 583a9480e91..2d7d1b1d100 100644 --- a/src/devices/cpu/tms1000/tms0970.h +++ b/src/devices/cpu/tms1000/tms0970.h @@ -17,10 +17,10 @@ class tms0970_cpu_device : public tms1000_cpu_device { public: - tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms0970_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms0970_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms0970_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides virtual void device_reset() override; @@ -35,7 +35,7 @@ protected: class tms0950_cpu_device : public tms0970_cpu_device { public: - tms0950_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms0950_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // overrides @@ -49,7 +49,7 @@ protected: class tms1990_cpu_device : public tms0970_cpu_device { public: - tms1990_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1990_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tms0980.cpp b/src/devices/cpu/tms1000/tms0980.cpp index 664adb877ed..c6daf559d77 100644 --- a/src/devices/cpu/tms1000/tms0980.cpp +++ b/src/devices/cpu/tms1000/tms0980.cpp @@ -32,15 +32,15 @@ DEFINE_DEVICE_TYPE(TMS0980, tms0980_cpu_device, "tms0980", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS1980, tms1980_cpu_device, "tms1980", "Texas Instruments TMS1980") // 28-pin DIP, 7 O pins, 10 R pins, high voltage -tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0980_cpu_device(mconfig, TMS0980, tag, owner, clock, 8 /* o pins */, 9 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 1 /* stack levels */, 11 /* rom width */, address_map_constructor(FUNC(tms0980_cpu_device::rom_11bit), this), 8 /* ram width */, address_map_constructor(FUNC(tms0980_cpu_device::ram_144x4), this)) { } -tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms0980_cpu_device::tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms0970_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1980_cpu_device::tms1980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1980_cpu_device::tms1980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0980_cpu_device(mconfig, TMS1980, tag, owner, clock, 7, 10, 7, 9, 4, 1, 11, address_map_constructor(FUNC(tms1980_cpu_device::rom_11bit), this), 8, address_map_constructor(FUNC(tms1980_cpu_device::ram_144x4), this)) { } diff --git a/src/devices/cpu/tms1000/tms0980.h b/src/devices/cpu/tms1000/tms0980.h index 038f54cf2e2..3c0367fa80d 100644 --- a/src/devices/cpu/tms1000/tms0980.h +++ b/src/devices/cpu/tms1000/tms0980.h @@ -41,10 +41,10 @@ class tms0980_cpu_device : public tms0970_cpu_device { public: - tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms0980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms0980_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); void ram_144x4(address_map &map); @@ -74,7 +74,7 @@ protected: class tms1980_cpu_device : public tms0980_cpu_device { public: - tms1980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1980_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // overrides diff --git a/src/devices/cpu/tms1000/tms1000.cpp b/src/devices/cpu/tms1000/tms1000.cpp index 6937fc2ab35..31209f10ea8 100644 --- a/src/devices/cpu/tms1000/tms1000.cpp +++ b/src/devices/cpu/tms1000/tms1000.cpp @@ -37,39 +37,39 @@ DEFINE_DEVICE_TYPE(MC141000, mc141000_cpu_device, "mc141000", "Motorola MC141000 DEFINE_DEVICE_TYPE(MC141200, mc141200_cpu_device, "mc141200", "Motorola MC141200") // CMOS, 40-pin DIP, 16 R pins -tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1000, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 1 /* stack levels */, 10 /* rom width */, address_map_constructor(FUNC(tms1000_cpu_device::rom_10bit), this), 6 /* ram width */, address_map_constructor(FUNC(tms1000_cpu_device::ram_6bit), this)) { } -tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1000_cpu_device::tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1k_base_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1070_cpu_device::tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1070_cpu_device::tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1070, tag, owner, clock, 8, 11, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1070_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(tms1070_cpu_device::ram_6bit), this)) { } -tms1040_cpu_device::tms1040_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1040_cpu_device::tms1040_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1040, tag, owner, clock, 8, 11, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1040_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(tms1040_cpu_device::ram_6bit), this)) { } -tms1200_cpu_device::tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1200_cpu_device::tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1200, tag, owner, clock, 8, 13, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1200_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(tms1200_cpu_device::ram_6bit), this)) { } -tms1700_cpu_device::tms1700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1700_cpu_device::tms1700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1700, tag, owner, clock, 8, 9, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1700_cpu_device::rom_9bitm), this), 6, address_map_constructor(FUNC(tms1700_cpu_device::ram_32x4), this)) { } -tms1730_cpu_device::tms1730_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1730_cpu_device::tms1730_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1730, tag, owner, clock, 8, 9, 6, 8, 2, 1, 10, address_map_constructor(FUNC(tms1730_cpu_device::rom_9bitm), this), 6, address_map_constructor(FUNC(tms1730_cpu_device::ram_32x4), this)) { } -mc141000_cpu_device::mc141000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mc141000_cpu_device::mc141000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, MC141000, tag, owner, clock, 8, 11, 6, 8, 2, 1, 10, address_map_constructor(FUNC(mc141000_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(mc141000_cpu_device::ram_6bit), this)) { } -mc141200_cpu_device::mc141200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +mc141200_cpu_device::mc141200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, MC141200, tag, owner, clock, 8, 16, 6, 8, 2, 1, 10, address_map_constructor(FUNC(mc141200_cpu_device::rom_10bit), this), 6, address_map_constructor(FUNC(mc141200_cpu_device::ram_6bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms1000.h b/src/devices/cpu/tms1000/tms1000.h index 8e45216718b..bd9dd43fce8 100644 --- a/src/devices/cpu/tms1000/tms1000.h +++ b/src/devices/cpu/tms1000/tms1000.h @@ -61,10 +61,10 @@ class tms1000_cpu_device : public tms1k_base_device { public: - tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1000_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); void rom_9bitm(address_map &map); void ram_32x4(address_map &map); @@ -80,46 +80,46 @@ protected: class tms1070_cpu_device : public tms1000_cpu_device { public: - tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1070_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1040_cpu_device : public tms1000_cpu_device { public: - tms1040_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1040_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1200_cpu_device : public tms1000_cpu_device { public: - tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1700_cpu_device : public tms1000_cpu_device { public: - tms1700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1700_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1730_cpu_device : public tms1000_cpu_device { public: - tms1730_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1730_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mc141000_cpu_device : public tms1000_cpu_device { public: - mc141000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mc141000_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class mc141200_cpu_device : public tms1000_cpu_device { public: - mc141200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mc141200_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tms1000c.cpp b/src/devices/cpu/tms1000/tms1000c.cpp index 977c8c90d37..ed6b7a9fd06 100644 --- a/src/devices/cpu/tms1000/tms1000c.cpp +++ b/src/devices/cpu/tms1000/tms1000c.cpp @@ -26,7 +26,7 @@ TODO: DEFINE_DEVICE_TYPE(TMS1000C, tms1000c_cpu_device, "tms1000c", "Texas Instruments TMS1000C") // 28-pin SDIP, 10 R pins -tms1000c_cpu_device::tms1000c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1000c_cpu_device::tms1000c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1000_cpu_device(mconfig, TMS1000C, tag, owner, clock, 8 /* o pins */, 10 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 2 /* x width */, 3 /* stack levels */, 10 /* rom width */, address_map_constructor(FUNC(tms1000c_cpu_device::rom_10bit), this), 6 /* ram width */, address_map_constructor(FUNC(tms1000c_cpu_device::ram_6bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms1000c.h b/src/devices/cpu/tms1000/tms1000c.h index bf165550045..600b57bb79e 100644 --- a/src/devices/cpu/tms1000/tms1000c.h +++ b/src/devices/cpu/tms1000/tms1000c.h @@ -17,7 +17,7 @@ class tms1000c_cpu_device : public tms1000_cpu_device { public: - tms1000c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1000c_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // overrides diff --git a/src/devices/cpu/tms1000/tms1100.cpp b/src/devices/cpu/tms1000/tms1100.cpp index 7af1237a5ad..9a799749a33 100644 --- a/src/devices/cpu/tms1000/tms1100.cpp +++ b/src/devices/cpu/tms1000/tms1100.cpp @@ -23,23 +23,23 @@ DEFINE_DEVICE_TYPE(TMS1300, tms1300_cpu_device, "tms1300", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS1370, tms1370_cpu_device, "tms1370", "Texas Instruments TMS1370") // high voltage version, also seen in 28-pin package(some O/R pins unavailable) -tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1100_cpu_device(mconfig, TMS1100, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 1 /* stack levels */, 11 /* rom width */, address_map_constructor(FUNC(tms1100_cpu_device::rom_11bit), this), 7 /* ram width */, address_map_constructor(FUNC(tms1100_cpu_device::ram_7bit), this)) { } -tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1100_cpu_device::tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1000_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1170_cpu_device::tms1170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1170_cpu_device::tms1170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1100_cpu_device(mconfig, TMS1170, tag, owner, clock, 8, 11, 6, 8, 3, 1, 11, address_map_constructor(FUNC(tms1170_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms1170_cpu_device::ram_7bit), this)) { } -tms1300_cpu_device::tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1300_cpu_device::tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1100_cpu_device(mconfig, TMS1300, tag, owner, clock, 8, 16, 6, 8, 3, 1, 11, address_map_constructor(FUNC(tms1300_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms1300_cpu_device::ram_7bit), this)) { } -tms1370_cpu_device::tms1370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1370_cpu_device::tms1370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1100_cpu_device(mconfig, TMS1370, tag, owner, clock, 8, 16, 6, 8, 3, 1, 11, address_map_constructor(FUNC(tms1370_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms1370_cpu_device::ram_7bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms1100.h b/src/devices/cpu/tms1000/tms1100.h index 4121a25f64e..812e670ad54 100644 --- a/src/devices/cpu/tms1000/tms1100.h +++ b/src/devices/cpu/tms1000/tms1100.h @@ -63,10 +63,10 @@ class tms1100_cpu_device : public tms1000_cpu_device { public: - tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides virtual void device_start() override; @@ -81,19 +81,19 @@ protected: class tms1170_cpu_device : public tms1100_cpu_device { public: - tms1170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1300_cpu_device : public tms1100_cpu_device { public: - tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms1370_cpu_device : public tms1100_cpu_device { public: - tms1370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tms1400.cpp b/src/devices/cpu/tms1000/tms1400.cpp index 64eb906a2d1..f11f4567371 100644 --- a/src/devices/cpu/tms1000/tms1400.cpp +++ b/src/devices/cpu/tms1000/tms1400.cpp @@ -33,37 +33,37 @@ DEFINE_DEVICE_TYPE(TMS1600, tms1600_cpu_device, "tms1600", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS1670, tms1670_cpu_device, "tms1670", "Texas Instruments TMS1670") // high voltage version -tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1400_cpu_device(mconfig, TMS1400, tag, owner, clock, 8 /* o pins */, 11 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 3 /* stack levels */, 12 /* rom width */, address_map_constructor(FUNC(tms1400_cpu_device::rom_12bit), this), 7 /* ram width */, address_map_constructor(FUNC(tms1400_cpu_device::ram_7bit), this)) { } -tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1400_cpu_device::tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1100_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1470_cpu_device::tms1470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1470_cpu_device::tms1470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1470_cpu_device(mconfig, TMS1470, tag, owner, clock, 8, 10, 6, 8, 3, 3, 12, address_map_constructor(FUNC(tms1470_cpu_device::rom_12bit), this), 7, address_map_constructor(FUNC(tms1470_cpu_device::ram_7bit), this)) { } -tms1470_cpu_device::tms1470_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1470_cpu_device::tms1470_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1400_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1475_cpu_device::tms1475_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1475_cpu_device::tms1475_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1470_cpu_device(mconfig, TMS1475, tag, owner, clock, 8, 22, 6, 8, 3, 3, 12, address_map_constructor(FUNC(tms1475_cpu_device::rom_12bit), this), 7, address_map_constructor(FUNC(tms1475_cpu_device::ram_7bit), this)) { } -tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1600_cpu_device(mconfig, TMS1600, tag, owner, clock, 8, 16, 6, 8, 3, 3, 12, address_map_constructor(FUNC(tms1600_cpu_device::rom_12bit), this), 7, address_map_constructor(FUNC(tms1600_cpu_device::ram_7bit), this)) { } -tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1600_cpu_device::tms1600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1400_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms1670_cpu_device::tms1670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms1670_cpu_device::tms1670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms1600_cpu_device(mconfig, TMS1670, tag, owner, clock, 8, 16, 6, 8, 3, 3, 12, address_map_constructor(FUNC(tms1670_cpu_device::rom_12bit), this), 7, address_map_constructor(FUNC(tms1670_cpu_device::ram_7bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms1400.h b/src/devices/cpu/tms1000/tms1400.h index acac9ea4ca1..b69b48ca5a5 100644 --- a/src/devices/cpu/tms1000/tms1400.h +++ b/src/devices/cpu/tms1000/tms1400.h @@ -41,10 +41,10 @@ class tms1400_cpu_device : public tms1100_cpu_device { public: - tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides virtual void device_reset() override; @@ -59,16 +59,16 @@ protected: class tms1470_cpu_device : public tms1400_cpu_device { public: - tms1470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms1470_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1470_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); }; class tms1475_cpu_device : public tms1470_cpu_device { public: - tms1475_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1475_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void op_setr() override { tms1100_cpu_device::op_setr(); } @@ -78,16 +78,16 @@ protected: class tms1600_cpu_device : public tms1400_cpu_device { public: - tms1600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms1600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); }; class tms1670_cpu_device : public tms1600_cpu_device { public: - tms1670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms1670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tms1k_base.cpp b/src/devices/cpu/tms1000/tms1k_base.cpp index 8034c2c7b4c..729e8274476 100644 --- a/src/devices/cpu/tms1000/tms1k_base.cpp +++ b/src/devices/cpu/tms1000/tms1k_base.cpp @@ -71,7 +71,7 @@ unknown cycle: CME, SSE, SSS #include "emu.h" #include "tms1k_base.h" -tms1k_base_device::tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms1k_base_device::tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, byte_bits > 8 ? 16 : 8, rom_width, byte_bits > 8 ? -1 : 0, rom_map), m_data_config("data", ENDIANNESS_BIG, 8, ram_width, 0, ram_map), diff --git a/src/devices/cpu/tms1000/tms1k_base.h b/src/devices/cpu/tms1000/tms1k_base.h index 136a54e61c7..a65caa0b3ca 100644 --- a/src/devices/cpu/tms1000/tms1k_base.h +++ b/src/devices/cpu/tms1000/tms1k_base.h @@ -52,7 +52,7 @@ public: protected: // construction/destruction - tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms1k_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/tms1000/tms2100.cpp b/src/devices/cpu/tms1000/tms2100.cpp index b469e7c7b08..06ec33fd97d 100644 --- a/src/devices/cpu/tms1000/tms2100.cpp +++ b/src/devices/cpu/tms1000/tms2100.cpp @@ -40,27 +40,27 @@ DEFINE_DEVICE_TYPE(TMS2300, tms2300_cpu_device, "tms2300", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS2370, tms2370_cpu_device, "tms2370", "Texas Instruments TMS2370") // high voltage version, 1 R pin removed for Vpp -tms2100_cpu_device::tms2100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2100_cpu_device::tms2100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2100_cpu_device(mconfig, TMS2100, tag, owner, clock, 8 /* o pins */, 7 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 3 /* x width */, 4 /* stack levels */, 11 /* rom width */, address_map_constructor(FUNC(tms2100_cpu_device::rom_11bit), this), 7 /* ram width */, address_map_constructor(FUNC(tms2100_cpu_device::ram_7bit), this)) { } -tms2100_cpu_device::tms2100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms2100_cpu_device::tms2100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms1100_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms2170_cpu_device::tms2170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2170_cpu_device::tms2170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2100_cpu_device(mconfig, TMS2170, tag, owner, clock, 8, 6, 6, 8, 3, 4, 11, address_map_constructor(FUNC(tms2170_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms2170_cpu_device::ram_7bit), this)) { } -tms2300_cpu_device::tms2300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2300_cpu_device::tms2300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2300_cpu_device(mconfig, TMS2300, tag, owner, clock, 8, 15, 6, 8, 3, 4, 11, address_map_constructor(FUNC(tms2300_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms2300_cpu_device::ram_7bit), this)) { } -tms2300_cpu_device::tms2300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms2300_cpu_device::tms2300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms2100_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms2370_cpu_device::tms2370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2370_cpu_device::tms2370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2300_cpu_device(mconfig, TMS2370, tag, owner, clock, 8, 14, 6, 8, 3, 4, 11, address_map_constructor(FUNC(tms2370_cpu_device::rom_11bit), this), 7, address_map_constructor(FUNC(tms2370_cpu_device::ram_7bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms2100.h b/src/devices/cpu/tms1000/tms2100.h index 7f6c6ab340b..a6dbf3eb0b0 100644 --- a/src/devices/cpu/tms1000/tms2100.h +++ b/src/devices/cpu/tms1000/tms2100.h @@ -69,10 +69,10 @@ enum class tms2100_cpu_device : public tms1100_cpu_device { public: - tms2100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2100_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms2100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms2100_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides virtual void device_start() override; @@ -131,22 +131,22 @@ protected: class tms2170_cpu_device : public tms2100_cpu_device { public: - tms2170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2170_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms2300_cpu_device : public tms2100_cpu_device { public: - tms2300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2300_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms2300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms2300_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); }; class tms2370_cpu_device : public tms2300_cpu_device { public: - tms2370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2370_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tms2400.cpp b/src/devices/cpu/tms1000/tms2400.cpp index 289e4f94692..f5454923f94 100644 --- a/src/devices/cpu/tms1000/tms2400.cpp +++ b/src/devices/cpu/tms1000/tms2400.cpp @@ -20,27 +20,27 @@ DEFINE_DEVICE_TYPE(TMS2600, tms2600_cpu_device, "tms2600", "Texas Instruments TM DEFINE_DEVICE_TYPE(TMS2670, tms2670_cpu_device, "tms2670", "Texas Instruments TMS2670") // high voltage version, 1 R pin removed for Vpp -tms2400_cpu_device::tms2400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2400_cpu_device::tms2400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2400_cpu_device(mconfig, TMS2400, tag, owner, clock, 8 /* o pins */, 7 /* r pins */, 6 /* pc bits */, 8 /* byte width */, 4 /* x width */, 4 /* stack levels */, 12 /* rom width */, address_map_constructor(FUNC(tms2400_cpu_device::rom_12bit), this), 8 /* ram width */, address_map_constructor(FUNC(tms2400_cpu_device::ram_8bit), this)) { } -tms2400_cpu_device::tms2400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms2400_cpu_device::tms2400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms2100_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms2470_cpu_device::tms2470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2470_cpu_device::tms2470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2400_cpu_device(mconfig, TMS2470, tag, owner, clock, 8, 6, 6, 8, 4, 4, 12, address_map_constructor(FUNC(tms2470_cpu_device::rom_12bit), this), 8, address_map_constructor(FUNC(tms2470_cpu_device::ram_8bit), this)) { } -tms2600_cpu_device::tms2600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2600_cpu_device::tms2600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2600_cpu_device(mconfig, TMS2600, tag, owner, clock, 8, 15, 6, 8, 4, 4, 12, address_map_constructor(FUNC(tms2600_cpu_device::rom_12bit), this), 8, address_map_constructor(FUNC(tms2600_cpu_device::ram_8bit), this)) { } -tms2600_cpu_device::tms2600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : +tms2600_cpu_device::tms2600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map) : tms2400_cpu_device(mconfig, type, tag, owner, clock, o_pins, r_pins, pc_bits, byte_bits, x_bits, stack_levels, rom_width, rom_map, ram_width, ram_map) { } -tms2670_cpu_device::tms2670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tms2670_cpu_device::tms2670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms2600_cpu_device(mconfig, TMS2670, tag, owner, clock, 8, 14, 6, 8, 4, 4, 12, address_map_constructor(FUNC(tms2670_cpu_device::rom_12bit), this), 8, address_map_constructor(FUNC(tms2670_cpu_device::ram_8bit), this)) { } diff --git a/src/devices/cpu/tms1000/tms2400.h b/src/devices/cpu/tms1000/tms2400.h index 25692d3207e..b002bd9cefb 100644 --- a/src/devices/cpu/tms1000/tms2400.h +++ b/src/devices/cpu/tms1000/tms2400.h @@ -17,10 +17,10 @@ class tms2400_cpu_device : public tms2100_cpu_device { public: - tms2400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2400_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms2400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms2400_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); // overrides virtual void device_reset() override; @@ -34,22 +34,22 @@ protected: class tms2470_cpu_device : public tms2400_cpu_device { public: - tms2470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2470_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms2600_cpu_device : public tms2400_cpu_device { public: - tms2600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2600_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms2600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); + tms2600_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 o_pins, u8 r_pins, u8 pc_bits, u8 byte_bits, u8 x_bits, u8 stack_levels, int rom_width, address_map_constructor rom_map, int ram_width, address_map_constructor ram_map); }; class tms2670_cpu_device : public tms2600_cpu_device { public: - tms2670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms2670_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms1000/tp0320.cpp b/src/devices/cpu/tms1000/tp0320.cpp index 54eb8c368b5..72fd062ca17 100644 --- a/src/devices/cpu/tms1000/tp0320.cpp +++ b/src/devices/cpu/tms1000/tp0320.cpp @@ -28,7 +28,7 @@ TODO: DEFINE_DEVICE_TYPE(TP0320, tp0320_cpu_device, "tp0320", "Texas Instruments TP0320") // 28-pin SDIP, .. -tp0320_cpu_device::tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : +tp0320_cpu_device::tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms0980_cpu_device(mconfig, TP0320, tag, owner, clock, 7 /* o pins */, 10 /* r pins */, 7 /* pc bits */, 9 /* byte width */, 4 /* x width */, 1 /* stack levels */, 11 /* rom width */, address_map_constructor(FUNC(tp0320_cpu_device::rom_11bit), this), 8 /* ram width */, address_map_constructor(FUNC(tp0320_cpu_device::ram_192x4), this)) { } diff --git a/src/devices/cpu/tms1000/tp0320.h b/src/devices/cpu/tms1000/tp0320.h index 710dfb5b787..922245853f5 100644 --- a/src/devices/cpu/tms1000/tp0320.h +++ b/src/devices/cpu/tms1000/tp0320.h @@ -17,7 +17,7 @@ class tp0320_cpu_device : public tms0980_cpu_device { public: - tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tp0320_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: void ram_192x4(address_map &map); diff --git a/src/devices/cpu/tms32010/tms32010.cpp b/src/devices/cpu/tms32010/tms32010.cpp index 7a9fb58b54c..086c2cca029 100644 --- a/src/devices/cpu/tms32010/tms32010.cpp +++ b/src/devices/cpu/tms32010/tms32010.cpp @@ -99,13 +99,13 @@ void tms32010_device::tms32015_ram(address_map &map) } -tms32010_device::tms32010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32010_device::tms32010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32010_device(mconfig, TMS32010, tag, owner, clock, address_map_constructor(FUNC(tms32010_device::tms32010_ram), this), 0x0fff) { } -tms32010_device::tms32010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor data_map, int addr_mask) +tms32010_device::tms32010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor data_map, int addr_mask) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 12, -1) , m_data_config("data", ENDIANNESS_BIG, 16, 8, -1, data_map) @@ -116,13 +116,13 @@ tms32010_device::tms32010_device(const machine_config &mconfig, device_type type } -tms32015_device::tms32015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32015_device::tms32015_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32010_device(mconfig, TMS32015, tag, owner, clock, address_map_constructor(FUNC(tms32015_device::tms32015_ram), this), 0x0fff) { } -tms32016_device::tms32016_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32016_device::tms32016_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32010_device(mconfig, TMS32016, tag, owner, clock, address_map_constructor(FUNC(tms32016_device::tms32015_ram), this), 0xffff) { } diff --git a/src/devices/cpu/tms32010/tms32010.h b/src/devices/cpu/tms32010/tms32010.h index beebee1b0b0..70ea8534d15 100644 --- a/src/devices/cpu/tms32010/tms32010.h +++ b/src/devices/cpu/tms32010/tms32010.h @@ -35,7 +35,7 @@ class tms32010_device : public cpu_device { public: // construction/destruction - tms32010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto bio() { return m_bio_in.bind(); } @@ -43,7 +43,7 @@ public: void tms32010_ram(address_map &map); void tms32015_ram(address_map &map); protected: - tms32010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor data_map, int addr_mask); + tms32010_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor data_map, int addr_mask); // device-level overrides virtual void device_start() override; @@ -191,7 +191,7 @@ class tms32015_device : public tms32010_device { public: // construction/destruction - tms32015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32015_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; @@ -199,7 +199,7 @@ class tms32016_device : public tms32010_device { public: // construction/destruction - tms32016_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32016_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms32025/tms32025.cpp b/src/devices/cpu/tms32025/tms32025.cpp index 304280555a1..a0c08118878 100644 --- a/src/devices/cpu/tms32025/tms32025.cpp +++ b/src/devices/cpu/tms32025/tms32025.cpp @@ -240,7 +240,7 @@ const tiny_rom_entry *tms32025_device::device_rom_region() const } -tms32025_device::tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor prgmap, address_map_constructor datamap) +tms32025_device::tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor prgmap, address_map_constructor datamap) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, 16, -1, prgmap) , m_data_config("data", ENDIANNESS_BIG, 16, 16, -1, datamap) @@ -259,19 +259,19 @@ tms32025_device::tms32025_device(const machine_config &mconfig, device_type type { } -tms32025_device::tms32025_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32025_device::tms32025_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32025_device(mconfig, TMS32025, tag, owner, clock, address_map_constructor(), address_map_constructor(FUNC(tms32025_device::tms32025_data), this)) { m_fixed_STR1 = 0x0180; } -tms32025_device::tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +tms32025_device::tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : tms32025_device(mconfig, type, tag, owner, clock, address_map_constructor(), address_map_constructor(FUNC(tms32025_device::tms32025_data), this)) { m_fixed_STR1 = 0x0180; } -tms32026_device::tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32026_device::tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32025_device(mconfig, TMS32026, tag, owner, clock, address_map_constructor(), address_map_constructor(FUNC(tms32026_device::tms32026_data), this)) { m_fixed_STR1 = 0x0100; diff --git a/src/devices/cpu/tms32025/tms32025.h b/src/devices/cpu/tms32025/tms32025.h index de8b4442c08..0f5fb689706 100644 --- a/src/devices/cpu/tms32025/tms32025.h +++ b/src/devices/cpu/tms32025/tms32025.h @@ -62,8 +62,8 @@ class tms32025_device : public cpu_device { public: // construction/destruction - tms32025_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tms32025_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); + tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto bio_in_cb() { return m_bio_in.bind(); } @@ -79,7 +79,7 @@ public: void tms32025_data(address_map &map); void tms32026_data(address_map &map); protected: - tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor prgmap, address_map_constructor datamap); + tms32025_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor prgmap, address_map_constructor datamap); // device-level overrides virtual void device_start() override; @@ -368,7 +368,7 @@ class tms32026_device : public tms32025_device { public: // construction/destruction - tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32026_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; diff --git a/src/devices/cpu/tms32031/tms32031.cpp b/src/devices/cpu/tms32031/tms32031.cpp index f4516f27788..41c3792602e 100644 --- a/src/devices/cpu/tms32031/tms32031.cpp +++ b/src/devices/cpu/tms32031/tms32031.cpp @@ -406,7 +406,7 @@ void tms3203x_device::tmsreg::from_double(double val) // tms3203x_device - constructor //------------------------------------------------- -tms3203x_device::tms3203x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype, int clock_per_inst, address_map_constructor internal_map) +tms3203x_device::tms3203x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype, int clock_per_inst, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_LITTLE, 32, 24, -2, internal_map), m_chip_type(chiptype), @@ -438,22 +438,22 @@ tms3203x_device::tms3203x_device(const machine_config &mconfig, device_type type #endif } -tms32030_device::tms32030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32030_device::tms32030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms3203x_device(mconfig, TMS32030, tag, owner, clock, CHIP_TYPE_TMS32030, 2, address_map_constructor(FUNC(tms32030_device::internal_32030), this)) { } -tms32031_device::tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32031_device::tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms3203x_device(mconfig, TMS32031, tag, owner, clock, CHIP_TYPE_TMS32031, 2, address_map_constructor(FUNC(tms32031_device::internal_32031), this)) { } -tms32032_device::tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32032_device::tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms3203x_device(mconfig, TMS32032, tag, owner, clock, CHIP_TYPE_TMS32032, 2, address_map_constructor(FUNC(tms32032_device::internal_32032), this)) { } -tms32033_device::tms32033_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32033_device::tms32033_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms3203x_device(mconfig, TMS32033, tag, owner, clock, CHIP_TYPE_TMS32031, 1, address_map_constructor(FUNC(tms32033_device::internal_32033), this)) { } diff --git a/src/devices/cpu/tms32031/tms32031.h b/src/devices/cpu/tms32031/tms32031.h index 975a8d1cb32..f4193e2cf93 100644 --- a/src/devices/cpu/tms32031/tms32031.h +++ b/src/devices/cpu/tms32031/tms32031.h @@ -143,7 +143,7 @@ protected: }; // construction/destruction - tms3203x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t chiptype, int clock_per_inst, address_map_constructor internal_map); + tms3203x_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t chiptype, int clock_per_inst, address_map_constructor internal_map); void common_3203x(address_map &map); // device-level overrides @@ -803,7 +803,7 @@ class tms32030_device : public tms3203x_device { public: // construction/destruction - tms32030_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32030_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void internal_32030(address_map &map); }; @@ -814,7 +814,7 @@ class tms32031_device : public tms3203x_device { public: // construction/destruction - tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void internal_32031(address_map &map); }; @@ -825,7 +825,7 @@ class tms32032_device : public tms3203x_device { public: // construction/destruction - tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32032_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void internal_32032(address_map &map); }; @@ -836,7 +836,7 @@ class tms32033_device : public tms3203x_device { public: // construction/destruction - tms32033_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32033_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void internal_32033(address_map &map); }; diff --git a/src/devices/cpu/tms32051/tms32051.cpp b/src/devices/cpu/tms32051/tms32051.cpp index d03493df60f..590a952c842 100644 --- a/src/devices/cpu/tms32051/tms32051.cpp +++ b/src/devices/cpu/tms32051/tms32051.cpp @@ -71,7 +71,7 @@ void tms32051_device::tms32051_internal_data(address_map &map) } -tms32051_device::tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_pgm, address_map_constructor internal_data) +tms32051_device::tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_pgm, address_map_constructor internal_data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 16, -1, internal_pgm) , m_data_config("data", ENDIANNESS_LITTLE, 16, 16, -1, internal_data) @@ -79,7 +79,7 @@ tms32051_device::tms32051_device(const machine_config &mconfig, device_type type { } -tms32051_device::tms32051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32051_device::tms32051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32051_device(mconfig, TMS32051, tag, owner, clock, address_map_constructor(FUNC(tms32051_device::tms32051_internal_pgm), this), address_map_constructor(FUNC(tms32051_device::tms32051_internal_data), this)) { } @@ -115,7 +115,7 @@ void tms32053_device::tms32053_internal_data(address_map &map) } -tms32053_device::tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32053_device::tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms32051_device(mconfig, TMS32053, tag, owner, clock, address_map_constructor(FUNC(tms32053_device::tms32053_internal_pgm), this), address_map_constructor(FUNC(tms32053_device::tms32053_internal_data), this)) { } diff --git a/src/devices/cpu/tms32051/tms32051.h b/src/devices/cpu/tms32051/tms32051.h index 63552d7e605..abcb8f64626 100644 --- a/src/devices/cpu/tms32051/tms32051.h +++ b/src/devices/cpu/tms32051/tms32051.h @@ -57,7 +57,7 @@ class tms32051_device : public cpu_device { public: // construction/destruction - tms32051_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32051_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint16_t cpuregs_r(offs_t offset); void cpuregs_w(offs_t offset, uint16_t data); @@ -65,7 +65,7 @@ public: void tms32051_internal_data(address_map &map); void tms32051_internal_pgm(address_map &map); protected: - tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_pgm, address_map_constructor internal_data); + tms32051_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_pgm, address_map_constructor internal_data); // device-level overrides virtual void device_start() override; @@ -373,7 +373,7 @@ class tms32053_device : public tms32051_device { public: // construction/destruction - tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32053_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void tms32053_internal_data(address_map &map); void tms32053_internal_pgm(address_map &map); diff --git a/src/devices/cpu/tms32082/tms32082.cpp b/src/devices/cpu/tms32082/tms32082.cpp index 7b1486470c0..16655f93472 100644 --- a/src/devices/cpu/tms32082/tms32082.cpp +++ b/src/devices/cpu/tms32082/tms32082.cpp @@ -43,7 +43,7 @@ const uint32_t tms32082_mp_device::SHIFT_MASK[] = -tms32082_mp_device::tms32082_mp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32082_mp_device::tms32082_mp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, TMS32082_MP, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor(FUNC(tms32082_mp_device::mp_internal_map), this)) , m_cmd_callback(*this) @@ -528,7 +528,7 @@ void tms32082_pp_device::pp_internal_map(address_map &map) map(0x01001000, 0x01001fff).ram().share("pp1_param"); } -tms32082_pp_device::tms32082_pp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms32082_pp_device::tms32082_pp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, TMS32082_PP, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor(FUNC(tms32082_pp_device::pp_internal_map), this)) { diff --git a/src/devices/cpu/tms32082/tms32082.h b/src/devices/cpu/tms32082/tms32082.h index 415ce95d564..7bc54639cbf 100644 --- a/src/devices/cpu/tms32082/tms32082.h +++ b/src/devices/cpu/tms32082/tms32082.h @@ -10,7 +10,7 @@ class tms32082_mp_device : public cpu_device { public: // construction/destruction - tms32082_mp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32082_mp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); enum { @@ -157,7 +157,7 @@ class tms32082_pp_device : public cpu_device { public: // construction/destruction - tms32082_pp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms32082_pp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); enum { diff --git a/src/devices/cpu/tms34010/tms34010.cpp b/src/devices/cpu/tms34010/tms34010.cpp index 729b6ed0bf6..8b3883db3e8 100644 --- a/src/devices/cpu/tms34010/tms34010.cpp +++ b/src/devices/cpu/tms34010/tms34010.cpp @@ -58,7 +58,7 @@ DEFINE_DEVICE_TYPE(TMS34020, tms34020_device, "tms34020", "Texas Instruments TMS GLOBAL VARIABLES ***************************************************************************/ -tms340x0_device::tms340x0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_regs_map, bool is_34020) +tms340x0_device::tms340x0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_regs_map, bool is_34020) : cpu_device(mconfig, type, tag, owner, clock) , device_video_interface(mconfig, *this) , m_program_config("program", ENDIANNESS_LITTLE, is_34020 ? 32 : 16, 32, 3, internal_regs_map) @@ -95,13 +95,13 @@ tms340x0_device::tms340x0_device(const machine_config &mconfig, device_type type } -tms34010_device::tms34010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms34010_device::tms34010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms340x0_device(mconfig, TMS34010, tag, owner, clock, address_map_constructor(FUNC(tms34010_device::internal_regs_map), this), false) { } -tms34020_device::tms34020_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms34020_device::tms34020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms340x0_device(mconfig, TMS34020, tag, owner, clock, address_map_constructor(FUNC(tms34020_device::internal_regs_map), this), true) { } diff --git a/src/devices/cpu/tms34010/tms34010.h b/src/devices/cpu/tms34010/tms34010.h index b9165b17f77..f88f852a6d3 100644 --- a/src/devices/cpu/tms34010/tms34010.h +++ b/src/devices/cpu/tms34010/tms34010.h @@ -252,7 +252,7 @@ protected: }; // construction/destruction - tms340x0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_regs_map, bool is_34020); + tms340x0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_regs_map, bool is_34020); // device-level overrides virtual void device_start() override; @@ -958,7 +958,7 @@ protected: class tms34010_device : public tms340x0_device { public: - tms34010_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms34010_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); /* Reads & writes to the 34010 I/O registers; place at 0xc0000000 */ virtual void io_register_w(offs_t offset, u16 data, u16 mem_mask = ~u16(0)) override; @@ -998,7 +998,7 @@ DECLARE_DEVICE_TYPE(TMS34010, tms34010_device) class tms34020_device : public tms340x0_device { public: - tms34020_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms34020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); /* Reads & writes to the 34020 I/O registers; place at 0xc0000000 */ virtual void io_register_w(offs_t offset, u16 data, u16 mem_mask = ~u16(0)) override; diff --git a/src/devices/cpu/tms57002/tms57002.cpp b/src/devices/cpu/tms57002/tms57002.cpp index e137a6b2efd..d3d091753b6 100644 --- a/src/devices/cpu/tms57002/tms57002.cpp +++ b/src/devices/cpu/tms57002/tms57002.cpp @@ -20,7 +20,7 @@ void tms57002_device::internal_pgm(address_map &map) map(0x00, 0xff).ram(); } -tms57002_device::tms57002_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +tms57002_device::tms57002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, TMS57002, tag, owner, clock) , device_sound_interface(mconfig, *this) , macc(0), macc_read(0), macc_write(0), st0(0), st1(0), sti(0), txrd(0) diff --git a/src/devices/cpu/tms57002/tms57002.h b/src/devices/cpu/tms57002/tms57002.h index 12bcd732120..03b2fecd0bc 100644 --- a/src/devices/cpu/tms57002/tms57002.h +++ b/src/devices/cpu/tms57002/tms57002.h @@ -15,7 +15,7 @@ class tms57002_device : public cpu_device, public device_sound_interface { public: - tms57002_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + tms57002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto dready_callback() { return m_dready_callback.bind(); } auto pc0_callback() { return m_pc0_callback.bind(); } diff --git a/src/devices/cpu/tms7000/tms7000.cpp b/src/devices/cpu/tms7000/tms7000.cpp index 3ce6f001ca2..57e88914f61 100644 --- a/src/devices/cpu/tms7000/tms7000.cpp +++ b/src/devices/cpu/tms7000/tms7000.cpp @@ -111,12 +111,12 @@ void tms70c46_device::tms70c46_mem(address_map &map) // device definitions -tms7000_device::tms7000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7000_device::tms7000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7000, tag, owner, clock, address_map_constructor(FUNC(tms7000_device::tms7000_mem), this), 0) { } -tms7000_device::tms7000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal, uint32_t info_flags) : +tms7000_device::tms7000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal, uint32_t info_flags) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, 8, 16, 0, internal), m_port_in_cb(*this), @@ -126,57 +126,57 @@ tms7000_device::tms7000_device(const machine_config &mconfig, device_type type, { } -tms7020_device::tms7020_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7020_device::tms7020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7020, tag, owner, clock, address_map_constructor(FUNC(tms7020_device::tms7020_mem), this), 0) { } -tms7020_exl_device::tms7020_exl_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7020_exl_device::tms7020_exl_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7020_EXL, tag, owner, clock, address_map_constructor(FUNC(tms7020_exl_device::tms7020_mem), this), 0) { } -tms7040_device::tms7040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7040_device::tms7040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7040, tag, owner, clock, address_map_constructor(FUNC(tms7040_device::tms7040_mem), this), 0) { } -tms70c00_device::tms70c00_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms70c00_device::tms70c00_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS70C00, tag, owner, clock, address_map_constructor(FUNC(tms70c00_device::tms7000_mem), this), CHIP_IS_CMOS) { } -tms70c20_device::tms70c20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms70c20_device::tms70c20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS70C20, tag, owner, clock, address_map_constructor(FUNC(tms70c20_device::tms7020_mem), this), CHIP_IS_CMOS) { } -tms70c40_device::tms70c40_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms70c40_device::tms70c40_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS70C40, tag, owner, clock, address_map_constructor(FUNC(tms70c40_device::tms7040_mem), this), CHIP_IS_CMOS) { } -tms7001_device::tms7001_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7001_device::tms7001_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7001, tag, owner, clock, address_map_constructor(FUNC(tms7001_device::tms7001_mem), this), CHIP_FAMILY_70X2) { } -tms7041_device::tms7041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7041_device::tms7041_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7041, tag, owner, clock, address_map_constructor(FUNC(tms7041_device::tms7041_mem), this), CHIP_FAMILY_70X2) { } -tms7002_device::tms7002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7002_device::tms7002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7002, tag, owner, clock, address_map_constructor(FUNC(tms7002_device::tms7002_mem), this), CHIP_FAMILY_70X2) { } -tms7042_device::tms7042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms7042_device::tms7042_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS7042, tag, owner, clock, address_map_constructor(FUNC(tms7042_device::tms7042_mem), this), CHIP_FAMILY_70X2) { } -tms70c46_device::tms70c46_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tms70c46_device::tms70c46_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms7000_device(mconfig, TMS70C46, tag, owner, clock, address_map_constructor(FUNC(tms70c46_device::tms70c46_mem), this), CHIP_IS_CMOS) { } diff --git a/src/devices/cpu/tms7000/tms7000.h b/src/devices/cpu/tms7000/tms7000.h index 8d623f5c725..29d93839363 100644 --- a/src/devices/cpu/tms7000/tms7000.h +++ b/src/devices/cpu/tms7000/tms7000.h @@ -25,7 +25,7 @@ class tms7000_device : public cpu_device { public: // construction/destruction - tms7000_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7000_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // read-only on 70x0 auto in_porta() { return m_port_in_cb[0].bind(); } @@ -75,7 +75,7 @@ protected: static constexpr uint32_t CHIP_FAMILY_70CX2 = 0x04; static constexpr uint32_t CHIP_FAMILY_MASK = 0x06; - tms7000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal, uint32_t info_flags); + tms7000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal, uint32_t info_flags); // device-level overrides virtual void device_start() override; @@ -275,14 +275,14 @@ protected: class tms7020_device : public tms7000_device { public: - tms7020_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7020_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms7020_exl_device : public tms7000_device { public: - tms7020_exl_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7020_exl_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void execute_one(uint8_t op) override; @@ -295,35 +295,35 @@ private: class tms7040_device : public tms7000_device { public: - tms7040_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7040_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms70c00_device : public tms7000_device { public: - tms70c00_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms70c00_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms70c20_device : public tms7000_device { public: - tms70c20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms70c20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms70c40_device : public tms7000_device { public: - tms70c40_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms70c40_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms70c46_device : public tms7000_device { public: - tms70c46_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms70c46_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint8_t control_r(); void control_w(uint8_t data); @@ -351,28 +351,28 @@ private: class tms7001_device : public tms7000_device { public: - tms7001_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7001_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms7041_device : public tms7000_device { public: - tms7041_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7041_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms7002_device : public tms7000_device { public: - tms7002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class tms7042_device : public tms7000_device { public: - tms7042_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms7042_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms9900/ti990_10.cpp b/src/devices/cpu/tms9900/ti990_10.cpp index 99cf65dfb0b..18ac7da0b32 100644 --- a/src/devices/cpu/tms9900/ti990_10.cpp +++ b/src/devices/cpu/tms9900/ti990_10.cpp @@ -43,7 +43,7 @@ twice their number. Accordingly, the TMS9900 has a CRU bitmask 0x0fff. ****************************************************************************/ -ti990_10_device::ti990_10_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ti990_10_device::ti990_10_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, TI990_10, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, 16, 21), m_io_config("cru", ENDIANNESS_BIG, 8, 12), diff --git a/src/devices/cpu/tms9900/ti990_10.h b/src/devices/cpu/tms9900/ti990_10.h index 93d3ecec4a0..3f0587af544 100644 --- a/src/devices/cpu/tms9900/ti990_10.h +++ b/src/devices/cpu/tms9900/ti990_10.h @@ -16,7 +16,7 @@ class ti990_10_device : public cpu_device { public: - ti990_10_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ti990_10_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); ~ti990_10_device(); protected: diff --git a/src/devices/cpu/tms9900/tms9900.cpp b/src/devices/cpu/tms9900/tms9900.cpp index 6f9ef5f7926..eeeb15150a4 100644 --- a/src/devices/cpu/tms9900/tms9900.cpp +++ b/src/devices/cpu/tms9900/tms9900.cpp @@ -156,7 +156,7 @@ enum twice their number. Accordingly, the TMS9900 has a CRU bitmask 0x0fff. ****************************************************************************/ -tms99xx_device::tms99xx_device(const machine_config &mconfig, device_type type, const char *tag, int data_width, int prg_addr_bits, int cru_addr_bits, device_t *owner, uint32_t clock) +tms99xx_device::tms99xx_device(const machine_config &mconfig, device_type type, const char *tag, int data_width, int prg_addr_bits, int cru_addr_bits, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, data_width, prg_addr_bits), m_setaddress_config("setaddress", ENDIANNESS_BIG, data_width, prg_addr_bits), // choose the same width as the program space @@ -185,7 +185,7 @@ tms99xx_device::~tms99xx_device() Constructor for TMS9900 ****************************************************************************/ -tms9900_device::tms9900_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms9900_device::tms9900_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms99xx_device(mconfig, TMS9900, tag, 16, 16, 12, owner, clock) { } diff --git a/src/devices/cpu/tms9900/tms9900.h b/src/devices/cpu/tms9900/tms9900.h index 1be5e10f679..5d7e094d48d 100644 --- a/src/devices/cpu/tms9900/tms9900.h +++ b/src/devices/cpu/tms9900/tms9900.h @@ -64,7 +64,7 @@ public: protected: tms99xx_device(const machine_config &mconfig, device_type type, const char *tag, int data_width, int prg_addr_bits, int cru_addr_bits, - device_t *owner, uint32_t clock); + device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -386,7 +386,7 @@ private: class tms9900_device : public tms99xx_device { public: - tms9900_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms9900_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/tms9900/tms9980a.cpp b/src/devices/cpu/tms9900/tms9980a.cpp index d30dda66ae2..91cb8750481 100644 --- a/src/devices/cpu/tms9900/tms9980a.cpp +++ b/src/devices/cpu/tms9900/tms9980a.cpp @@ -80,17 +80,17 @@ /**************************************************************************** Constructor ****************************************************************************/ -tms9980a_device::tms9980a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +tms9980a_device::tms9980a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : tms99xx_device(mconfig, type, tag, 8, 14, 11, owner, clock) { } -tms9980a_device::tms9980a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms9980a_device::tms9980a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms9980a_device(mconfig, TMS9980A, tag, owner, clock) { } -tms9981_device::tms9981_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms9981_device::tms9981_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms9980a_device(mconfig, TMS9981, tag, owner, clock) { } diff --git a/src/devices/cpu/tms9900/tms9980a.h b/src/devices/cpu/tms9900/tms9980a.h index 9210007a5ec..88e35eb0693 100644 --- a/src/devices/cpu/tms9900/tms9980a.h +++ b/src/devices/cpu/tms9900/tms9980a.h @@ -26,10 +26,10 @@ enum class tms9980a_device : public tms99xx_device { public: - tms9980a_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms9980a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - tms9980a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tms9980a_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); void mem_read(void) override; void mem_write(void) override; @@ -58,7 +58,7 @@ protected: class tms9981_device : public tms9980a_device { public: - tms9981_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms9981_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type definition diff --git a/src/devices/cpu/tms9900/tms9995.cpp b/src/devices/cpu/tms9900/tms9995.cpp index c1b07bcbc70..103d78186a5 100644 --- a/src/devices/cpu/tms9900/tms9995.cpp +++ b/src/devices/cpu/tms9900/tms9995.cpp @@ -157,13 +157,13 @@ constexpr int tms9995_device::AS_SETADDRESS; Constructor ****************************************************************************/ -tms9995_device::tms9995_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tms9995_device::tms9995_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms9995_device(mconfig, TMS9995, tag, owner, clock) { m_mp9537 = false; } -tms9995_device::tms9995_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +tms9995_device::tms9995_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), m_state_any(0), PC(0), diff --git a/src/devices/cpu/tms9900/tms9995.h b/src/devices/cpu/tms9900/tms9995.h index 8022ca74459..7eb767d4b4e 100644 --- a/src/devices/cpu/tms9900/tms9995.h +++ b/src/devices/cpu/tms9900/tms9995.h @@ -31,7 +31,7 @@ class tms9995_device : public cpu_device public: static constexpr int AS_SETADDRESS = 4; - tms9995_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + tms9995_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // READY input line. When asserted (high), the memory is ready for data exchange. // We chose to use a direct method instead of a delegate to keep performance @@ -60,7 +60,7 @@ public: void set_overflow_interrupt( int enable ) { m_check_overflow = (enable!=0); } protected: - tms9995_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tms9995_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -410,7 +410,7 @@ private: class tms9995_mp9537_device : public tms9995_device { public: - tms9995_mp9537_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) + tms9995_mp9537_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tms9995_device(mconfig, TMS9995_MP9537, tag, owner, clock) { m_mp9537 = true; diff --git a/src/devices/cpu/tx0/tx0.cpp b/src/devices/cpu/tx0/tx0.cpp index 2a7b0c3775b..7add2254e58 100644 --- a/src/devices/cpu/tx0/tx0.cpp +++ b/src/devices/cpu/tx0/tx0.cpp @@ -46,7 +46,7 @@ DEFINE_DEVICE_TYPE(TX0_8KW_OLD, tx0_8kwo_device, "tx0_8kwo_cpu", "MIT Lincoln La DEFINE_DEVICE_TYPE(TX0_64KW, tx0_64kw_device, "tx0_64kw_cpu", "MIT Lincoln Laboratory TX-0 64KW") -tx0_device::tx0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addr_bits, int address_mask, int ir_mask) +tx0_device::tx0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addr_bits, int address_mask, int ir_mask) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 32, addr_bits , -2), m_mbr(0), m_ac(0), m_mar(0), m_pc(0), m_ir(0), m_lr(0), m_xr(0), m_pf(0), m_tbr(0), m_tac(0), m_cm_sel(0) , m_lr_sel(0), m_gbl_cm_sel(0), m_stop_cyc0(0), m_stop_cyc1(0), m_run(0), m_rim(0), m_cycle(0), m_ioh(0), m_ios(0), m_rim_step(0) @@ -66,23 +66,23 @@ tx0_device::tx0_device(const machine_config &mconfig, device_type type, const ch m_program_config.m_is_octal = true; } -tx0_8kw_device::tx0_8kw_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +tx0_8kw_device::tx0_8kw_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : tx0_device(mconfig, type, tag, owner, clock, 13, ADDRESS_MASK_8KW, 037) { } -tx0_8kw_device::tx0_8kw_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tx0_8kw_device::tx0_8kw_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tx0_8kw_device(mconfig, TX0_8KW, tag, owner, clock) { } -tx0_8kwo_device::tx0_8kwo_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tx0_8kwo_device::tx0_8kwo_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tx0_8kw_device(mconfig, TX0_8KW_OLD, tag, owner, clock) { } -tx0_64kw_device::tx0_64kw_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tx0_64kw_device::tx0_64kw_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : tx0_device(mconfig, TX0_64KW, tag, owner, clock, 16, ADDRESS_MASK_64KW, 03) { } diff --git a/src/devices/cpu/tx0/tx0.h b/src/devices/cpu/tx0/tx0.h index 8c57c08e8f7..0ff15127e44 100644 --- a/src/devices/cpu/tx0/tx0.h +++ b/src/devices/cpu/tx0/tx0.h @@ -41,7 +41,7 @@ public: protected: // construction/destruction - tx0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addr_bits, int address_mask, int ir_mask); + tx0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addr_bits, int address_mask, int ir_mask); // device-level overrides virtual void device_start() override; @@ -133,7 +133,7 @@ public: tx0_8kw_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); protected: - tx0_8kw_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + tx0_8kw_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); virtual void execute_run() override; virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; diff --git a/src/devices/cpu/ucom4/ucom4.cpp b/src/devices/cpu/ucom4/ucom4.cpp index ade42ba1e12..45c9575cce1 100644 --- a/src/devices/cpu/ucom4/ucom4.cpp +++ b/src/devices/cpu/ucom4/ucom4.cpp @@ -64,7 +64,7 @@ void ucom4_cpu_device::data_96x4(address_map &map) // device definitions -ucom4_cpu_device::ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) +ucom4_cpu_device::ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, prgwidth, 0, program) , m_data_config("data", ENDIANNESS_BIG, 8, datawidth, 0, data) @@ -86,27 +86,27 @@ ucom4_cpu_device::ucom4_cpu_device(const machine_config &mconfig, device_type ty { } -upd546_cpu_device::upd546_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd546_cpu_device::upd546_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ucom4_cpu_device(mconfig, NEC_D546, tag, owner, clock, NEC_UCOM43, 3 /* stack levels */, 11 /* prg width */, address_map_constructor(FUNC(upd546_cpu_device::program_2k), this), 7 /* data width */, address_map_constructor(FUNC(upd546_cpu_device::data_96x4), this)) { } -upd553_cpu_device::upd553_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd553_cpu_device::upd553_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ucom4_cpu_device(mconfig, NEC_D553, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd553_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd553_cpu_device::data_96x4), this)) { } -upd557l_cpu_device::upd557l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd557l_cpu_device::upd557l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ucom4_cpu_device(mconfig, NEC_D557L, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd557l_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd557l_cpu_device::data_96x4), this)) { } -upd650_cpu_device::upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd650_cpu_device::upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ucom4_cpu_device(mconfig, NEC_D650, tag, owner, clock, NEC_UCOM43, 3, 11, address_map_constructor(FUNC(upd650_cpu_device::program_2k), this), 7, address_map_constructor(FUNC(upd650_cpu_device::data_96x4), this)) { } -upd552_cpu_device::upd552_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd552_cpu_device::upd552_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ucom4_cpu_device(mconfig, NEC_D552, tag, owner, clock, NEC_UCOM44, 1, 10, address_map_constructor(FUNC(upd552_cpu_device::program_1k), this), 6, address_map_constructor(FUNC(upd552_cpu_device::data_64x4), this)) { } diff --git a/src/devices/cpu/ucom4/ucom4.h b/src/devices/cpu/ucom4/ucom4.h index 29b766b5cd4..5111c8a0880 100644 --- a/src/devices/cpu/ucom4/ucom4.h +++ b/src/devices/cpu/ucom4/ucom4.h @@ -81,7 +81,7 @@ protected: }; // construction/destruction - ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); + ucom4_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int family, int stack_levels, int prgwidth, address_map_constructor program, int datawidth, address_map_constructor data); // device-level overrides virtual void device_start() override; @@ -269,21 +269,21 @@ protected: class upd546_cpu_device : public ucom4_cpu_device { public: - upd546_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd546_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class upd553_cpu_device : public ucom4_cpu_device { public: - upd553_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd553_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class upd557l_cpu_device : public ucom4_cpu_device { public: - upd557l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd557l_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual u8 input_r(int index) override; @@ -294,14 +294,14 @@ protected: class upd650_cpu_device : public ucom4_cpu_device { public: - upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd650_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class upd552_cpu_device : public ucom4_cpu_device { public: - upd552_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd552_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/unsp/unsp.cpp b/src/devices/cpu/unsp/unsp.cpp index f0c0b929454..76b871bfd40 100644 --- a/src/devices/cpu/unsp/unsp.cpp +++ b/src/devices/cpu/unsp/unsp.cpp @@ -35,7 +35,7 @@ DEFINE_DEVICE_TYPE(UNSP_20, unsp_20_device, "unsp_20", "SunPlus u'nSP (ISA 2.0)" /* size of the execution code cache */ #define CACHE_SIZE (64 * 1024 * 1024) -unsp_device::unsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal) +unsp_device::unsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal) : cpu_device(mconfig, type, tag, owner, clock) , m_core(nullptr) , m_program_config("program", ENDIANNESS_BIG, 16, 23, -1, internal) @@ -63,21 +63,21 @@ unsp_device::unsp_device(const machine_config &mconfig, device_type type, const m_numregs = 8; } -unsp_device::unsp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +unsp_device::unsp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : unsp_device(mconfig, UNSP, tag, owner, clock, address_map_constructor()) { m_iso = 10; m_numregs = 8; } -unsp_11_device::unsp_11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +unsp_11_device::unsp_11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : unsp_device(mconfig, UNSP_11, tag, owner, clock, address_map_constructor()) { m_iso = 11; m_numregs = 8; } -unsp_11_device::unsp_11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal) +unsp_11_device::unsp_11_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal) : unsp_device(mconfig, type, tag, owner, clock, internal) { m_iso = 11; @@ -85,28 +85,28 @@ unsp_11_device::unsp_11_device(const machine_config &mconfig, device_type type, } -unsp_12_device::unsp_12_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +unsp_12_device::unsp_12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : unsp_11_device(mconfig, UNSP_12, tag, owner, clock, address_map_constructor()) { m_iso = 12; m_numregs = 8; } -unsp_12_device::unsp_12_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal) +unsp_12_device::unsp_12_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal) : unsp_11_device(mconfig, type, tag, owner, clock, internal) { m_iso = 12; m_numregs = 8; } -unsp_20_device::unsp_20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +unsp_20_device::unsp_20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : unsp_12_device(mconfig, UNSP_20, tag, owner, clock, address_map_constructor()) { m_iso = 20; m_numregs = 16; } -unsp_20_device::unsp_20_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal) +unsp_20_device::unsp_20_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal) : unsp_12_device(mconfig, type, tag, owner, clock, internal) { m_iso = 20; diff --git a/src/devices/cpu/unsp/unsp.h b/src/devices/cpu/unsp/unsp.h index 010720adeec..6e6c6542be5 100644 --- a/src/devices/cpu/unsp/unsp.h +++ b/src/devices/cpu/unsp/unsp.h @@ -96,7 +96,7 @@ class unsp_device : public cpu_device public: // construction/destruction - unsp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + unsp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual ~unsp_device(); void set_vectorbase(uint16_t vector) { m_vectorbase = vector; } @@ -121,7 +121,7 @@ public: void cfunc_muls(); protected: - unsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal); + unsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal); // device-level overrides virtual void device_start() override; @@ -358,10 +358,10 @@ class unsp_11_device : public unsp_device { public: // construction/destruction - unsp_11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + unsp_11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - unsp_11_device(const machine_config& mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal); + unsp_11_device(const machine_config& mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal); private: }; @@ -370,10 +370,10 @@ class unsp_12_device : public unsp_11_device { public: // construction/destruction - unsp_12_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + unsp_12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - unsp_12_device(const machine_config& mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal); + unsp_12_device(const machine_config& mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal); virtual void execute_fxxx_101_group(uint16_t op) override; virtual void execute_exxx_group(uint16_t op) override; @@ -387,10 +387,10 @@ class unsp_20_device : public unsp_12_device { public: // construction/destruction - unsp_20_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + unsp_20_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - unsp_20_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal); + unsp_20_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal); virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; virtual void execute_extended_group(uint16_t op) override; diff --git a/src/devices/cpu/upd7725/upd7725.cpp b/src/devices/cpu/upd7725/upd7725.cpp index 51c2faf3b6a..09bf25cc21b 100644 --- a/src/devices/cpu/upd7725/upd7725.cpp +++ b/src/devices/cpu/upd7725/upd7725.cpp @@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(UPD7725, upd7725_device, "upd7725", "NEC uPD7725") DEFINE_DEVICE_TYPE(UPD96050, upd96050_device, "upd96050", "NEC uPD96050") -necdsp_device::necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t abits, uint32_t dbits) +necdsp_device::necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t abits, uint32_t dbits) : cpu_device(mconfig, type, tag, owner, clock), m_program_config("program", ENDIANNESS_BIG, 32, abits, -2), // data bus width, address bus width, -2 means DWORD-addressable m_data_config("data", ENDIANNESS_BIG, 16, dbits, -1), m_icount(0), // -1 for WORD-addressable @@ -45,12 +45,12 @@ necdsp_device::necdsp_device(const machine_config &mconfig, device_type type, co } -upd7725_device::upd7725_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd7725_device::upd7725_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : necdsp_device(mconfig, UPD7725, tag, owner, clock, 11, 11) { } -upd96050_device::upd96050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd96050_device::upd96050_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : necdsp_device(mconfig, UPD96050, tag, owner, clock, 14, 12) { } diff --git a/src/devices/cpu/upd7725/upd7725.h b/src/devices/cpu/upd7725/upd7725.h index ed17af002eb..fcd5fe8d473 100644 --- a/src/devices/cpu/upd7725/upd7725.h +++ b/src/devices/cpu/upd7725/upd7725.h @@ -41,7 +41,7 @@ public: protected: // construction/destruction - necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t abits, uint32_t dbits); + necdsp_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t abits, uint32_t dbits); // device-level overrides virtual void device_start() override; @@ -166,14 +166,14 @@ class upd7725_device : public necdsp_device { public: // construction/destruction - upd7725_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd7725_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class upd96050_device : public necdsp_device { public: // construction/destruction - upd96050_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd96050_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); uint16_t dataram_r(uint16_t addr) { return dataRAM[addr]; } void dataram_w(uint16_t addr, uint16_t data) { dataRAM[addr] = data; } diff --git a/src/devices/cpu/upd7810/upd7810.cpp b/src/devices/cpu/upd7810/upd7810.cpp index 929070e61fc..8569fa4ab04 100644 --- a/src/devices/cpu/upd7810/upd7810.cpp +++ b/src/devices/cpu/upd7810/upd7810.cpp @@ -404,7 +404,7 @@ void upd7810_device::upd_internal_4096_rom_256_ram_map(address_map &map) map(0xff00, 0xffff).ram(); } -upd7810_device::upd7810_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) +upd7810_device::upd7810_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock) , m_to_func(*this) , m_co0_func(*this) @@ -444,17 +444,17 @@ void upd7810_device::configure_ops() m_op74 = s_op74; } -upd7810_device::upd7810_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd7810_device::upd7810_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd7810_device(mconfig, UPD7810, tag, owner, clock, address_map_constructor(FUNC(upd7810_device::upd_internal_256_ram_map), this)) { } -upd78c10_device::upd78c10_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) +upd78c10_device::upd78c10_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : upd7810_device(mconfig, type, tag, owner, clock, internal_map) { } -upd78c10_device::upd78c10_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd78c10_device::upd78c10_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78c10_device(mconfig, UPD78C10, tag, owner, clock, address_map_constructor(FUNC(upd78c10_device::upd_internal_256_ram_map), this)) { } @@ -472,7 +472,7 @@ void upd7807_device::configure_ops() } -upd7807_device::upd7807_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd7807_device::upd7807_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd7810_device(mconfig, UPD7807, tag, owner, clock, address_map_constructor(FUNC(upd7807_device::upd_internal_256_ram_map), this)) { } @@ -489,7 +489,7 @@ void upd7801_device::configure_ops() m_opXX = s_opXX_7801; } -upd7801_device::upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd7801_device::upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd7810_device(mconfig, UPD7801, tag, owner, clock, address_map_constructor(FUNC(upd7801_device::upd_internal_128_ram_map), this)) { } @@ -506,12 +506,12 @@ void upd78c05_device::configure_ops() m_opXX = s_opXX_78c05; } -upd78c05_device::upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map) +upd78c05_device::upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map) : upd7810_device(mconfig, type, tag, owner, clock, internal_map) { } -upd78c05_device::upd78c05_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd78c05_device::upd78c05_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78c05_device(mconfig, UPD78C05, tag, owner, clock, address_map_constructor(FUNC(upd78c05_device::upd_internal_128_ram_map), this)) { } @@ -528,7 +528,7 @@ void upd78c06_device::configure_ops() m_opXX = s_opXX_78c06; } -upd78c06_device::upd78c06_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd78c06_device::upd78c06_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78c05_device(mconfig, UPD78C06, tag, owner, clock, address_map_constructor(FUNC(upd78c06_device::upd_internal_4096_rom_128_ram_map), this)) { } diff --git a/src/devices/cpu/upd7810/upd7810.h b/src/devices/cpu/upd7810/upd7810.h index 40e4b89ff87..0f21e429311 100644 --- a/src/devices/cpu/upd7810/upd7810.h +++ b/src/devices/cpu/upd7810/upd7810.h @@ -41,7 +41,7 @@ class upd7810_device : public cpu_device { public: // construction/destruction - upd7810_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd7810_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto to_func() { return m_to_func.bind(); } @@ -131,7 +131,7 @@ protected: INTSB = 0x0010 }; - upd7810_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); + upd7810_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); // device-level overrides virtual void device_start() override; @@ -1356,10 +1356,10 @@ class upd78c10_device : public upd7810_device { public: // construction/destruction - upd78c10_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd78c10_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - upd78c10_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); + upd78c10_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); }; @@ -1367,7 +1367,7 @@ class upd7807_device : public upd7810_device { public: // construction/destruction - upd7807_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd7807_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -1379,7 +1379,7 @@ class upd7801_device : public upd7810_device { public: // construction/destruction - upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd7801_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: virtual void device_reset() override; @@ -1397,10 +1397,10 @@ class upd78c05_device : public upd7810_device { public: // construction/destruction - upd78c05_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd78c05_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, address_map_constructor internal_map); + upd78c05_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor internal_map); virtual void device_start() override; virtual void device_reset() override; @@ -1416,7 +1416,7 @@ class upd78c06_device : public upd78c05_device { public: // construction/destruction - upd78c06_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd78c06_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); virtual void configure_ops() override; }; diff --git a/src/devices/cpu/upd7810/upd7811.cpp b/src/devices/cpu/upd7810/upd7811.cpp index e5105e4f9b7..9da7d65f72c 100644 --- a/src/devices/cpu/upd7810/upd7811.cpp +++ b/src/devices/cpu/upd7810/upd7811.cpp @@ -26,12 +26,12 @@ DEFINE_DEVICE_TYPE(UPD7811, upd7811_device, "upd7811", "NEC uPD7811") DEFINE_DEVICE_TYPE(UPD78C11, upd78c11_device, "upd78c11", "NEC uPD78C11") -upd7811_device::upd7811_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd7811_device::upd7811_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd7810_device(mconfig, UPD7811, tag, owner, clock, address_map_constructor(FUNC(upd7811_device::upd_internal_4096_rom_256_ram_map), this)) { } -upd78c11_device::upd78c11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +upd78c11_device::upd78c11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78c10_device(mconfig, UPD78C11, tag, owner, clock, address_map_constructor(FUNC(upd78c11_device::upd_internal_4096_rom_256_ram_map), this)) { } diff --git a/src/devices/cpu/upd7810/upd7811.h b/src/devices/cpu/upd7810/upd7811.h index 2d98f64da5f..bac8854a871 100644 --- a/src/devices/cpu/upd7810/upd7811.h +++ b/src/devices/cpu/upd7810/upd7811.h @@ -15,14 +15,14 @@ class upd7811_device : public upd7810_device { public: // construction/destruction - upd7811_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd7811_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class upd78c11_device : public upd78c10_device { public: // construction/destruction - upd78c11_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + upd78c11_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; #endif // MAME_CPU_UPD7810_UPD7811_H diff --git a/src/devices/cpu/upd78k/upd78k0.cpp b/src/devices/cpu/upd78k/upd78k0.cpp index f1f48402226..b909b681a35 100644 --- a/src/devices/cpu/upd78k/upd78k0.cpp +++ b/src/devices/cpu/upd78k/upd78k0.cpp @@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(UPD78053, upd78053_device, "upd78053", "NEC uPD78053") // upd78k0_device - constructor //------------------------------------------------- -upd78k0_device::upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map) +upd78k0_device::upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, mem_map) , m_iram_config("iram", ENDIANNESS_LITTLE, 16, iram_size > 0x200 ? 10 : iram_size > 0x100 ? 9 : 8, 0, @@ -192,7 +192,7 @@ void upd78k0_device::state_string_export(const device_state_entry &entry, std::s // upd78053_device - constructor //------------------------------------------------- -upd78053_device::upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd78053_device::upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78k0_device(mconfig, UPD78053, tag, owner, clock, 0x400, address_map_constructor(FUNC(upd78053_device::mem_map), this), address_map_constructor(FUNC(upd78053_device::sfr_map), this)) diff --git a/src/devices/cpu/upd78k/upd78k0.h b/src/devices/cpu/upd78k/upd78k0.h index 566dfab340f..7fb6feb8597 100644 --- a/src/devices/cpu/upd78k/upd78k0.h +++ b/src/devices/cpu/upd78k/upd78k0.h @@ -29,11 +29,11 @@ public: }; // configuration (TODO: callbacks) - void set_subclock(u32 clock) { m_subclock = clock; } + void set_subclock(const XTAL &clock) { m_subclock = clock; } void set_subclock(const XTAL &xtal) { m_subclock = xtal.value(); } protected: - upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map); + upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides virtual void device_start() override; @@ -83,9 +83,9 @@ class upd78053_device : public upd78k0_device { public: // device type constructors - upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); template <typename X> - upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock, X &&subclock) + upd78053_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock, X &&subclock) : upd78053_device(mconfig, tag, owner, clock) { set_subclock(std::forward<X>(subclock)); diff --git a/src/devices/cpu/upd78k/upd78k2.cpp b/src/devices/cpu/upd78k/upd78k2.cpp index b8c784e20e8..5915b057698 100644 --- a/src/devices/cpu/upd78k/upd78k2.cpp +++ b/src/devices/cpu/upd78k/upd78k2.cpp @@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(UPD78213, upd78213_device, "upd78213", "NEC uPD78213") // upd78k2_device - constructor //------------------------------------------------- -upd78k2_device::upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map) +upd78k2_device::upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, mem_map) , m_iram_config("iram", ENDIANNESS_LITTLE, 16, iram_bits, 0, address_map_constructor(FUNC(upd78k2_device::iram_map), this)) @@ -175,7 +175,7 @@ void upd78k2_device::state_string_export(const device_state_entry &entry, std::s // upd78210_device - constructor //------------------------------------------------- -upd78210_device::upd78210_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd78210_device::upd78210_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78k2_device(mconfig, UPD78210, tag, owner, clock, 7, address_map_constructor(), address_map_constructor(FUNC(upd78210_device::sfr_map), this)) @@ -207,7 +207,7 @@ void upd78210_device::sfr_map(address_map &map) // upd78213_device - constructor //------------------------------------------------- -upd78213_device::upd78213_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd78213_device::upd78213_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78k2_device(mconfig, UPD78213, tag, owner, clock, 8, address_map_constructor(FUNC(upd78213_device::mem_map), this), address_map_constructor(FUNC(upd78213_device::sfr_map), this)) diff --git a/src/devices/cpu/upd78k/upd78k2.h b/src/devices/cpu/upd78k/upd78k2.h index c0a8e07b825..f2391873410 100644 --- a/src/devices/cpu/upd78k/upd78k2.h +++ b/src/devices/cpu/upd78k/upd78k2.h @@ -32,7 +32,7 @@ public: // TODO: callbacks and configuration thereof protected: - upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map); + upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides virtual void device_start() override; @@ -80,7 +80,7 @@ class upd78210_device : public upd78k2_device { public: // device type constructor - upd78210_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd78210_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -97,7 +97,7 @@ class upd78213_device : public upd78k2_device { public: // device type constructor - upd78213_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd78213_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/upd78k/upd78k3.cpp b/src/devices/cpu/upd78k/upd78k3.cpp index e4a4a6daae5..e548bbbc010 100644 --- a/src/devices/cpu/upd78k/upd78k3.cpp +++ b/src/devices/cpu/upd78k/upd78k3.cpp @@ -24,7 +24,7 @@ DEFINE_DEVICE_TYPE(UPD78312, upd78312_device, "upd78312", "NEC uPD78312") // upd78k3_device - constructor //------------------------------------------------- -upd78k3_device::upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map) +upd78k3_device::upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor sfr_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, mem_map) , m_iram_config("iram", ENDIANNESS_LITTLE, 16, 8, 0, address_map_constructor(FUNC(upd78k3_device::iram_map), this)) @@ -264,12 +264,12 @@ void upd78k3_device::state_string_export(const device_state_entry &entry, std::s // upd78312_device - constructor //------------------------------------------------- -upd78312_device::upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd78312_device::upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78312_device(mconfig, UPD78312, tag, owner, clock, address_map_constructor(FUNC(upd78312_device::mem_map), this)) { } -upd78312_device::upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map) +upd78312_device::upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map) : upd78k3_device(mconfig, type, tag, owner, clock, map, address_map_constructor(FUNC(upd78312_device::sfr_map), this)) { @@ -280,7 +280,7 @@ upd78312_device::upd78312_device(const machine_config &mconfig, device_type type // upd78310_device - constructor //------------------------------------------------- -upd78310_device::upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd78310_device::upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78312_device(mconfig, UPD78310, tag, owner, clock, address_map_constructor()) { } diff --git a/src/devices/cpu/upd78k/upd78k3.h b/src/devices/cpu/upd78k/upd78k3.h index 22867376847..e8c2f8002fb 100644 --- a/src/devices/cpu/upd78k/upd78k3.h +++ b/src/devices/cpu/upd78k/upd78k3.h @@ -39,7 +39,7 @@ public: // TODO: callbacks and configuration thereof protected: - upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map); + upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides virtual void device_start() override; @@ -96,10 +96,10 @@ class upd78312_device : public upd78k3_device { public: // device type constructor - upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd78312_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor map); + upd78312_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor map); // device_disasm_interface overrides virtual std::unique_ptr<util::disasm_interface> create_disassembler() override; @@ -122,7 +122,7 @@ class upd78310_device : public upd78312_device { public: // device type constructor - upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd78310_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type declarations diff --git a/src/devices/cpu/upd78k/upd78k4.cpp b/src/devices/cpu/upd78k/upd78k4.cpp index 0aad7b0660a..1ef4438a76d 100644 --- a/src/devices/cpu/upd78k/upd78k4.cpp +++ b/src/devices/cpu/upd78k/upd78k4.cpp @@ -23,7 +23,7 @@ DEFINE_DEVICE_TYPE(UPD784031, upd784031_device, "upd784031", "NEC uPD784031") // upd78k4_device - constructor //------------------------------------------------- -upd78k4_device::upd78k4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map) +upd78k4_device::upd78k4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor sfr_map) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, mem_map) , m_iram_config("iram", ENDIANNESS_LITTLE, 16, 9, 0, address_map_constructor(FUNC(upd78k4_device::iram_map), this)) @@ -234,7 +234,7 @@ void upd78k4_device::state_string_export(const device_state_entry &entry, std::s // upd784031_device - constructor //------------------------------------------------- -upd784031_device::upd784031_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +upd784031_device::upd784031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : upd78k4_device(mconfig, UPD784031, tag, owner, clock, address_map_constructor(FUNC(upd784031_device::sfr_map), this), address_map_constructor(FUNC(upd784031_device::sfr_map), this)) diff --git a/src/devices/cpu/upd78k/upd78k4.h b/src/devices/cpu/upd78k/upd78k4.h index 435600b563c..1c2e12830f8 100644 --- a/src/devices/cpu/upd78k/upd78k4.h +++ b/src/devices/cpu/upd78k/upd78k4.h @@ -41,7 +41,7 @@ public: // TODO: callbacks and configuration thereof protected: - upd78k4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map); + upd78k4_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor sfr_map); // device-level overrides virtual void device_start() override; @@ -92,7 +92,7 @@ class upd784031_device : public upd78k4_device { public: // device type constructor - upd784031_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + upd784031_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides diff --git a/src/devices/cpu/v30mz/v30mz.cpp b/src/devices/cpu/v30mz/v30mz.cpp index 93c7ad1440e..358450e9583 100644 --- a/src/devices/cpu/v30mz/v30mz.cpp +++ b/src/devices/cpu/v30mz/v30mz.cpp @@ -75,7 +75,7 @@ enum nec_irqs { DEFINE_DEVICE_TYPE(V30MZ, v30mz_cpu_device, "v30mz", "NEC V30MZ") -v30mz_cpu_device::v30mz_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v30mz_cpu_device::v30mz_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, V30MZ, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 16, 20, 0) , m_io_config("io", ENDIANNESS_LITTLE, 16, 16, 0) diff --git a/src/devices/cpu/v30mz/v30mz.h b/src/devices/cpu/v30mz/v30mz.h index f194fba269c..e352feb7833 100644 --- a/src/devices/cpu/v30mz/v30mz.h +++ b/src/devices/cpu/v30mz/v30mz.h @@ -22,7 +22,7 @@ class v30mz_cpu_device : public cpu_device, public nec_disassembler::config { public: // construction/destruction - v30mz_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v30mz_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto vector_cb() { return m_vector_func.bind(); } uint32_t pc(); diff --git a/src/devices/cpu/v60/v60.cpp b/src/devices/cpu/v60/v60.cpp index fdce71f6808..e87fc10d999 100644 --- a/src/devices/cpu/v60/v60.cpp +++ b/src/devices/cpu/v60/v60.cpp @@ -83,13 +83,13 @@ DEFINE_DEVICE_TYPE(V70, v70_device, "v70", "NEC V70") // Set m_PIR (Processor ID) for NEC m_ LSB is reserved to NEC, // so I don't know what it contains. -v60_device::v60_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v60_device::v60_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v60_device(mconfig, V60, tag, owner, clock, 16, 24, 0x00006000) { } -v60_device::v60_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int databits, int addrbits, uint32_t pir) +v60_device::v60_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int databits, int addrbits, uint32_t pir) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, databits, addrbits, 0) , m_io_config("io", ENDIANNESS_LITTLE, 16, 24, 0) @@ -100,7 +100,7 @@ v60_device::v60_device(const machine_config &mconfig, device_type type, const ch // Set m_PIR (Processor ID) for NEC v70. LSB is reserved to NEC, // so I don't know what it contains. -v70_device::v70_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v70_device::v70_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : v60_device(mconfig, V70, tag, owner, clock, 32, 32, 0x00007000) { } diff --git a/src/devices/cpu/v60/v60.h b/src/devices/cpu/v60/v60.h index d617ec1bd56..4a6bc4dae9c 100644 --- a/src/devices/cpu/v60/v60.h +++ b/src/devices/cpu/v60/v60.h @@ -84,12 +84,12 @@ class v60_device : public cpu_device { public: // construction/destruction - v60_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v60_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void stall(); protected: - v60_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int databits, int addrbits, uint32_t pir); + v60_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int databits, int addrbits, uint32_t pir); // device-level overrides virtual void device_start() override; @@ -785,7 +785,7 @@ class v70_device : public v60_device { public: // construction/destruction - v70_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v70_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/v810/v810.cpp b/src/devices/cpu/v810/v810.cpp index 47a672baf69..c95ffac8262 100644 --- a/src/devices/cpu/v810/v810.cpp +++ b/src/devices/cpu/v810/v810.cpp @@ -38,7 +38,7 @@ DEFINE_DEVICE_TYPE(V810, v810_device, "v810", "NEC V810") -v810_device::v810_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +v810_device::v810_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, V810, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32, 0) , m_io_config("io", ENDIANNESS_LITTLE, 32, 32, 0) diff --git a/src/devices/cpu/v810/v810.h b/src/devices/cpu/v810/v810.h index a24abe48751..7ffe02ef727 100644 --- a/src/devices/cpu/v810/v810.h +++ b/src/devices/cpu/v810/v810.h @@ -83,7 +83,7 @@ class v810_device : public cpu_device { public: // construction/destruction - v810_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + v810_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/vt50/vt50.cpp b/src/devices/cpu/vt50/vt50.cpp index 7a964c4be5b..ecb4c0ae936 100644 --- a/src/devices/cpu/vt50/vt50.cpp +++ b/src/devices/cpu/vt50/vt50.cpp @@ -70,7 +70,7 @@ DEFINE_DEVICE_TYPE(VT50_CPU, vt50_cpu_device, "vt50_cpu", "DEC VT50 CPU") DEFINE_DEVICE_TYPE(VT52_CPU, vt52_cpu_device, "vt52_cpu", "DEC VT52 CPU") -vt5x_cpu_device::vt5x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int bbits, int ybits) +vt5x_cpu_device::vt5x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int bbits, int ybits) : cpu_device(mconfig, type, tag, owner, clock) , device_video_interface(mconfig, *this) , m_rom_config("program", ENDIANNESS_LITTLE, 8, 10, 0) @@ -122,12 +122,12 @@ vt5x_cpu_device::vt5x_cpu_device(const machine_config &mconfig, device_type type m_ram_config.m_is_octal = true; } -vt50_cpu_device::vt50_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +vt50_cpu_device::vt50_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : vt5x_cpu_device(mconfig, VT50_CPU, tag, owner, clock, 4, 4) { } -vt52_cpu_device::vt52_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +vt52_cpu_device::vt52_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : vt5x_cpu_device(mconfig, VT52_CPU, tag, owner, clock, 7, 5) , m_graphic_callback(*this) { diff --git a/src/devices/cpu/vt50/vt50.h b/src/devices/cpu/vt50/vt50.h index e9d0b39b1bc..ac664b1f318 100644 --- a/src/devices/cpu/vt50/vt50.h +++ b/src/devices/cpu/vt50/vt50.h @@ -38,7 +38,7 @@ public: protected: // construction/destruction - vt5x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int bbits, int ybits); + vt5x_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int bbits, int ybits); // device-level overrides virtual void device_config_complete() override; @@ -136,7 +136,7 @@ class vt50_cpu_device : public vt5x_cpu_device { public: // device type constructor - vt50_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + vt50_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_disasm_interface overrides @@ -149,7 +149,7 @@ class vt52_cpu_device : public vt5x_cpu_device { public: // device type constructor - vt52_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + vt52_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto graphic_callback() { return m_graphic_callback.bind(); } diff --git a/src/devices/cpu/vt61/vt61.cpp b/src/devices/cpu/vt61/vt61.cpp index 40a98cae7a8..e406c18596b 100644 --- a/src/devices/cpu/vt61/vt61.cpp +++ b/src/devices/cpu/vt61/vt61.cpp @@ -18,7 +18,7 @@ DEFINE_DEVICE_TYPE(VT61_CPU, vt61_cpu_device, "vt61_cpu", "DEC VT61 CPU") ALLOW_SAVE_TYPE(vt61_cpu_device::state); ALLOW_SAVE_TYPE(vt61_cpu_device::pc_mode); -vt61_cpu_device::vt61_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +vt61_cpu_device::vt61_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, VT61_CPU, tag, owner, clock) , m_program_config("microprogram", ENDIANNESS_LITTLE, 16, 10, -1) , m_memory_config("memory", ENDIANNESS_LITTLE, 8, 16, 0) diff --git a/src/devices/cpu/vt61/vt61.h b/src/devices/cpu/vt61/vt61.h index 971343fe095..42372275ad3 100644 --- a/src/devices/cpu/vt61/vt61.h +++ b/src/devices/cpu/vt61/vt61.h @@ -27,7 +27,7 @@ public: }; // construction/destruction - vt61_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + vt61_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/we32000/we32100.cpp b/src/devices/cpu/we32000/we32100.cpp index b7f166e5287..bc843eed413 100644 --- a/src/devices/cpu/we32000/we32100.cpp +++ b/src/devices/cpu/we32000/we32100.cpp @@ -15,7 +15,7 @@ // device type definitions DEFINE_DEVICE_TYPE(WE32100, we32100_device, "we32100", "AT&T WE32100") -we32100_device::we32100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +we32100_device::we32100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, WE32100, tag, owner, clock) , m_space_config("program", ENDIANNESS_BIG, 32, 32, 0) , m_r{0} diff --git a/src/devices/cpu/we32000/we32100.h b/src/devices/cpu/we32000/we32100.h index c34afc4279e..87a0de81c15 100644 --- a/src/devices/cpu/we32000/we32100.h +++ b/src/devices/cpu/we32000/we32100.h @@ -22,7 +22,7 @@ public: }; // construction/destruction - we32100_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + we32100_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/xavix2/xavix2.cpp b/src/devices/cpu/xavix2/xavix2.cpp index 2f1753b1523..0dc74794862 100644 --- a/src/devices/cpu/xavix2/xavix2.cpp +++ b/src/devices/cpu/xavix2/xavix2.cpp @@ -9,7 +9,7 @@ DEFINE_DEVICE_TYPE(XAVIX2, xavix2_device, "xavix2", "Xavix 2 CPU") const u8 xavix2_device::bpo[8] = { 4, 3, 3, 2, 2, 2, 2, 1 }; -xavix2_device::xavix2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +xavix2_device::xavix2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, XAVIX2, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 32, 32) { diff --git a/src/devices/cpu/xavix2/xavix2.h b/src/devices/cpu/xavix2/xavix2.h index 30e9ec5faea..de152204507 100644 --- a/src/devices/cpu/xavix2/xavix2.h +++ b/src/devices/cpu/xavix2/xavix2.h @@ -13,7 +13,7 @@ class xavix2_device : public cpu_device { public: - xavix2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + xavix2_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: enum { diff --git a/src/devices/cpu/z180/hd647180x.cpp b/src/devices/cpu/z180/hd647180x.cpp index cc70b0781a8..e568245f637 100644 --- a/src/devices/cpu/z180/hd647180x.cpp +++ b/src/devices/cpu/z180/hd647180x.cpp @@ -31,7 +31,7 @@ // device type definition DEFINE_DEVICE_TYPE(HD647180X, hd647180x_device, "hd647180x", "Hitachi HD647180X MCU") -hd647180x_device::hd647180x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd647180x_device::hd647180x_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180_device(mconfig, HD647180X, tag, owner, clock, true, address_map_constructor(FUNC(hd647180x_device::internal_map), this)) , m_port_input_cb(*this) , m_port_output_cb(*this) diff --git a/src/devices/cpu/z180/hd647180x.h b/src/devices/cpu/z180/hd647180x.h index 22d4212b4af..e5d816b2b1e 100644 --- a/src/devices/cpu/z180/hd647180x.h +++ b/src/devices/cpu/z180/hd647180x.h @@ -25,7 +25,7 @@ public: }; // construction/destruction - hd647180x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd647180x_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); auto in_pa_callback() { return m_port_input_cb[0].bind(); } auto in_pb_callback() { return m_port_input_cb[1].bind(); } diff --git a/src/devices/cpu/z180/z180.cpp b/src/devices/cpu/z180/z180.cpp index db7b4a3026b..c70c23c3ce6 100644 --- a/src/devices/cpu/z180/z180.cpp +++ b/src/devices/cpu/z180/z180.cpp @@ -87,7 +87,7 @@ DEFINE_DEVICE_TYPE(Z8S180, z8s180_device, "z8s180", "Zilog Z8S180") // enhanced DEFINE_DEVICE_TYPE(Z80182, z80182_device, "z80182", "Zilog Z80182") // further enhanced Z8S180 -z180_device::z180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool extended_io, address_map_constructor internal_map) +z180_device::z180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool extended_io, address_map_constructor internal_map) : cpu_device(mconfig, type, tag, owner, clock) , z80_daisy_chain_interface(mconfig, *this) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, 16, 12, internal_map) @@ -114,29 +114,29 @@ std::unique_ptr<util::disasm_interface> z180_device::create_disassembler() return std::make_unique<z180_disassembler>(); } -z80180_device::z80180_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z80180_device::z80180_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180_device(mconfig, Z80180, tag, owner, clock, false, address_map_constructor()) { } -hd64180rp_device::hd64180rp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +hd64180rp_device::hd64180rp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180_device(mconfig, HD64180RP, tag, owner, clock, false, address_map_constructor()) { // 64-pin DIP versions omit A19 set_address_width(19); } -z8s180_device::z8s180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) +z8s180_device::z8s180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : z180_device(mconfig, type, tag, owner, clock, false, address_map_constructor()) { } -z8s180_device::z8s180_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8s180_device::z8s180_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8s180_device(mconfig, Z8S180, tag, owner, clock) { } -z80182_device::z80182_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z80182_device::z80182_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8s180_device(mconfig, Z80182, tag, owner, clock) { } diff --git a/src/devices/cpu/z180/z180.h b/src/devices/cpu/z180/z180.h index 62213845b05..8ec6d2af297 100644 --- a/src/devices/cpu/z180/z180.h +++ b/src/devices/cpu/z180/z180.h @@ -126,7 +126,7 @@ public: protected: // construction/destruction - z180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, bool extended_io, address_map_constructor internal_map); + z180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, bool extended_io, address_map_constructor internal_map); // device-level overrides virtual void device_start() override; @@ -1810,24 +1810,24 @@ class z80180_device : public z180_device { public: // construction/destruction - z80180_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z80180_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class hd64180rp_device : public z180_device { public: // construction/destruction - hd64180rp_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + hd64180rp_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class z8s180_device : public z180_device { public: // construction/destruction - z8s180_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8s180_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: - z8s180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + z8s180_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -1851,7 +1851,7 @@ class z80182_device : public z8s180_device { public: // construction/destruction - z80182_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z80182_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; DECLARE_DEVICE_TYPE(Z80180, z80180_device) diff --git a/src/devices/cpu/z180/z180asci.cpp b/src/devices/cpu/z180/z180asci.cpp index 3abf9683bc8..e4f919f01c5 100644 --- a/src/devices/cpu/z180/z180asci.cpp +++ b/src/devices/cpu/z180/z180asci.cpp @@ -65,7 +65,7 @@ static constexpr u8 Z180_ASEXT1_MASK = 0x1f; // z180asci_channel_base //************************************************************************** -z180asci_channel_base::z180asci_channel_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const int id, const bool ext) +z180asci_channel_base::z180asci_channel_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const int id, const bool ext) : device_t(mconfig, type, tag, owner, clock) , m_rcv_clock(nullptr) , m_tra_clock(nullptr) @@ -580,12 +580,12 @@ void z180asci_channel_base::output_rts(int rts) // z180asci_channel_0 //************************************************************************** -z180asci_channel_0::z180asci_channel_0(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext) +z180asci_channel_0::z180asci_channel_0(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const bool ext) : z180asci_channel_base(mconfig, type, tag, owner, clock, 0, ext) { } -z180asci_channel_0::z180asci_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z180asci_channel_0::z180asci_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180asci_channel_0(mconfig, Z180ASCI_CHANNEL_0, tag, owner, clock, false) { } @@ -629,12 +629,12 @@ void z180asci_channel_0::asext_w(uint8_t data) // z180asci_channel_1 //************************************************************************** -z180asci_channel_1::z180asci_channel_1(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext) +z180asci_channel_1::z180asci_channel_1(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const bool ext) : z180asci_channel_base(mconfig, type, tag, owner, clock, 1, ext) { } -z180asci_channel_1::z180asci_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z180asci_channel_1::z180asci_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180asci_channel_1(mconfig, Z180ASCI_CHANNEL_1, tag, owner, clock, false) { } @@ -677,7 +677,7 @@ void z180asci_channel_1::asext_w(uint8_t data) // z180asci_ext_channel_0 //************************************************************************** -z180asci_ext_channel_0::z180asci_ext_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z180asci_ext_channel_0::z180asci_ext_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180asci_channel_0(mconfig, Z180ASCI_EXT_CHANNEL_0, tag, owner, clock, true) { } @@ -686,7 +686,7 @@ z180asci_ext_channel_0::z180asci_ext_channel_0(const machine_config &mconfig, co // z180asci_channel_1 //************************************************************************** -z180asci_ext_channel_1::z180asci_ext_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z180asci_ext_channel_1::z180asci_ext_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z180asci_channel_1(mconfig, Z180ASCI_EXT_CHANNEL_1, tag, owner, clock, true) { } diff --git a/src/devices/cpu/z180/z180asci.h b/src/devices/cpu/z180/z180asci.h index 3794fe635a8..975297cce8f 100644 --- a/src/devices/cpu/z180/z180asci.h +++ b/src/devices/cpu/z180/z180asci.h @@ -50,7 +50,7 @@ public: int check_interrupt() { return m_irq; } void clear_interrupt() { m_irq = 0; } protected: - z180asci_channel_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const int id, const bool ext); + z180asci_channel_base(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const int id, const bool ext); // device-level overrides virtual void device_start() override; @@ -136,13 +136,13 @@ class z180asci_channel_0 : public z180asci_channel_base { public: // construction/destruction - z180asci_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z180asci_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void stat_w(uint8_t data) override; void asext_w(uint8_t data) override; void state_add(device_state_interface &parent) override; protected: - z180asci_channel_0(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext); + z180asci_channel_0(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const bool ext); // device-level overrides virtual void device_reset() override; }; @@ -155,13 +155,13 @@ class z180asci_channel_1 : public z180asci_channel_base { public: // construction/destruction - z180asci_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z180asci_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void stat_w(uint8_t data) override; void asext_w(uint8_t data) override; void state_add(device_state_interface &parent) override; protected: - z180asci_channel_1(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, const bool ext); + z180asci_channel_1(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, const bool ext); // device-level overrides virtual void device_reset() override; }; @@ -174,7 +174,7 @@ class z180asci_ext_channel_0 : public z180asci_channel_0 { public: // construction/destruction - z180asci_ext_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z180asci_ext_channel_0(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; //************************************************************************** @@ -185,7 +185,7 @@ class z180asci_ext_channel_1 : public z180asci_channel_1 { public: // construction/destruction - z180asci_ext_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z180asci_ext_channel_1(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; //************************************************************************** diff --git a/src/devices/cpu/z8/z8.cpp b/src/devices/cpu/z8/z8.cpp index d59651b683b..ecadd71514a 100644 --- a/src/devices/cpu/z8/z8.cpp +++ b/src/devices/cpu/z8/z8.cpp @@ -175,7 +175,7 @@ void z8_device::register_map(address_map &map) } -z8_device::z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, bool preprogrammed) +z8_device::z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t rom_size, bool preprogrammed) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 8, 16, 0, preprogrammed ? address_map_constructor(FUNC(z8_device::preprogrammed_map), this) : address_map_constructor(FUNC(z8_device::program_map), this)) , m_data_config("data", ENDIANNESS_BIG, 8, 16, 0) @@ -189,25 +189,25 @@ z8_device::z8_device(const machine_config &mconfig, device_type type, const char } -z8601_device::z8601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8601_device::z8601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z8601, tag, owner, clock, 0x800, false) { } -ub8830d_device::ub8830d_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +ub8830d_device::ub8830d_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, UB8830D, tag, owner, clock, 0x800, false) { } -z8611_device::z8611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8611_device::z8611_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z8611, tag, owner, clock, 0x1000, false) { } -z8671_device::z8671_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8671_device::z8671_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z8671, tag, owner, clock, 0x800, true) { } @@ -223,13 +223,13 @@ const tiny_rom_entry *z8671_device::device_rom_region() const } -z8681_device::z8681_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8681_device::z8681_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z8681, tag, owner, clock, 0, false) { } -z8682_device::z8682_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8682_device::z8682_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z8682, tag, owner, clock, 0x800, true) { } @@ -246,7 +246,7 @@ const tiny_rom_entry *z8682_device::device_rom_region() const } -z86e02_device::z86e02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z86e02_device::z86e02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8_device(mconfig, Z86E02, tag, owner, clock, 0x200, false) { } diff --git a/src/devices/cpu/z8/z8.h b/src/devices/cpu/z8/z8.h index c092cfd4066..ad4c2dd6e7f 100644 --- a/src/devices/cpu/z8/z8.h +++ b/src/devices/cpu/z8/z8.h @@ -39,7 +39,7 @@ protected: }; // construction/destruction - z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, uint32_t rom_size, bool preprogrammed); + z8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, uint32_t rom_size, bool preprogrammed); // device-level overrides virtual void device_start() override; @@ -383,28 +383,28 @@ private: class z8601_device : public z8_device { public: - z8601_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8601_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class ub8830d_device : public z8_device { public: - ub8830d_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + ub8830d_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class z8611_device : public z8_device { public: - z8611_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8611_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class z8671_device : public z8_device { public: - z8671_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8671_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: const tiny_rom_entry *device_rom_region() const override; @@ -414,14 +414,14 @@ protected: class z8681_device : public z8_device { public: - z8681_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8681_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class z8682_device : public z8_device { public: - z8682_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8682_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: const tiny_rom_entry *device_rom_region() const override; @@ -431,7 +431,7 @@ protected: class z86e02_device : public z8_device { public: - z86e02_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z86e02_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; diff --git a/src/devices/cpu/z80/ez80.cpp b/src/devices/cpu/z80/ez80.cpp index 525dc1c3b11..042a8535e4f 100644 --- a/src/devices/cpu/z80/ez80.cpp +++ b/src/devices/cpu/z80/ez80.cpp @@ -28,12 +28,12 @@ DEFINE_DEVICE_TYPE(EZ80, ez80_device, "ez80", "Zilog eZ80") // ez80_device - constructor //------------------------------------------------- -ez80_device::ez80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +ez80_device::ez80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, type, tag, owner, clock) { } -ez80_device::ez80_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ez80_device::ez80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : ez80_device(mconfig, EZ80, tag, owner, clock) { } diff --git a/src/devices/cpu/z80/ez80.h b/src/devices/cpu/z80/ez80.h index 2ae563d5b80..3cc5cbec604 100644 --- a/src/devices/cpu/z80/ez80.h +++ b/src/devices/cpu/z80/ez80.h @@ -22,11 +22,11 @@ class ez80_device : public z80_device { public: // device type constructor - ez80_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + ez80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // construction/destruction - ez80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + ez80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); }; // device type declaration diff --git a/src/devices/cpu/z80/kc82.cpp b/src/devices/cpu/z80/kc82.cpp index bf0a26290c4..0dcac14e9e2 100644 --- a/src/devices/cpu/z80/kc82.cpp +++ b/src/devices/cpu/z80/kc82.cpp @@ -17,7 +17,7 @@ // kc82_device - constructor //------------------------------------------------- -kc82_device::kc82_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor io_map) +kc82_device::kc82_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor io_map) : z80_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, 16, 10, mem_map) , m_opcodes_config("opcodes", ENDIANNESS_LITTLE, 8, 20, 0, 16, 10, mem_map) diff --git a/src/devices/cpu/z80/kc82.h b/src/devices/cpu/z80/kc82.h index c78269c77fe..b9ef94c5ab2 100644 --- a/src/devices/cpu/z80/kc82.h +++ b/src/devices/cpu/z80/kc82.h @@ -29,7 +29,7 @@ public: protected: // construction/destruction - kc82_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor io_map); + kc82_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, address_map_constructor mem_map, address_map_constructor io_map); // device-level overrides virtual void device_start() override; diff --git a/src/devices/cpu/z80/kl5c80a12.cpp b/src/devices/cpu/z80/kl5c80a12.cpp index 495a0ab4afd..4a8c4e30bd5 100644 --- a/src/devices/cpu/z80/kl5c80a12.cpp +++ b/src/devices/cpu/z80/kl5c80a12.cpp @@ -35,7 +35,7 @@ static const z80_daisy_config pseudo_daisy_config[] = { { "kp69" }, { nullptr } // kl5c80a12_device - constructor //------------------------------------------------- -kl5c80a12_device::kl5c80a12_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kl5c80a12_device::kl5c80a12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kc82_device(mconfig, KL5C80A12, tag, owner, clock, address_map_constructor(FUNC(kl5c80a12_device::internal_ram), this), address_map_constructor(FUNC(kl5c80a12_device::internal_io), this)) diff --git a/src/devices/cpu/z80/kl5c80a12.h b/src/devices/cpu/z80/kl5c80a12.h index 28434f8c8f6..c50fdca6297 100644 --- a/src/devices/cpu/z80/kl5c80a12.h +++ b/src/devices/cpu/z80/kl5c80a12.h @@ -28,7 +28,7 @@ public: }; // device type constructor - kl5c80a12_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + kl5c80a12_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto in_p0_callback() { return m_porta_in_callback[0].bind(); } diff --git a/src/devices/cpu/z80/kl5c80a16.cpp b/src/devices/cpu/z80/kl5c80a16.cpp index d92cc9142de..92cf6b56c77 100644 --- a/src/devices/cpu/z80/kl5c80a16.cpp +++ b/src/devices/cpu/z80/kl5c80a16.cpp @@ -30,7 +30,7 @@ static const z80_daisy_config pseudo_daisy_config[] = { { "kp69" }, { nullptr } // kl5c80a16_device - constructor //------------------------------------------------- -kl5c80a16_device::kl5c80a16_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kl5c80a16_device::kl5c80a16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kc82_device(mconfig, KL5C80A16, tag, owner, clock, address_map_constructor(), address_map_constructor(FUNC(kl5c80a16_device::internal_io), this)) diff --git a/src/devices/cpu/z80/kl5c80a16.h b/src/devices/cpu/z80/kl5c80a16.h index d3ac8eda636..34d71bb90d9 100644 --- a/src/devices/cpu/z80/kl5c80a16.h +++ b/src/devices/cpu/z80/kl5c80a16.h @@ -28,7 +28,7 @@ public: }; // device type constructor - kl5c80a16_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + kl5c80a16_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto in_p0_callback() { return m_port_in_callback[0].bind(); } diff --git a/src/devices/cpu/z80/kp63.cpp b/src/devices/cpu/z80/kp63.cpp index db42ef30ecb..356fcbc17ed 100644 --- a/src/devices/cpu/z80/kp63.cpp +++ b/src/devices/cpu/z80/kp63.cpp @@ -58,7 +58,7 @@ const char *const kp63_device::s_count_modes[4] = // kp63_device - constructor //------------------------------------------------- -kp63_device::kp63_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 num_counters, u8 mode_mask) +kp63_device::kp63_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 num_counters, u8 mode_mask) : device_t(mconfig, type, tag, owner, clock) , m_out_pulse_callback(*this) , m_out_strobe_callback(*this) @@ -82,7 +82,7 @@ kp63_device::kp63_device(const machine_config &mconfig, device_type type, const // kp63_3channel_device - constructor //------------------------------------------------- -kp63_3channel_device::kp63_3channel_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kp63_3channel_device::kp63_3channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kp63_device(mconfig, KP63_3CHANNEL, tag, owner, clock, 3, 0x1f) { } @@ -92,7 +92,7 @@ kp63_3channel_device::kp63_3channel_device(const machine_config &mconfig, const // kp63a_device - constructor //------------------------------------------------- -kp63a_device::kp63a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kp63a_device::kp63a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kp63_device(mconfig, KP63A, tag, owner, clock, 4, 0x3f) { } diff --git a/src/devices/cpu/z80/kp63.h b/src/devices/cpu/z80/kp63.h index 73e269fb72b..ec00fbea789 100644 --- a/src/devices/cpu/z80/kp63.h +++ b/src/devices/cpu/z80/kp63.h @@ -32,7 +32,7 @@ public: protected: // construction/destruction - kp63_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u8 num_counters, u8 mode_mask); + kp63_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, u8 num_counters, u8 mode_mask); // device-level overrides virtual void device_resolve_objects() override; @@ -81,14 +81,14 @@ class kp63_3channel_device : public kp63_device { public: // device type constructor - kp63_3channel_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + kp63_3channel_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; class kp63a_device : public kp63_device { public: // device type constructor - kp63a_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + kp63a_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); }; // device type declarations diff --git a/src/devices/cpu/z80/kp64.cpp b/src/devices/cpu/z80/kp64.cpp index 697ed65268a..52e418f35dc 100644 --- a/src/devices/cpu/z80/kp64.cpp +++ b/src/devices/cpu/z80/kp64.cpp @@ -68,7 +68,7 @@ DEFINE_DEVICE_TYPE(KP64, kp64_device, "kp64", "Kawasaki Steel KP64 Timer/Counter // kp64_device - constructor //------------------------------------------------- -kp64_device::kp64_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kp64_device::kp64_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, KP64, tag, owner, clock) , m_out_callback(*this) , m_count_timer(nullptr) diff --git a/src/devices/cpu/z80/kp64.h b/src/devices/cpu/z80/kp64.h index 954076430d0..b5d62212dfa 100644 --- a/src/devices/cpu/z80/kp64.h +++ b/src/devices/cpu/z80/kp64.h @@ -20,7 +20,7 @@ class kp64_device : public device_t { public: // device type constructor - kp64_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + kp64_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // callback configuration auto out_callback() { return m_out_callback.bind(); } diff --git a/src/devices/cpu/z80/kp69.cpp b/src/devices/cpu/z80/kp69.cpp index 0e194138b2c..a03931c3292 100644 --- a/src/devices/cpu/z80/kp69.cpp +++ b/src/devices/cpu/z80/kp69.cpp @@ -35,7 +35,7 @@ DEFINE_DEVICE_TYPE(KP69, kp69_device, "kp69", "Kawasaki Steel KP69 Interrupt Con // kp69_base_device - constructor //------------------------------------------------- -kp69_base_device::kp69_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) +kp69_base_device::kp69_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : device_t(mconfig, type, tag, owner, clock) , device_z80daisy_interface(mconfig, *this) , m_int_callback(*this) @@ -56,7 +56,7 @@ kp69_base_device::kp69_base_device(const machine_config &mconfig, device_type ty // kp69_device - constructor //------------------------------------------------- -kp69_device::kp69_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +kp69_device::kp69_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kp69_base_device(mconfig, KP69, tag, owner, clock) , m_ivr_written(false) { diff --git a/src/devices/cpu/z80/kp69.h b/src/devices/cpu/z80/kp69.h index f7747f795d6..dec9255f8fc 100644 --- a/src/devices/cpu/z80/kp69.h +++ b/src/devices/cpu/z80/kp69.h @@ -41,7 +41,7 @@ public: protected: // construction/destruction - kp69_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + kp69_base_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_resolve_objects() override; @@ -82,7 +82,7 @@ class kp69_device : public kp69_base_device { public: // device type constructor - kp69_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock = 0); + kp69_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock = XTAL()); // write handlers void lerl_pgrl_w(u8 data); diff --git a/src/devices/cpu/z80/ky80.cpp b/src/devices/cpu/z80/ky80.cpp index b55237efa95..067c412022d 100644 --- a/src/devices/cpu/z80/ky80.cpp +++ b/src/devices/cpu/z80/ky80.cpp @@ -28,7 +28,7 @@ DEFINE_DEVICE_TYPE(KY80, ky80_device, "ky80", "Taxan KY-80") // ky80_device - constructor //------------------------------------------------- -ky80_device::ky80_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +ky80_device::ky80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : kc82_device(mconfig, KY80, tag, owner, clock, address_map_constructor(FUNC(ky80_device::internal_ram), this), address_map_constructor(FUNC(ky80_device::internal_io), this)) diff --git a/src/devices/cpu/z80/ky80.h b/src/devices/cpu/z80/ky80.h index fce065a9c8f..0e977689db9 100644 --- a/src/devices/cpu/z80/ky80.h +++ b/src/devices/cpu/z80/ky80.h @@ -22,7 +22,7 @@ class ky80_device : public kc82_device { public: // device type constructor - ky80_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + ky80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides diff --git a/src/devices/cpu/z80/lz8420m.cpp b/src/devices/cpu/z80/lz8420m.cpp index 26e41a6b248..8b6093d4d97 100644 --- a/src/devices/cpu/z80/lz8420m.cpp +++ b/src/devices/cpu/z80/lz8420m.cpp @@ -15,7 +15,7 @@ DEFINE_DEVICE_TYPE(LZ8420M, lz8420m_device, "lz8420m", "Sharp LZ8420M") -lz8420m_device::lz8420m_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +lz8420m_device::lz8420m_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, LZ8420M, tag, owner, clock) { } diff --git a/src/devices/cpu/z80/lz8420m.h b/src/devices/cpu/z80/lz8420m.h index afa653c340d..ce1e06389aa 100644 --- a/src/devices/cpu/z80/lz8420m.h +++ b/src/devices/cpu/z80/lz8420m.h @@ -29,7 +29,7 @@ class lz8420m_device : public z80_device { public: - lz8420m_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); + lz8420m_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/z80/mc8123.cpp b/src/devices/cpu/z80/mc8123.cpp index 33acc77b096..7581ea4afe8 100644 --- a/src/devices/cpu/z80/mc8123.cpp +++ b/src/devices/cpu/z80/mc8123.cpp @@ -90,7 +90,7 @@ DEFINE_DEVICE_TYPE(MC8123, mc8123_device, "mc8123", "MC-8123") // mc8123_device - constructor //------------------------------------------------- -mc8123_device::mc8123_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +mc8123_device::mc8123_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, MC8123, tag, owner, clock) , m_key(*this, "key") { diff --git a/src/devices/cpu/z80/mc8123.h b/src/devices/cpu/z80/mc8123.h index 8fad72dbee7..90cbeec6ca1 100644 --- a/src/devices/cpu/z80/mc8123.h +++ b/src/devices/cpu/z80/mc8123.h @@ -17,7 +17,7 @@ class mc8123_device : public z80_device { public: // construction/destruction - mc8123_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + mc8123_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // this function assumes a fixed portion of ROM at 0000-7FFF, and // an arbitrary amount of banks at 8000-BFFF. diff --git a/src/devices/cpu/z80/r800.cpp b/src/devices/cpu/z80/r800.cpp index 1748f8eca39..bef404155bf 100644 --- a/src/devices/cpu/z80/r800.cpp +++ b/src/devices/cpu/z80/r800.cpp @@ -29,7 +29,7 @@ DEFINE_DEVICE_TYPE(R800, r800_device, "r800", "ASCII R800") // r800_device - constructor //------------------------------------------------- -r800_device::r800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) +r800_device::r800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, R800, tag, owner, clock) { } diff --git a/src/devices/cpu/z80/r800.h b/src/devices/cpu/z80/r800.h index bad16f8cfdd..2ed0aa1672e 100644 --- a/src/devices/cpu/z80/r800.h +++ b/src/devices/cpu/z80/r800.h @@ -22,7 +22,7 @@ class r800_device : public z80_device { public: // device type constructor - r800_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); + r800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device_execute_interface overrides diff --git a/src/devices/cpu/z80/tmpz84c011.cpp b/src/devices/cpu/z80/tmpz84c011.cpp index c28aa2b243a..df79ffe59cc 100644 --- a/src/devices/cpu/z80/tmpz84c011.cpp +++ b/src/devices/cpu/z80/tmpz84c011.cpp @@ -32,7 +32,7 @@ void tmpz84c011_device::tmpz84c011_internal_io_map(address_map &map) } -tmpz84c011_device::tmpz84c011_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +tmpz84c011_device::tmpz84c011_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, TMPZ84C011, tag, owner, clock), m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(tmpz84c011_device::tmpz84c011_internal_io_map), this)), m_ctc(*this, "tmpz84c011_ctc"), diff --git a/src/devices/cpu/z80/tmpz84c011.h b/src/devices/cpu/z80/tmpz84c011.h index 89b40a9f6aa..ab63642518e 100644 --- a/src/devices/cpu/z80/tmpz84c011.h +++ b/src/devices/cpu/z80/tmpz84c011.h @@ -30,7 +30,7 @@ class tmpz84c011_device : public z80_device { public: - tmpz84c011_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); + tmpz84c011_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers auto zc0_callback() { return m_zc0_cb.bind(); } diff --git a/src/devices/cpu/z80/tmpz84c015.cpp b/src/devices/cpu/z80/tmpz84c015.cpp index 3df10f19c6c..ebba77d423c 100644 --- a/src/devices/cpu/z80/tmpz84c015.cpp +++ b/src/devices/cpu/z80/tmpz84c015.cpp @@ -28,7 +28,7 @@ void tmpz84c015_device::internal_io_map(address_map &map) } -tmpz84c015_device::tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +tmpz84c015_device::tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, TMPZ84C015, tag, owner, clock), m_io_space_config( "io", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor(FUNC(tmpz84c015_device::internal_io_map), this)), m_ctc(*this, "tmpz84c015_ctc"), diff --git a/src/devices/cpu/z80/tmpz84c015.h b/src/devices/cpu/z80/tmpz84c015.h index 99b6f095714..0d982496879 100644 --- a/src/devices/cpu/z80/tmpz84c015.h +++ b/src/devices/cpu/z80/tmpz84c015.h @@ -25,7 +25,7 @@ class tmpz84c015_device : public z80_device { public: - tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t); + tmpz84c015_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); // configuration helpers diff --git a/src/devices/cpu/z80/z80.cpp b/src/devices/cpu/z80/z80.cpp index 86d9d29469b..b4b9ed4fdb5 100644 --- a/src/devices/cpu/z80/z80.cpp +++ b/src/devices/cpu/z80/z80.cpp @@ -3814,12 +3814,12 @@ void z80_device::z80_set_cycle_tables(const uint8_t *op, const uint8_t *cb, cons } -z80_device::z80_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : +z80_device::z80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, Z80, tag, owner, clock) { } -z80_device::z80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) : +z80_device::z80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock) : cpu_device(mconfig, type, tag, owner, clock), z80_daisy_chain_interface(mconfig, *this), m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0), @@ -3849,7 +3849,7 @@ device_memory_interface::space_config_vector z80_device::memory_space_config() c DEFINE_DEVICE_TYPE(Z80, z80_device, "z80", "Zilog Z80") -nsc800_device::nsc800_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +nsc800_device::nsc800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z80_device(mconfig, NSC800, tag, owner, clock) { } diff --git a/src/devices/cpu/z80/z80.h b/src/devices/cpu/z80/z80.h index 8d3ac158325..52c0ebab583 100644 --- a/src/devices/cpu/z80/z80.h +++ b/src/devices/cpu/z80/z80.h @@ -30,7 +30,7 @@ enum class z80_device : public cpu_device, public z80_daisy_chain_interface { public: - z80_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z80_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); void z80_set_cycle_tables(const uint8_t *op, const uint8_t *cb, const uint8_t *ed, const uint8_t *xy, const uint8_t *xycb, const uint8_t *ex); template <typename... T> void set_memory_map(T &&... args) { set_addrmap(AS_PROGRAM, std::forward<T>(args)...); } @@ -42,7 +42,7 @@ public: auto halt_cb() { return m_halt_cb.bind(); } protected: - z80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock); + z80_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock); // device-level overrides virtual void device_start() override; @@ -298,7 +298,7 @@ DECLARE_DEVICE_TYPE(Z80, z80_device) class nsc800_device : public z80_device { public: - nsc800_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + nsc800_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // device-level overrides diff --git a/src/devices/cpu/z8000/z8000.cpp b/src/devices/cpu/z8000/z8000.cpp index 8d462c7eddc..50773f5b587 100644 --- a/src/devices/cpu/z8000/z8000.cpp +++ b/src/devices/cpu/z8000/z8000.cpp @@ -23,13 +23,13 @@ DEFINE_DEVICE_TYPE(Z8001, z8001_device, "z8001", "Zilog Z8001") DEFINE_DEVICE_TYPE(Z8002, z8002_device, "z8002", "Zilog Z8002") -z8002_device::z8002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8002_device::z8002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8002_device(mconfig, Z8002, tag, owner, clock, 16, 1) { } -z8002_device::z8002_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, int vecmult) +z8002_device::z8002_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, int vecmult) : cpu_device(mconfig, type, tag, owner, clock) , m_program_config("program", ENDIANNESS_BIG, 16, addrbits, 0) , m_data_config("data", ENDIANNESS_BIG, 16, addrbits, 0) @@ -45,7 +45,7 @@ z8002_device::z8002_device(const machine_config &mconfig, device_type type, cons } -z8001_device::z8001_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) +z8001_device::z8001_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock) : z8002_device(mconfig, Z8001, tag, owner, clock, 23, 2) { } diff --git a/src/devices/cpu/z8000/z8000.h b/src/devices/cpu/z8000/z8000.h index 921f8f4eb0f..ce96cac2f6f 100644 --- a/src/devices/cpu/z8000/z8000.h +++ b/src/devices/cpu/z8000/z8000.h @@ -76,7 +76,7 @@ public: }; // construction/destruction - z8002_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8002_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); ~z8002_device(); auto segtack() { return m_iack_in[0].bind(); } @@ -87,7 +87,7 @@ public: DECLARE_WRITE_LINE_MEMBER(mi_w) { m_mi = state; } // XXX: this has to apply in the middle of an insn for now protected: - z8002_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int addrbits, int vecmult); + z8002_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, const XTAL &clock, int addrbits, int vecmult); // device-level overrides virtual void device_start() override; @@ -706,7 +706,7 @@ class z8001_device : public z8002_device { public: // construction/destruction - z8001_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + z8001_device(const machine_config &mconfig, const char *tag, device_t *owner, const XTAL &clock); protected: // z8002_device overrides |