comparison vdp.c @ 481:1f3450d1129f

Set VBLANK flag in status register when display is disabled
author Mike Pavone <pavone@retrodev.com>
date Tue, 17 Sep 2013 19:10:00 -0700
parents 0737953132ad
children 32f053ad9b02 8ac0eb05642c
comparison
equal deleted inserted replaced
480:0737953132ad 481:1f3450d1129f
1542 if ((context->regs[REG_MODE_4] & BIT_INTERLACE) && context->framebuf == context->oddbuf) { 1542 if ((context->regs[REG_MODE_4] & BIT_INTERLACE) && context->framebuf == context->oddbuf) {
1543 value |= 0x10; 1543 value |= 0x10;
1544 } 1544 }
1545 uint32_t line= context->cycles / MCLKS_LINE; 1545 uint32_t line= context->cycles / MCLKS_LINE;
1546 uint32_t linecyc = context->cycles % MCLKS_LINE; 1546 uint32_t linecyc = context->cycles % MCLKS_LINE;
1547 if (line >= (context->latched_mode & BIT_PAL ? PAL_ACTIVE : NTSC_ACTIVE)) { 1547 if (line >= (context->latched_mode & BIT_PAL ? PAL_ACTIVE : NTSC_ACTIVE) || !(context->regs[REG_MODE_2] & BIT_DISP_EN)) {
1548 value |= 0x8; 1548 value |= 0x8;
1549 } 1549 }
1550 if (linecyc < (context->latched_mode & BIT_H40 ? HBLANK_CLEAR_H40 : HBLANK_CLEAR_H32)) { 1550 if (linecyc < (context->latched_mode & BIT_H40 ? HBLANK_CLEAR_H40 : HBLANK_CLEAR_H32)) {
1551 value |= 0x4; 1551 value |= 0x4;
1552 } 1552 }