#include <nitro/gx/gx_vramcnt.h>
BOOL GX_TrySetBankForTex(GXVRamTex tex);
tex | Specifies a VRAM bank to allocate to the texture image slot |
Returns TRUE if the VRAM bank is allocated as normal. Returns FALSE if the VRAM bank to be allocated is locked by another library.
Attempts to allocate a VRAM bank to the TextureImage slot. If the specified VRAM bank is either disabled or allocated to LCDC, this allocates the VRAM bank to the texture image slot. The allocation will fail if the designated VRAM bank is exclusion-locked by another library.
GX_VRAM_TEX_NONE |
The VRAM bank is not allocated to the texture image. |
GX_VRAM_TEX_0_A |
Slot 0 of the texture image is reserved. VRAM-A is allocated. |
GX_VRAM_TEX_0_B |
Slot 0 of the texture image is reserved. VRAM-B is allocated. |
GX_VRAM_TEX_0_C |
Slot 0 of the texture image is reserved. VRAM-C is allocated. |
GX_VRAM_TEX_0_D |
Slot 0 of the texture image is reserved. VRAM-D is allocated. |
GX_VRAM_TEX_01_AB |
Slot 0.1 of the texture image is reserved. VRAM-A and -B are allocated. |
GX_VRAM_TEX_01_BC |
Slot 0.1 of the texture image is reserved. VRAM-B and -C are allocated. |
GX_VRAM_TEX_01_CD |
Slot 0.1 of the texture image is reserved. VRAM-C and -D are allocated. |
GX_VRAM_TEX_012_ABC |
Slots 0, 1, and 2 of the texture image are reserved. VRAM-A, -B, and -C are allocated. |
GX_VRAM_TEX_012_BCD |
Slots 0, 1, and 2 of the texture image are reserved. VRAM-B, -C, and -D are allocated. |
GX_VRAM_TEX_0123_ABCD |
Slots 0, 1, 2, and 3 of the texture image are reserved. VRAM-A, -B, -C, and -D are allocated. |
GX_VRAM_TEX_01_AC |
Slot 0.1 of the texture image is reserved. VRAM-A and -C are allocated. |
GX_VRAM_TEX_01_AD |
Slot 0.1 of the texture image is reserved. VRAM-A and -D are allocated. |
GX_VRAM_TEX_01_BD |
Slot 0.1 of the texture image is reserved. VRAM-B and -D are allocated. |
GX_VRAM_TEX_012_ABD |
Slots 0, 1, and 2 of the texture image are reserved. VRAM-A, -B, and -D are allocated. |
GX_VRAM_TEX_012_ACD |
Slots 0, 1, and 2 of the texture image are reserved. VRAM-A, -C, and -D are allocated. |
The following is the type definition for GXVRamTex
types.
typedef enum
{
GX_VRAM_TEX_NONE = 0x0000, // none
GX_VRAM_TEX_0_A = GX_VRAM_A, // TextureImageSlot 0
GX_VRAM_TEX_0_B = GX_VRAM_B, // TextureImageSlot 0
GX_VRAM_TEX_0_C = GX_VRAM_C, // TextureImageSlot 0
GX_VRAM_TEX_0_D = GX_VRAM_D, // TextureImageSlot 0
GX_VRAM_TEX_01_AB = GX_VRAM_A | GX_VRAM_B, // TextureImageSlot 01
GX_VRAM_TEX_01_BC = GX_VRAM_B | GX_VRAM_C, // TextureImageSlot 01
GX_VRAM_TEX_01_CD = GX_VRAM_C | GX_VRAM_D, // TextureImageSlot 01
GX_VRAM_TEX_012_ABC = GX_VRAM_A | GX_VRAM_B | GX_VRAM_C, // TextureImageSlot 012
GX_VRAM_TEX_012_BCD = GX_VRAM_B | GX_VRAM_C | GX_VRAM_D, // TextureImageSlot 012
GX_VRAM_TEX_0123_ABCD = GX_VRAM_A | GX_VRAM_B | GX_VRAM_C | GX_VRAM_D, // TextureImageSlot 0123
// The following settings are discontinuous on LCDC
GX_VRAM_TEX_01_AC = GX_VRAM_A | GX_VRAM_C, // TextureImageSlot 01
GX_VRAM_TEX_01_AD = GX_VRAM_A | GX_VRAM_D, // TextureImageSlot 01
GX_VRAM_TEX_01_BD = GX_VRAM_B | GX_VRAM_D, // TextureImageSlot 01
GX_VRAM_TEX_012_ABD = GX_VRAM_A | GX_VRAM_B | GX_VRAM_D, // TextureImageSlot 012
GX_VRAM_TEX_012_ACD = GX_VRAM_A | GX_VRAM_C | GX_VRAM_D // TextureImageSlot 012
}
GXVRamTex;
GX_SetBankForTex, GX_GetBankForTex, GX_ResetBankForTex, GX_DisableBankForTex, GX_GetSizeOfTex
02/15/2005 Initial version.