| Previous | 199869 Revisions | Next |
| r44373 Saturday 23rd January, 2016 at 16:30:14 UTC by Ryan Holtz |
|---|
| Fix nss, spnchout, playch10 crashes, nw |
| [src/devices/machine] | rp5h01.cpp rp5h01.h |
| r252884 | r252885 | |
|---|---|---|
| 34 | 34 | |
| 35 | 35 | rp5h01_device::rp5h01_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) |
| 36 | 36 | : device_t(mconfig, RP5H01, "RP5H01 6/7-bit Counter", tag, owner, clock, "rp5h01", __FILE__) |
| 37 | , m_rom_ptr(*this, DEVICE_SELF) | |
| 37 | 38 | { |
| 38 | 39 | } |
| 39 | 40 | |
| r252884 | r252885 | |
| 53 | 54 | |
| 54 | 55 | void rp5h01_device::device_start() |
| 55 | 56 | { |
| 56 | m_data = region()->base(); | |
| 57 | if (m_data == nullptr) | |
| 57 | if (m_rom_ptr == nullptr) | |
| 58 | { | |
| 58 | 59 | m_data = initial_data; |
| 60 | } | |
| 59 | 61 | else |
| 62 | { | |
| 63 | m_data = m_rom_ptr; | |
| 60 | 64 | assert(region()->bytes() == 0x10); |
| 65 | } | |
| 61 | 66 | |
| 62 | 67 | /* register for state saving */ |
| 63 | 68 | save_item(NAME(m_counter)); |
| r252884 | r252885 | |
|---|---|---|
| 52 | 52 | virtual void device_config_complete() override; |
| 53 | 53 | virtual void device_start() override; |
| 54 | 54 | virtual void device_reset() override; |
| 55 | ||
| 55 | 56 | private: |
| 56 | 57 | // internal state |
| 57 | 58 | int m_counter; |
| r252884 | r252885 | |
| 60 | 61 | int m_old_reset; /* reset pin state (level-triggered) */ |
| 61 | 62 | int m_old_clock; /* clock pin state (level-triggered) */ |
| 62 | 63 | const UINT8 *m_data; |
| 64 | optional_region_ptr<UINT8> m_rom_ptr; | |
| 63 | 65 | }; |
| 64 | 66 | |
| 65 | 67 | extern const device_type RP5H01; |
| https://github.com/mamedev/mame/commit/16e43ced1c236d38cce2f1e912d325333e05532b |
| Previous | 199869 Revisions | Next |