ULANext Attribute Byte Format Register: Difference between revisions

From SpecNext Wiki
Jump to: navigation, search
Ped7g (talk | contribs)
core 3.0 changes
Ped7g (talk | contribs)
core 3.0 changes
Line 19: Line 19:
'''NEW in core 3.0:'''
'''NEW in core 3.0:'''


When set to invalid value, the board will act as if value $FF is set (full ink), taking background colour from transparency fallback.
When set to "invalid" value, the ink value is masked by the value and background colour is taken from transparency fallback (as in "full ink" mode).


Also default value is 7 in core 3.0.
Also default value is 7 in core 3.0.

Revision as of 04:48, 4 October 2019

Number TBRegisterNumber::$42
Readable TBRegisterReadable::Yes
Writable TBRegisterWritable::Yes
Short Description ShortDesc::Specifies mask to extract ink colour from attribute cell value in ULANext mode.

Bits 7-0 = Number of the last ink colour entry in palette (core 2.0: 15 after a Reset | core 3.0: 7 after a Reset).

This number can be 1, 3, 7, 15, 31, 63, 127 or 255. The HW behaviour for other values is unpredictable.

This value is used only when ULANext mode is enabled.

The 255 value enables the full ink colour mode and all the palette entries are inks. The paper and border colour is then taken from {{#ask: TBRegisterNumber::$4A }} ($4A).

If the ink mask is not 255, then the zeroed part of mask signals which bits will be used to extract index of paper colour. Then this index is added to 128 and read from current palette (border index is also 128 + 0..7 value from port $FE). There are no "flash" or "bright" bits when ULANext mode is enabled, all eight attribute bits contribute either to ink or paper colour index.

Applies only to Enhanced ULA palette. Layer 2, Sprite and Tilemap palettes work as "full ink" or specifically to 4-bit graphics data.

NEW in core 3.0:

When set to "invalid" value, the ink value is masked by the value and background colour is taken from transparency fallback (as in "full ink" mode).

Also default value is 7 in core 3.0.