G2S_SetBG1Control


C Specification

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

Description

This function sets the sub 2D Engine's BG1.

Note:  When VRAM banks have been allocated to a BG Extended palette using GX_SetBankForSubBGExtPltt, when using 256 color mode, it will reference the BG Extended palette. In other cases it will reference the standard palette.

GX_BG_SCRSIZE_TEXT_256x256 Sets screen size to 256 x 256 pixels (2 Kilobytes).
GX_BG_SCRSIZE_TEXT_512x256 Sets screen size to 512 x 256 pixels (4 Kilobytes).
GX_BG_SCRSIZE_TEXT_256x512 Sets screen size to 256 x 512 pixels (4 Kilobytes).
GX_BG_SCRSIZE_TEXT_512x512 Sets screen size to 512 x 512 pixels (8 Kilobytes).

GX_BG_COLORMODE_16 16-color mode
GX_BG_COLORMODE_256 256-color mode

GX_BG_SCRBASE_0xnnnn Specifies BG1 screen base block.

GX_BG_CHARBASE_0xnnnnn Specifies BG1 character base block.

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


The following are type definitions for the enumeration type in the argument.

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;

Arguments

screenSizeScreen size
colorModeColor mode
screenBaseScreen base block
charBaseCharacter base block
bgExtPlttBG Extended palette slot selection

Return Values

None

See Also

Revision History

02/09/2004 Initial Version