#include<ultra64.h>

extern Vtx ManLshin_1b_v[];
extern Vtx ManLshin_1b_vmcur[];
extern Tri ManLshin_1b_tri[];
extern Lights1 ManLshin_1b_material[];
extern Mtx ManLshin_1b_matrix[];

extern unsigned short Sshoes_bottom_txt[];
extern unsigned short St1best_b_txt[];
extern unsigned short St1best_f_txt[];
extern unsigned short St1best_s_txt[];
extern unsigned short St1best_t_txt[];
extern unsigned short St1farm_b_txt[];
extern unsigned short St1farm_f_txt[];
extern unsigned short St1hand_b_txt[];
extern unsigned short St1hand_f_txt[];
extern unsigned short St1hand_s_txt[];
extern unsigned short St1hand_t_txt[];
extern unsigned short St1hara_txt[];
extern unsigned short St1met_b_txt[];
extern unsigned short St1met_f_txt[];
extern unsigned short St1met_gl_txt[];
extern unsigned short St1met_s_txt[];
extern unsigned short St1met_t_txt[];
extern unsigned short St1neck_txt[];
extern unsigned short St1shin_b_txt[];
extern unsigned short St1shin_f_txt[];
extern unsigned short St1shoe_txt[];
extern unsigned short St1shoe_b_txt[];
extern unsigned short St1thigh_b_txt[];
extern unsigned short St1thigh_f_txt[];
extern unsigned short St1uarm_b_txt[];
extern unsigned short St1uarm_f_txt[];
extern unsigned short St1waist_b_txt[];
extern unsigned short St1waist_f_txt[];
extern unsigned short St1waist_s_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 ManLshin_1b_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(St1shin_b_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&ManLshin_1b_v[0], 5, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(1, 3, 4, 0),
	gsSP1Triangle(4, 2, 1, 0),

	gs_Nin_LoadTextureImage(St1shin_f_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,16,0,7),

	gsSPVertex(&ManLshin_1b_v[5], 7, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(3, 2, 1, 0),
	gsSP1Triangle(4, 5, 6, 0),
	gsSPEndDisplayList(),
};

Gfx *ManLshin_1b_modelT = NULL;

#undef G_CC_PRIMSHADE

#undef gs_Nin_LoadTextureImage

#undef gs_Nin_SetUpTileDescrip

/* 12 vertices */

/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/

Vtx ManLshin_1b_v[]={
	{ -22,19,-4,0, 533, 516, -58, 91, -49, 0 },   /* v0 p12/V1 used 1 times */ 
	{ -2,-25,3,0, 290, 485, 2, -109, -47, 0 },   /* v1 p12/V2 used 3 times */ 
	{ -14,0,182,0, 421, 0, -105, -47, 28, 0 },   /* v2 p12/V3 used 2 times */ 
	{ 20,19,-3,0, -7, 515, 81, 37, -79, 0 },   /* v3 p11/V2 used 1 times */ 
	{ 12,1,182,0, 90, 0, 97, 61, 37, 0 },   /* v4 p11/V3 used 2 times */ 
	{ -14,0,182,0, 123, 0, -105, -47, 28, 0 },   /* v5 p7/V1 used 1 times */ 
	{ 12,1,182,0, 388, 0, 97, 61, 37, 0 },   /* v6 p7/V2 used 2 times */ 
	{ -22,19,-4,0, 33, 516, -58, 91, -49, 0 },   /* v7 p7/V3 used 2 times */ 
	{ 20,19,-3,0, 466, 515, 81, 37, -79, 0 },   /* v8 p8/V1 used 1 times */ 
	{ -2,-25,3,0, 246, 223, 2, -109, -47, 0 },   /* v9 p10/V1 used 1 times */ 
	{ -22,19,-4,0, 39, 512, -58, 91, -49, 0 },   /* v10 p10/V2 used 1 times */ 
	{ 20,19,-3,0, 472, 512, 81, 37, -79, 0 },   /* v11 p10/V3 used 1 times */ 
};


/*   0 vertices */
/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short St1shin_b_txt[] = {
	0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x18c7, 0x2109, 0x2109, 0x18c7, 0x18c7, 0x1085, 0x1085, 0x1085, 0x1085, 
	0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x1887, 0x18c7, 0x2109, 0x2109, 0x2109, 0x18c7, 0x18c7, 0x18c7, 0x18c7, 0x18c7, 
	0x1107, 0x1107, 0x1107, 0x1107, 0x1107, 0x1107, 0x1107, 0x1909, 0x214b, 0x214b, 0x214b, 0x1949, 0x1909, 0x1909, 0x1109, 0x1909, 
	0x88d3, 0x90d3, 0x98d3, 0x98d3, 0x90d3, 0x90d3, 0x90d3, 0x9915, 0xa157, 0x9957, 0x9957, 0x9955, 0x9955, 0x9915, 0x9915, 0x9915, 
	0xf859, 0xf819, 0xf819, 0xf819, 0xf819, 0xf819, 0xf859, 0xf89b, 0xf89b, 0xf8db, 0xf8db, 0xf8db, 0xf89b, 0xf89b, 0xf89b, 0xf89b, 
	0xf817, 0xf815, 0xf815, 0xf815, 0xf815, 0xf815, 0xf817, 0xf857, 0xf859, 0xf899, 0xf899, 0xf899, 0xf899, 0xf899, 0xf859, 0xf859, 
	0xf817, 0xf817, 0xf815, 0xf815, 0xf815, 0xf815, 0xf817, 0xf899, 0xf8db, 0xf91d, 0xf95d, 0xf91d, 0xf8db, 0xf899, 0xf899, 0xf899, 
	0xf817, 0xf815, 0xf815, 0xf817, 0xf857, 0xf899, 0xf95d, 0xf99f, 0xf9df, 0xf9e1, 0xfa21, 0xfa21, 0xf99f, 0xf91b, 0xf899, 0xf859, 
	0xf817, 0xf817, 0xf857, 0xf8db, 0xf95d, 0xf9e1, 0xfa63, 0xfaa3, 0xfa63, 0xfa63, 0xfa63, 0xfa63, 0xfa21, 0xf9df, 0xf91d, 0xf859, 
	0xf817, 0xf899, 0xf91b, 0xf99f, 0xfa63, 0xfaa5, 0xfae5, 0xfae5, 0xfaa5, 0xfaa3, 0xfaa3, 0xfaa3, 0xfa63, 0xfa21, 0xf9df, 0xf8db, 
	0xf899, 0xf91b, 0xf99f, 0xfa63, 0xfae5, 0xfb25, 0xfb27, 0xfae5, 0xfae5, 0xfaa5, 0xfae5, 0xfaa5, 0xfaa3, 0xfaa3, 0xfa63, 0xf99f, 
	0xf91b, 0xf99f, 0xfa21, 0xfaa5, 0xfae5, 0xfb27, 0xfb27, 0xfb25, 0xfae5, 0xfae5, 0xfae5, 0xfae5, 0xfae5, 0xfae5, 0xfaa3, 0xf9e1, 
	0xf95d, 0xf9e1, 0xfa63, 0xfaa5, 0xfae5, 0xfb27, 0xfb27, 0xfb25, 0xfae5, 0xfae5, 0xfb25, 0xfb27, 0xfb67, 0xfb27, 0xfaa3, 0xfa21, 
	0xf99f, 0xfa21, 0xfaa3, 0xfaa3, 0xfaa5, 0xfaa5, 0xfae5, 0xfae5, 0xfae5, 0xfae5, 0xfae5, 0xfb67, 0xfb67, 0xfb27, 0xfaa3, 0xfa21, 
	0xf99f, 0xfa21, 0xfa63, 0xfaa3, 0xfa21, 0xf99f, 0xfa21, 0xfa63, 0xfa63, 0xfa61, 0xfa21, 0xfae5, 0xfb69, 0xfb27, 0xfaa3, 0xfa21, 
	0xf9e1, 0xfa61, 0xfa63, 0xfaa3, 0xfa21, 0xf91b, 0xf8db, 0xf91d, 0xf95d, 0xf91d, 0xf95d, 0xfae5, 0xfb69, 0xfb27, 0xfaa5, 0xfa63, 
};

/* 16 x 16  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short St1shin_f_txt[] = {
	0x1085, 0x1085, 0x1085, 0x1085, 0x1085, 0x1087, 0x18c7, 0x2949, 0x294b, 0x294b, 0x2109, 0x18c7, 0x1085, 0x1085, 0x1085, 0x1085, 
	0x1085, 0x1085, 0x1085, 0x1085, 0x18c7, 0x18c7, 0x294b, 0x318b, 0x318d, 0x294b, 0x2109, 0x18c7, 0x18c7, 0x1085, 0x1085, 0x1085, 
	0x1107, 0x1107, 0x1107, 0x1107, 0x1909, 0x214b, 0x29cd, 0x31cf, 0x31cf, 0x31cd, 0x298b, 0x214b, 0x1909, 0x1107, 0x1107, 0x1107, 
	0x90d3, 0x98d3, 0x98d3, 0x98d3, 0x9915, 0xa197, 0xa219, 0xa25b, 0xa25b, 0xa21b, 0xa1d9, 0xa157, 0xa115, 0x98d3, 0x98d3, 0x98d3, 
	0xf819, 0xf817, 0xf819, 0xf819, 0xf89b, 0xf91d, 0xf9e1, 0xfa65, 0xfaa5, 0xfa23, 0xf9a1, 0xf91d, 0xf89b, 0xf859, 0xf859, 0xf859, 
	0xf815, 0xf815, 0xf815, 0xf815, 0xf859, 0xf91b, 0xf9e1, 0xfaa3, 0xfaa3, 0xfa63, 0xf9df, 0xf95d, 0xf899, 0xf857, 0xf817, 0xf817, 
	0xf815, 0xf815, 0xf815, 0xf817, 0xf899, 0xf99f, 0xfa61, 0xfaa3, 0xfaa5, 0xfaa3, 0xfa21, 0xf99f, 0xf8db, 0xf859, 0xf817, 0xf817, 
	0xf815, 0xf815, 0xf817, 0xf859, 0xf91d, 0xf9e1, 0xfa61, 0xfa63, 0xfaa5, 0xfaa5, 0xfa63, 0xf9df, 0xf91b, 0xf899, 0xf817, 0xf817, 
	0xf815, 0xf817, 0xf857, 0xf8db, 0xf99f, 0xf9e1, 0xfa21, 0xfa63, 0xfaa3, 0xfaa5, 0xfa63, 0xf9e1, 0xf95d, 0xf8db, 0xf859, 0xf817, 
	0xf817, 0xf859, 0xf8db, 0xf95d, 0xf9df, 0xfa21, 0xfa21, 0xfa63, 0xfaa3, 0xfaa3, 0xfaa3, 0xfa63, 0xf9df, 0xf95d, 0xf8db, 0xf859, 
	0xf8db, 0xf91d, 0xf99f, 0xf9df, 0xf9e1, 0xfa21, 0xfa21, 0xfa63, 0xfaa5, 0xfae5, 0xfaa5, 0xfa63, 0xfa21, 0xf9e1, 0xf99f, 0xf91d, 
	0xf9df, 0xf9df, 0xf9e1, 0xfa21, 0xfa21, 0xfa21, 0xfa63, 0xfaa5, 0xfae5, 0xfae5, 0xfae5, 0xfaa3, 0xfa61, 0xfa21, 0xf9e1, 0xf99f, 
	0xfa21, 0xfa21, 0xfa21, 0xfa21, 0xfa21, 0xfa63, 0xfa65, 0xfae5, 0xfb27, 0xfb29, 0xfb27, 0xfae5, 0xfa63, 0xfa21, 0xfa21, 0xfa21, 
	0xfa21, 0xfa21, 0xfa21, 0xfa63, 0xf221, 0xc199, 0x9955, 0x8995, 0x8193, 0x8995, 0xa1d9, 0xda5f, 0xfa63, 0xfa63, 0xfa21, 0xfa21, 
	0xfa21, 0xfa23, 0xfa21, 0xa155, 0x2847, 0x41, 0x1909, 0x52d7, 0x5b59, 0x3a11, 0x1107, 0x843, 0x58cd, 0xd21d, 0xfa63, 0xfa21, 
	0xfa63, 0xfaa5, 0xc1db, 0x3045, 0x41, 0x318d, 0x6319, 0x9ce7, 0xa529, 0x739d, 0x4211, 0x10c5, 0x1, 0x58cd, 0xfaa5, 0xfaa3, 
};

