comparison vdp.c @ 1629:079e5b9d59ce

Forcefully update the display when entering the 68K debugger so you can see it update in realtime as you step through the code
author Michael Pavone <pavone@retrodev.com>
date Thu, 01 Nov 2018 20:14:56 -0700
parents 3c1661305219
children c4ba3177b72d
comparison
equal deleted inserted replaced
1628:3c1661305219 1629:079e5b9d59ce
1718 context->pending_hint_start = context->cycles; 1718 context->pending_hint_start = context->cycles;
1719 context->hint_counter = context->regs[REG_HINT]; 1719 context->hint_counter = context->regs[REG_HINT];
1720 } 1720 }
1721 } 1721 }
1722 1722
1723 void vdp_force_update_framebuffer(vdp_context *context)
1724 {
1725 uint16_t lines_max = (context->flags2 & FLAG2_REGION_PAL)
1726 ? 240 + BORDER_TOP_V30_PAL + BORDER_BOT_V30_PAL
1727 : 224 + BORDER_TOP_V28 + BORDER_BOT_V28;
1728
1729 uint16_t to_fill = lines_max - context->output_lines;
1730 memset(
1731 ((char *)context->fb) + context->output_pitch * context->output_lines,
1732 0,
1733 to_fill * context->output_pitch
1734 );
1735 render_framebuffer_updated(context->cur_buffer, context->h40_lines > context->output_lines / 2 ? LINEBUF_SIZE : (256+HORIZ_BORDER));
1736 context->fb = render_get_framebuffer(context->cur_buffer, &context->output_pitch);
1737 }
1738
1723 static void advance_output_line(vdp_context *context) 1739 static void advance_output_line(vdp_context *context)
1724 { 1740 {
1725 if (headless) { 1741 if (headless) {
1726 if (context->vcounter == context->inactive_start) { 1742 if (context->vcounter == context->inactive_start) {
1727 context->frame++; 1743 context->frame++;