eliminate event code duplication
[pcsx_rearmed.git] / libpcsxcore / gpu.c
CommitLineData
abf09485 1/***************************************************************************
2 * This program is free software; you can redistribute it and/or modify *
3 * it under the terms of the GNU General Public License as published by *
4 * the Free Software Foundation; either version 2 of the License, or *
5 * (at your option) any later version. *
6 * *
7 * This program is distributed in the hope that it will be useful, *
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
10 * GNU General Public License for more details. *
11 ***************************************************************************/
12
13#include "gpu.h"
14#include "psxdma.h"
15
16void gpu_state_change(int what)
17{
18 enum psx_gpu_state state = what;
19 switch (state)
20 {
21 case PGS_VRAM_TRANSFER_START:
22 HW_GPU_STATUS &= ~SWAP32(PSXGPU_nBUSY);
23 break;
24 case PGS_VRAM_TRANSFER_END:
25 HW_GPU_STATUS |= SWAP32(PSXGPU_nBUSY);
26 break;
27 case PGS_PRIMITIVE_START:
28 HW_GPU_STATUS &= ~SWAP32(PSXGPU_nBUSY);
9a0a61d2 29 set_event(PSXINT_GPUDMA, 200); // see gpuInterrupt
abf09485 30 break;
31 }
32}