#include<ultra64.h>

extern Vtx ManWaist_c_v[];
extern Vtx ManWaist_c_vmcur[];
extern Tri ManWaist_c_tri[];
extern Lights1 ManWaist_c_material[];
extern Mtx ManWaist_c_matrix[];

extern unsigned short Sm1hand_b_txt[];
extern unsigned short Sm1hand_f_txt[];
extern unsigned short Sm1hand_s_txt[];
extern unsigned short Sm1hand_t_txt[];
extern unsigned short Sm1hara_txt[];
extern unsigned short Sm1jacket_b_txt[];
extern unsigned short Sm1jacket_f_txt[];
extern unsigned short Sm1jacket_s_txt[];
extern unsigned short Sm1jacket_t_txt[];
extern unsigned short Sm1loarm_txt[];
extern unsigned short Sm1met_b_txt[];
extern unsigned short Sm1met_f_txt[];
extern unsigned short Sm1met_gl_txt[];
extern unsigned short Sm1met_s_txt[];
extern unsigned short Sm1met_t_txt[];
extern unsigned short Sm1momo_txt[];
extern unsigned short Sm1neck_txt[];
extern unsigned short Sm1shoes_txt[];
extern unsigned short Sm1shoes_b_txt[];
extern unsigned short Sm1sune_txt[];
extern unsigned short Sm1uparm_txt[];
extern unsigned short Sm1waist_b_txt[];
extern unsigned short Sm1waist_f_txt[];
extern unsigned short Sm1waist_s_txt[];
extern unsigned short Sshoes_bottom_txt[];
extern unsigned short black_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
******************************************************************************/

Gfx ManWaist_c_model[]={

	gsSPTexture(65535, 65535,0, 0, 1),
	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_MODULATERGBA,G_CC_PASS2),

	gs_Nin_SetUpTileDescrip(G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,0,G_TX_CLAMP,4,0,G_TX_CLAMP,4,0),
	gs_Nin_LoadTextureImage(Sm1hara_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&ManWaist_c_v[0], 3, 0),
	gsSP1Triangle(0, 1, 2, 0),

	gs_Nin_SetUpTileDescrip(G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,0,G_TX_MIRROR,4,0,G_TX_CLAMP,4,0),
	gs_Nin_LoadTextureImage(Sm1waist_b_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&ManWaist_c_v[3], 6, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(2, 1, 3, 0),
	gsSP1Triangle(3, 4, 2, 0),
	gsSP1Triangle(2, 4, 5, 0),
	gsSP1Triangle(2, 5, 0, 0),

	gs_Nin_LoadTextureImage(Sm1waist_f_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&ManWaist_c_v[9], 6, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(3, 0, 2, 0),
	gsSP1Triangle(2, 1, 4, 0),
	gsSP1Triangle(0, 5, 1, 0),
	gsSPEndDisplayList(),
};

Gfx *ManWaist_c_modelT = NULL;

#undef G_CC_PRIMSHADE

#undef gs_Nin_LoadTextureImage

#undef gs_Nin_SetUpTileDescrip

/* 15 vertices */

/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/

Vtx ManWaist_c_v[]={
	{ -49,-24,-12,0, 505, -6, -68, -50, -83, 0 },   /* v0 p8/V1 used 1 times */ 
	{ 0,37,-12,0, 256, 512, 0, 78, -90, 0 },   /* v1 p8/V2 used 1 times */ 
	{ 49,-24,-12,0, 6, -6, 69, -50, -83, 0 },   /* v2 p8/V3 used 1 times */ 
	{ 0,4,88,0, 512, -17, 0, -13, 119, 0 },   /* v3 p5/V3 used 2 times */ 
	{ -63,39,50,0, 1046, 191, -93, 57, 48, 0 },   /* v4 p6/V2 used 2 times */ 
	{ 0,-49,46,0, 512, 227, 0, -105, 57, 0 },   /* v5 p5/V1 used 5 times */ 
	{ -49,-24,-12,0, 927, 555, -68, -50, -83, 0 },   /* v6 p6/V3 used 2 times */ 
	{ 49,-24,-12,0, 96, 555, 69, -50, -83, 0 },   /* v7 p4/V2 used 2 times */ 
	{ 63,39,50,0, -22, 191, 94, 57, 48, 0 },   /* v8 p5/V2 used 2 times */ 
	{ 0,37,-12,0, 511, 523, 0, 78, -90, 0 },   /* v9 p2/V2 used 3 times */ 
	{ -63,39,50,0, -22, 170, -93, 57, 48, 0 },   /* v10 p3/V2 used 3 times */ 
	{ 63,39,50,0, 1046, 170, 94, 57, 48, 0 },   /* v11 p3/V1 used 3 times */ 
	{ 49,-24,-12,0, 927, 534, 69, -50, -83, 0 },   /* v12 p2/V1 used 1 times */ 
	{ 0,4,88,0, 512, -38, 0, -13, 119, 0 },   /* v13 p3/V3 used 1 times */ 
	{ -49,-24,-12,0, 96, 534, -68, -50, -83, 0 },   /* v14 p1/V2 used 1 times */ 
};


/*   0 vertices */
/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short Sm1hara_txt[] = {
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1f47, 0x1f07, 0x1ec7, 0x1ec7, 0x1f07, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1ec7, 0x1e87, 0x1e47, 0x1e07, 0x1e47, 0x1e87, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1ec7, 0x1e87, 0x1ec7, 0x1ec7, 0x1e87, 0x1e47, 0x1ec7, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x2f4b, 0x2f8d, 0x378d, 0x378d, 0x2f4b, 0x1ec7, 0x1e87, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f07, 0x1f47, 0x2789, 0x37cd, 0x4fd3, 0x57d5, 0x5fd5, 0x57d3, 0x3f8f, 0x2749, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f87, 0x1f87, 0x2f8b, 0x3f4d, 0x2689, 0x2ecb, 0x3f0f, 0x3f4f, 0x3f8f, 0x278b, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x2f4b, 0x3f4f, 0x26c9, 0x1605, 0x1e47, 0x1ec7, 0x2749, 0x2749, 0x2749, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1e87, 0x370d, 0x5793, 0x2f0b, 0x1e47, 0x1ec7, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1ec7, 0x1e47, 0x1e07, 0x2649, 0x3f4f, 0x2709, 0x1ec7, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1ec7, 0x26c9, 0x26c9, 0x26c9, 0x26c9, 0x2749, 0x1f07, 0x1f07, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x2709, 0x1f49, 0x2789, 0x3fcd, 0x57d3, 0x4fd3, 0x3f8f, 0x378d, 0x2749, 0x1f07, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x2749, 0x2749, 0x2749, 0x2749, 0x2749, 0x2f4b, 0x378d, 0x2f8b, 0x2749, 0x2749, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f07, 0x1f07, 0x1f47, 0x1f07, 0x1f07, 0x1f07, 0x1f07, 0x2749, 0x2749, 0x2749, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
	0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 0x1f47, 
};

/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short Sm1waist_b_txt[] = {
	0x370d, 0x36cb, 0x2e8b, 0x2e4b, 0x2e49, 0x2e09, 0x25c9, 0x2589, 0x1d47, 0x1485, 0xc03, 0xbc3, 0xbc3, 0xc03, 0xbc3, 0xb83, 
	0x370d, 0x370d, 0x36cb, 0x2e8b, 0x2e4b, 0x2e09, 0x25c9, 0x2587, 0x1d07, 0x1445, 0xbc3, 0xb83, 0xb81, 0xbc1, 0xbc3, 0xb83, 
	0x370d, 0x370d, 0x36cd, 0x368b, 0x2e4b, 0x2e09, 0x2587, 0x1cc7, 0x1405, 0xb43, 0x301, 0x301, 0x301, 0x341, 0x381, 0xb83, 
	0x370d, 0x370d, 0x36cd, 0x368b, 0x2e4b, 0x25c9, 0x1cc7, 0x13c3, 0xb03, 0x281, 0x241, 0x241, 0x281, 0x2c1, 0x301, 0x341, 
	0x370d, 0x370d, 0x36cd, 0x2e4b, 0x2e0b, 0x2589, 0x1cc7, 0x1405, 0xb43, 0xb03, 0x2c1, 0x281, 0x241, 0x281, 0x2c1, 0x301, 
	0x374d, 0x370d, 0x36cd, 0x36cd, 0x368b, 0x2e8b, 0x2e4b, 0x2589, 0x1d07, 0x1485, 0x1405, 0xb43, 0x2c1, 0x241, 0x241, 0x281, 
	0x374d, 0x370d, 0x370d, 0x370d, 0x370d, 0x36cd, 0x36cd, 0x368b, 0x2e4b, 0x2e09, 0x2549, 0x1445, 0xb83, 0x2c1, 0x241, 0x283, 
	0x374d, 0x370d, 0x370d, 0x370d, 0x370d, 0x370d, 0x3f0f, 0x3f0f, 0x36cd, 0x368d, 0x2e4b, 0x2589, 0x1485, 0xb83, 0x2c1, 0xa83, 
	0x374d, 0x370d, 0x370d, 0x370d, 0x3f0f, 0x3f4f, 0x4751, 0x4751, 0x4751, 0x3f0f, 0x36cd, 0x2e4b, 0x2589, 0x1485, 0xb41, 0xac1, 
	0x370d, 0x370d, 0x370d, 0x3f4f, 0x4751, 0x4f53, 0x4f53, 0x5793, 0x5795, 0x4f53, 0x3f0f, 0x36cd, 0x2e4b, 0x1d47, 0xbc3, 0xb43, 
	0x370d, 0x370d, 0x370d, 0x3f4f, 0x4f53, 0x5795, 0x5795, 0x5795, 0x5795, 0x5795, 0x4751, 0x3f0d, 0x36cd, 0x2dc9, 0x1445, 0xbc3, 
	0x370d, 0x370d, 0x3f0d, 0x3f4f, 0x4f53, 0x5795, 0x5795, 0x5795, 0x5795, 0x5795, 0x4f53, 0x3f0f, 0x36cd, 0x2e0b, 0x1485, 0xbc3, 
	0x370d, 0x370d, 0x3f4f, 0x4751, 0x4f53, 0x5755, 0x5795, 0x5795, 0x5795, 0x5795, 0x5793, 0x4751, 0x3f0f, 0x2e4b, 0x1cc7, 0xc03, 
	0x370d, 0x3f0d, 0x3f4f, 0x4f53, 0x5755, 0x5f55, 0x5795, 0x5795, 0x5795, 0x5795, 0x5793, 0x4f51, 0x3f0f, 0x2e4b, 0x1d07, 0x1445, 
	0x370d, 0x3f4f, 0x4751, 0x5755, 0x5f97, 0x5f57, 0x5f97, 0x5f95, 0x4f53, 0x4f53, 0x4f53, 0x4751, 0x3f0f, 0x368d, 0x2589, 0x1cc7, 
	0x3f0d, 0x3f4f, 0x4f53, 0x5f95, 0x5f97, 0x5f97, 0x5f97, 0x5f97, 0x5753, 0x4f51, 0x4751, 0x3f0f, 0x370d, 0x36cd, 0x2e0b, 0x2549, 
};

/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short Sm1waist_f_txt[] = {
	0x2609, 0x2609, 0x2e09, 0x2e09, 0x2e09, 0x2609, 0x25c9, 0x25c9, 0x2589, 0x2587, 0x2547, 0x2547, 0x1d07, 0x1cc7, 0x1445, 0x13c5, 
	0x2e09, 0x2e09, 0x2e09, 0x2e09, 0x2e09, 0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e09, 0x2e09, 0x2e09, 0x2e09, 0x2609, 0x2589, 0x2587, 
	0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e49, 0x2e4b, 0x2e49, 0x2e49, 0x2e49, 
	0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e49, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e49, 0x2e49, 
	0x2e49, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e49, 0x2e49, 0x2e49, 0x2e4b, 0x2e49, 0x2e49, 0x2e49, 0x2e89, 
	0x2e8b, 0x2e4b, 0x2e4b, 0x2e4b, 0x2e8b, 0x2e8b, 0x2e4b, 0x2e49, 0x2e49, 0x2e4b, 0x2e8b, 0x368b, 0x368b, 0x368b, 0x368b, 0x36cb, 
	0x370d, 0x370d, 0x36cd, 0x36cd, 0x2e8b, 0x2e4b, 0x2649, 0x2e49, 0x36cd, 0x4711, 0x3ecf, 0x3e8d, 0x3f0f, 0x3f0d, 0x370d, 0x3f4d, 
	0x3f4d, 0x374d, 0x36cd, 0x2e4b, 0x2649, 0x2e4b, 0x46d1, 0x4ed3, 0x4651, 0x4e93, 0x46d1, 0x4ed1, 0x4f11, 0x3f4f, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x370d, 0x36cd, 0x36cd, 0x4711, 0x5715, 0x4691, 0x360d, 0x5653, 0x5695, 0x56d5, 0x5f17, 0x4f51, 0x374d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x4751, 0x4751, 0x4f51, 0x4711, 0x368d, 0x368b, 0x5715, 0x56d3, 0x56d5, 0x5695, 0x5f57, 0x3f4f, 0x374d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x370d, 0x3f0d, 0x3f0f, 0x3ecf, 0x3ecf, 0x4f13, 0x4e93, 0x4ed3, 0x4751, 0x374d, 0x3f4d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x3f4f, 0x3f4f, 0x3f0d, 0x3ecf, 0x46d1, 0x3e8f, 0x3ecd, 0x474f, 0x374d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f0f, 0x4711, 0x4f11, 0x3ecd, 0x370d, 0x3f4f, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x4751, 0x4751, 0x3f4d, 0x374d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x374d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 
	0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 0x3f4d, 
};

