diff options
Diffstat (limited to 'src/devices/cpu/mcs48/mcs48.h')
-rw-r--r-- | src/devices/cpu/mcs48/mcs48.h | 60 |
1 files changed, 31 insertions, 29 deletions
diff --git a/src/devices/cpu/mcs48/mcs48.h b/src/devices/cpu/mcs48/mcs48.h index df143df239c..3640286a524 100644 --- a/src/devices/cpu/mcs48/mcs48.h +++ b/src/devices/cpu/mcs48/mcs48.h @@ -50,7 +50,6 @@ enum enum { MCS48_INPUT_IRQ = 0, - UPI41_INPUT_IBF = 0, MCS48_INPUT_EA }; @@ -60,7 +59,7 @@ enum ***************************************************************************/ #define MCS48_LC_CLOCK(_L, _C) \ - (1 / (2 * 3.14159265358979323846 * sqrt(_L * _C))) + (1 / (2 * M_PI * sqrt(_L * _C))) #define MCS48_ALE_CLOCK(_clock) \ attotime::from_hz(_clock/(3*5)) @@ -70,33 +69,33 @@ enum TYPES ***************************************************************************/ -/* Official Intel MCS-48 parts */ -DECLARE_DEVICE_TYPE(I8021, i8021_device) // 1k internal ROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8022, i8022_device) // 2k internal ROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8035, i8035_device) // external ROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8048, i8048_device) // 1k internal ROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8648, i8648_device) // 1k internal OTP ROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8748, i8748_device) // 1k internal EEPROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8039, i8039_device) // external ROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8049, i8049_device) // 2k internal ROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8749, i8749_device) // 2k internal EEPROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8040, i8040_device) // external ROM, 256 bytes internal RAM -DECLARE_DEVICE_TYPE(I8050, i8050_device) // 4k internal ROM, 256 bytes internal RAM - -/* Official Intel UPI-41 parts */ -DECLARE_DEVICE_TYPE(I8041A, i8041a_device) // 1k internal ROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8741A, i8741a_device) // 1k internal EEPROM, 64 bytes internal RAM -DECLARE_DEVICE_TYPE(I8041AH, i8041ah_device) // 1k internal ROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8741AH, i8741ah_device) // 1k internal EEPROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8042, i8042_device) // 2k internal ROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8742, i8742_device) // 2k internal EEPROM, 128 bytes internal RAM -DECLARE_DEVICE_TYPE(I8042AH, i8042ah_device) // 2k internal ROM, 256 bytes internal RAM -DECLARE_DEVICE_TYPE(I8742AH, i8742ah_device) // 2k internal EEPROM, 256 bytes internal RAM - -/* Clones */ -DECLARE_DEVICE_TYPE(MB8884, mb8884_device) // 8035 clone -DECLARE_DEVICE_TYPE(N7751, n7751_device) // 8048 clone -DECLARE_DEVICE_TYPE(M58715, m58715_device) // 8049 clone +// Official Intel MCS-48 parts +DECLARE_DEVICE_TYPE(I8021, i8021_device) // 1k internal ROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8022, i8022_device) // 2k internal ROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8035, i8035_device) // external ROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8048, i8048_device) // 1k internal ROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8648, i8648_device) // 1k internal OTP ROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8748, i8748_device) // 1k internal UV EPROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8039, i8039_device) // external ROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8049, i8049_device) // 2k internal ROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8749, i8749_device) // 2k internal UV EPROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8040, i8040_device) // external ROM, 256 bytes internal RAM +DECLARE_DEVICE_TYPE(I8050, i8050_device) // 4k internal ROM, 256 bytes internal RAM + +// Official Intel UPI-41 parts +DECLARE_DEVICE_TYPE(I8041A, i8041a_device) // 1k internal ROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8741A, i8741a_device) // 1k internal UV EPROM, 64 bytes internal RAM +DECLARE_DEVICE_TYPE(I8041AH, i8041ah_device) // 1k internal ROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8741AH, i8741ah_device) // 1k internal UV EPROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8042, i8042_device) // 2k internal ROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8742, i8742_device) // 2k internal UV EPROM, 128 bytes internal RAM +DECLARE_DEVICE_TYPE(I8042AH, i8042ah_device) // 2k internal ROM, 256 bytes internal RAM +DECLARE_DEVICE_TYPE(I8742AH, i8742ah_device) // 2k internal UV EPROM, 256 bytes internal RAM + +// Clones +DECLARE_DEVICE_TYPE(MB8884, mb8884_device) // 8035 clone +DECLARE_DEVICE_TYPE(N7751, n7751_device) // 8048 clone +DECLARE_DEVICE_TYPE(M58715, m58715_device) // 8049 clone @@ -137,6 +136,9 @@ public: template <typename... T> void set_t0_clk_cb(T &&... args) { m_t0_clk_func.set(std::forward<T>(args)...); } + u32 get_ale_clock() { return m_clock / 3 / 5; } + u32 get_t0_clock() { return m_clock / 3; } + protected: typedef void (mcs48_cpu_device::*mcs48_ophandler)(); |