#include<ultra64.h>
extern Vtx SN_SNB_Arm05_v[];
extern Lights1 SN_SNB_Arm05_material[];

extern unsigned short SN_BossTX_01_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


/* ======== o1 ======== */

Gfx SN_SNB_Arm05[]={

	gsDPLoadTextureBlock(SN_BossTX_01_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_WRAP | G_TX_NOMIRROR, 5, 5, G_TX_NOLOD, G_TX_NOLOD ),


	gsSPVertex(&SN_SNB_Arm05_v[0], 25, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(2, 1, 3, 0),
	gsSP1Triangle(1, 0, 4, 0),
	gsSP1Triangle(1, 4, 5, 0),
	gsSP1Triangle(3, 1, 5, 0),
	gsSP1Triangle(6, 7, 4, 0),
	gsSP1Triangle(0, 6, 4, 0),
	gsSP1Triangle(5, 4, 7, 0),
	gsSP1Triangle(7, 8, 5, 0),
	gsSP1Triangle(9, 10, 11, 0),
	gsSP1Triangle(12, 10, 7, 0),
	gsSP1Triangle(10, 13, 14, 0),
	gsSP1Triangle(10, 15, 11, 0),
	gsSP1Triangle(2, 11, 16, 0),
	gsSP1Triangle(11, 2, 13, 0),
	gsSP1Triangle(12, 16, 11, 0),
	gsSP1Triangle(2, 16, 0, 0),
	gsSP1Triangle(6, 0, 16, 0),
	gsSP1Triangle(17, 6, 16, 0),
	gsSP1Triangle(2, 14, 13, 0),
	gsSP1Triangle(7, 18, 14, 0),
	gsSP1Triangle(7, 14, 19, 0),
	gsSP1Triangle(19, 14, 20, 0),
	gsSP1Triangle(21, 22, 8, 0),
	gsSP1Triangle(23, 21, 8, 0),
	gsSP1Triangle(21, 20, 2, 0),
	gsSP1Triangle(20, 24, 2, 0),
	gsSP1Triangle(17, 16, 12, 0),
	gsSPEndDisplayList(),
}; /* o1 */ 

#undef G_CC_PRIMSHADE
#undef gs_Nin_LoadTextureImage
#undef gs_Nin_SetUpTileDescrip
/*  25 vertices */
Vtx SN_SNB_Arm05_v[]={
	{  -4,6,5,0,762,5634,-19,83,82,255 },   /* v0 used p18/V2 5 times */ 
	{  -4,-8,5,0,262,5634,-21,-72,91,255 },   /* v1 used p21/V1 5 times */ 
	{  118,-1,23,0,512,1524,-35,-1,113,255 },   /* v2 used p26/V3 8 times */ 
	{  49,-16,2,0,-55,3722,-9,-90,75,255 },   /* v3 used p22/V1 2 times */ 
	{  -4,-8,-8,0,262,5489,-26,-64,-97,255 },   /* v4 used p21/V2 5 times */ 
	{  49,-16,-5,0,-55,3649,-23,-71,-92,255 },   /* v5 used p21/V3 4 times */ 
	{  -4,6,-8,0,762,5489,-16,84,-84,255 },   /* v6 used p17/V2 4 times */ 
	{  118,-1,-26,0,512,1012,-9,-47,-109,255 },   /* v7 used p28/V1 6 times */ 
	{  44,-42,-3,0,-1009,3866,-49,4,-109,255 },   /* v8 used p28/V2 3 times */ 
	{  142,-15,53,0,0,1023,120,0,0,255 },   /* v9 used p20/V1 1 times */ 
	{  142,-28,-22,0,-475,240,114,-30,-17,255 },   /* v10 used p20/V2 4 times */ 
	{  142,13,53,0,1024,1024,100,54,35,255 },   /* v11 used p20/V3 5 times */ 
	{  142,26,-22,0,1500,240,-11,99,-66,255 },   /* v12 used p3/V3 3 times */ 
	{  142,-15,53,0,0,1023,-65,-82,54,255 },   /* v13 used p16/V2 3 times */ 
	{  118,-25,-1,0,-374,1268,-23,-111,-34,255 },   /* v14 used p16/V3 5 times */ 
	{  142,26,-22,0,1500,240,120,0,0,255 },   /* v15 used p19/V2 1 times */ 
	{  118,24,-1,0,1399,1268,-25,117,2,255 },   /* v16 used p4/V3 6 times */ 
	{  118,-1,-26,0,512,1012,-18,83,-83,255 },   /* v17 used p3/V1 2 times */ 
	{  142,-28,-22,0,-475,240,-68,-68,-69,255 },   /* v18 used p7/V2 1 times */ 
	{  44,-42,-3,0,-1009,3866,22,-87,-77,255 },   /* v19 used p15/V1 2 times */ 
	{  44,-42,0,0,-1009,3902,0,-60,102,255 },   /* v20 used p26/V2 3 times */ 
	{  49,-16,2,0,-55,3722,-49,4,108,255 },   /* v21 used p26/V1 3 times */ 
	{  49,-16,-5,0,-55,3649,-116,25,0,255 },   /* v22 used p23/V2 1 times */ 
	{  44,-42,0,0,-1009,3902,-116,25,0,255 },   /* v23 used p24/V1 1 times */ 
	{  118,-25,-1,0,-374,1268,21,-82,82,255 },   /* v24 used p25/V2 1 times */ 
};
