Difference between revisions of "Enhanced ULA Control Register"

From SpecNext official Wiki
Jump to: navigation, search
(Clarified the difference between bits 6:4 and 3:1.)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{NextRegister
 
{{NextRegister
 
|Number=$43
 
|Number=$43
|Readable=No
+
|Readable=Yes
 
|Writable=Yes
 
|Writable=Yes
|ShortDesc=Enables or disables ULANext interpretation of attribute values and toggles active palette.
+
|ShortDesc=Enables or disables Enhanced ULA interpretation of attribute values and toggles active palette.
 
}}
 
}}
 +
{| class="wikitable"
 +
! Bit !! Function
 +
|-
 +
| 7 || 1 to disable palette index write auto-increment
 +
|-
 +
| 6-4 || Select palette for reading or writing
 +
|-
 +
| 3 || Select Sprites palette (0 = first palette, 1 = second palette)
 +
|-
 +
| 2 || Select Layer 2 palette (0 = first palette, 1 = second palette)
 +
|-
 +
| 1 || Select ULA palette (0 = first palette, 1 = second palette)
 +
|-
 +
| 0 || Enable ULANext mode if 1. (0 after a reset)
 +
|}
 +
 +
n.b. Bits 6-4 select palette for reading or writing whereas bits 3-1 select the palette for the display signal generator.
  
 +
Possible bits 6-4 for palette select (bit 6 selects first/second, 5-4 select type):
 
{| class="wikitable"
 
{| class="wikitable"
! Bit !! Function
+
! Bits 6-4 !! selects
 +
|-
 +
| %000 || ULA first palette
 
|-
 
|-
| 7 || Reserved
+
| %100 || ULA second palette
 
|-
 
|-
| 6 || Select normal (0) or second (1) palette to read/write
+
| %001 || Layer 2 first palette
 
|-
 
|-
| 4-5 || Select ULA (00), Layer 2 (01) or sprite (10) palette to read/write
+
| %101 || Layer 2 second palette
 
|-
 
|-
| 3 || Enable second palette on Sprites
+
| %010 || Sprites first palette
 
|-
 
|-
| 2 || Enable second palette on Layer 2
+
| %110 || Sprites second palette
 
|-
 
|-
| 1 || Enable second palette on ULANext
+
| %011 || Tilemap first palette
 
|-
 
|-
| 0 || Enable ULANext attributes
+
| %111 || Tilemap second palette
 
|}
 
|}
 +
 +
Write will also reset the index of {{NextRegNo|$44}}, so the next write there will be considered as first byte of colour.

Latest revision as of 19:13, 31 December 2020

Number $43
Readable Yes
Writable Yes
Short Description Enables or disables Enhanced ULA interpretation of attribute values and toggles active palette.
Bit Function
7 1 to disable palette index write auto-increment
6-4 Select palette for reading or writing
3 Select Sprites palette (0 = first palette, 1 = second palette)
2 Select Layer 2 palette (0 = first palette, 1 = second palette)
1 Select ULA palette (0 = first palette, 1 = second palette)
0 Enable ULANext mode if 1. (0 after a reset)

n.b. Bits 6-4 select palette for reading or writing whereas bits 3-1 select the palette for the display signal generator.

Possible bits 6-4 for palette select (bit 6 selects first/second, 5-4 select type):

Bits 6-4 selects
%000 ULA first palette
%100 ULA second palette
%001 Layer 2 first palette
%101 Layer 2 second palette
%010 Sprites first palette
%110 Sprites second palette
%011 Tilemap first palette
%111 Tilemap second palette

Write will also reset the index of Enhanced ULA Palette Extension ($44), so the next write there will be considered as first byte of colour.