diff options
Diffstat (limited to 'src/devices/machine/rp5c01.h')
-rw-r--r-- | src/devices/machine/rp5c01.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/devices/machine/rp5c01.h b/src/devices/machine/rp5c01.h index 7e48269b72c..511663b47c0 100644 --- a/src/devices/machine/rp5c01.h +++ b/src/devices/machine/rp5c01.h @@ -65,11 +65,11 @@ protected: virtual bool nvram_read(util::read_stream &file) override; virtual bool nvram_write(util::write_stream &file) override; - TIMER_CALLBACK_MEMBER(advance_1hz_clock); + virtual TIMER_CALLBACK_MEMBER(advance_1hz_clock); TIMER_CALLBACK_MEMBER(advance_16hz_clock); -private: inline void set_alarm_line(); +private: inline int read_counter(int counter); inline void write_counter(int counter, int value); inline void check_alarm(); @@ -77,6 +77,7 @@ private: devcb_write_line m_out_alarm_cb; bool m_battery_backed; +protected: uint8_t m_reg[2][13]; // clock registers uint8_t m_ram[13]; // RAM @@ -87,6 +88,7 @@ private: int m_1hz; // 1 Hz condition int m_16hz; // 16 Hz condition +private: // timers emu_timer *m_clock_timer; emu_timer *m_16hz_timer; @@ -101,9 +103,19 @@ public: tc8521_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); }; +class lh5045_device : public rp5c01_device +{ +public: + // construction/destruction + lh5045_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + +private: + virtual TIMER_CALLBACK_MEMBER(advance_1hz_clock) override; +}; // device type definition DECLARE_DEVICE_TYPE(RP5C01, rp5c01_device) DECLARE_DEVICE_TYPE(TC8521, tc8521_device) +DECLARE_DEVICE_TYPE(LH5045, lh5045_device) #endif // MAME_MACHINE_RP5C01_H |