Difference between revisions of "L0 ROM"
m (→Data format)
m (→Example of GPU processing)
|Line 54:||Line 54:|
Revision as of 21:50, 10 June 2019
The dump is called 000-lo.lo in system ROM sets.
- CRC32: 5A86CFF2
- SHA-1: 5992277DEBADEB64D1C1C64B0A92D9293EAF7E4A
The data is made of 256 tables of 256 bytes, each table corresponding to a vertical shrinking value for sprites.
For the first 256 lines (top half of a full sprite), the index in the table is the line number of the sprite currently being drawn (scanline - Y position).
Each byte entry in the table is used as 2 nibbles:
- The upper nibble is the tile number index to read in the tilemap in VRAM SCB1 (0 to 15).
- The lower nibble is the line number of that tile to fetch in the C ROMs.
For the last 256 lines (bottom half of a full sprite), the index in the table is complemented: the table is read backwards.
- The upper nibble is the tile number index XOR $1F to read in the tilemap in VRAM SCB1 (16 to 31).
- The lower nibble is the line number XOR $F of that tile to fetch in the C ROMs.
Example of GPU processing
(Maybe place this part in the LSPC page ?)
Sprite with Y zoom value = $1B and tile height = 2 (32 pixels).
|Sprite line #||L0 address||L0 data||Tilemap index||Tile line used|
Official TC531001 datasheet: []