summaryrefslogtreecommitdiff
path: root/include/sys_cfb.h
blob: f8f0d4539ab20ed4681312c5d52caacacf17c40d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef SYS_CFB_H
#define SYS_CFB_H

#include "ultra64.h"
#include "macros.h"

void SysCfb_SetLoResMode(void);
void SysCfb_SetHiResMode(void);
void SysCfb_Init(void);
void* SysCfb_GetFramebuffer(s32 index);
void* SysCfb_GetZBuffer(void);
void* SysCfb_GetWorkBuffer(void);
u16 SysCfb_GetZBufferPixel(s32 x, s32 y);
s32 SysCfb_GetZBufferInt(s32 x, s32 y);

extern void* gFramebuffers[2];
extern OSViMode* gActiveViMode;
extern u16* gZBufferPtr;
extern void* gWorkBuffer;
extern u64* gGfxSPTaskOutputBufferPtr;
extern void* gGfxSPTaskOutputBufferEnd;

extern u16 (*gZBufferLoRes)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u16 (*gWorkBufferLoRes)[SCREEN_WIDTH * SCREEN_HEIGHT];
extern u64 (*gGfxSPTaskOutputBufferLoRes)[0x3000];
extern void* gGfxSPTaskOutputBufferEndLoRes;

extern u16 (*gZBufferHiRes)[HIRES_BUFFER_WIDTH * HIRES_BUFFER_HEIGHT];
extern u16 (*gWorkBufferHiRes)[HIRES_BUFFER_WIDTH * HIRES_BUFFER_HEIGHT];
extern u64 (*gGfxSPTaskOutputBufferHiRes)[0x3000];
extern void* gGfxSPTaskOutputBufferEndHiRes;
extern s16 gCfbWidth;
extern s16 gCfbHeight;
extern s16 gCfbLeftAdjust;
extern s16 gCfbUpperAdjust;
extern u8 gSysCfbHiResEnabled;

#endif