diff options
Diffstat (limited to 'src/devices/bus/tanbus/mpvdu.cpp')
-rw-r--r-- | src/devices/bus/tanbus/mpvdu.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/devices/bus/tanbus/mpvdu.cpp b/src/devices/bus/tanbus/mpvdu.cpp index 28cd0b988f9..43c303dff4b 100644 --- a/src/devices/bus/tanbus/mpvdu.cpp +++ b/src/devices/bus/tanbus/mpvdu.cpp @@ -155,7 +155,9 @@ MC6845_UPDATE_ROW(tanbus_mpvdu_device::crtc_update_row) m_trom->lose_w(0); for (int column = 0; column < x_count; column++) { - m_trom->write(m_videoram[(ma + column) & 0x7ff]); + uint8_t code = m_videoram[(ma + column) & 0x7ff]; + + m_trom->write(code); m_trom->f1_w(1); m_trom->f1_w(0); @@ -165,7 +167,9 @@ MC6845_UPDATE_ROW(tanbus_mpvdu_device::crtc_update_row) m_trom->tr6_w(1); m_trom->tr6_w(0); - int const col = m_trom->get_rgb() ^ ((column == cursor_x) ? 7 : 0); + int col = m_trom->get_rgb() ^ ((column == cursor_x) ? 7 : 0); + + if (BIT(code, 7)) col ^= 0x07; int const r = BIT(col, 0) * 0xff; int const g = BIT(col, 1) * 0xff; |