The pivot layer is a 64×64 grid of 8×8 tiles, which gets its textures from ram instead of rom.
It can either be in "text mode" (where the texture is looked up based on the tile's id) or "pixel mode" (where each cell has a unique texture, whose address depends on its position in the grid, effectively giving you a 512×256 bitmap, though the pixels are in a weird order)note in this mode the bottom half uses the same textures as the top half, but different attributes
Pivot Tile Data
Address ($61C000+)
⋯,0,1,1,1,0,y:6,x:6,-
y
tile y index (0-63)
x
tile x index (0-63)
Data
h,pal:6,v,tex:8
tex
texture id (0-255) (only used in text mode)
v
1
vertical flip
pal
palette id (0-63)
h
1
horizontal flip
Pivot Textures
Address (Text Mode) ($61E000+)
⋯,0,1,1,1,1,chr:8,-:5
chr
character id (0-255)
Address (Pixel Mode) ($620000+/$630000+)
⋯,1,b,x:6,y:5,-:5
b
pixel data bank (set via line register)
x
tile x index (0-63)
y
tile y index (0-31; top and bottom halves of the pivot layer use same textures in pixel mode)
Data (×8)
b:4,b:4,b:4,b:4,b:4,b:4,b:4,b:4
b
data for 1 pixel describe the bit order better - maybe we need a separate page for bitmap formats because they are all different
Line Register 2.0 "6000"
B,#,P,#,#,#,p,#,#:8
p
Pivot Layer: Alpha Select
P
Pivot Layer: Tile Mode
0
text mode
1
pixel mode
B
Pivot Layer: Pixel Data Bank
0
$620000 (conflicts with lineram)
1
$630000
Line Register 3.1 "7200"
bm,?,clip:10,prio:4
prio
Pivot Layer: Priority (0-15)
clip
Pivot Layer: Clip Settings
bm
Pivot Layer: Blend Mode (note different interpretation than elsewhere)