# GXOamAttr

## C Specification

      #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;

## Description

This structure is for manipulating OAM's OBJ attributes 0-2.

## Members

The details of each member are as follows:

Member | Meaning
`y` | Y coordinate.
`rsMode` | Affine transform flag (affine transform ON/OFF, double-size ON/OFF).
`objMode` | OBJ mode.
`GX_OAM_MODE_NORMAL` | Normal OBJ
`GX_OAM_MODE_XLU` | Translucent OBJ
`GX_OAM_MODE_OBJWND` | OBJ window
`GX_OAM_MODE_BITMAPOBJ` | Bitmap OBJ
`mosaic` | Mosaic enable/disable.
`colorMode` | Color mode.
`GX_OAM_COLORMODE_16` | 16-color mode
`GX_OAM_COLORMODE_256` | 256-color mode
`shape` | Shape of OBJ.
`x` | X coordinate.
`rsParam` | Affine transform parameter selection.
`size` | OBJ size.
`flipH` | H-flip flag (when affine transform is OFF).
`flipV` | V-flip flag (when affine transform is OFF).
`charNo` | First character name.
`priority` | Display order of priority.
`cParam` | Color parameter.

## See Also

`G2_SetOBJAttr`

## Revision History

11/05/2004 Initial version.