Sprite Attribute 3 (with INC) Register: Difference between revisions
core 2.00.23 changes |
Core 2.00.26 changes |
||
| Line 18: | Line 18: | ||
Bit 6 is in normal port writing used to indicate there will be "byte 5" following, while with NextReg mirror the "byte 5" is directly accessible at {{NextRegNo|$39}}. At the time of adding this documentation, it is not clear what bit 6 does here, but value "0" may work as "reset whole byte 5 to zero", so if you intend to use extended "byte 5" features, write "1" or test with actual HW. And other way too, if you don't plan to use the extra features, probably write zero to {{NextRegNo|$39}} explicitly, even if you use "0" for bit 6 here. | Bit 6 is in normal port writing used to indicate there will be "byte 5" following, while with NextReg mirror the "byte 5" is directly accessible at {{NextRegNo|$39}}. At the time of adding this documentation, it is not clear what bit 6 does here, but value "0" may work as "reset whole byte 5 to zero", so if you intend to use extended "byte 5" features, write "1" or test with actual HW. And other way too, if you don't plan to use the extra features, probably write zero to {{NextRegNo|$39}} explicitly, even if you use "0" for bit 6 here. | ||
After write into sprite-attribute "byte 4" ({{PortNo|$xx57}}), the {{NextRegNo|$34}} is incremented (with all consequences stemming from such action). If the sprite | After write into sprite-attribute "byte 4" ({{PortNo|$xx57}}), the {{NextRegNo|$34}} is incremented (with all consequences stemming from such action). If the sprite 127 was modified, the result of the increment is officially "undefined behaviour", and code should explicitly set valid 0..127 sprite index before next sprite-attribute manipulation. | ||
Revision as of 09:11, 27 January 2019
| Number | TBRegisterNumber::$78 |
|---|---|
| Readable | TBRegisterReadable::No |
| Writable | TBRegisterWritable::Yes |
| Short Description | [[ShortDesc::Same as {{#ask:
TBRegisterNumber::$38 }} ($38) (write fourth byte of sprite-attributes), plus increments {{#ask: TBRegisterNumber::$34 }} ($34)]] |
Byte 4 is bitmapped:
| Bit | Description |
|---|---|
| 7 | Enable visibility |
| 6 | ? see note below. |
| 5-0 | Pattern index ("Name") |
Bit 6 is in normal port writing used to indicate there will be "byte 5" following, while with NextReg mirror the "byte 5" is directly accessible at {{#ask: TBRegisterNumber::$39 }} ($39). At the time of adding this documentation, it is not clear what bit 6 does here, but value "0" may work as "reset whole byte 5 to zero", so if you intend to use extended "byte 5" features, write "1" or test with actual HW. And other way too, if you don't plan to use the extra features, probably write zero to {{#ask: TBRegisterNumber::$39 }} ($39) explicitly, even if you use "0" for bit 6 here.
After write into sprite-attribute "byte 4" ({{#ask: PortNumber::$xx57 }} ($xx57{{#ask: PortNumber::$xx57 |mainlabel=- |headers=hide |intro= / |?NumberDec#- }})), the {{#ask: TBRegisterNumber::$34 }} ($34) is incremented (with all consequences stemming from such action). If the sprite 127 was modified, the result of the increment is officially "undefined behaviour", and code should explicitly set valid 0..127 sprite index before next sprite-attribute manipulation.