diff options
Diffstat (limited to 'src/mame/video/docastle.cpp')
-rw-r--r-- | src/mame/video/docastle.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/mame/video/docastle.cpp b/src/mame/video/docastle.cpp index b4e3b09e789..43315f5565a 100644 --- a/src/mame/video/docastle.cpp +++ b/src/mame/video/docastle.cpp @@ -78,10 +78,15 @@ WRITE8_MEMBER(docastle_state::docastle_colorram_w) READ8_MEMBER(docastle_state::inputs_flipscreen_r) { + // inputs pass through LS244 non-inverting buffer + uint8_t buf = (m_inp2->read_h(space, 0) << 4) | m_inp1->read_h(space, 0); + + // LS273 latches address bits on rising edge of address decode flip_screen_set(BIT(offset, 7)); m_inp1->write_s(space, 0, offset & 7); m_inp2->write_s(space, 0, offset & 7); - return (m_inp2->read_h(space, 0) << 4) | m_inp1->read_h(space, 0); + + return buf; } WRITE8_MEMBER(docastle_state::flipscreen_w) |