trunk/src/emu/machine/upd1990a.c
| r23648 | r23649 | |
| 46 | 46 | // upd1990a_device - constructor |
| 47 | 47 | //------------------------------------------------- |
| 48 | 48 | |
| 49 | | upd1990a_device::upd1990a_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock) |
| 49 | upd1990a_device::upd1990a_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 variant) |
| 50 | 50 | : device_t(mconfig, type, name, tag, owner, clock), |
| 51 | 51 | device_rtc_interface(mconfig, *this), |
| 52 | 52 | m_write_data(*this), |
| 53 | 53 | m_write_tp(*this), |
| 54 | 54 | m_data_out(0), |
| 55 | 55 | m_c(0), |
| 56 | | m_clk(0) |
| 56 | m_clk(0), |
| 57 | m_variant(variant) |
| 57 | 58 | { |
| 58 | 59 | } |
| 59 | 60 | |
| r23648 | r23649 | |
| 64 | 65 | m_write_tp(*this), |
| 65 | 66 | m_data_out(0), |
| 66 | 67 | m_c(0), |
| 67 | | m_clk(0) |
| 68 | m_clk(0), |
| 69 | m_variant(TYPE_1990A) |
| 68 | 70 | { |
| 69 | 71 | } |
| 70 | 72 | |
| 71 | 73 | upd4990a_device::upd4990a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 72 | | : upd1990a_device(mconfig, UPD4990A, "uPD4990A", tag, owner, clock) { } |
| 74 | : upd1990a_device(mconfig, UPD4990A, "uPD4990A", tag, owner, clock, TYPE_4990A) { } |
| 73 | 75 | |
| 74 | 76 | |
| 75 | 77 | //------------------------------------------------- |
trunk/src/emu/machine/upd1990a.h
| r23648 | r23649 | |
| 53 | 53 | { |
| 54 | 54 | public: |
| 55 | 55 | // construction/destruction |
| 56 | | upd1990a_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock); |
| 56 | upd1990a_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, UINT32 clock, UINT32 variant); |
| 57 | 57 | upd1990a_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock); |
| 58 | 58 | |
| 59 | 59 | template<class _data> void set_data_callback(_data data) { m_write_data.set_callback(data); } |
| r23648 | r23649 | |
| 79 | 79 | // device_rtc_interface overrides |
| 80 | 80 | virtual void rtc_clock_updated(int year, int month, int day, int day_of_week, int hour, int minute, int second); |
| 81 | 81 | |
| 82 | enum |
| 83 | { |
| 84 | TYPE_1990A = 0, |
| 85 | TYPE_4990A |
| 86 | }; |
| 87 | |
| 82 | 88 | private: |
| 83 | 89 | enum |
| 84 | 90 | { |
| r23648 | r23649 | |
| 116 | 122 | int m_tp; // time pulse |
| 117 | 123 | int m_c_unlatched; // command waiting for STB |
| 118 | 124 | |
| 125 | int m_variant; |
| 126 | |
| 119 | 127 | // timers |
| 120 | 128 | emu_timer *m_timer_clock; |
| 121 | 129 | emu_timer *m_timer_tp; |