#include<ultra64.h>

extern Vtx TI_Rock01_v[];
extern Vtx TI_Rock01_vmcur[];
extern Tri TI_Rock01_tri[];

extern unsigned short TI_Rock01_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)

Gfx TI_Rock01[]={

	gs_Nin_SetUpTileDescrip(G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,0,G_TX_WRAP,4,0,G_TX_WRAP,4,0),
	gs_Nin_LoadTextureImage(TI_Rock01_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&TI_Rock01_v[0],31,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, 14, 16, 0),
	gsSP2Triangles(18, 14, 17, 0, 17, 16, 5, 0),
	gsSP2Triangles(19, 20, 21, 0, 20, 22, 23, 0),
	gsSP2Triangles(24, 20, 23, 0, 20, 24, 21, 0),
	gsSP2Triangles(25, 21, 26, 0, 21, 24, 26, 0),
	gsSP2Triangles(23, 26, 24, 0, 27, 28, 29, 0),
	gsSP1Triangle(29, 28, 30, 0),
	gsSPVertex(&TI_Rock01_v[31],24,0),
	gsSP2Triangles(0, 1, 2, 0, 3, 2, 4, 0),
	gsSP2Triangles(2, 3, 5, 0, 0, 2, 5, 0),
	gsSP2Triangles(3, 6, 7, 0, 4, 6, 3, 0),
	gsSP2Triangles(8, 5, 3, 0, 8, 0, 5, 0),
	gsSP2Triangles(0, 8, 9, 0, 10, 11, 12, 0),
	gsSP2Triangles(11, 10, 13, 0, 14, 15, 16, 0),
	gsSP2Triangles(17, 18, 19, 0, 18, 17, 20, 0),
	gsSP1Triangle(21, 22, 23, 0),
	gsSPEndDisplayList(),
}; /* DXFdata */ 

/* 47 vertices */
Vtx TI_Rock01_v[]={
	{   -36,   -46,    -4,     0,   232,    28,   -63,   -98,   -21,   255},	/* 0 */
	{   -20,   -45,    38,     0,   497,   126,   -25,   -80,    83,   255},	/* 1 */
	{   -58,    -1,    28,     0,   436,  -116,  -106,   -14,    52,   255},	/* 2 */
	{    -1,   -37,   -26,     0,    88,   248,    -6,   -94,   -73,   255},	/* 3 */
	{    22,   -50,    19,     0,   377,   397,    47,  -106,    27,   255},	/* 4 */
	{   -47,    36,     2,     0,   267,   -47,   -93,    75,    -3,   255},	/* 5 */
	{   -25,    34,    42,     0,   525,    95,   -49,    67,    86,   255},	/* 6 */
	{   -12,    -5,    56,     0,   221,   178,   -19,     3,   117,   255},	/* 7 */
	{    25,     3,    49,     0,   275,   416,    70,     7,    96,   255},	/* 8 */
	{     6,    38,    33,     0,   497,   293,    40,    81,    78,   255},	/* 9 */
	{   -20,   -45,    38,     0,   -34,   126,   -25,   -80,    83,   255},	/* 10 */
	{    22,   -50,    19,     0,   -65,   397,    47,  -106,    27,   255},	/* 11 */
	{   -58,    -1,    28,     0,   249,  -116,  -106,   -14,    52,   255},	/* 12 */
	{   -25,    34,    42,     0,   472,    95,   -49,    67,    86,   255},	/* 13 */
	{    29,    46,   -12,     0,   180,   441,    56,   106,     4,   255},	/* 14 */
	{    14,    42,   -40,     0,     0,   347,     4,    90,   -79,   255},	/* 15 */
	{   -22,    37,   -24,     0,   102,   112,   -45,    89,   -65,   255},	/* 16 */
	{   -16,    53,    11,     0,   325,   151,   -12,   119,     7,   255},	/* 17 */
	{     6,    38,    33,     0,   467,   293,    40,    81,    78,   255},	/* 18 */
	{     6,    38,    33,     0,   497,  -211,    40,    81,    78,   255},	/* 19 */
	{    25,     3,    49,     0,   275,  -310,    70,     7,    96,   255},	/* 20 */
	{    29,    46,   -12,     0,   549,    75,    56,   106,     4,   255},	/* 21 */
	{    22,   -50,    19,     0,   -65,  -121,    47,  -106,    27,   255},	/* 22 */
	{    54,   -19,     7,     0,   134,   -46,   104,   -58,     4,   255},	/* 23 */
	{    56,    22,    -1,     0,   396,     8,   109,    47,    16,   255},	/* 24 */
	{    14,    42,   -40,     0,   522,   255,     4,    90,   -79,   255},	/* 25 */
	{    40,     6,   -56,     0,   296,   357,    89,    16,   -79,   255},	/* 26 */
	{   -47,    36,     2,     0,    23,   244,   -93,    75,    -3,   255},	/* 27 */
	{   -55,    -2,   -27,     0,   270,   427,   -96,   -14,   -68,   255},	/* 28 */
	{   -58,    -1,    28,     0,   262,    75,  -106,   -14,    52,   255},	/* 29 */
	{   -36,   -46,    -4,     0,   548,   279,   -63,   -98,   -21,   255},	/* 30 */
	{   -55,    -2,   -27,     0,   270,   -94,   -96,   -14,   -68,   255},	/* 31 */
	{   -47,    36,     2,     0,    23,   -47,   -93,    75,    -3,   255},	/* 32 */
	{   -22,    37,   -24,     0,    16,   112,   -45,    89,   -65,   255},	/* 33 */
	{    -5,     6,   -58,     0,   215,   225,   -38,    -6,  -113,   255},	/* 34 */
	{    14,    42,   -40,     0,   -10,   347,     4,    90,   -79,   255},	/* 35 */
	{   -31,     6,   -34,     0,   214,    55,   -61,   -13,  -102,   255},	/* 36 */
	{    40,     6,   -56,     0,   215,   510,    89,    16,   -79,   255},	/* 37 */
	{    30,   -30,   -40,     0,   450,   449,    42,   -86,   -71,   255},	/* 38 */
	{    -1,   -37,   -26,     0,   493,   248,    -6,   -94,   -73,   255},	/* 39 */
	{   -36,   -46,    -4,     0,   548,    28,   -63,   -98,   -21,   255},	/* 40 */
	{    -1,   -37,   -26,     0,    88,   248,    -6,   -94,   -73,   255},	/* 41 */
	{    54,   -19,     7,     0,   302,   599,   104,   -58,     4,   255},	/* 42 */
	{    22,   -50,    19,     0,   377,   397,    47,  -106,    27,   255},	/* 43 */
	{    30,   -30,   -40,     0,     0,   449,    42,   -86,   -71,   255},	/* 44 */
	{    54,   -19,     7,     0,   134,   -46,   104,   -58,     4,   255},	/* 45 */
	{    30,   -30,   -40,     0,    61,   255,    42,   -86,   -71,   255},	/* 46 */
	{    40,     6,   -56,     0,   296,   357,    89,    16,   -79,   255},	/* 47 */
	{   -25,    34,    42,     0,   525,    95,   -49,    67,    86,   255},	/* 48 */
	{   -16,    53,    11,     0,   325,   151,   -12,   119,     7,   255},	/* 49 */
	{   -47,    36,     2,     0,   267,   -47,   -93,    75,    -3,   255},	/* 50 */
	{     6,    38,    33,     0,   467,   293,    40,    81,    78,   255},	/* 51 */
	{    30,   -30,   -40,     0,    61,   449,    42,   -86,   -71,   255},	/* 52 */
	{    -1,   -37,   -26,     0,    18,   248,    -6,   -94,   -73,   255},	/* 53 */
	{    -5,     6,   -58,     0,   296,   225,   -38,    -6,  -113,   255},	/* 54 */
};

/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short TI_Rock01_txt[] = {
	0x1801, 0x1, 0x1, 0x1, 0x1, 0x28c7, 0x28c5, 0x3949, 0x28c5, 0x2083, 0x1883, 0x1, 0x1, 0x1001, 0x30c3, 0x3903, 
	0x38c1, 0x2881, 0x2841, 0x28c5, 0x3907, 0x1001, 0x1041, 0x1843, 0x3107, 0x2041, 0x2083, 0x3107, 0x30c3, 0x3103, 0x3903, 0x2881, 
	0x2881, 0x2881, 0x2081, 0x3907, 0x3949, 0x1041, 0x1001, 0x2083, 0x1843, 0x3905, 0x2083, 0x49cd, 0x498b, 0x4143, 0x4143, 0x1801, 
	0x2885, 0x28c5, 0x3107, 0x498b, 0x3907, 0x2883, 0x2043, 0x1843, 0x2883, 0x2883, 0x1841, 0x1041, 0x4989, 0x49c9, 0x5a0b, 0x51c9, 
	0x4149, 0x3907, 0x4149, 0x49cd, 0x498b, 0x28c5, 0x1843, 0x2083, 0x30c3, 0x2083, 0x1041, 0x1, 0x28c5, 0x3947, 0x2907, 0x414b, 
	0x30c5, 0x4149, 0x414b, 0x3107, 0x1, 0x1885, 0x418b, 0x30c3, 0x3905, 0x28c3, 0x2043, 0x1883, 0x2907, 0x20c5, 0x1, 0x2043, 
	0x2041, 0x4147, 0x3949, 0x801, 0x801, 0x18c5, 0x28c5, 0x418b, 0x4147, 0x28c5, 0x28c5, 0x3107, 0x28c5, 0x1801, 0x1, 0x843, 
	0x1, 0x1801, 0x1801, 0x801, 0x2083, 0x1841, 0x1843, 0x418b, 0x3907, 0x4149, 0x4149, 0x3107, 0x841, 0x1, 0x2041, 0x1, 
	0x1, 0x1, 0x1041, 0x3107, 0x3107, 0x2083, 0x1883, 0x3107, 0x418b, 0x4989, 0x498b, 0x3909, 0x30c7, 0x2041, 0x2083, 0x1041, 
	0x18c7, 0x2881, 0x2083, 0x2883, 0x3107, 0x3107, 0x1841, 0x3949, 0x418d, 0x1043, 0x801, 0x801, 0x394b, 0x18c7, 0x30c5, 0x2083, 
	0x1801, 0x1841, 0x30c3, 0x4147, 0x30c5, 0x1883, 0x1041, 0x2085, 0x2041, 0x801, 0x1, 0x1, 0x2883, 0x2883, 0x28c5, 0x20c3, 
	0x801, 0x1, 0x3907, 0x2883, 0x2043, 0x2083, 0x1841, 0x1, 0x1841, 0x3107, 0x3107, 0x3907, 0x30c5, 0x28c3, 0x30c5, 0x1041, 
	0x1, 0x2041, 0x2083, 0x3947, 0x28c5, 0x3907, 0x3949, 0x3907, 0x3107, 0x3107, 0x1, 0x3947, 0x3105, 0x3905, 0x28c5, 0x1041, 
	0x2841, 0x1, 0x20c5, 0x498b, 0x3107, 0x28c5, 0x30c5, 0x28c3, 0x3107, 0x1041, 0x1, 0x394b, 0x498b, 0x3947, 0x30c5, 0x1841, 
	0x30c1, 0x801, 0x1, 0x418b, 0x3949, 0x3107, 0x28c5, 0x28c3, 0x801, 0x1, 0x1, 0x1, 0x801, 0x2083, 0x30c5, 0x28c3, 
	0x2041, 0x1, 0x1, 0x1, 0x2043, 0x1085, 0x1001, 0x2085, 0x1, 0x2085, 0x801, 0x3105, 0x801, 0x2881, 0x2083, 0x28c3, 
};

