Sprite port-mirror Index Register
| Number | TBRegisterNumber::$34 |
|---|---|
| Readable | TBRegisterReadable::Yes |
| Writable | TBRegisterWritable::Yes |
| Short Description | ShortDesc::Selects sprite index 0..63 to be affected by writes to other Sprite ports (and mirrors). |
| Bit | Description |
|---|---|
| 7 | Enable "link" with I/O port {{#ask:
PortNumber::$303B }} ($303B{{#ask: PortNumber::$303B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (sprite index for port {{#ask: PortNumber::$xx57 }} ($xx57{{#ask: PortNumber::$xx57 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }})) (1 = interlinked, 0 = decoupled) |
| 6 | reserved, write 0 |
| 5-0 | Sprite index (0..63), which sprite-attributes will be modified. |
When the index is "linked" (bit 7 is set), it ties the nextreg sprite-index and the I/O sprite-index together.
- any change to the nextreg sprite number via write to nextreg $34 or auto-inc on nextreg $75-$79 will set the sprite index for I/O to the same and also reset the I/O attribute port {{#ask:
PortNumber::$xx57 }} ($xx57{{#ask: PortNumber::$xx57 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) (next write to sprite-attribute port will modify first byte of attributes of particular sprite)
- any change to sprite number via I/O port {{#ask:
PortNumber::$303B }} ($303B{{#ask: PortNumber::$303B |mainlabel=- |headers=hide |intro= / |?NumberDec#- }}) or auto-inc via I/O port $xx57 will also be reflected in nextreg $34.
This link is broken by writing to nextreg $34 with bit 7 reset.