mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-04 10:03:36 +00:00
53 lines
999 B
C
53 lines
999 B
C
#ifndef N64_H
|
|
#define N64_H
|
|
|
|
#include "Types.h"
|
|
|
|
#define MI_INTR_DP 0x20 // Bit 5: DP intr
|
|
|
|
// Actual TMEM size is 512 QWORDS. However, some load operations load more data that TMEM can take.
|
|
// We can either cut the surplus data, or increase the buffer and load everything.
|
|
// The second option is more simple and safe. Actual texture load will use correct TMEM size.
|
|
#define TMEM_SIZE 1024
|
|
#define TMEM_SIZE_BYTES 8192
|
|
|
|
struct N64Regs
|
|
{
|
|
u32 *MI_INTR;
|
|
|
|
u32 *DPC_START;
|
|
u32 *DPC_END;
|
|
u32 *DPC_CURRENT;
|
|
u32 *DPC_STATUS;
|
|
u32 *DPC_CLOCK;
|
|
u32 *DPC_BUFBUSY;
|
|
u32 *DPC_PIPEBUSY;
|
|
u32 *DPC_TMEM;
|
|
|
|
u32 *VI_STATUS;
|
|
u32 *VI_ORIGIN;
|
|
u32 *VI_WIDTH;
|
|
u32 *VI_INTR;
|
|
u32 *VI_V_CURRENT_LINE;
|
|
u32 *VI_TIMING;
|
|
u32 *VI_V_SYNC;
|
|
u32 *VI_H_SYNC;
|
|
u32 *VI_LEAP;
|
|
u32 *VI_H_START;
|
|
u32 *VI_V_START;
|
|
u32 *VI_V_BURST;
|
|
u32 *VI_X_SCALE;
|
|
u32 *VI_Y_SCALE;
|
|
};
|
|
|
|
extern N64Regs REG;
|
|
extern u8 *HEADER;
|
|
extern u8 *DMEM;
|
|
extern u8 *IMEM;
|
|
extern u8 *RDRAM;
|
|
extern u64 TMEM[TMEM_SIZE];
|
|
extern u32 RDRAMSize;
|
|
|
|
#endif
|
|
|