Sprites.Platform.GameBoy
The Game Boy platform pack: the machine's shared colours, its sprite constants under Sprite, its font constants under Font, and its tile map constants under Map. Four DMG greens, sprites built from 8×8 tiles, no ROM font, and a 32×32 wrapping background map.
Sprite
- Sprites.Platform.GameBoy.Sprite.Slots
- Sprites.Platform.GameBoy.Sprite.Modes
- Sprites.Platform.GameBoy.Sprite.DefaultWidth
- Sprites.Platform.GameBoy.Sprite.DefaultHeight
Font
- Sprites.Platform.GameBoy.Font.Charsets
- Sprites.Platform.GameBoy.Font.DefaultWidth
- Sprites.Platform.GameBoy.Font.DefaultHeight
- Sprites.Platform.GameBoy.Font.CharStart
- Sprites.Platform.GameBoy.Font.CharCount
- Sprites.Platform.GameBoy.Font.DefaultFont
Map
- Sprites.Platform.GameBoy.Map.TileWidth
- Sprites.Platform.GameBoy.Map.TileHeight
- Sprites.Platform.GameBoy.Map.ScreenWidth
- Sprites.Platform.GameBoy.Map.ScreenHeight
- Sprites.Platform.GameBoy.Map.HardwareWidth
- Sprites.Platform.GameBoy.Map.HardwareHeight
- Sprites.Platform.GameBoy.Map.MaxWidth
- Sprites.Platform.GameBoy.Map.MaxHeight
- Sprites.Platform.GameBoy.Map.Modes
Sequencer
Sprites.Platform.GameBoy.Name String
The machine's display name.
"Game Boy"
Sprites.Platform.GameBoy.Palette Array
The machine's fixed colours, as packed 0xRRGGBBAA integers, the set a slot may be recoloured from.
[
0x0f380fff,
0x306230ff,
0x8bac0fff,
0x9bbc0fff
]
Sprites.Platform.GameBoy.Sprite.Slots Array
The colours the editor starts on, one a slot.
[
0x0f380fff,
0x306230ff,
0x8bac0fff,
0x9bbc0fff
]
Sprites.Platform.GameBoy.Sprite.Modes Array
The sprite modes, in the order the Info window lists them. Each sets a colour count, a pixel aspect and a size rule.
| Name | Colours | Pixel aspect | Size |
|---|---|---|---|
| Sprite | 4 | 1 | widths 8, 16, 24, 32; heights 8, 16, 24, 32 |
[
{ "name": "Sprite", "colours": 4, "pixelAspect": 1, "allowedWidths": [8, 16, 24, 32], "allowedHeights": [8, 16, 24, 32] }
]
Sprites.Platform.GameBoy.Sprite.DefaultWidth Number
The sprite width the editor opens on.
8
Sprites.Platform.GameBoy.Sprite.DefaultHeight Number
The sprite height the editor opens on.
8
Sprites.Platform.GameBoy.Font.Charsets Array
The machine's built-in character sets, each a font object of name, cell size and glyphs. The Game Boy has none in ROM: on-screen text is drawn from ordinary tiles the game supplies, so this list is empty and Font.DefaultFont is undefined. See the Game Boy font page.
[]
Sprites.Platform.GameBoy.Font.DefaultWidth Number
The glyph cell width in pixels of the default font. Zero: the Game Boy has no ROM font.
0
Sprites.Platform.GameBoy.Font.DefaultHeight Number
The glyph cell height in pixels of the default font. Zero: the Game Boy has no ROM font.
0
Sprites.Platform.GameBoy.Font.CharStart Number
The first glyph code. Zero: no default font.
0
Sprites.Platform.GameBoy.Font.CharCount Number
The glyph count. Zero: no default font.
0
Sprites.Platform.GameBoy.Font.DefaultFont Object
Null: the Game Boy has no ROM text font, so there is no built-in character set. On-screen text is drawn from ordinary 8×8 tiles the game supplies. See the Game Boy font page.
null
Sprites.Platform.GameBoy.Map.TileWidth Number
The width in pixels of one map tile, the size-locked cell each background index is drawn at.
8
Sprites.Platform.GameBoy.Map.TileHeight Number
The height in pixels of one map tile, the size-locked cell each background index is drawn at.
8
Sprites.Platform.GameBoy.Map.ScreenWidth Number
The visible width in tiles, the 20 columns the DMG screen shows. A new map defaults to this size.
20
Sprites.Platform.GameBoy.Map.ScreenHeight Number
The visible height in tiles, the 18 rows the DMG screen shows. A new map defaults to this size.
18
Sprites.Platform.GameBoy.Map.HardwareWidth Number
The width in tiles of the hardware tilemap, 32 columns that wrap, through which a larger world streams.
32
Sprites.Platform.GameBoy.Map.HardwareHeight Number
The height in tiles of the hardware tilemap, 32 rows that wrap, through which a larger world streams.
32
Sprites.Platform.GameBoy.Map.MaxWidth Number
The largest map width in tiles the editor allows, the world that streams through the wrapping hardware map.
1024
Sprites.Platform.GameBoy.Map.MaxHeight Number
The largest map height in tiles the editor allows, the world that streams through the wrapping hardware map.
1024
Sprites.Platform.GameBoy.Map.Modes Array
The map modes, in the order the Info window lists them. The Game Boy has one, Background: 256 tiles, four shades from the single background palette, no per cell attributes, and a Background and Window layer. The tile field is the size-locked sprite mode a tile is drawn in, an 8×8 tile of four shades.
| Name | Tiles | Colours | Palettes | Attributes | Layers |
|---|---|---|---|---|---|
| Background | 256 | 4 | 1 | none | 2 |
[
{ "name": "Background", "tiles": 256, "colours": 4, "palettes": 1, "paletteSize": 4, "attributes": "none", "layers": 2, "tile": { "name": "Tile", "colours": 4, "transparent": true, "pixelAspect": 1, "allowedSizes": [[8, 8]] } }
]
Sprites.Platform.GameBoy.Sequencer Object
The sequencer channel model for the Game Boy sound unit: a pulse channel with sweep, a plain pulse channel, a wavetable channel and a noise channel, each a distinct type with per-channel panning, described as address-free capabilities with value ranges. The Sprites.Media.Sequencer editor reads this to lay out the grid and gate what each channel can do. Registers are on the Game Boy audio page; here only value ranges matter.
{
name: 'Game Boy',
channelTypes: {
pulseSweep: { capabilities: {
pitch: { mode: 'latched', notes: ['C1', 'C8'], finetune: false },
volume: { mode: 'latched', level: { bits: 4 } },
duty: { mode: 'latched', width: { values: [12.5, 25, 50, 75] } },
envelope: { mode: 'latched', type: 'decay', start: { bits: 4 }, period: { bits: 3 } },
sweep: { mode: 'latched', rate: { bits: 3 }, shift: { bits: 3 } },
pan: { mode: 'latched', position: { options: ['left', 'right', 'both'] } }
} },
pulse: { capabilities: {
pitch: { mode: 'latched', notes: ['C1', 'C8'], finetune: false },
volume: { mode: 'latched', level: { bits: 4 } },
duty: { mode: 'latched', width: { values: [12.5, 25, 50, 75] } },
envelope: { mode: 'latched', type: 'decay', start: { bits: 4 }, period: { bits: 3 } },
pan: { mode: 'latched', position: { options: ['left', 'right', 'both'] } }
} },
wave: { capabilities: {
pitch: { mode: 'latched', notes: ['C1', 'C8'], finetune: false },
volume: { mode: 'latched', level: { values: [0, 25, 50, 100] } },
wavetable: { mode: 'latched', size: 32, depth: { bits: 4 } },
pan: { mode: 'latched', position: { options: ['left', 'right', 'both'] } }
} },
noise: { capabilities: {
noise: { mode: 'latched', rate: { bits: 3 }, modes: ['15-bit', '7-bit'] },
volume: { mode: 'latched', level: { bits: 4 } },
envelope: { mode: 'latched', type: 'decay', start: { bits: 4 }, period: { bits: 3 } },
pan: { mode: 'latched', position: { options: ['left', 'right', 'both'] } }
} }
},
channels: [ { type: 'pulseSweep' }, { type: 'pulse' }, { type: 'wave' }, { type: 'noise' } ],
effects: ['arpeggio', 'portamento', 'vibrato', 'tremolo', 'volumeSlide']
}