initial commit

This commit is contained in:
2014-01-18 15:06:11 +01:00
parent 3fabb8dcf8
commit 768bec39b3
408 changed files with 171325 additions and 2 deletions

64
gfx/cube.cpp Normal file
View File

@@ -0,0 +1,64 @@
// Commands
#define CBEGIN 0x40
#define CCOLOR 0x20
#define CVERTEX 0x24
#define CNORMAL 0x21
// Parameters
#define QUAD 0x1
#define QUADSTRIP 0x3
#define GRAY RGB15(15, 15, 15)
#define NORMAL(x,y,z) () // (1bit sign + 9bit fractional part)
#define VERTEX(x,y,z) () // (signed, with 6bit fractional part)
#define COMMAND(a,b,c,d) \
((a)&0xFF|(((b)&0xFF)<<8)|(((c)&0xFF)<<16)|(((d)&0xFF)<<24))
u32 cubelist[] =
{
COMMAND(CBEGIN, CCOLOR, CNORMAL, CVERTEX),
QUADSTRIP,
GRAY,
NORMAL( 0,-1, 0),
VERTEX(-1,-1,-1),
COMMAND(CVERTEX, CVERTEX, CVERTEX, CNORMAL),
VERTEX( 1,-1,-1),
VERTEX(-1,-1, 1),
VERTEX( 1,-1, 1),
NORMAL( 0, 0, 1),
COMMAND(CVERTEX, CVERTEX, CNORMAL, CVERTEX),
VERTEX(-1, 1, 1),
VERTEX( 1, 1, 1),
NORMAL( 0, 1, 0),
VERTEX(-1, 1,-1),
COMMAND(CVERTEX, CNORMAL, CVERTEX, CVERTEX),
VERTEX( 1, 1,-1),
NORMAL( 0, 0,-1),
VERTEX(-1,-1,-1),
VERTEX( 1,-1,-1),
COMMAND(CBEGIN, CNORMAL, CVERTEX, CVERTEX),
QUAD,
NORMAL( 1, 0, 0),
VERTEX( 1,-1,-1),
VERTEX( 1,-1, 1),
COMMAND(CVERTEX, CVERTEX, CNORMAL, CVERTEX),
VERTEX( 1, 1, 1),
VERTEX( 1, 1,-1),
NORMAL(-1, 0, 0),
VERTEX(-1,-1,-1),
COMMAND(CVERTEX, CVERTEX, CVERTEX, 0),
VERTEX(-1,-1, 1),
VERTEX(-1, 1, 1),
VERTEX(-1, 1,-1),
};
inline void cube()
{
extern u32 cubelist[];
DMA_SRC(0) = cubelist;
DMA_DEST(0) = 0x4000400;
DMA_CR(0) = DMA_FIFO | (sizeof(cubelist)/sizeof(u32));
while ( DMA_CR(0) & DMA_BUSY )
;
}