X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgpu.h;h=47ec01252a6e870a8ab061e5fe9b1bbb695bdfb4;hb=5d76d651dfc3aa0a2e810e6b6db2ae8a2e34c53e;hp=65485447107ea1cf9fd191bbe6c350861263ebc7;hpb=d239de704f276a75d927900e3d413a44cc87116c;p=virtualjaguar diff --git a/src/gpu.h b/src/gpu.h index 6548544..47ec012 100644 --- a/src/gpu.h +++ b/src/gpu.h @@ -5,33 +5,38 @@ #ifndef __GPU_H__ #define __GPU_H__ -#include "types.h" +//#include "types.h" +#include "memory.h" #define GPU_CONTROL_RAM_BASE 0x00F02100 #define GPU_WORK_RAM_BASE 0x00F03000 void GPUInit(void); void GPUReset(void); -void GPUExec(int32); +void GPUExec(int32_t); void GPUDone(void); void GPUUpdateRegisterBanks(void); void GPUHandleIRQs(void); void GPUSetIRQLine(int irqline, int state); -uint8 GPUReadByte(uint32 offset, uint32 who = UNKNOWN); -uint16 GPUReadWord(uint32 offset, uint32 who = UNKNOWN); -uint32 GPUReadLong(uint32 offset, uint32 who = UNKNOWN); -void GPUWriteByte(uint32 offset, uint8 data, uint32 who = UNKNOWN); -void GPUWriteWord(uint32 offset, uint16 data, uint32 who = UNKNOWN); -void GPUWriteLong(uint32 offset, uint32 data, uint32 who = UNKNOWN); +uint8_t GPUReadByte(uint32_t offset, uint32_t who = UNKNOWN); +uint16_t GPUReadWord(uint32_t offset, uint32_t who = UNKNOWN); +uint32_t GPUReadLong(uint32_t offset, uint32_t who = UNKNOWN); +void GPUWriteByte(uint32_t offset, uint8_t data, uint32_t who = UNKNOWN); +void GPUWriteWord(uint32_t offset, uint16_t data, uint32_t who = UNKNOWN); +void GPUWriteLong(uint32_t offset, uint32_t data, uint32_t who = UNKNOWN); -uint32 GPUGetPC(void); +uint32_t GPUGetPC(void); void GPUReleaseTimeslice(void); void GPUResetStats(void); -uint32 GPUReadPC(void); +uint32_t GPUReadPC(void); // GPU interrupt numbers (from $F00100, bits 4-8) enum { GPUIRQ_CPU = 0, GPUIRQ_DSP, GPUIRQ_TIMER, GPUIRQ_OBJECT, GPUIRQ_BLITTER }; +// Exported vars + +extern uint32_t gpu_reg_bank_0[], gpu_reg_bank_1[]; + #endif // __GPU_H__