/********************************************************************************
						Ultra 64 MARIO Brothers

					q_box hierarchy data list module

			Copyright 1996 Nintendo co., ltd.  All rights reserved.
*********************************************************************************/


#ifdef HMS_SHAPE

extern Gfx gfx_q_box_red[];
extern Gfx gfx_q_box_green[];
extern Gfx gfx_q_box_blue[];
extern Gfx gfx_q_box_yellow[];
extern Gfx gfx_q_box_edge[];

/*********************************************************************************
    : Hierarchy map data of QBox.
**********************************************************************************/
Hierarchy RCP_HmsQBox[] = {

	hmsHeader(300)
	hmsBegin()
		hmsShadow(70,180,10)
		hmsBegin()
		    hmsSelect(4, ControlShapeAnime)
	    	hmsBegin()
	        	hmsGfx(RM_XSURF, gfx_q_box_red)
	        	hmsGfx(RM_XSURF, gfx_q_box_green)
	        	hmsGfx(RM_XSURF, gfx_q_box_blue)
	        	hmsGfx(RM_XSURF, gfx_q_box_yellow)
	    	hmsEnd()
			hmsGfx(RM_SPRITE, gfx_q_box_edge)
		hmsEnd()
	hmsEnd()
    hmsExit()

};

#else

/***************************************************************************************************
		Convert from NINGEN		(q_box) 																
****************************************************************************************************/
#define q_box_AMB_SCALE 0.5
#define ShapeColor_q_box(R,G,B) {{R*q_box_AMB_SCALE ,G*q_box_AMB_SCALE ,B*q_box_AMB_SCALE ,0 ,R*q_box_AMB_SCALE ,G*q_box_AMB_SCALE ,B*q_box_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }

static Lights1 light_q_box[] = {
	ShapeColor_q_box(255,  0,  0),
	ShapeColor_q_box(  0,255,  0),
	ShapeColor_q_box(  0,  0,255),
	ShapeColor_q_box(255,212,  0),
};

static Vtx vtx_q_box_0[] = {
	{     26,    -25+26,    -25,     0,     0,     0,   127,    0,    0,  80}, 
	{     26,     26+26,     26,     0,     0,     0,   127,    0,    0,  80}, 
	{     26,    -25+26,     26,     0,     0,     0,   127,    0,    0,  80}, 
	{     26,    -25+26,     26,     0,     0,     0,     0, -127,    0,  80}, 
	{    -25,    -25+26,     26,     0,     0,     0,     0, -127,    0,  80}, 
	{    -25,    -25+26,    -25,     0,     0,     0,     0, -127,    0,  80}, 
	{     26,    -25+26,    -25,     0,     0,     0,     0, -127,    0,  80}, 
	{     26,    -25+26,     26,     0,     0,     0,     0,    0,  127,  80}, 
	{     26,     26+26,     26,     0,     0,     0,     0,    0,  127,  80}, 
	{    -25,     26+26,     26,     0,     0,     0,     0,    0,  127,  80}, 
	{    -25,    -25+26,     26,     0,     0,     0,     0,    0,  127,  80}, 
	{    -25,    -25+26,     26,     0,     0,     0,  -127,    0,    0,  80}, 
	{    -25,     26+26,     26,     0,     0,     0,  -127,    0,    0,  80}, 
	{    -25,     26+26,    -25,     0,     0,     0,  -127,    0,    0,  80}, 
	{    -25,    -25+26,    -25,     0,     0,     0,  -127,    0,    0,  80}, 
	{    -25,    -25+26,    -25,     0,     0,     0,     0,    0, -127,  80}, 
	{    -25,     26+26,    -25,     0,     0,     0,     0,    0, -127,  80}, 
	{     26,     26+26,    -25,     0,     0,     0,     0,    0, -127,  80}, 
	{     26,    -25+26,    -25,     0,     0,     0,     0,    0, -127,  80}, 
	{     26,    -25+26,    -25,     0,     0,     0,   127,    0,    0,  80}, 
	{     26,     26+26,    -25,     0,     0,     0,   127,    0,    0,  80}, 
	{     26,     26+26,     26,     0,     0,     0,   127,    0,    0,  80}, 
	{    -25,     26+26,     26,     0,     0,     0,     0,  127,    0,  80}, 
	{     26,     26+26,     26,     0,     0,     0,     0,  127,    0,  80}, 
	{     26,     26+26,    -25,     0,     0,     0,     0,  127,    0,  80}, 
	{    -25,     26+26,    -25,     0,     0,     0,     0,  127,    0,  80}, 
};

static Gfx gfx_q_box_0[] = {
	gsSPVertex(&vtx_q_box_0[0], 15, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 3, 5, 6, 0),
	gsSP1Triangle( 7, 8, 9, 0),
	gsSP1Triangle( 7, 9,10, 0),
	gsSP1Triangle(11,12,13, 0),
	gsSP1Triangle(11,13,14, 0),
	gsSPVertex(&vtx_q_box_0[15], 11, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSP1Triangle( 4, 5, 6, 0),
	gsSP1Triangle( 7, 8, 9, 0),
	gsSP1Triangle( 7, 9,10, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_q_box_init[] = {
	gsDPPipeSync(),
	gsDPSetEnvColor(255,255,255,80),
	gsSPClearGeometryMode(G_SHADING_SMOOTH),
	gsDPSetCombineMode(G_CC_SHADE_ENVA, G_CC_SHADE_ENVA),
	gsSPEndDisplayList() 
};

static Gfx gfx_q_box_reset[] = {
	gsSPDisplayList(gfx_q_box_0),
	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
	gsSPSetGeometryMode(G_SHADING_SMOOTH),
	gsDPSetEnvColor(255,255,255,255),
	gsSPEndDisplayList() 
};


/* ----------------------------------------------------------------------------	*/


Gfx gfx_q_box_red[] = {
	gsSPDisplayList(gfx_q_box_init),
	gsSPLight((&light_q_box[0].l[0]),1 ),
	gsSPLight((&light_q_box[0].a   ),2 ),
	gsSPBranchList(gfx_q_box_reset),
};

Gfx gfx_q_box_green[] = {
	gsSPDisplayList(gfx_q_box_init),
	gsSPLight((&light_q_box[1].l[0]),1 ),
	gsSPLight((&light_q_box[1].a   ),2 ),
	gsSPBranchList(gfx_q_box_reset),
};

Gfx gfx_q_box_blue[] = {
	gsSPDisplayList(gfx_q_box_init),
	gsSPLight((&light_q_box[2].l[0]),1 ),
	gsSPLight((&light_q_box[2].a   ),2 ),
	gsSPBranchList(gfx_q_box_reset),
};

Gfx gfx_q_box_yellow[] = {
	gsSPDisplayList(gfx_q_box_init),
	gsSPLight((&light_q_box[3].l[0]),1 ),
	gsSPLight((&light_q_box[3].a   ),2 ),
	gsSPBranchList(gfx_q_box_reset),
};

/***************************************************************************************************
		Convert from NINGEN		(q_box_edge) 																
****************************************************************************************************/
static Vtx vtx_q_box_edge_0[] = {
	{    -25,     26+26,     26,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{     26,     26+26,     26,     0,   990,     0,    -1,   -1,   -1,  255}, 
	{     26,     26+26,    -25,     0,     0,     0,    -1,   -1,   -1,  255}, 
	{    -25,     26+26,    -25,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,     26,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{    -25,     26+26,     26,     0,     0,     0,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,     26,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,    -25,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{     26,     26+26,    -25,     0,   990,     0,    -1,   -1,   -1,  255}, 
	{     26,     26+26,     26,     0,     0,     0,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,     26,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,    -25,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,    -25,     0,     0,     0,    -1,   -1,   -1,  255}, 
	{    -25,     26+26,    -25,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,     26,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{    -25,     26+26,     26,     0,   990,     0,    -1,   -1,   -1,  255}, 
	{    -25,     26+26,    -25,     0,     0,     0,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,    -25,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,     26,     0,     0,   990,    -1,   -1,   -1,  255}, 
	{    -25,    -25+26,    -25,     0,   990,   990,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,    -25,     0,   996,     0,    -1,   -1,   -1,  255}, 
	{     26,    -25+26,     26,     0,   -26,     0,    -1,   -1,   -1,  255}, 
};

static unsigned short sukesen_txt[] = {
    0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0000,  0x0001,  
    0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  0x0001,  0x0000,  0x0000,  0x0001,  0x0001,  0x0001,  
};

static Gfx gfx_q_box_edge_0[] = {
	gs_Tani_LoadTextureImage2(sukesen_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
	gsSPVertex(&vtx_q_box_edge_0[0], 14, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSP1Triangle( 4, 1, 5, 0),
	gsSP1Triangle( 4, 5, 6, 0),
	gsSP1Triangle( 7, 8, 9, 0),
	gsSP1Triangle( 7, 9,10, 0),
	gsSP1Triangle(11, 8,12, 0),
	gsSP1Triangle(11,13, 8, 0),
	gsSPVertex(&vtx_q_box_edge_0[14],  8, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSP1Triangle( 4, 5, 6, 0),
	gsSP1Triangle( 4, 6, 7, 0),
	gsSPEndDisplayList() 
};

Gfx gfx_q_box_edge[] = {
	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
	gsSPClearGeometryMode(G_LIGHTING|G_CULL_BACK), 
	gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0,  0,0,0, 0,0,0),

	gsSPTexture(0xffff,0xffff, 0, 0, G_ON),

	gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32,  0, 0, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),

		gsSPDisplayList(gfx_q_box_edge_0),

	gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),

	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
	gsSPSetGeometryMode(G_LIGHTING|G_CULL_BACK), 
	gsSPEndDisplayList() 
};

/***************************************************************************************************
		Convert from NINGEN		(q_mark) 																
****************************************************************************************************/
#define q_mark_AMB_SCALE 0.5
#define ShapeColor_q_mark(R,G,B) {{R*q_mark_AMB_SCALE ,G*q_mark_AMB_SCALE ,B*q_mark_AMB_SCALE ,0 ,R*q_mark_AMB_SCALE ,G*q_mark_AMB_SCALE ,B*q_mark_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }

static Lights1 light_q_mark[] = {
	ShapeColor_q_mark(255,255,255),
};

static unsigned short bikkuri_txt[] = {
    0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xd6b4,  0xdef6,  0xdef6,  0xd6b4,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0xc630,  0xd6b4,  0xef7b,  0xffff,  0xffff,  0xffff,  0xf7bc,  0xdef6,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xa528,  0xb5ad,  0xce73,  0xdef7,  0xf7bd,  0xffff,  0xffff,  0xffff,  0xffff,  0xef7a,  0xd6b4,  0xce72,  0xce72,  
    0xce72,  0xce72,  0x8c62,  0x8420,  0xa529,  0xbdef,  0xce73,  0xe739,  0xffff,  0xffff,  0xffff,  0xffff,  0xfffe,  0xef7a,  0xce72,  0xce72,  
    0xce72,  0xad6a,  0x5294,  0x7bdf,  0x94a5,  0xad6b,  0xbdef,  0xd6b5,  0xf7bd,  0xffff,  0xffff,  0xffff,  0xffff,  0xfffe,  0xdef6,  0xce72,  
    0xce72,  0x6318,  0x4a52,  0x6b5b,  0x8421,  0x9ce7,  0xad6b,  0xc631,  0xe739,  0xffff,  0xffff,  0xffff,  0xffff,  0xfffe,  0xef7a,  0xce72,  
    0xce72,  0x5294,  0x4211,  0x5ad7,  0x7bdf,  0x8c63,  0xa529,  0xb5ad,  0xce73,  0xf7bd,  0xffff,  0xffff,  0xffff,  0xffff,  0xef7a,  0xce72,  
    0xce72,  0x4a52,  0x39cf,  0x5295,  0x6b5b,  0x8421,  0x94a5,  0xa529,  0xbdef,  0xd6b5,  0xe739,  0xf7bd,  0xf7bd,  0xf7bd,  0xef7a,  0xce72,  
    0xce72,  0x4a52,  0x39cf,  0x4211,  0x6319,  0x739d,  0x8c63,  0x9ce7,  0xad6b,  0xbdef,  0xce73,  0xdef7,  0xe739,  0xef7b,  0xdef6,  0xce72,  
    0xce72,  0x4210,  0x39cf,  0x39cf,  0x5295,  0x6b5b,  0x7bdf,  0x8c63,  0xa529,  0xb5ad,  0xbdef,  0xce73,  0xd6b5,  0xdef7,  0xd6b4,  0xce72,  
    0xce72,  0x4210,  0x39ce,  0x39cf,  0x4211,  0x5ad7,  0x6b5b,  0x8421,  0x94a5,  0xa529,  0xb5ad,  0xbdef,  0xc631,  0xce72,  0xc630,  0xce72,  
    0xce72,  0x5ad6,  0x39ce,  0x39cf,  0x39cf,  0x4a53,  0x6319,  0x7bdf,  0x8c63,  0x9ce7,  0xa529,  0xb5ad,  0xbdef,  0xbdee,  0xc630,  0xce72,  
    0xce72,  0x7bde,  0x39ce,  0x39cf,  0x39cf,  0x4211,  0x5ad7,  0x6b5b,  0x8421,  0x94a5,  0x9ce7,  0xad6b,  0xb5ad,  0xad6a,  0xce72,  0xce72,  
    0xce72,  0x94a4,  0x5ad6,  0x39cf,  0x39cf,  0x39cf,  0x5295,  0x6b5b,  0x7bdf,  0x8c63,  0x9ce7,  0xa529,  0xad6b,  0xad6a,  0xce72,  0xce72,  
    0xce72,  0xc630,  0x8420,  0x39ce,  0x39cf,  0x39cf,  0x4a53,  0x6b5b,  0x7bdf,  0x94a5,  0x9ce7,  0xad6b,  0xa528,  0xbdee,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x4210,  0x39cf,  0x39cf,  0x5295,  0x6b5b,  0x8c63,  0x9ce7,  0xad6b,  0xb5ad,  0xb5ac,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x5294,  0x39cf,  0x39cf,  0x5295,  0x739d,  0x94a5,  0xad6b,  0xbdef,  0xbdef,  0xc630,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x6b5a,  0x39ce,  0x39cf,  0x5ad7,  0x7bdf,  0x9ce7,  0xb5ad,  0xc631,  0xc630,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x8420,  0x4210,  0x39cf,  0x5ad7,  0x8421,  0xa529,  0xbdef,  0xce73,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0x5ad6,  0x39cf,  0x4a53,  0x7bdf,  0x9ce7,  0xb5ad,  0xc631,  0xc630,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0x739c,  0x39ce,  0x39cf,  0x6319,  0x8c63,  0xa529,  0xad6a,  0xc630,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xa528,  0x8420,  0x4210,  0x39ce,  0x4211,  0x6319,  0x7bde,  0x94a4,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0xad6a,  0x6b5a,  0x6b5a,  0x5294,  0x5294,  0x7bde,  0xbdee,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  0xce73,  0xdef7,  0xef7b,  0xe739,  0xd6b4,  0xce72,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xce72,  0xa528,  0xbdef,  0xe739,  0xffff,  0xffff,  0xffff,  0xffff,  0xe738,  0xce72,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x9ce6,  0x7bdf,  0xbdef,  0xe739,  0xffff,  0xffff,  0xffff,  0xffff,  0xffff,  0xdef6,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x6b5a,  0x6b5b,  0xa529,  0xc631,  0xe739,  0xffff,  0xffff,  0xffff,  0xffff,  0xef7a,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0x739c,  0x4211,  0x739d,  0x9ce7,  0xbdef,  0xd6b5,  0xef7b,  0xf7bd,  0xf7bd,  0xd6b4,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xb5ac,  0x4a52,  0x39cf,  0x5ad7,  0x7bdf,  0x94a5,  0xa529,  0xad6b,  0xa528,  0xc630,  0xce72,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xad6a,  0x8420,  0x5294,  0x39cf,  0x39cf,  0x4a53,  0x5295,  0x6318,  0x8c62,  0xad6a,  0xbdee,  0xce72,  0xce72,  
    0xce72,  0xce72,  0xce72,  0xad6a,  0x94a4,  0x7bde,  0x5ad6,  0x5ad6,  0x6318,  0x6b5a,  0x7bde,  0xa528,  0xbdee,  0xce72,  0xce72,  0xce72,  
};

static Vtx vtx_q_mark_0[] = {
	{    -22,     23+26,      0,     0,  -157,     0,     0,    0,  127,  255}, 
	{    -22,    -22+26,      0,     0,  -157,  1048,     0,    0,  127,  255}, 
	{     23,    -22+26,      0,     0,   605,  1048,     0,    0,  127,  255}, 
	{     23,     23+26,      0,     0,   605,     0,     0,    0,  127,  255}, 
};

static Gfx gfx_q_mark_0[] = {
	gs_Tani_LoadTextureImage2(bikkuri_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 32, 0, 7),
	gsSPLight((&light_q_mark[0].l[0]),1 ),
	gsSPLight((&light_q_mark[0].a   ),2 ),
	gsSPVertex(&vtx_q_mark_0[0],  4, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSPEndDisplayList() 
};

Gfx gfx_q_mark[] = {
	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_MODULATERGBA, G_CC_MODULATERGBA),
	gsSPClearGeometryMode(G_SHADING_SMOOTH | G_CULL_BACK ),
	gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0,  0,0,0, 0,0,0),
	gsSPTexture(0xffff,0xffff, 0, 0, G_ON),
	gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 32,  0, 0, G_TX_CLAMP|G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
	gsSPDisplayList(gfx_q_mark_0),
	gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
	gsSPSetGeometryMode(G_SHADING_SMOOTH | G_CULL_BACK ),
	gsSPEndDisplayList() 
};


extern short q_block_info[] = {
/*------------------VertexData ---------------------------*/

	BGCHECKCODE_POINT,  8,
	 -26,     30, -26,
	 -26,     30,  26,
	 -26,  26+26,  26,
	  26,     30,  26,
	  26,  26+26,  26,
	  26,     30, -26,
	  26,  26+26, -26,
	 -26,  26+26, -26,

/*--------------------- BG Face Data ---------------------------*/


	BGCHECKCODE_NORMAL, 12,
	    0,    1,    2,
	    1,    3,    4,
	    1,    4,    2,
	    5,    3,    1,
	    5,    1,    0,
	    6,    4,    3,
	    6,    3,    5,
	    7,    4,    6,
	    7,    2,    4,
	    0,    2,    7,
	    7,    6,    5,
	    7,    5,    0,

	BGCHECKCODE_PLANEEND,


	BGCHECKCODE_ALLEND,
};



#endif

