mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2024-11-04 18:05:06 +01:00
fixed VDP width change during active display (Golden Axe 3 intro)
This commit is contained in:
parent
032bd764ab
commit
63617bf5a1
@ -447,6 +447,7 @@ void system_frame (int do_skip)
|
||||
bitmap.viewport.oh = bitmap.viewport.h;
|
||||
bitmap.viewport.changed |= 1;
|
||||
}
|
||||
|
||||
if (bitmap.viewport.w != bitmap.viewport.ow)
|
||||
{
|
||||
bitmap.viewport.ow = bitmap.viewport.w;
|
||||
|
25
source/vdp.c
25
source/vdp.c
@ -972,33 +972,18 @@ static void reg_w(unsigned int r, unsigned int d)
|
||||
/* Update clipping */
|
||||
window_clip();
|
||||
|
||||
/* Update viewport */
|
||||
if (status & 8)
|
||||
/* display width changed during HBLANK (Bugs Bunny Double Trouble) */
|
||||
if (!(status & 8))
|
||||
{
|
||||
/* changes should be applied on next frame */
|
||||
bitmap.viewport.changed |= 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Update active display */
|
||||
if (d & 1)
|
||||
{
|
||||
bitmap.viewport.w = 320;
|
||||
bitmap.viewport.x = (config.overscan & 2) ? 16 : 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
bitmap.viewport.w = 256;
|
||||
bitmap.viewport.x = (config.overscan & 2) ? 12 : 0;
|
||||
}
|
||||
|
||||
/* display width changed during HBLANK (Bugs Bunny Double Trouble) */
|
||||
if (mcycles_68k <= (mcycles_vdp + 860))
|
||||
{
|
||||
/* redraw entire line */
|
||||
render_line(v_counter);
|
||||
}
|
||||
}
|
||||
|
||||
/* changes should be applied on next frame */
|
||||
bitmap.viewport.changed |= 2;
|
||||
}
|
||||
|
||||
/* Interlaced modes */
|
||||
|
Loading…
Reference in New Issue
Block a user