#include<ultra64.h>

extern Vtx jetc_3_mokuhen_col_v[];
extern Vtx jetc_3_mokuhen_col_vmcur[];
extern Tri jetc_3_mokuhen_col_tri[];
extern Lights1 jetc_3_mokuhen_col_material[];
extern Mtx jetc_3_mokuhen_col_matrix[];

extern unsigned short beach_br_txt[];
extern unsigned short check_f1_txt[];
extern unsigned short check_f2_txt[];
extern unsigned short cross1_txt[];
extern unsigned short dokan_1_txt[];
extern unsigned short goal_f1_txt[];
extern unsigned short goal_f2_txt[];
extern unsigned short green1_2_txt[];
extern unsigned short green_d_txt[];
extern unsigned short pole1_txt[];
extern unsigned short pole2_txt[];
extern unsigned short rock_1_2_txt[];
extern unsigned short rock_2_2_txt[];
extern unsigned short rock_3_txt[];
extern unsigned short rock_4_2_txt[];
extern unsigned short roof_gr1_txt[];
extern unsigned short roof_gr2_txt[];
extern unsigned short sabitetu1_txt[];
extern unsigned short saku1_txt[];
extern unsigned short start_f1_txt[];
extern unsigned short start_f2_txt[];
extern unsigned short tree1_txt[];
extern unsigned short tube_l1_2_txt[];
extern unsigned short tube_light1_txt[];
extern unsigned short tube_light2_txt[];
extern unsigned short wall13_tw_2_txt[];
extern unsigned short wall17_d_txt[];
extern unsigned short wall_bk1_txt[];
extern unsigned short wall_bk2_txt[];
extern unsigned short wall_br1_txt[];
extern unsigned short wall_gr2_txt[];
extern unsigned short wall_gr4_txt[];
extern unsigned short wall_rf1_txt[];
extern unsigned short wall_rock_2_txt[];
extern unsigned short wall_top_txt[];
extern unsigned short wall_wd1_txt[];
extern unsigned short wall_wd2_txt[];
extern unsigned short wall_wd3_2_txt[];
extern unsigned short wall_wd4_txt[];
extern unsigned short wall_wh1_txt[];
extern unsigned short wave_f1_txt[];
extern unsigned short wave_f2_txt[];
extern unsigned short window_a1_txt[];
extern unsigned short window_a2_txt[];
extern unsigned short window3_txt[];
extern unsigned short road1_txt[];
extern unsigned short sidea1_txt[];
extern unsigned short corner_flag1_txt[];
extern unsigned short fence8_txt[];
extern unsigned short fence9_txt[];
extern unsigned short fence_bw_txt[];
extern unsigned short fence_by_txt[];
extern unsigned short fence_gr_txt[];
extern unsigned short fence_pole1_txt[];
extern unsigned short fence_pole2_txt[];
extern unsigned short fence_rw_txt[];
extern unsigned short k_gake02_txt[];
extern unsigned short k_hako_txt[];
extern unsigned short k_kabe1_txt[];
extern unsigned short k_kabe2_txt[];
extern unsigned short k_kabe3_txt[];
extern unsigned short k_kabe4_txt[];
extern unsigned short k_kabe5_txt[];
extern unsigned short k_kabe6_txt[];
extern unsigned short k_kabe7_txt[];
extern unsigned short k_kabe8_txt[];
extern unsigned short k_mokuhen_txt[];
extern unsigned short k_mon0_txt[];
extern unsigned short k_neji_txt[];
extern unsigned short k_road_1_txt[];
extern unsigned short k_yashi_01_txt[];
extern unsigned short nintendo64_f1_txt[];
extern unsigned short nintendo64_f2_txt[];
extern unsigned short roof_1_txt[];
extern unsigned short start_bak_txt[];
extern unsigned short start_base1_txt[];
extern unsigned short start_base2_txt[];
extern unsigned short start_base3_txt[];
extern unsigned short start_base4_txt[];
extern unsigned short uturn_txt[];
extern unsigned short check_bouy_txt[];
extern unsigned short check_rope_txt[];
extern unsigned short start_base_txt[];
extern unsigned short start_pole_txt[];
extern unsigned short bridge1_txt[];
extern unsigned short green1_rgb_txt[];
extern unsigned short roof1_txt[];
extern unsigned short roof2_txt[];
extern unsigned short side1_txt[];
extern unsigned short veranda1_txt[];
extern unsigned short wall10_txt[];
extern unsigned short wall13_txt[];
extern unsigned short wall15_txt[];
extern unsigned short wall16_txt[];
extern unsigned short wall17_txt[];
extern unsigned short wall18_txt[];
extern unsigned short wall2_txt[];
extern unsigned short wall4_txt[];
extern unsigned short wall5_txt[];
extern unsigned short wall6_txt[];
extern unsigned short wall7_txt[];
extern unsigned short wall8_txt[];
extern unsigned short wall9_txt[];
extern unsigned short water1_txt[];
extern unsigned short window1_txt[];
extern unsigned short window2_txt[];
extern unsigned short wlight0_txt[];
extern unsigned short wlight1_txt[];
extern unsigned short wlight2_txt[];
extern unsigned short wlight3_txt[];
extern unsigned short fence1_txt[];
extern unsigned short fence2_txt[];
extern unsigned short fence3_txt[];
extern unsigned short fence4_txt[];
extern unsigned short fence5_txt[];
extern unsigned short fence6_txt[];
extern unsigned short fence7_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 */


/* ======== g64 ======== */

static	Gfx jetc_3_mokuhen_col_grp_g64[]={

	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_PRIMSHADE,G_CC_PASS2),
	gsSPTexture(1, 1,0, 0, 0),
	gsDPSetPrimColor(0,0,255,255,255,255),
	gsSPVertex(&jetc_3_mokuhen_col_v[0], 8, 0),
	gsSP1Triangle(0, 1, 2, 0),
	gsSP1Triangle(0, 2, 3, 0),
	gsSP1Triangle(4, 5, 1, 0),
	gsSP1Triangle(4, 1, 0, 0),
	gsSP1Triangle(1, 5, 6, 0),
	gsSP1Triangle(1, 6, 2, 0),
	gsSP1Triangle(3, 2, 6, 0),
	gsSP1Triangle(3, 6, 7, 0),
	gsSP1Triangle(7, 6, 5, 0),
	gsSP1Triangle(7, 5, 4, 0),
	gsSPEndDisplayList(),
}; /* g64 */ 

/* ======== db ======== */

Gfx jetc_3_mokuhen_col_model[]={
	gsSPDisplayList(jetc_3_mokuhen_col_grp_g64),
	gsSPEndDisplayList(),
}; /* db */ 

Gfx jetc_3_mokuhen_col_modelT[] = {
	gsSPEndDisplayList()
};

#undef G_CC_PRIMSHADE

#undef gs_Nin_LoadTextureImage

#undef gs_Nin_SetUpTileDescrip

/* 8 vertices */
Vtx jetc_3_mokuhen_col_v[]={
	{ -77,-33,-16,0, 0, 0, -103,0,-60,255 },   /* v0 p2526/V1 used 2 times */ 
	{ -77,3,-16,0, 0, 0, -103,0,-60,255 },   /* v1 p2526/V2 used 3 times */ 
	{ -52,3,-59,0, 0, 0, -103,0,-60,255 },   /* v2 p2526/V3 used 3 times */ 
	{ -52,-33,-59,0, 0, 0, -103,0,-60,255 },   /* v3 p2526/V4 used 2 times */ 
	{ 52,-33,59,0, 0, 0, 104,0,59,255 },   /* v4 p2524/V4 used 2 times */ 
	{ 52,3,59,0, 0, 0, 104,0,59,255 },   /* v5 p2524/V3 used 3 times */ 
	{ 77,3,16,0, 0, 0, 60,0,-104,255 },   /* v6 p2525/V3 used 3 times */ 
	{ 77,-33,16,0, 0, 0, 60,0,-104,255 },   /* v7 p2525/V4 used 2 times */ 
};


/*   0 vertices */
