X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fgpu.h;h=21384e5825e6a1a2a7a8ae9f894313bd043b7e57;hb=d8b5433f3b09914ebb30f49bc48189d35d5a5a58;hp=98a22a0a8d6ebeef8a5772ca89f47e0bd551c6fc;hpb=908e426cc1ef2187357ed8fb59edd99b8a8060c9;p=pcsx_rearmed.git diff --git a/libpcsxcore/gpu.h b/libpcsxcore/gpu.h index 98a22a0a..21384e58 100644 --- a/libpcsxcore/gpu.h +++ b/libpcsxcore/gpu.h @@ -24,22 +24,23 @@ #ifndef __GPU_H__ #define __GPU_H__ -#define PSXGPU_LCF (1<<31) -#define PSXGPU_nBUSY (1<<26) -#define PSXGPU_ILACE (1<<22) -#define PSXGPU_DHEIGHT (1<<19) +#define PSXGPU_LCF (1u<<31) +#define PSXGPU_nBUSY (1u<<26) +#define PSXGPU_ILACE (1u<<22) +#define PSXGPU_DHEIGHT (1u<<19) +#define PSXGPU_FIELD (1u<<13) // both must be set for interlace to work -#define PSXGPU_ILACE_BITS (PSXGPU_ILACE | PSXGPU_DHEIGHT) +#define PSXGPU_ILACE_BITS (PSXGPU_ILACE | PSXGPU_DHEIGHT | PSXGPU_FIELD) #define HW_GPU_STATUS psxHu32ref(0x1814) // TODO: handle com too -#define PSXGPU_TIMING_BITS (PSXGPU_LCF | PSXGPU_nBUSY) +#define PSXGPU_TIMING_BITS (PSXGPU_LCF | PSXGPU_nBUSY | PSXGPU_FIELD) #define gpuSyncPluginSR() { \ - HW_GPU_STATUS &= PSXGPU_TIMING_BITS; \ - HW_GPU_STATUS |= GPU_readStatus() & ~PSXGPU_TIMING_BITS; \ + HW_GPU_STATUS &= SWAP32(PSXGPU_TIMING_BITS); \ + HW_GPU_STATUS |= SWAP32(GPU_readStatus() & ~PSXGPU_TIMING_BITS); \ } #endif /* __GPU_H__ */