diff options
Diffstat (limited to 'src/devices/bus/spectrum/mikroplus.cpp')
-rw-r--r-- | src/devices/bus/spectrum/mikroplus.cpp | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/devices/bus/spectrum/mikroplus.cpp b/src/devices/bus/spectrum/mikroplus.cpp index b0f0676aaee..87552f79bf3 100644 --- a/src/devices/bus/spectrum/mikroplus.cpp +++ b/src/devices/bus/spectrum/mikroplus.cpp @@ -85,23 +85,19 @@ void spectrum_mikroplus_device::device_start() } -//------------------------------------------------- -// device_reset - device-specific reset -//------------------------------------------------- - -void spectrum_mikroplus_device::device_reset() -{ - io_space().install_read_handler(0xdf, 0xdf, 0, 0xff00, 0, read8_delegate(FUNC(spectrum_mikroplus_device::joystick_r), this)); -} - - //************************************************************************** // IMPLEMENTATION //************************************************************************** -READ8_MEMBER(spectrum_mikroplus_device::joystick_r) +uint8_t spectrum_mikroplus_device::iorq_r(offs_t offset) { - return m_joy->read() | (0xff ^ 0x1f); + uint8_t data = 0xff; + + if (offset == 0xdf) + { + data = m_joy->read() | (0xff ^ 0x1f); + } + return data; } READ_LINE_MEMBER(spectrum_mikroplus_device::romcs) @@ -109,7 +105,7 @@ READ_LINE_MEMBER(spectrum_mikroplus_device::romcs) return 1; } -READ8_MEMBER(spectrum_mikroplus_device::mreq_r) +uint8_t spectrum_mikroplus_device::mreq_r(offs_t offset) { return m_rom->base()[offset & 0x3fff]; } |