G2_SetBG1Control

C Specification

#include <nitro/gx/gx_bgcnt.h>
void G2_SetBG1Control( GXBGScrSizeText screenSize, GXBGColorMode colorMode, GXBGScrBase screenBase, GXBGCharBase charBase, GXBGExtPltt bgExtPltt );

Arguments

screenSizescreen size
colorModeColor mode
screenBaseScreen base block
charBaseCharacter base block
bgExtPlttSelects the BG Extended palette slot

Return Values

None.

Description

This function sets BG1.
Note:  When VRAM banks are allocated to the BG Extended palette with GX_SetBankForBGExtPltt, the BG Extended palette is referenced if the 256-color mode is used. The standard palette is referenced in all other cases.

GX_BG_SCRSIZE_TEXT_256x256 Sets screen size to 256x256 pixels (2 kilobytes)
GX_BG_SCRSIZE_TEXT_512x256 Sets screen size to 512x256 pixels (4 kilobytes)
GX_BG_SCRSIZE_TEXT_256x512 Sets screen size to 256x512 pixels (4 kilobytes)
GX_BG_SCRSIZE_TEXT_512x512 Sets the screen size to 512x512 pixels (8 kilobytes)

GX_BG_COLORMODE_16 16-color mode
GX_BG_COLORMODE_256 256-color mode

GX_BG_SCRBASE_0xnnnn Specifies the screen base block for BG1.
Refer to GX_SetBGScrOffset.

GX_BG_CHARBASE_0xnnnnn Specifies the character base block for BG1.
Refer to GX_SetBGCharOffset.

GX_BG_EXTPLTT_01 Uses slot 1 when using the BG Extended palette.
GX_BG_EXTPLTT_23 Uses slot 3 when using the BG Extended palette.

The following describes the enumerated type definitions of the arguments.

typedef enum
{
GX_BG_SCRSIZE_TEXT_256x256 = 0,
GX_BG_SCRSIZE_TEXT_512x256 = 1,
GX_BG_SCRSIZE_TEXT_256x512 = 2,
GX_BG_SCRSIZE_TEXT_512x512 = 3
}
GXBGScrSizeText;

typedef enum
{
GX_BG_COLORMODE_16 = 0,
GX_BG_COLORMODE_256 = 1
}
GXBGColorMode;

typedef enum
{
GX_BG_SCRBASE_0x0000 = 0,
GX_BG_SCRBASE_0x0800 = 1,
GX_BG_SCRBASE_0x1000 = 2,
GX_BG_SCRBASE_0x1800 = 3,
GX_BG_SCRBASE_0x2000 = 4,
GX_BG_SCRBASE_0x2800 = 5,
GX_BG_SCRBASE_0x3000 = 6,
GX_BG_SCRBASE_0x3800 = 7,
GX_BG_SCRBASE_0x4000 = 8,
GX_BG_SCRBASE_0x4800 = 9,
GX_BG_SCRBASE_0x5000 = 10,
GX_BG_SCRBASE_0x5800 = 11,
GX_BG_SCRBASE_0x6000 = 12,
GX_BG_SCRBASE_0x6800 = 13,
GX_BG_SCRBASE_0x7000 = 14,
GX_BG_SCRBASE_0x7800 = 15,
GX_BG_SCRBASE_0x8000 = 16,
GX_BG_SCRBASE_0x8800 = 17,
GX_BG_SCRBASE_0x9000 = 18,
GX_BG_SCRBASE_0x9800 = 19,
GX_BG_SCRBASE_0xa000 = 20,
GX_BG_SCRBASE_0xa800 = 21,
GX_BG_SCRBASE_0xb000 = 22,
GX_BG_SCRBASE_0xb800 = 23,
GX_BG_SCRBASE_0xc000 = 24,
GX_BG_SCRBASE_0xc800 = 25,
GX_BG_SCRBASE_0xd000 = 26,
GX_BG_SCRBASE_0xd800 = 27,
GX_BG_SCRBASE_0xe000 = 28,
GX_BG_SCRBASE_0xe800 = 29,
GX_BG_SCRBASE_0xf000 = 30,
GX_BG_SCRBASE_0xf800 = 31
}
GXBGScrBase;

typedef enum
{
GX_BG_CHARBASE_0x00000 = 0,
GX_BG_CHARBASE_0x04000 = 1,
GX_BG_CHARBASE_0x08000 = 2,
GX_BG_CHARBASE_0x0c000 = 3,
GX_BG_CHARBASE_0x10000 = 4,
GX_BG_CHARBASE_0x14000 = 5,
GX_BG_CHARBASE_0x18000 = 6,
GX_BG_CHARBASE_0x1c000 = 7,
GX_BG_CHARBASE_0x20000 = 8,
GX_BG_CHARBASE_0x24000 = 9,
GX_BG_CHARBASE_0x28000 = 10,
GX_BG_CHARBASE_0x2c000 = 11,
GX_BG_CHARBASE_0x30000 = 12,
GX_BG_CHARBASE_0x34000 = 13,
GX_BG_CHARBASE_0x38000 = 14,
GX_BG_CHARBASE_0x3c000 = 15
}
GXBGCharBase;

typedef enum
{
GX_BG_EXTPLTT_01 = 0,
GX_BG_EXTPLTT_23 = 1
}
GXBGExtPltt;

See Also

G2_GetBG0Control

Revision History

02/09/2004

01/19/2004 Initial version.