Table of Contents

Namespace GB

Classes

AssetAttribute

Converts an image into tiles at build time and places the result in ROM.

Audio

The sound hardware, at register level.

Background

The background layer: a 32x32 grid of tiles, of which 20x18 is on screen.

BankAttribute

Places code or read-only data outside the resident 16 KB of the cartridge.

Banking

The currently mapped ROM bank.

BinaryAttribute

Copies a file into ROM unchanged.

CapacityAttribute

The capacity of a fixed-capacity collection, fixed at compile time.

Data

Reading a BinaryAsset.

Display

The LCD controller.

FontAttribute

Converts a font sheet into background tiles and a character-to-tile lookup at build time.

Game

Frame timing and the machine itself.

Hardware

The hardware, as values you can name.

Input

The joypad, sampled at the point of use.

MaxROMAttribute

The largest ROM image this game may produce, in bytes.

MaxROMBanksAttribute

The most 16 KB ROM banks this game may occupy, counting bank 0.

MaxWRAMAttribute

The most work RAM this game may use, in bytes.

MetaspriteAttribute

Converts a sprite sheet into an animated hardware sprite, made of several sub-sprites, at build time.

Metasprites

Drawing an animated hardware sprite made of several sub-sprites, from a [Metasprite] asset.

NativeAttribute

Maps a GB# member onto a C symbol in the target backend.

NativeIdentityAttribute

Marks a member that exists only to give a value a name and a type, and that lowers to its own argument rather than to a call.

Palettes

Colour, on both machines.

SpriteAttribute

Converts a sprite sheet into hardware sprite tiles at build time.

Text

Drawing text from a FontAsset, tile by tile.

Tiles

Loading tile data into VRAM.

Window

The window layer: a second tile map drawn on top of the background.

Structs

BackgroundPaletteRef

One Game Boy Color background palette, by index.

BackgroundPaletteTable

Indexed access to the Game Boy Color background palettes.

BinaryAsset

Bytes in ROM, from a file. Holds no state.

FixedArray<T>

A fixed-length array of T.

FixedList<T>

A fixed-capacity list: storage reserved up front, with a live count.

FontAsset

A font's glyph tiles and character lookup, from a sheet. Holds no state.

MetaspriteAsset

An animated hardware sprite's tiles and per-frame placements, from a sheet.

SpriteAsset

Sprite tiles, from a sheet.

SpritePaletteRef

One Game Boy Color sprite palette, by index.

SpritePaletteTable

Indexed access to the Game Boy Color sprite palettes.

SpriteRef

A reference to one hardware sprite by index.

SpriteTable

Indexed access to OAM. Holds no state and occupies no memory.

TileMap

Tiles and a map, from an image. Holds no state; the data is in ROM.

TileSet

Tiles only, for code that builds its own maps.

Enums

Button

Joypad bit masks, matching GBDK's J_* constants.

Channel

One of the four sound channels.

Duty

How much of a square wave's period is spent high.

Note

A pitch, as the value the frequency registers actually take.

Shade

One of the four shades an original Game Boy can draw.

SpriteFlags

The attribute bits on a hardware sprite.