aboutsummaryrefslogtreecommitdiff
path: root/libpcsxcore
diff options
context:
space:
mode:
authornotaz2012-01-03 20:05:54 +0200
committernotaz2012-01-03 20:05:54 +0200
commit72e5023fade738954035199aacf4076c69c52477 (patch)
tree7e6c612b6647c8a25b96c6addf941b8bc17028ef /libpcsxcore
parentb78edec75aea5e9015e11dd71f7736d7e92b347b (diff)
downloadpcsx_rearmed-72e5023fade738954035199aacf4076c69c52477.tar.gz
pcsx_rearmed-72e5023fade738954035199aacf4076c69c52477.tar.bz2
pcsx_rearmed-72e5023fade738954035199aacf4076c69c52477.zip
bring GPUvBlank back
to be used for interlace emulation
Diffstat (limited to 'libpcsxcore')
-rw-r--r--libpcsxcore/plugins.h4
-rw-r--r--libpcsxcore/psxcounters.c3
2 files changed, 4 insertions, 3 deletions
diff --git a/libpcsxcore/plugins.h b/libpcsxcore/plugins.h
index f7f6248..dfa8722 100644
--- a/libpcsxcore/plugins.h
+++ b/libpcsxcore/plugins.h
@@ -94,7 +94,7 @@ typedef long (CALLBACK* GPUfreeze)(uint32_t, GPUFreeze_t *);
typedef long (CALLBACK* GPUgetScreenPic)(unsigned char *);
typedef long (CALLBACK* GPUshowScreenPic)(unsigned char *);
typedef void (CALLBACK* GPUclearDynarec)(void (CALLBACK *callback)(void));
-typedef void (CALLBACK* GPUvBlank)(int);
+typedef void (CALLBACK* GPUvBlank)(int, int);
// GPU function pointers
extern GPUupdateLace GPU_updateLace;
@@ -119,7 +119,7 @@ extern GPUfreeze GPU_freeze;
extern GPUgetScreenPic GPU_getScreenPic;
extern GPUshowScreenPic GPU_showScreenPic;
extern GPUclearDynarec GPU_clearDynarec;
-extern GPUvBlank GPU_vBlank; // unused
+extern GPUvBlank GPU_vBlank;
// CD-ROM Functions
typedef long (CALLBACK* CDRinit)(void);
diff --git a/libpcsxcore/psxcounters.c b/libpcsxcore/psxcounters.c
index 5056c70..8b8fea8 100644
--- a/libpcsxcore/psxcounters.c
+++ b/libpcsxcore/psxcounters.c
@@ -291,7 +291,7 @@ void psxRcntUpdate()
if( hSyncCount == VBlankStart )
{
HW_GPU_STATUS &= ~PSXGPU_LCF;
-
+ GPU_vBlank( 1, 0 );
setIrq( 0x01 );
EmuUpdate();
@@ -307,6 +307,7 @@ void psxRcntUpdate()
gpuSyncPluginSR();
if( (HW_GPU_STATUS & PSXGPU_ILACE_BITS) == PSXGPU_ILACE_BITS )
HW_GPU_STATUS |= frame_counter << 31;
+ GPU_vBlank( 0, HW_GPU_STATUS >> 31 );
}
// Schedule next call, in hsyncs