static const u32 CountToTarget = 1;
static const u32 FrameRate[] = { 60, 50 };
static const u32 CountToTarget = 1;
static const u32 FrameRate[] = { 60, 50 };
static const u32 HSyncTotal[] = { 263, 313 };
static const u32 SpuUpdInterval[] = { 32, 32 };
static const u32 HSyncTotal[] = { 263, 313 };
static const u32 SpuUpdInterval[] = { 32, 32 };
- GPU_vBlank( 1, &hSyncCount, &gpu_wants_hcnt );
- //if( !(HW_GPU_STATUS & PSXGPU_ILACE) ) // hmh
- HW_GPU_STATUS |= PSXGPU_LCF;
+ HW_GPU_STATUS &= ~PSXGPU_LCF;
+ GPU_vBlank( 1, 0 );
+ setIrq( 0x01 );
- GPU_vBlank( 0, &hSyncCount, &gpu_wants_hcnt );
- setIrq( 0x01 );
-
- EmuUpdate();
- GPU_updateLace();
-
- HW_GPU_STATUS &= ~PSXGPU_LCF;
- if( HW_GPU_STATUS & PSXGPU_ILACE )
+ gpuSyncPluginSR();
+ if( (HW_GPU_STATUS & PSXGPU_ILACE_BITS) == PSXGPU_ILACE_BITS )
}
// Schedule next call, in hsyncs
hsync_steps = SpuUpdInterval[Config.PsxType] - spuSyncCount;
}
// Schedule next call, in hsyncs
hsync_steps = SpuUpdInterval[Config.PsxType] - spuSyncCount;
next_lace = HSyncTotal[Config.PsxType] - hSyncCount;
if( next_vsync && next_vsync < hsync_steps )
hsync_steps = next_vsync;
if( next_lace && next_lace < hsync_steps )
hsync_steps = next_lace;
next_lace = HSyncTotal[Config.PsxType] - hSyncCount;
if( next_vsync && next_vsync < hsync_steps )
hsync_steps = next_vsync;
if( next_lace && next_lace < hsync_steps )
hsync_steps = next_lace;