trunk/src/mess/machine/cs4031.c
r24624 | r24625 | |
210 | 210 | m_refresh_toggle(0), |
211 | 211 | m_iochck(1), |
212 | 212 | m_nmi_mask(1), |
| 213 | m_sysctrl(0), |
213 | 214 | m_cpureset(0), |
214 | 215 | m_kbrst(1), |
215 | 216 | m_ext_gatea20(0), |
r24624 | r24625 | |
316 | 317 | m_space_io->install_write_handler(0x0070, 0x0073, write8_delegate(FUNC(cs4031_device::rtc_w), this), 0x000000ff); |
317 | 318 | m_space_io->install_readwrite_handler(0x0070, 0x0073, read8_delegate(FUNC(mc146818_device::data_r), &(*m_rtc)), write8_delegate(FUNC(mc146818_device::data_w), &(*m_rtc)), 0x0000ff00); |
318 | 319 | m_space_io->install_readwrite_handler(0x0080, 0x008f, read8_delegate(FUNC(cs4031_device::dma_page_r), this), write8_delegate(FUNC(cs4031_device::dma_page_w), this), 0xffffffff); |
319 | | m_space_io->install_write_handler(0x0090, 0x0093, write8_delegate(FUNC(cs4031_device::sysctrl_w), this), 0x00ff0000); |
| 320 | m_space_io->install_readwrite_handler(0x0090, 0x0093, read8_delegate(FUNC(cs4031_device::sysctrl_r), this), write8_delegate(FUNC(cs4031_device::sysctrl_w), this), 0x00ff0000); |
320 | 321 | m_space_io->install_readwrite_handler(0x00a0, 0x00a3, read8_delegate(FUNC(pic8259_device::read), &(*m_intc2)), write8_delegate(FUNC(pic8259_device::write), &(*m_intc2)), 0x0000ffff); |
321 | 322 | m_space_io->install_readwrite_handler(0x00c0, 0x00df, read8_delegate(FUNC(cs4031_device::dma2_r),this), write8_delegate(FUNC(cs4031_device::dma2_w),this), 0xffffffff); |
322 | 323 | } |
r24624 | r24625 | |
785 | 786 | if (LOG_IO) |
786 | 787 | logerror("cs4031_device::sysctrl_w: %u\n", data); |
787 | 788 | |
| 789 | m_sysctrl = data; |
| 790 | |
788 | 791 | m_fast_gatea20 = BIT(data, 1); |
789 | 792 | a20m(); |
790 | 793 | |
r24624 | r24625 | |
798 | 801 | m_cpureset = BIT(data, 0); |
799 | 802 | } |
800 | 803 | |
| 804 | READ8_MEMBER( cs4031_device::sysctrl_r ) |
| 805 | { |
| 806 | if (LOG_IO) |
| 807 | logerror("cs4031_device::sysctrl_r: %u\n", m_sysctrl); |
801 | 808 | |
| 809 | return m_sysctrl; |
| 810 | } |
| 811 | |
802 | 812 | //************************************************************************** |
803 | 813 | // MISCELLANEOUS |
804 | 814 | //************************************************************************** |
trunk/src/mess/machine/cs4031.h
r24624 | r24625 | |
139 | 139 | DECLARE_WRITE8_MEMBER( portb_w ); |
140 | 140 | DECLARE_WRITE8_MEMBER( rtc_w ); |
141 | 141 | DECLARE_WRITE8_MEMBER( sysctrl_w ); |
| 142 | DECLARE_READ8_MEMBER( sysctrl_r ); |
142 | 143 | DECLARE_READ8_MEMBER( dma_page_r ) { return m_dma_page[offset]; } |
143 | 144 | DECLARE_WRITE8_MEMBER( dma_page_w ) { m_dma_page[offset] = data; } |
144 | 145 | DECLARE_READ8_MEMBER( dma2_r ) { return m_dma2->read(space, offset / 2); } |
r24624 | r24625 | |
239 | 240 | int m_refresh_toggle; |
240 | 241 | int m_iochck; |
241 | 242 | int m_nmi_mask; |
| 243 | UINT8 m_sysctrl; |
242 | 244 | |
243 | 245 | // keyboard |
244 | 246 | at_keyboard_controller_device *m_keybc; |