Difference between revisions of "Sprite and Layers System Register"
From SpecNext official Wiki
(Core 2.00.22 changes.) |
(Adding details how sprite clipping works in "over border" mode.) |
||
Line 15: | Line 15: | ||
| 6 || If 1, the sprite rendering order is reversed, i.e. sprite 0 is on top | | 6 || If 1, the sprite rendering order is reversed, i.e. sprite 0 is on top | ||
|- | |- | ||
− | | 5 || If 1, the clipping works even in "over border" mode | + | | 5 || If 1, the clipping works even in "over border" mode (doubling X-axis coordinates of clip window) |
|- | |- | ||
| 3-4 || If %00, ULA is drawn under Layer 2 and Sprites; if %01, it is drawn between them, if %10 it is drawn over both | | 3-4 || If %00, ULA is drawn under Layer 2 and Sprites; if %01, it is drawn between them, if %10 it is drawn over both | ||
Line 25: | Line 25: | ||
| 0 || Enable sprite visibility (0 after reset) | | 0 || Enable sprite visibility (0 after reset) | ||
|} | |} | ||
+ | |||
+ | When both "over border" (bit 1) and "clipping over border" (bit 5) is enabled, the Sprite clipping window {{NextRegNo|$19}} '''X-axis''' coordinates are "doubled", and coordinates origin is moved from pixel [0,0] position to sprite [0,0] position ([-32,-32] pixel position). For example: setting clip coordinates as {x1:5, x2:155, y1:7, y2:248} will make sprites visible in area [10,7]..[309,248] (inclusively) in sprite coordinates. |
Revision as of 12:45, 23 December 2018
Number | $15 |
---|---|
Readable | Yes |
Writable | Yes |
Short Description | Enables/disables Sprites and Lores Layer, and chooses priority of sprites and Layer 2. |
Bitmapped as follows:
Bit | Function |
---|---|
7 | Enable Lores Layer |
6 | If 1, the sprite rendering order is reversed, i.e. sprite 0 is on top |
5 | If 1, the clipping works even in "over border" mode (doubling X-axis coordinates of clip window) |
3-4 | If %00, ULA is drawn under Layer 2 and Sprites; if %01, it is drawn between them, if %10 it is drawn over both |
2 | If 1, Layer 2 is drawn over Sprites, else sprites drawn over layer 2 |
1 | Enable sprites over border (0 after reset) |
0 | Enable sprite visibility (0 after reset) |
When both "over border" (bit 1) and "clipping over border" (bit 5) is enabled, the Sprite clipping window Clip Window Sprites Register ($19) X-axis coordinates are "doubled", and coordinates origin is moved from pixel [0,0] position to sprite [0,0] position ([-32,-32] pixel position). For example: setting clip coordinates as {x1:5, x2:155, y1:7, y2:248} will make sprites visible in area [10,7]..[309,248] (inclusively) in sprite coordinates.