diff options
author | Nigel Barnes <Pernod70@users.noreply.github.com> | 2020-11-14 17:11:40 +0000 |
---|---|---|
committer | Nigel Barnes <Pernod70@users.noreply.github.com> | 2020-11-14 17:37:15 +0000 |
commit | e006e93ad537e950f2e517154a83bc273da8a345 (patch) | |
tree | 43f70cf9df49b40751d9e96e7073a8c5bcce94ad | |
parent | 918e31f109161c2d921bc536ae160620ddcd17c0 (diff) |
tanbus_mpvdu/tanbus_ravdu: Cards support inverse video.
-rw-r--r-- | src/devices/bus/tanbus/mpvdu.cpp | 8 | ||||
-rw-r--r-- | src/devices/bus/tanbus/ravdu.cpp | 8 |
2 files changed, 12 insertions, 4 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; diff --git a/src/devices/bus/tanbus/ravdu.cpp b/src/devices/bus/tanbus/ravdu.cpp index b93b1a41c35..43cd6ff45ab 100644 --- a/src/devices/bus/tanbus/ravdu.cpp +++ b/src/devices/bus/tanbus/ravdu.cpp @@ -168,7 +168,9 @@ MC6845_UPDATE_ROW(tanbus_ravdu_device::crtc_update_row) 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); @@ -178,7 +180,9 @@ MC6845_UPDATE_ROW(tanbus_ravdu_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; |