ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
Zbuffer.c File Reference
#include <errno.h>
#include <stdio.h>
#include <kernel.h>
#include <libgs.h>
#include "internal.h"
+ Include dependency graph for Zbuffer.c:

Go to the source code of this file.

Functions

void GsSetDefaultZBufferEnv (GS_ZENV *zenv, u8 update_mask)
 
void GsSetDefaultZBufferEnvAddress (GS_ZENV *zenv, unsigned short vram_addr, unsigned char psm)
 
void GsPutZBufferEnv1 (GS_ZENV *zenv)
 
void GsPutZBufferEnv2 (GS_ZENV *zenv)
 

Variables

QWORD GsPrimWorkArea []
 

Function Documentation

◆ GsPutZBufferEnv1()

void GsPutZBufferEnv1 ( GS_ZENV zenv)

Definition at line 31 of file Zbuffer.c.

32 {
33  QWORD *p;
35  gs_setGIF_TAG(((GS_GIF_TAG *)&p[0]), 1,1,0,0,GS_GIF_PACKED,1,gif_rd_ad);
36  gs_setR_ZBUF_1(((GS_R_ZBUF *)&p[1]), zenv->vram_addr, zenv->psm, zenv->update_mask);
37 
39  GsDmaWait();
40 }
QWORD GsPrimWorkArea[]
Definition: packets.c:18
#define UNCACHED_SEG(x)
Definition: kernel.h:35
void GsDmaWait(void)
Definition: dma.c:148
void GsDmaSend(const void *addr, u32 qwords)
Definition: dma.c:88
#define gs_setGIF_TAG(p, _nloop, _eop, _pre, _prim, _flg, _nreg, _reg)
Definition: libgs.h:1870
#define gs_setR_ZBUF_1(p, _fb_addr, _psm, _update_mask)
Definition: libgs.h:1802
#define gif_rd_ad
Definition: libgs.h:326
@ GS_GIF_PACKED
Definition: libgs.h:181
u8 update_mask
Definition: libgs.h:1936
u16 vram_addr
Definition: libgs.h:1934
u8 psm
Definition: libgs.h:1935
Definition: libgs.h:333

References gif_rd_ad, GS_GIF_PACKED, gs_setGIF_TAG, gs_setR_ZBUF_1, GsDmaSend(), GsDmaWait(), GsPrimWorkArea, GS_ZENV::psm, UNCACHED_SEG, GS_ZENV::update_mask, and GS_ZENV::vram_addr.

◆ GsPutZBufferEnv2()

void GsPutZBufferEnv2 ( GS_ZENV zenv)

Definition at line 42 of file Zbuffer.c.

43 {
44  QWORD *p;
46  gs_setGIF_TAG(((GS_GIF_TAG *)&p[0]), 4,1,0,0,GS_GIF_PACKED,1,gif_rd_ad);
47  gs_setR_ZBUF_2(((GS_R_ZBUF *)&p[1]), zenv->vram_addr, zenv->psm, zenv->update_mask);
48 
50  GsDmaWait();
51 }
#define gs_setR_ZBUF_2(p, _fb_addr, _psm, _update_mask)
Definition: libgs.h:1806

References gif_rd_ad, GS_GIF_PACKED, gs_setGIF_TAG, gs_setR_ZBUF_2, GsDmaSend(), GsDmaWait(), GsPrimWorkArea, GS_ZENV::psm, UNCACHED_SEG, GS_ZENV::update_mask, and GS_ZENV::vram_addr.

◆ GsSetDefaultZBufferEnv()

void GsSetDefaultZBufferEnv ( GS_ZENV zenv,
u8  update_mask 
)

Definition at line 20 of file Zbuffer.c.

21 {
22  zenv->update_mask = update_mask;
23 }

References GS_ZENV::update_mask.

◆ GsSetDefaultZBufferEnvAddress()

void GsSetDefaultZBufferEnvAddress ( GS_ZENV zenv,
unsigned short  vram_addr,
unsigned char  psm 
)

Definition at line 25 of file Zbuffer.c.

26 {
27  zenv->vram_addr=vram_addr;
28  zenv->psm=psm;
29 }

References GS_ZENV::psm, and GS_ZENV::vram_addr.

Variable Documentation

◆ GsPrimWorkArea

QWORD GsPrimWorkArea[]
extern

Definition at line 18 of file packets.c.

Referenced by GsPutZBufferEnv1(), and GsPutZBufferEnv2().