aboutsummaryrefslogtreecommitdiff
path: root/libpsn00b/psxgpu/image.c
diff options
context:
space:
mode:
authorspicyjpeg <thatspicyjpeg@gmail.com>2023-05-11 15:59:56 +0200
committerspicyjpeg <thatspicyjpeg@gmail.com>2023-05-11 15:59:56 +0200
commitca6b54f3c15a7b00a5ede64ba452f2955a421a1e (patch)
tree847ee5c32003f83ebaf7be4e20a93543c72a218f /libpsn00b/psxgpu/image.c
parent0a797d2964517ac88e818b0741c5e7674c6fa018 (diff)
downloadpsn00bsdk-ca6b54f3c15a7b00a5ede64ba452f2955a421a1e.tar.gz
Add MoveImage(), SetDrawOpType(), GPU IRQ support
Diffstat (limited to 'libpsn00b/psxgpu/image.c')
-rw-r--r--libpsn00b/psxgpu/image.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libpsn00b/psxgpu/image.c b/libpsn00b/psxgpu/image.c
index 63bceb6..a08e293 100644
--- a/libpsn00b/psxgpu/image.c
+++ b/libpsn00b/psxgpu/image.c
@@ -41,6 +41,7 @@ static void _dma_transfer(const RECT *rect, uint32_t *data, int write) {
while (!(GPU_GP1 & (1 << 26)))
__asm__ volatile("");
+ SetDrawOpType(DRAWOP_TYPE_DMA);
GPU_GP1 = 0x04000000; // Disable DMA request
GPU_GP0 = 0x01000000; // Flush cache
@@ -124,6 +125,8 @@ void MoveImage2(const RECT *rect, int x, int y) {
while (!(GPU_GP1 & (1 << 26)))
__asm__ volatile("");
+ SetDrawOpType(DRAWOP_TYPE_GPU_IRQ);
+
GPU_GP0 = 0x80000000;
//GPU_GP0 = rect->x | (rect->y << 16);
GPU_GP0 = *((const uint32_t *) &(rect->x));