

#include <nitro/gx/g2_oam.h>
typedef struct
{
union
{
u32 attr01;
struct
{
u16 attr0;
u16 attr1;
};
struct
{
u32 y:8;
u32 rsMode:2;
u32 objMode:2;
u32 mosaic:1;
u32 colorMode:1;
u32 shape:2;
u32 x:9;
u32 rsParam:5;
u32 size:2;
};
struct
{
u32 _0:28;
u32 flipH:1;
u32 flipV:1;
u32 _1:2;
};
};
union
{
struct
{
u16 attr2;
u16 _3;
};
u32 attr23;
struct
{
u32 charNo:10;
u32 priority:2;
u32 cParam:4;
u32 _2:16;
};
};
}
GXOamAttr;
| y | Y座標 | |
| rsMode | アフィン変換フラグ(アフィン変換のON/OFF, 倍角のON/OFF) | |
| objMode | OBJモード | |
| GX_OAM_MODE_NORMAL | ノーマルOBJ | |
| GX_OAM_MODE_XLU | 半透明OBJ | |
| GX_OAM_MODE_OBJWND | OBJウィンドウ | |
| GX_OAM_MODE_BITMAPOBJ | ビットマップOBJ | |
| mosaic | モザイクの有無 | |
| colorMode | カラーモード | |
| GX_OAM_COLORMODE_16 | 16色モード | |
| GX_OAM_COLORMODE_256 | 256色モード | |
| shape | OBJの形状 | |
| x | X座標 | |
| rsParam | アフィン変換パラメータの選択 | |
| size | OBJサイズ | |
| flipH | Hフリップフラグ(アフィン変換がOFFの場合) | |
| flipV | Vフリップフラグ(アフィン変換がOFFの場合) | |
| charNo | 先頭キャラクタネーム | |
| priority | 表示優先順位 | |
| cParam | カラーパラメータ | |
OAMのOBJアトリビュート0-2を操作するための構造体です。
u16及びu32のビットフィールドとして定義されていますので、実体がVRAM上に配置されている場合のメンバへのアクセスも問題ありません。
2004/11/05 初版