Graphics Modes: Difference between revisions
From NerdConsole
Jump to navigationJump to search
NerdOfEpic (talk | contribs) (Created page with "== Graphics Modes == The NerdConsole PPU is designed to support multiple graphics modes. These modes all provide some shared features with the primary difference being the number of colors supported. The number of colors available in a specific mode in turn drives the layout of tiles and palettes. === Shared Features === {| class="wikitable" ! Feature !! Value |- | Pixel Resolution || 256x256 pixels |- | Screen Name Table || 32x32 tiles |- | Main Name Table || 64x64...") |
NerdOfEpic (talk | contribs) No edit summary |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
The NerdConsole PPU is designed to support multiple graphics modes. These modes all provide some shared features with the primary difference being the number of colors supported. The number of colors available in a specific mode in turn drives the layout of tiles and palettes. | The NerdConsole PPU is designed to support multiple graphics modes. These modes all provide some shared features with the primary difference being the number of colors supported. The number of colors available in a specific mode in turn drives the layout of tiles and palettes. | ||
Line 17: | Line 15: | ||
|- | |- | ||
| Max Sprites || 256 | | Max Sprites || 256 | ||
|- | |||
| Refresh Rate || 60 Hz | |||
|} | |} | ||
<nowiki>*</nowiki> Attributes are integrated directly into the name tables. | <nowiki>*</nowiki> Attributes are integrated directly into the name tables. | ||
Line 23: | Line 23: | ||
{| class="wikitable" style="text-align:center;" | {| class="wikitable" style="text-align:center;" | ||
! rowspan="2" | Feature !! colspan="2" | Mono !! colspan="2" | Low !! colspan="2" | Medium !! colspan="2" | High !! colspan="2" | Super !! colspan="2" | Ultra !! colspan="2" | | ! rowspan="2" | Feature !! colspan="2" | Mono !! colspan="2" | Low !! colspan="2" | Medium !! colspan="2" | High !! colspan="2" | Super !! colspan="2" | Ultra !! colspan="2" | Ultra565 !! colspan="2" | Ultra444 !! colspan="2" | Text | ||
|- | |- | ||
! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR | ! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR !! BG !! SPR | ||
|- | |- | ||
| Mode Value | | Mode Value | ||
Line 35: | Line 35: | ||
| colspan="2" | $05 | | colspan="2" | $05 | ||
| colspan="2" | $06 | | colspan="2" | $06 | ||
| colspan="2" | $07 | |||
| colspan="2" | $10 | | colspan="2" | $10 | ||
|- | |- | ||
| Data Format | | Data Format | ||
| S || S | |||
| S || S | | S || S | ||
| S || S | | S || S | ||
Line 53: | Line 55: | ||
| 32 || 32 | | 32 || 32 | ||
| 40 || 40 | | 40 || 40 | ||
| 48 || 48 | |||
| 48 || 48 | | 48 || 48 | ||
| 48 || 48 | | 48 || 48 | ||
Line 63: | Line 66: | ||
| 4 || 4 | | 4 || 4 | ||
| 5 || 5 | | 5 || 5 | ||
| 6 || 6 | |||
| 6 || 6 | | 6 || 6 | ||
| 6 || 6 | | 6 || 6 | ||
Line 73: | Line 77: | ||
| 256 || 256 | | 256 || 256 | ||
| 204 || 204 | | 204 || 204 | ||
| 170 || 170 | |||
| 170 || 170 | | 170 || 170 | ||
| 170 || 170 | | 170 || 170 | ||
Line 83: | Line 88: | ||
| 16 || 16 | | 16 || 16 | ||
| 32 || 32 | | 32 || 32 | ||
| 64 || 64 | |||
| 64 || 64 | | 64 || 64 | ||
| 64 || 64 | | 64 || 64 | ||
Line 94: | Line 100: | ||
| 888 || 888 | | 888 || 888 | ||
| 888 || 888 | | 888 || 888 | ||
| 565 || 565 | |||
| 444 || 444 | | 444 || 444 | ||
| 888 || 888 | | 888 || 888 | ||
Line 104: | Line 111: | ||
| 16 || 16 | | 16 || 16 | ||
| 8 || 8 | | 8 || 8 | ||
| 12 || 12 | |||
| 16 || 16 | | 16 || 16 | ||
| 1 || 16 | | 1 || 16 | ||
|} | |} | ||
BG = Background | SPR = Sprite | S = Standard | T = Text | 888=RGB888 | 444=RGB444 | BG = Background | SPR = Sprite | S = Standard | T = Text | 888=RGB888 | 565=RGB565 | 444=RGB444 | ||
=== Bitmap Mode Comparison === | === Bitmap Mode Comparison === | ||
{| | {| class="wikitable" style="text-align:center;" | ||
! Mode !! Mode Value !! Pixels !! Palette !! BPP !! Colors !! Address Range !! Data | |||
|- | |||
| F1 || $20 | |||
| 256 || 888 || 1 || 2 | |||
| $000000 - $001FFF || 8K | |||
|- | |||
| F2 || $21 | |||
| 256 || 888 || 2 || 4 | |||
| $000000 - $003FFF || 16K | |||
|- | |||
| F4 || $22 | |||
| 256 || 888 || 4 || 16 | |||
| $000000 - $007FFF || 32K | |||
|- | |||
| F8 || $23 | |||
| 256 || 888 || 8 || 256 | |||
| $000000 - $00FFFF || 64K | |||
|- | |||
| F16 || $24 | |||
| 256 || 565 || 16 || 64K | |||
| $000000 - $01FFFF || 128K | |||
|- | |||
| F24 || $25 | |||
| 256 || 888 || 24 || 16M | |||
| $000000 - $02FFFF || 192K | |||
|- | |||
| H1 || $30 | |||
| 128 || 888 || 1 || 2 | |||
| $000000 - $0007FF || 2K | |||
|- | |||
| H2 || $31 | |||
| 128 || 888 || 2 || 4 | |||
| $000000 - $000FFF || 4K | |||
|- | |||
| H4 || $32 | |||
| 128 || 888 || 4 || 16 | |||
| $000000 - $001FFF || 8K | |||
|- | |||
| H8 || $33 | |||
| 128 || 888 || 8 || 256 | |||
| $000000 - $003FFF || 16K | |||
|- | |||
| H16 || $34 | |||
| 128 || 565 || 16 || 64K | |||
| $000000 - $007FFF || 32K | |||
|- | |||
| H24 || $35 | |||
| 128 || 888 || 24 || 16M | |||
| $000000 - $00BFFF || 48K | |||
|- | |||
| Q1 || $40 | |||
| 64 || 888 || 1 || 2 | |||
| $000000 - $0001FF || 512 | |||
|- | |||
| Q2 || $41 | |||
| 64 || 888 || 2 || 4 | |||
| $000000 - $0003FF || 1K | |||
|- | |||
| Q4 || $42 | |||
| 64 || 888 || 4 || 16 | |||
| $000000 - $0007FF || 2K | |||
|- | |||
| Q8 || $43 | |||
| 64 || 888 || 8 || 256 | |||
| $000000 - $000FFF || 4K | |||
|- | |||
| Q16 || $44 | |||
| 64 || 565 || 16 || 64K | |||
| $000000 - $001FFF || 8K | |||
|- | |||
| Q24 || $45 | |||
| 64 || 888 || 24 || 16M | |||
| $000000 - $002FFF || 12K | |||
|} | |} | ||
F=Full | H=Half | Q=Quarter | K=1024 | M=1,048,576 | 888=RGB888 | 565=RGB565 |
Latest revision as of 23:35, 22 July 2024
The NerdConsole PPU is designed to support multiple graphics modes. These modes all provide some shared features with the primary difference being the number of colors supported. The number of colors available in a specific mode in turn drives the layout of tiles and palettes.
Feature | Value |
---|---|
Pixel Resolution | 256x256 pixels |
Screen Name Table | 32x32 tiles |
Main Name Table | 64x64 tiles |
Attribute Table* | 64x64 tiles |
Max Sprites | 256 |
Refresh Rate | 60 Hz |
* Attributes are integrated directly into the name tables.
Tile Mode Comparison
Feature | Mono | Low | Medium | High | Super | Ultra | Ultra565 | Ultra444 | Text | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
BG | SPR | BG | SPR | BG | SPR | BG | SPR | BG | SPR | BG | SPR | BG | SPR | BG | SPR | BG | SPR | |
Mode Value | $00 | $01 | $02 | $03 | $04 | $05 | $06 | $07 | $10 | |||||||||
Data Format | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | S | T | S |
Bytes/Tile | 8 | 8 | 16 | 16 | 24 | 24 | 32 | 32 | 40 | 40 | 48 | 48 | 48 | 48 | 48 | 48 | 8 | 32 |
Bit Layers | 1 | 1 | 2 | 2 | 3 | 3 | 4 | 4 | 5 | 5 | 6 | 6 | 6 | 6 | 6 | 6 | 1 | 4 |
Tile Entries | 256 | 256 | 256 | 256 | 256 | 256 | 256 | 256 | 204 | 204 | 170 | 170 | 170 | 170 | 170 | 170 | 256 | 256 |
Tile Colors | 2 | 2 | 4 | 4 | 8 | 8 | 16 | 16 | 32 | 32 | 64 | 64 | 64 | 64 | 64 | 64 | 2 | 16 |
RGB Format | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 888 | 565 | 565 | 444 | 444 | 888 | 888 |
Sub-Palettes | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 16 | 8 | 8 | 12 | 12 | 16 | 16 | 1 | 16 |
BG = Background | SPR = Sprite | S = Standard | T = Text | 888=RGB888 | 565=RGB565 | 444=RGB444
Bitmap Mode Comparison
Mode | Mode Value | Pixels | Palette | BPP | Colors | Address Range | Data |
---|---|---|---|---|---|---|---|
F1 | $20 | 256 | 888 | 1 | 2 | $000000 - $001FFF | 8K |
F2 | $21 | 256 | 888 | 2 | 4 | $000000 - $003FFF | 16K |
F4 | $22 | 256 | 888 | 4 | 16 | $000000 - $007FFF | 32K |
F8 | $23 | 256 | 888 | 8 | 256 | $000000 - $00FFFF | 64K |
F16 | $24 | 256 | 565 | 16 | 64K | $000000 - $01FFFF | 128K |
F24 | $25 | 256 | 888 | 24 | 16M | $000000 - $02FFFF | 192K |
H1 | $30 | 128 | 888 | 1 | 2 | $000000 - $0007FF | 2K |
H2 | $31 | 128 | 888 | 2 | 4 | $000000 - $000FFF | 4K |
H4 | $32 | 128 | 888 | 4 | 16 | $000000 - $001FFF | 8K |
H8 | $33 | 128 | 888 | 8 | 256 | $000000 - $003FFF | 16K |
H16 | $34 | 128 | 565 | 16 | 64K | $000000 - $007FFF | 32K |
H24 | $35 | 128 | 888 | 24 | 16M | $000000 - $00BFFF | 48K |
Q1 | $40 | 64 | 888 | 1 | 2 | $000000 - $0001FF | 512 |
Q2 | $41 | 64 | 888 | 2 | 4 | $000000 - $0003FF | 1K |
Q4 | $42 | 64 | 888 | 4 | 16 | $000000 - $0007FF | 2K |
Q8 | $43 | 64 | 888 | 8 | 256 | $000000 - $000FFF | 4K |
Q16 | $44 | 64 | 565 | 16 | 64K | $000000 - $001FFF | 8K |
Q24 | $45 | 64 | 888 | 24 | 16M | $000000 - $002FFF | 12K |
F=Full | H=Half | Q=Quarter | K=1024 | M=1,048,576 | 888=RGB888 | 565=RGB565