mirror of
https://github.com/mamedev/mame.git
synced 2024-11-16 07:48:32 +01:00
epson/qx10.cpp: reinstate visible area check for 7220 text
Some checks are pending
CI (Linux) / build-linux (-U_FORTIFY_SOURCE, gcc, gcc, g++, mametiny, tiny) (push) Waiting to run
CI (Linux) / build-linux (clang, clang, clang++, mame, mame) (push) Waiting to run
CI (macOS) / build-macos (push) Waiting to run
CI (Windows) / build-windows (clang, clang, clang++, mametiny, tiny) (push) Waiting to run
CI (Windows) / build-windows (gcc, gcc, g++, mame, mame) (push) Waiting to run
Some checks are pending
CI (Linux) / build-linux (-U_FORTIFY_SOURCE, gcc, gcc, g++, mametiny, tiny) (push) Waiting to run
CI (Linux) / build-linux (clang, clang, clang++, mame, mame) (push) Waiting to run
CI (macOS) / build-macos (push) Waiting to run
CI (Windows) / build-windows (clang, clang, clang++, mametiny, tiny) (push) Waiting to run
CI (Windows) / build-windows (gcc, gcc, g++, mame, mame) (push) Waiting to run
This commit is contained in:
parent
bdb08793f9
commit
bf2e3484a4
1 changed files with 10 additions and 3 deletions
|
@ -256,7 +256,8 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( qx10_state::hgdc_draw_text )
|
|||
int tile = m_video_ram[((addr+x)*2) >> 1] & 0xff;
|
||||
int attr = m_video_ram[((addr+x)*2) >> 1] >> 8;
|
||||
|
||||
uint8_t color = (m_color_mode) ? 1 : (attr & 4) ? 2 : 1; /* TODO: color mode */
|
||||
// TODO: color mode support
|
||||
uint8_t color = (m_color_mode) ? 1 : (attr & 4) ? 2 : 1;
|
||||
|
||||
for (int yi = 0; yi < lr; yi++)
|
||||
{
|
||||
|
@ -265,10 +266,11 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( qx10_state::hgdc_draw_text )
|
|||
if(attr & 8)
|
||||
tile_data^=0xff;
|
||||
|
||||
if(cursor_on && cursor_addr == addr+x) //TODO
|
||||
if(cursor_on && cursor_addr == addr+x)
|
||||
tile_data^=0xff;
|
||||
|
||||
if(attr & 0x80 && m_screen->frame_number() & 0x10) //TODO: check for blinking interval
|
||||
//TODO: check for blinking interval
|
||||
if(attr & 0x80 && m_screen->frame_number() & 0x10)
|
||||
tile_data=0;
|
||||
|
||||
for (int xi = 0; xi < 8; xi++)
|
||||
|
@ -276,6 +278,10 @@ UPD7220_DRAW_TEXT_LINE_MEMBER( qx10_state::hgdc_draw_text )
|
|||
int res_x = ((x * 8) + xi);
|
||||
int res_y = y + yi;
|
||||
|
||||
// TODO: cpm22mf:flop2 display random character test will go out of bounds here
|
||||
if(!m_screen->visible_area().contains(res_x, res_y))
|
||||
continue;
|
||||
|
||||
uint8_t pen;
|
||||
if(yi >= 16)
|
||||
pen = 0;
|
||||
|
@ -294,6 +300,7 @@ uint32_t qx10_state::screen_update( screen_device &screen, bitmap_rgb32 &bitmap,
|
|||
m_bitmap.fill(m_palette->black_pen(), cliprect);
|
||||
|
||||
m_hgdc->screen_update(screen, m_bitmap, cliprect);
|
||||
// cpm22mf:flop2 will test this under Zoom Test
|
||||
const u32 pixel_size = 0x10000 / (m_zoom+1);
|
||||
copyrozbitmap(
|
||||
bitmap, cliprect, m_bitmap,
|
||||
|
|
Loading…
Reference in a new issue