Take care of HV counter latching (when light guns are in use)
@@ -412,6 +412,10 @@ void _vint_callback()
// detect if we are too late
bool late = FALSE;
+
+ // we cannot detect late frame if HV latching is enabled..
+ if (!VDP_getHVLatching())
+ {
// V28 mode
if (VDP_getScreenHeight() == 224)
{
@@ -424,6 +428,7 @@ void _vint_callback()
// V Counter outside expected range ? (rollback in PAL mode can mess up the test here..)
if ((vcnt < 240) || (vcnt > (240 + VINT_ALLOWED_LINE_DELAY))) late = TRUE;
}
+ }
// interrupt happened too late ?
if (late)
@@ -457,7 +462,6 @@ void _vint_callback()
// call user callback (pre V-Int)
if (VIntCBPre) VIntCBPre();
-
u16 vintp = VIntProcess;
// may worth it
if (vintp)
