# GX_SetOBJVRamModeChar

## 構文

      #include <nitro/gx/gx.h>

      void GX_SetOBJVRamModeChar(GXOBJVRamModeChar mode);

## 引数

mode | マッピングモード

## 返り値

なし。

## 説明

キャラクタOBJのOBJ-VRAM容量とマッピングモードを設定します。

`GX_OBJVRAMMODE_CHAR_2D` | 2次元マッピングモードを選択します。
`GX_OBJVRAMMODE_CHAR_1D_32K` | １次元マッピングモードで、先頭キャラクタ境界を32バイトとします。利用可能なOBJ-VRAMの最大容量は32KBになります。
`GX_OBJVRAMMODE_CHAR_1D_64K` | １次元マッピングモードで、先頭キャラクタ境界を64バイトとします。利用可能なOBJ-VRAMの最大容量は64KBになります。
`GX_OBJVRAMMODE_CHAR_1D_128K` | １次元マッピングモードで、先頭キャラクタ境界を128バイトとします。利用可能なOBJ-VRAMの最大容量は128KBになります。
`GX_OBJVRAMMODE_CHAR_1D_256K` | １次元マッピングモードで、先頭キャラクタ境界を256バイトとします。利用可能なOBJ-VRAMの最大容量は256KBになります。

マッピングモードは、先頭キャラクタの境界のバイトサイズを指定するもので、実際に割り当てられているVRAMのバンク容量とは関係ありません。

以下に`GXOBJVRamModeChar`型の型定義を示しておきます。

    typedef enum
    {
        GX_OBJVRAMMODE_CHAR_2D = (0 << REG_GX_DISPCNT_OBJMAP_SHIFT) | (0 << REG_GX_DISPCNT_EXOBJ_SHIFT),
        GX_OBJVRAMMODE_CHAR_1D_32K = (1 << REG_GX_DISPCNT_OBJMAP_SHIFT) | (0 << REG_GX_DISPCNT_EXOBJ_SHIFT),
        GX_OBJVRAMMODE_CHAR_1D_64K = (1 << REG_GX_DISPCNT_OBJMAP_SHIFT) | (1 << REG_GX_DISPCNT_EXOBJ_SHIFT),
        GX_OBJVRAMMODE_CHAR_1D_128K = (1 << REG_GX_DISPCNT_OBJMAP_SHIFT) | (2 << REG_GX_DISPCNT_EXOBJ_SHIFT),
        GX_OBJVRAMMODE_CHAR_1D_256K = (1 << REG_GX_DISPCNT_OBJMAP_SHIFT) | (3 << REG_GX_DISPCNT_EXOBJ_SHIFT)
    }
    GXOBJVRamModeChar;

## 参照

GX_SetOBJVRamModeBmp, GX_GetOBJVRamModeChar

## 履歴

Ver. 2004/08/03

- 1次元マッピングに関する説明の修正。

Ver. 2004/02/09

- 2次元マッピングに関する説明の修正。

Ver. 2004/01/19