#include<ultra64.h>

extern Vtx ManLshin_c_v[];
extern Vtx ManLshin_c_vmcur[];
extern Tri ManLshin_c_tri[];
extern Lights1 ManLshin_c_material[];
extern Mtx ManLshin_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 ManLshin_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,32,0,0,G_TX_CLAMP,4,0,G_TX_CLAMP,5,0),
	gs_Nin_LoadTextureImage(Sm1momo_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,32,0,7),

	gsSPVertex(&ManLshin_c_v[0], 3, 0),
	gsSP1Triangle(0, 1, 2, 0),

	gs_Nin_LoadTextureImage(Sm1sune_txt,G_IM_FMT_RGBA,G_IM_SIZ_16b,16,32,0,7),

	gsSPVertex(&ManLshin_c_v[3], 7, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(1, 3, 2, 0),
	gsSP1Triangle(4, 5, 6, 0),
	gsSPEndDisplayList(),
};

Gfx *ManLshin_c_modelT = NULL;

#undef G_CC_PRIMSHADE

#undef gs_Nin_LoadTextureImage

#undef gs_Nin_SetUpTileDescrip

/* 10 vertices */

/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/


/******************************************************************************
	vertex & texture
******************************************************************************/

Vtx ManLshin_c_v[]={
	{ -2,-42,4,0, 381, 349, 1, -90, -78, 0 },   /* v0 p3/V1 used 1 times */ 
	{ -29,19,-4,0, 263, 0, -83, 44, -73, 0 },   /* v1 p3/V2 used 1 times */ 
	{ 27,19,-3,0, 504, 0, 84, 43, -73, 0 },   /* v2 p3/V3 used 1 times */ 
	{ -29,19,-4,0, 221, 1047, -83, 44, -73, 0 },   /* v3 p4/V1 used 1 times */ 
	{ -2,-42,4,0, 93, 953, 1, -90, -78, 0 },   /* v4 p4/V2 used 2 times */ 
	{ -1,0,186,0, 78, -300, -3, 64, 101, 0 },   /* v5 p4/V3 used 2 times */ 
	{ 27,19,-3,0, -41, 1047, 84, 43, -73, 0 },   /* v6 p2/V2 used 1 times */ 
	{ 27,19,-3,0, 504, 1023, 84, 43, -73, 0 },   /* v7 p1/V1 used 1 times */ 
	{ -29,19,-4,0, 263, 1023, -83, 44, -73, 0 },   /* v8 p1/V2 used 1 times */ 
	{ -1,0,186,0, 394, -279, -3, 64, 101, 0 },   /* v9 p1/V3 used 1 times */ 
};


/*   0 vertices */
/* 16 x 32  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short Sm1momo_txt[] = {
	0x20a1, 0x30e7, 0x2871, 0x2873, 0x30b3, 0x38f3, 0x4975, 0x51b5, 0x49b5, 0x4137, 0x51ab, 0xee87, 0xf6cd, 0x5a27, 0x182b, 0x1821, 
	0x20a1, 0x1861, 0x2871, 0x2873, 0x30b3, 0x4175, 0x51b5, 0x51f5, 0x49b5, 0x4177, 0x51eb, 0xff59, 0xffa7, 0x51e9, 0x206f, 0x2065, 
	0x30ad, 0x3931, 0x30b3, 0x2873, 0x38f3, 0x49b5, 0x51f5, 0x3971, 0x3933, 0x4175, 0x51ad, 0xef57, 0xffa1, 0x4169, 0x2871, 0x28ab, 
	0x392d, 0x392b, 0x2871, 0x30b3, 0x4975, 0x51f7, 0x396b, 0x84d, 0x185d, 0x4135, 0x4175, 0xb515, 0xc593, 0x30af, 0x30b3, 0x30ad, 
	0x30e9, 0x2067, 0x2871, 0x3935, 0x51b7, 0x49b3, 0x108f, 0x8c1, 0x843, 0x30eb, 0x4137, 0x496d, 0x4129, 0x2871, 0x30b3, 0x30f1, 
	0x416f, 0x28a9, 0x2871, 0x4975, 0x59f9, 0x3125, 0xc1, 0x1285, 0x1203, 0x1855, 0x4135, 0x30b5, 0x2033, 0x2873, 0x3073, 0x30b1, 
	0x49b5, 0x4171, 0x30b1, 0x51b7, 0x51f7, 0x18d3, 0xa41, 0xbc3, 0xb43, 0x907, 0x38ef, 0x4135, 0x2873, 0x2873, 0x2873, 0x30b3, 
	0x30b3, 0x4135, 0x4133, 0x59f7, 0x416f, 0x947, 0x13c3, 0x1485, 0x1485, 0x201, 0x20a1, 0x4977, 0x30b3, 0x2873, 0x2873, 0x2873, 
	0x2873, 0x2873, 0x4975, 0x5a39, 0x291f, 0xa83, 0x1cc7, 0x1d07, 0x1d07, 0xb81, 0x10d1, 0x49b7, 0x4135, 0x2873, 0x2873, 0x2873, 
	0x2873, 0x30b3, 0x51b7, 0x51f7, 0x110f, 0x1403, 0x25c9, 0x2e09, 0x2589, 0x14c5, 0x987, 0x4171, 0x4977, 0x2873, 0x2873, 0x2873, 
	0x2873, 0x38f3, 0x5a37, 0x416d, 0x9c5, 0x1d07, 0x2e4b, 0x36cb, 0x2e4b, 0x2587, 0xa41, 0x3125, 0x51b7, 0x30b3, 0x2871, 0x2873, 
	0x30b3, 0x4135, 0x6239, 0x291f, 0x12c3, 0x25c9, 0x370d, 0x3f8d, 0x370d, 0x2e49, 0x13c3, 0x2117, 0x51f9, 0x38f3, 0x2873, 0x2873, 
	0x38f3, 0x51b5, 0x5a37, 0x1911, 0x1443, 0x2e4b, 0x3f4d, 0x3f8d, 0x3f8d, 0x36cb, 0x1cc5, 0x118b, 0x49b3, 0x4975, 0x2873, 0x30b3, 
	0x4135, 0x59f7, 0x49f1, 0x987, 0x1d47, 0x370b, 0x3f8d, 0x3f8d, 0x3f8d, 0x374d, 0x2609, 0x1245, 0x396b, 0x51b7, 0x30b3, 0x30b3, 
	0x4975, 0x5a39, 0x3165, 0xa83, 0x2609, 0x374d, 0x3f8d, 0x3fcd, 0x3fcd, 0x3f8d, 0x2e8b, 0x1383, 0x291d, 0x51f9, 0x4135, 0x30b3, 
	0x49b5, 0x5a37, 0x1915, 0x13c3, 0x2ecb, 0x3f8d, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcd, 0x370d, 0x1cc5, 0x114f, 0x4975, 0x49b5, 0x38f5, 
	0x51b7, 0x41af, 0x1149, 0x1d07, 0x370d, 0x3f8d, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f4d, 0x25c7, 0x1245, 0x312b, 0x51b7, 0x4175, 
	0x51f7, 0x3125, 0x1285, 0x2609, 0x374d, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f8d, 0x2e49, 0x1383, 0x20d9, 0x4977, 0x4975, 
	0x51f7, 0x1917, 0x13c3, 0x2e8b, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x36cb, 0x1cc5, 0x114b, 0x30ef, 0x49b5, 
	0x4171, 0x114b, 0x1d05, 0x36cb, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x374d, 0x2589, 0x1283, 0x209b, 0x4135, 
	0x20a1, 0x1285, 0x2609, 0x370d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f8d, 0x2e49, 0x1c45, 0x909, 0x28a5, 
	0x885, 0x1c47, 0x2ecb, 0x3f4d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x36cb, 0x2587, 0x1305, 0x889, 
	0x12c7, 0x2587, 0x374d, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f4d, 0x2e49, 0x1c87, 0x12c5, 
	0x1cc7, 0x2e8b, 0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcd, 0x370b, 0x2609, 0x1cc7, 
	0x2e8b, 0x374d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f8d, 0x36cb, 0x2e8b, 
	0x370d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3f8d, 0x374d, 
	0x3f8d, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
};

/* 16 x 32  G_IM_SIZ_16b G_IM_FMT_RGBA  */
unsigned short Sm1sune_txt[] = {
	0x1, 0x1, 0x1085, 0x18c7, 0x18c7, 0x1085, 0x1, 0x1, 0x1, 0x1, 0x843, 0x843, 0x18c5, 0x843, 0x1, 0x1, 
	0x1, 0x1, 0x1085, 0x18c7, 0x18c5, 0x1085, 0x1, 0x1, 0x1, 0x1, 0x18c7, 0x1083, 0x2107, 0x1083, 0x1, 0x1, 
	0x843, 0x841, 0x18c7, 0x18c7, 0x18c7, 0x18c5, 0x1, 0x1, 0x1, 0x1, 0x2109, 0x843, 0x20c5, 0x18c5, 0x1, 0x1, 
	0x420d, 0x4a0d, 0x4a0d, 0x5a93, 0x4a0f, 0x420d, 0x2947, 0x3149, 0x3149, 0x398b, 0x4a51, 0x2909, 0x1083, 0x2949, 0x1085, 0x1885, 
	0x7399, 0x6b97, 0x6b57, 0x6317, 0x6b17, 0x5ad3, 0x6315, 0x6b55, 0x6315, 0x5a91, 0x39cd, 0x62d1, 0x5a8b, 0x2949, 0x6315, 0x6b15, 
	0x1143, 0x1183, 0x1a05, 0x11c3, 0x981, 0x1183, 0x11c3, 0x1a05, 0x11c3, 0x903, 0x881, 0x8c1, 0x8c3, 0x11c3, 0x1143, 0x1143, 
	0x36cd, 0x2e0b, 0x2d8b, 0x2e4b, 0x364d, 0x4ed3, 0x4691, 0x2e0b, 0x364d, 0x4611, 0x3ecf, 0x36cd, 0x36cd, 0x36cd, 0x36cd, 0x36cd, 
	0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 0x57d3, 0x77dd, 0x5fd7, 0x370d, 0x478f, 0x6fdb, 0x6fd9, 0x47d1, 0x3fcf, 0x3fcf, 0x3fcf, 0x3fcf, 
	0x3fcb, 0x3fcb, 0x3fcb, 0x3fcb, 0x67d5, 0x6fd9, 0x35cd, 0x141, 0x1285, 0x4f53, 0x6fd7, 0x474f, 0x374b, 0x3fcb, 0x3fcb, 0x3fcb, 
	0x3fc5, 0x3fc5, 0x3fc5, 0x47c9, 0x6fd5, 0x5793, 0x983, 0x1887, 0x1045, 0x2407, 0x67d5, 0x3d4b, 0x2d05, 0x3fc5, 0x3fc5, 0x3fc5, 
	0x3fc7, 0x3fc7, 0x3fc5, 0x57cf, 0x77d9, 0x2ccb, 0x845, 0x2959, 0x2111, 0x903, 0x4711, 0x7509, 0x6c83, 0x37c7, 0x3fc7, 0x3fc7, 
	0x3fc7, 0x3fc7, 0x3fc7, 0x77d7, 0x67d7, 0x1203, 0x1853, 0x2069, 0x20a5, 0x847, 0x1c89, 0x9609, 0x9d83, 0x37cb, 0x3fcb, 0x3fc7, 
	0x3fc7, 0x3fc5, 0x47c9, 0x7fdb, 0x4691, 0x8c7, 0x2063, 0x1827, 0x2029, 0x1899, 0xa85, 0xa607, 0xb5c3, 0x37cd, 0x3fcf, 0x3fc7, 
	0x3fc7, 0x3fc5, 0x57cd, 0x7fdd, 0x2c89, 0x1051, 0x2027, 0x1825, 0x1825, 0x1865, 0x8c7, 0x9cc3, 0xb605, 0x37cb, 0x3fcb, 0x3fc7, 
	0x3fc7, 0x47c9, 0x6fd5, 0x5fd7, 0x1a85, 0x181d, 0x1827, 0x1825, 0x1823, 0x1827, 0x891, 0xa3c1, 0xc647, 0x3fcd, 0x3fc7, 0x3fc7, 
	0x3fc5, 0x5fcf, 0x77db, 0x3ecf, 0x1109, 0x1825, 0x1825, 0x1825, 0x1823, 0x1825, 0x105d, 0xa3c1, 0xce47, 0x4fd3, 0x3fc9, 0x3fc5, 
	0x3fc7, 0x6fd5, 0x6fdb, 0x2507, 0x1051, 0x1827, 0x1825, 0x2027, 0x1825, 0x1823, 0x1865, 0xac47, 0xce47, 0x5fd7, 0x47cd, 0x3fc5, 
	0x47c9, 0x77d9, 0x5fd7, 0x12c5, 0x101b, 0x1827, 0x1827, 0x2029, 0x2029, 0x1825, 0x1827, 0xb40d, 0xc645, 0x67d9, 0x57d3, 0x3fc7, 
	0x57cf, 0x77db, 0x4f51, 0x945, 0x1821, 0x1827, 0x2029, 0x206d, 0x206b, 0x1827, 0x1025, 0xb40b, 0xce45, 0x5fd7, 0x6fdb, 0x4fcf, 
	0x67d5, 0x77db, 0x358b, 0x108d, 0x1827, 0x2027, 0x206b, 0x286f, 0x286d, 0x2029, 0x1025, 0xb44b, 0xc581, 0x4f13, 0x7fdf, 0x6fd9, 
	0x77db, 0x6fd9, 0x1b87, 0x1019, 0x2029, 0x2029, 0x286f, 0x2871, 0x2871, 0x202b, 0x1027, 0xb44b, 0xbcc3, 0x354d, 0x7fdf, 0x7fdd, 
	0x7fdf, 0x5793, 0x11c5, 0x1823, 0x2029, 0x206b, 0x2871, 0x2873, 0x2871, 0x286f, 0x1827, 0xb453, 0xc50f, 0x1b05, 0x77db, 0x87df, 
	0x7fdd, 0x3e4d, 0x108b, 0x2069, 0x2029, 0x206d, 0x2873, 0x2873, 0x2873, 0x2871, 0x1829, 0xb4db, 0xcdd9, 0x903, 0x5715, 0x87df, 
	0x67d7, 0x2405, 0x1055, 0x202d, 0x202b, 0x286f, 0x2873, 0x2873, 0x2873, 0x2873, 0x202f, 0x9c17, 0xbd57, 0x80b, 0x344b, 0x77dd, 
	0x4751, 0x983, 0x1861, 0x202b, 0x206b, 0x2871, 0x2873, 0x2873, 0x2873, 0x2873, 0x286f, 0x28e7, 0x30eb, 0x185b, 0x941, 0x5713, 
	0x1b85, 0x1089, 0x2069, 0x202b, 0x206d, 0x2873, 0x2873, 0x2873, 0x2873, 0x2873, 0x286f, 0x1017, 0x815, 0x1865, 0x108b, 0x1ac7, 
	0x883, 0x20d9, 0x202b, 0x202b, 0x286f, 0x2873, 0x2873, 0x2873, 0x2873, 0x2873, 0x286f, 0x7ac7, 0x72c7, 0x2065, 0x20df, 0x1909, 
	0x2113, 0x20a7, 0x202b, 0x206d, 0x2871, 0x2873, 0x2873, 0x2873, 0x2873, 0x2873, 0x412b, 0xac41, 0xac01, 0x30df, 0x1827, 0x20d9, 
	0x206b, 0x2029, 0x206b, 0x286f, 0x2873, 0x2873, 0x2873, 0x2873, 0x2873, 0x2833, 0x496b, 0xf643, 0xee03, 0x391f, 0x1025, 0x2069, 
	0x2029, 0x2027, 0x206d, 0x2871, 0x2873, 0x2873, 0x2873, 0x3073, 0x30b3, 0x2873, 0x49ab, 0xee03, 0xf603, 0x49e1, 0x1025, 0x1825, 
	0x1823, 0x1825, 0x286f, 0x2871, 0x2873, 0x2873, 0x30b3, 0x30b3, 0x38f3, 0x2875, 0x49ab, 0xee43, 0xf683, 0x51e3, 0x1025, 0x1823, 
	0x101f, 0x2067, 0x2871, 0x2873, 0x2873, 0x30b3, 0x38f3, 0x4135, 0x4135, 0x30f5, 0x49ab, 0xee43, 0xf643, 0x5a25, 0x1029, 0x1821, 
};

