sm64/include/basis.h

77 lines
1.5 KiB
C

/********************************************************************************
basis.h: Ultra 64 MARIO Brothers include file
Copyright (c) 1995-1997 Nintendo co., ltd. All rights reserved
May 27, 1997
********************************************************************************/
#ifndef BASIS_H
#define BASIS_H
#define TRUE 1
#define FALSE 0
#define DBLBUF 2
#define TRIBUF 3
#define nobreak
#if DEVELOP
#define rmonpf(params) osSyncPrintf params
#else
#define rmonpf(f) {}
#endif
#define chkflag(flag,bits) ((flag)&(bits))
#define setflag(flag,bits) ((flag)|=(bits))
#define clrflag(flag,bits) ((flag)&=~(bits))
#define negflag(flag,bits) ((flag)^=(birs))
#define makebit(shift) (1<<(shift))
#define LoWord(n) ((n)&0x00000000ffffffff)
#define HiWord(n) (((n)&0xffffffff00000000)>>32)
#define LoHalf(n) ((n)&0x0000ffff)
#define HiHalf(n) (((n)&0xffff0000)>>16)
#define LoByte(n) ((n)&0x00ff)
#define HiByte(n) (((n)&0xff00)>>8)
typedef unsigned char uchar;
typedef unsigned short ushort;
typedef unsigned int uint;
typedef unsigned long ulong;
typedef long long wlong;
typedef unsigned long long uwlong;
typedef union {
ulong word;
ushort half[2];
uchar byte[4];
} Packed, UPacked;
typedef union {
long word;
short half[2];
char byte[4];
} SPacked;
typedef char *String;
typedef char *MemPtr; /* memory pointer */
typedef Gfx *GfxPtr;
typedef Mtx *MtxPtr;
typedef Vtx *VtxPtr;
typedef OSTask *TaskPtr;
typedef Light *LightPtr;
#endif