trunk/src/mess/drivers/x68k.c
| r26771 | r26772 | |
| 1160 | 1160 | return ppi->read(space,offset & 0x03); |
| 1161 | 1161 | } |
| 1162 | 1162 | |
| 1163 | | READ16_MEMBER(x68k_state::x68k_rtc_r) |
| 1164 | | { |
| 1165 | | return m_rtc->read(space, offset); |
| 1166 | | } |
| 1167 | 1163 | |
| 1168 | | WRITE16_MEMBER(x68k_state::x68k_rtc_w) |
| 1169 | | { |
| 1170 | | m_rtc->write(space, offset, data); |
| 1171 | | } |
| 1172 | | |
| 1173 | | WRITE_LINE_MEMBER(x68k_state::x68k_rtc_alarm_irq) |
| 1174 | | { |
| 1175 | | if(m_mfp.aer & 0x01) |
| 1176 | | { |
| 1177 | | if(state == 1) |
| 1178 | | { |
| 1179 | | m_mfp.gpio |= 0x01; |
| 1180 | | m_mfpdev->i0_w(1); |
| 1181 | | } |
| 1182 | | } |
| 1183 | | else |
| 1184 | | { |
| 1185 | | if(state == 0) |
| 1186 | | { |
| 1187 | | m_mfp.gpio &= ~0x01; |
| 1188 | | m_mfpdev->i0_w(0); |
| 1189 | | } |
| 1190 | | } |
| 1191 | | } |
| 1192 | | |
| 1193 | | |
| 1194 | 1164 | WRITE16_MEMBER(x68k_state::x68k_sram_w) |
| 1195 | 1165 | { |
| 1196 | 1166 | if(m_sysport.sram_writeprotect == 0x31) |
| r26771 | r26772 | |
| 1574 | 1544 | AM_RANGE(0xe84000, 0xe85fff) AM_READWRITE(x68k_dmac_r, x68k_dmac_w) |
| 1575 | 1545 | AM_RANGE(0xe86000, 0xe87fff) AM_READWRITE(x68k_areaset_r, x68k_areaset_w) |
| 1576 | 1546 | AM_RANGE(0xe88000, 0xe89fff) AM_READWRITE(x68k_mfp_r, x68k_mfp_w) |
| 1577 | | AM_RANGE(0xe8a000, 0xe8bfff) AM_READWRITE(x68k_rtc_r, x68k_rtc_w) |
| 1547 | AM_RANGE(0xe8a000, 0xe8bfff) AM_DEVREADWRITE8(RP5C15_TAG, mc68901_device, read, write, 0x00ff) |
| 1578 | 1548 | // AM_RANGE(0xe8c000, 0xe8dfff) AM_READWRITE(x68k_printer_r, x68k_printer_w) |
| 1579 | 1549 | AM_RANGE(0xe8e000, 0xe8ffff) AM_READWRITE(x68k_sysport_r, x68k_sysport_w) |
| 1580 | 1550 | AM_RANGE(0xe90000, 0xe91fff) AM_READWRITE(x68k_fm_r, x68k_fm_w) |
| r26771 | r26772 | |
| 1612 | 1582 | AM_RANGE(0xe84000, 0xe85fff) AM_READWRITE(x68k_dmac_r, x68k_dmac_w) |
| 1613 | 1583 | AM_RANGE(0xe86000, 0xe87fff) AM_READWRITE(x68k_areaset_r, x68k_areaset_w) |
| 1614 | 1584 | AM_RANGE(0xe88000, 0xe89fff) AM_READWRITE(x68k_mfp_r, x68k_mfp_w) |
| 1615 | | AM_RANGE(0xe8a000, 0xe8bfff) AM_READWRITE(x68k_rtc_r, x68k_rtc_w) |
| 1585 | AM_RANGE(0xe8a000, 0xe8bfff) AM_DEVREADWRITE8(RP5C15_TAG, mc68901_device, read, write, 0x00ff) |
| 1616 | 1586 | // AM_RANGE(0xe8c000, 0xe8dfff) AM_READWRITE(x68k_printer_r, x68k_printer_w) |
| 1617 | 1587 | AM_RANGE(0xe8e000, 0xe8ffff) AM_READWRITE(x68k_sysport_r, x68k_sysport_w) |
| 1618 | 1588 | AM_RANGE(0xe90000, 0xe91fff) AM_READWRITE(x68k_fm_r, x68k_fm_w) |
| r26771 | r26772 | |
| 1652 | 1622 | AM_RANGE(0xe84000, 0xe85fff) AM_READWRITE16(x68k_dmac_r, x68k_dmac_w,0xffffffff) |
| 1653 | 1623 | AM_RANGE(0xe86000, 0xe87fff) AM_READWRITE16(x68k_areaset_r, x68k_areaset_w,0xffffffff) |
| 1654 | 1624 | AM_RANGE(0xe88000, 0xe89fff) AM_READWRITE16(x68k_mfp_r, x68k_mfp_w,0xffffffff) |
| 1655 | | AM_RANGE(0xe8a000, 0xe8bfff) AM_READWRITE16(x68k_rtc_r, x68k_rtc_w,0xffffffff) |
| 1625 | AM_RANGE(0xe8a000, 0xe8bfff) AM_DEVREADWRITE8(RP5C15_TAG, mc68901_device, read, write, 0x00ff00ff) |
| 1656 | 1626 | // AM_RANGE(0xe8c000, 0xe8dfff) AM_READWRITE(x68k_printer_r, x68k_printer_w) |
| 1657 | 1627 | AM_RANGE(0xe8e000, 0xe8ffff) AM_READWRITE16(x68k_sysport_r, x68k_sysport_w,0xffffffff) |
| 1658 | 1628 | AM_RANGE(0xe90000, 0xe91fff) AM_READWRITE16(x68k_fm_r, x68k_fm_w,0xffffffff) |
| r26771 | r26772 | |
| 1732 | 1702 | |
| 1733 | 1703 | static RP5C15_INTERFACE( rtc_intf ) |
| 1734 | 1704 | { |
| 1735 | | DEVCB_DRIVER_LINE_MEMBER(x68k_state,x68k_rtc_alarm_irq), |
| 1705 | DEVCB_DEVICE_LINE_MEMBER(MC68901_TAG, mc68901_device, i0_w), |
| 1736 | 1706 | DEVCB_NULL |
| 1737 | 1707 | }; |
| 1738 | 1708 | |