64dd.h 1.65 KB
#define RMON 0
#define LEO  0
#define TEST 1
#define DEBUG 0
#define NUM_PI_MSGS 200

#define OS_PRIORITY_IDLE 0
#define OS_PRIORITY_MAIN 10
#define OS_PRIORITY_DEMO 20
#define OS_PRIORITY_FIELD 30
#define OS_PRIORITY_HIGH 127

#define BOOT_STACKSIZE 0x2000
#define IDLE_STACKSIZE 0x2000
#define MAIN_STACKSIZE 0x2000
#define DEMO_STACKSIZE 0x2000
#define FIELD_STACKSIZE 0x2000

#define DISPLAYLIST_SIZE 4096

#define SP_UCODE_SIZE	4096
#define SP_UCODE_DATA_SIZE	2048
#define SCREEN_HT	240
#define SCREEN_WD	320


#define global
#if _LANGUAGE_C
 typedef struct{
   char r,g,b;
 }color;		/*カラー*/
 typedef float scalar;	/*スカラー*/
 typedef struct{
   scalar x,y,z;	  /*ベクトルの直交座標成分*/
 }vector;		/*ベクトル*/
 typedef vector point;	/*点、位置ベクトル*/
 typedef struct{
   vector n;		  /*法線ベクトル*/
   point p;		  /*平面上の点の位置ベクトル*/
   scalar s;		  /*上記ベクトルの内積(特性値)*/
 }surface;		/*面*/
 typedef struct{
  point p;		  /*位置ベクトル*/
   scalar s;		  /*内外フラグ*/
   color c;		  /*関連する面の色*/
   char n;		  /*頂点番号*/
 }vertex;		/*頂点*/
 typedef struct{
   char v[3];		  /*両端点と交点インデックス*/
   char f;		  /*使用フラグ*/
   vector t;		  /*接線ベクトル*/
 }edge;		/*辺、稜*/
 typedef struct{
   char e[4];		  /*辺インデックス*/
   char d[4];		  /*辺の方向*/
   color c0,c1;		  /*面の色*/
 }gon;		/*面、多角形*/
 typedef struct{
   Vtx v[20];		  /*頂点配列*/
   void *p,*b;		  /*隣接リンク*/
   int x,y,z,a,f;	  /*位置*/
   float k,dk;		  /*アニメーション*/
   Mtx r,t;		  /*座標変換行列*/
   Vtx w[16];		  /*切断時の頂点配列*/
   Gfx g[128];		  /*切断時のディスプレイ・リスト*/
 }ncubeQuarter;		/* Nキューブ1/4構造体 */
#endif