#include<ultra64.h>

extern Vtx AC_Rock_02_v[];

extern unsigned char AC_IwaTX01_CI8_txt[];



#define gs_Nin_LoadTextureImage(timg,fmt,siz,width,height,tmem,tt)	\
	gsDPSetTextureImage(fmt,siz,1,timg),	\
	gsDPTileSync(),	\
	gsDPSetTile(fmt,siz,0,tmem,tt,0,0,0,0,0,0,0),	\
	gsDPLoadSync(),	\
	gsDPLoadBlock(tt,0,0,width*height-1,CALC_DXT(width,siz##_BYTES))

#define gs_Nin_SetUpTileDescrip(fmt,siz,width,height,tmem,tt,cs,ms,ss,ct,mt,st)	\
	gsDPTileSync(),	\
	gsDPSetTile(fmt,siz,((((width)*siz##_LINE_BYTES)+7)>>3),tmem,tt,0,ct,mt,st,cs,ms,ss),	\
	gsDPSetTileSize(tt,0,0,(width-1)<<G_TEXTURE_IMAGE_FRAC,(height-1)<<G_TEXTURE_IMAGE_FRAC)

#define G_CC_PRIMSHADE PRIMITIVE,0,SHADE,0,0,0,0,SHADE

/* main display list */


/* ======== g58 ======== */

Gfx AC_Rock_02[]={

	gsDPLoadTLUT_pal256(&AC_IwaTX01_CI8_txt[1024]),
	gsDPLoadTextureBlock(AC_IwaTX01_CI8_txt,G_IM_FMT_CI,G_IM_SIZ_8b,32,32,0,G_TX_WRAP,G_TX_WRAP,5,5,0,0),
	gsDPSetTextureLUT(G_TT_RGBA16),

	gsSPVertex(&AC_Rock_02_v[0],32,0),
	gsSP2Triangles(0, 1, 2, 0, 0, 3, 4, 0),
	gsSP2Triangles(4, 1, 0, 0, 5, 2, 6, 0),
	gsSP2Triangles(7, 8, 9, 0, 8, 7, 10, 0),
	gsSP2Triangles(10, 11, 8, 0, 10, 7, 12, 0),
	gsSP2Triangles(9, 13, 7, 0, 12, 7, 13, 0),
	gsSP2Triangles(14, 15, 16, 0, 17, 18, 15, 0),
	gsSP2Triangles(15, 14, 19, 0, 20, 15, 19, 0),
	gsSP2Triangles(17, 15, 20, 0, 20, 19, 5, 0),
	gsSP2Triangles(21, 5, 19, 0, 20, 6, 17, 0),
	gsSP2Triangles(22, 23, 24, 0, 25, 26, 27, 0),
	gsSP2Triangles(6, 20, 5, 0, 26, 25, 28, 0),
	gsSP2Triangles(29, 30, 25, 0, 25, 31, 29, 0),
	gsSP2Triangles(27, 31, 25, 0, 30, 28, 25, 0),
	gsSPVertex(&AC_Rock_02_v[32],19,0),
	gsSP2Triangles(0, 1, 2, 0, 3, 0, 2, 0),
	gsSP2Triangles(0, 3, 4, 0, 5, 6, 7, 0),
	gsSP2Triangles(6, 5, 8, 0, 9, 10, 11, 0),
	gsSP2Triangles(10, 9, 12, 0, 12, 13, 10, 0),
	gsSP2Triangles(11, 10, 13, 0, 12, 14, 13, 0),
	gsSP2Triangles(9, 15, 12, 0, 16, 17, 18, 0),
	gsDPPipeSync(),
        gsDPSetTextureLUT(G_TT_NONE),
	gsSPEndDisplayList(),
}; /* g58 */ 

#undef G_CC_PRIMSHADE

#undef gs_Nin_LoadTextureImage

#undef gs_Nin_SetUpTileDescrip

/* 46 vertices */
Vtx AC_Rock_02_v[]={
	{   -93,  -119,   -10,     0,   134,  1014,   -65,   -98,   -16,   255},	/* 0 */
	{   -53,  -118,    98,     0,   897,  1158,   -25,   -80,    83,   255},	/* 1 */
	{  -152,    -3,    73,     0,   411,  1644,  -106,   -14,    52,   255},	/* 2 */
	{    12,  -115,   -83,     0,   105,   293,    -7,   -91,   -76,   255},	/* 3 */
	{    58,  -131,    49,     0,   998,   350,    38,  -106,    37,   255},	/* 4 */
	{  -123,    94,     5,     0,   109,  1242,   -93,    75,    -3,   255},	/* 5 */
	{   -65,    88,   110,     0,   920,  1270,   -49,    67,    86,   255},	/* 6 */
	{   -31,   -14,   145,     0,   321,   644,   -19,     3,   117,   255},	/* 7 */
	{    65,     8,   126,     0,   783,   162,    75,     8,    92,   255},	/* 8 */
	{    15,    98,    86,     0,  1133,   766,    40,    81,    78,   255},	/* 9 */
	{   -53,  -118,    98,     0,  -353,   407,   -25,   -80,    83,   255},	/* 10 */
	{    58,  -131,    49,     0,   -44,  -275,    38,  -106,    37,   255},	/* 11 */
	{  -152,    -3,    73,     0,   -30,  1379,  -106,   -14,    52,   255},	/* 12 */
	{   -65,    88,   110,     0,   794,  1195,   -49,    67,    86,   255},	/* 13 */
	{    37,   108,  -104,     0,    40,   -64,    16,    85,   -83,   255},	/* 14 */
	{    76,   119,   -31,     0,   597,   -31,    61,   103,     2,   255},	/* 15 */
	{    77,    16,  -119,     0,    30,  -590,    86,     7,   -84,   255},	/* 16 */
	{    15,    98,    86,     0,  1061,   722,    40,    81,    78,   255},	/* 17 */
	{    65,     8,   126,     0,  1469,   574,    75,     8,    92,   255},	/* 18 */
	{   -58,    97,   -62,     0,   -51,   634,   -45,    89,   -65,   255},	/* 19 */
	{   -42,   138,    28,     0,   529,   855,   -12,   119,     7,   255},	/* 20 */
	{  -143,    -6,   -70,     0,  -386,  1095,   -97,   -15,   -68,   255},	/* 21 */
	{  -123,    94,     5,     0,  1066,   125,   -93,    75,    -3,   255},	/* 22 */
	{  -143,    -6,   -70,     0,   836,   940,   -97,   -15,   -68,   255},	/* 23 */
	{  -152,    -3,    73,     0,   209,   440,  -106,   -14,    52,   255},	/* 24 */
	{   -13,    16,  -151,     0,   563,   641,   -20,    -3,  -118,   255},	/* 25 */
	{   -58,    97,   -62,     0,   872,  1188,   -45,    89,   -65,   255},	/* 26 */
	{    37,   108,  -104,     0,  1268,   672,    16,    85,   -83,   255},	/* 27 */
	{   -82,    17,   -88,     0,   326,  1042,   -61,    -9,  -102,   255},	/* 28 */
	{    78,   -79,   -78,     0,   326,  -216,    63,   -54,   -86,   255},	/* 29 */
	{    12,  -115,   -83,     0,   -57,   195,    -7,   -91,   -76,   255},	/* 30 */
	{    77,    16,  -119,     0,   966,   -29,    86,     7,   -84,   255},	/* 31 */
	{  -143,    -6,   -70,     0,   -16,  1317,   -97,   -15,   -68,   255},	/* 32 */
	{   -58,    97,   -62,     0,   872,  1188,   -45,    89,   -65,   255},	/* 33 */
	{   -82,    17,   -88,     0,   326,  1042,   -61,    -9,  -102,   255},	/* 34 */
	{    12,  -115,   -83,     0,   -57,   195,    -7,   -91,   -76,   255},	/* 35 */
	{   -93,  -119,   -10,     0,  -498,   634,   -65,   -98,   -16,   255},	/* 36 */
	{    12,  -115,   -83,     0,   105,   293,    -7,   -91,   -76,   255},	/* 37 */
	{   142,   -68,    17,     0,  1107,  -230,   111,   -45,     1,   255},	/* 38 */
	{    58,  -131,    49,     0,   998,   350,    38,  -106,    37,   255},	/* 39 */
	{    78,   -79,   -78,     0,   183,  -302,    63,   -54,   -86,   255},	/* 40 */
	{    65,     8,   126,     0,  1139,  -126,    75,     8,    92,   255},	/* 41 */
	{   132,    57,   -29,     0,  1045,   708,   112,    42,     6,   255},	/* 42 */
	{    76,   119,   -31,     0,  1338,   935,    61,   103,     2,   255},	/* 43 */
	{   142,   -68,    17,     0,   467,   464,   111,   -45,     1,   255},	/* 44 */
	{    77,    16,  -119,     0,   369,  1525,    86,     7,   -84,   255},	/* 45 */
	{    78,   -79,   -78,     0,   -84,  1178,    63,   -54,   -86,   255},	/* 46 */
	{    58,  -131,    49,     0,    66,   198,    38,  -106,    37,   255},	/* 47 */
	{  -152,    -3,    73,     0,   371,   592,  -106,   -14,    52,   255},	/* 48 */
	{  -143,    -6,   -70,     0,   817,   265,   -97,   -15,   -68,   255},	/* 49 */
	{   -93,  -119,   -10,     0,   237,   -19,   -65,   -98,   -16,   255},	/* 50 */
};


/*   0 vertices */
/*   1 Materials */

#define	LDIRX	0
#define	LDIRY	0
#define	LDIRZ	120
#define	AMBDIV	1
