Difference between revisions of "Sprite port-mirror Attribute 4 Register"
From SpecNext official Wiki
(core 2.00.23 changes) |
(Core 2.00.27 (or 28) changes to relative sprite system.) |
||
Line 6: | Line 6: | ||
}} | }} | ||
Byte 5 is bitmapped: | Byte 5 is bitmapped: | ||
+ | :For '''anchor''' sprites: | ||
{|class="wikitable" | {|class="wikitable" | ||
! Bit !! Description | ! Bit !! Description | ||
|- | |- | ||
− | | 7 || | + | | 7-6 || "H N6" - "H" is 4/8 bit graphics selector, "N6" is sub-pattern selector for 4 bit modes.<br /> |
+ | %00 = 8-bit colour patterns (256 bytes), this sprite is "'''anchor'''"<br /> | ||
+ | %01 = this sprite is "'''relative'''" (4/8-bit colour is selected by "anchor" sprite) → see tables below<br /> | ||
+ | %10 = 4-bit colour pattern (128 bytes) using bytes 0..127 of pattern slot, this sprite is "'''anchor'''"<br /> | ||
+ | %11 = 4-bit colour pattern (128 bytes) using bytes 128..255 of pattern slot, this sprite is "'''anchor'''" | ||
|- | |- | ||
− | | | + | | 5 || Type for following '''relative''' sprites: 0 = "composite", 1 = "big sprite" |
− | 0 | ||
− | |||
− | |||
|- | |- | ||
− | | | + | | 4-3 || x-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) |
− | + | |- | |
+ | | 2-1 || y-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) | ||
+ | |- | ||
+ | | 0 || MSB of Y coordinate | ||
+ | |} | ||
+ | :For '''composite relative''' sprites: | ||
+ | {|class="wikitable" | ||
+ | ! Bit !! Description | ||
+ | |- | ||
+ | | 7-6 ||%01 = relative sprite | ||
+ | |- | ||
+ | | 5 || "N6" bit, in 4-bit colour mode 0 = using bytes 0..127 of pattern slot, 1 = using bytes 128..255 of pattern slot. In 8-bit mode use 0. | ||
|- | |- | ||
| 4-3 || x-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) | | 4-3 || x-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) | ||
Line 23: | Line 36: | ||
| 2-1 || y-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) | | 2-1 || y-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) | ||
|- | |- | ||
− | | 0 || | + | | 0 || Enable relative pattern offset (1 = Pattern index is added to anchor pattern index, 0 = independent pattern index) |
+ | |} | ||
+ | :For '''big-sprite relative''' sprites: | ||
+ | {|class="wikitable" | ||
+ | ! Bit !! Description | ||
+ | |- | ||
+ | | 7-6 ||%01 = relative sprite | ||
+ | |- | ||
+ | | 5 || "N6" bit, in 4-bit colour mode 0 = using bytes 0..127 of pattern slot, 1 = using bytes 128..255 of pattern slot. In 8-bit mode use 0. | ||
+ | |- | ||
+ | | 4-1 || use 0 (scaling is defined by '''anchor''' sprite) | ||
+ | |- | ||
+ | | 0 || Enable relative pattern offset (1 = Pattern index is added to anchor pattern index, 0 = independent pattern index) | ||
|} | |} | ||
See {{PortNo|$xx57}} for extra notes about anchor/relative sprites, coordinates and clipping. | See {{PortNo|$xx57}} for extra notes about anchor/relative sprites, coordinates and clipping. |
Revision as of 02:10, 11 February 2019
Number | $39 |
---|---|
Readable | No |
Writable | Yes |
Short Description | Nextreg port-mirror to write directly into "byte 5" of Sprite Attribute Upload ($xx57 / 87). |
Byte 5 is bitmapped:
- For anchor sprites:
Bit | Description |
---|---|
7-6 | "H N6" - "H" is 4/8 bit graphics selector, "N6" is sub-pattern selector for 4 bit modes. %00 = 8-bit colour patterns (256 bytes), this sprite is "anchor" |
5 | Type for following relative sprites: 0 = "composite", 1 = "big sprite" |
4-3 | x-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) |
2-1 | y-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) |
0 | MSB of Y coordinate |
- For composite relative sprites:
Bit | Description |
---|---|
7-6 | %01 = relative sprite |
5 | "N6" bit, in 4-bit colour mode 0 = using bytes 0..127 of pattern slot, 1 = using bytes 128..255 of pattern slot. In 8-bit mode use 0. |
4-3 | x-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) |
2-1 | y-axis scale factor: %00 = 1x (16 pixels), %01 = 2x, %10 = 4x, %11 = 8x (128 pixels) |
0 | Enable relative pattern offset (1 = Pattern index is added to anchor pattern index, 0 = independent pattern index) |
- For big-sprite relative sprites:
Bit | Description |
---|---|
7-6 | %01 = relative sprite |
5 | "N6" bit, in 4-bit colour mode 0 = using bytes 0..127 of pattern slot, 1 = using bytes 128..255 of pattern slot. In 8-bit mode use 0. |
4-1 | use 0 (scaling is defined by anchor sprite) |
0 | Enable relative pattern offset (1 = Pattern index is added to anchor pattern index, 0 = independent pattern index) |
See Sprite Attribute Upload ($xx57 / 87) for extra notes about anchor/relative sprites, coordinates and clipping.