Standard Character Mode
Introduction[edit | edit source]
Standard Character Mode is an official Graphics Mode for the Commodore 64. It is sometimes referred to as Low Resolution (LoRes). The mode allows for pictures of up to 40 x 25 character blocks filled with PETSCII characters (although technically still 320 x 200 pixel resolution) and 16 colors across the screen. However, there are limitations on how the colors are implemented.
Implementation[edit | edit source]
|Table 1 - VIC-II Control Registers|
|Hex Address||Dec Address||Type||Bit 7||Bit 6||Bit 5||Bit 4||Bit 3||Bit 2||Bit 1||Bit 0||Contents|
|$D011||53265||Register||RST8||ECM||BMM||DEN||RSEL||YSCROLL||Control Register 1|
|$D016||53270||Register||-||-||RES||MCM||CSEL||XSCROLL||Control Register 2|
Standard Character Mode is 1 of 5 legal graphics modes achievable by the VIC-II; the others being combinations of the bits ECM, BMM and MCM. Table 2 shows the possible graphics modes available from the VIC-II.
|Table 2 - Graphics Modes VIC-II Bit Combinations|
|0||0||0||0||Standard Character Mode|
|1||0||0||1||Multicolor Character Mode|
|2||0||1||0||Standard Bitmap Mode|
|3||0||1||1||Multicolor Bitmap Mode|
|4||1||0||0||Extended Background Color Mode|
|5||1||0||1||Extended Background Color Multicolor Character Mode (invalid)|
|6||1||1||0||Extended Background Color Standard Bitmap Mode (invalid)|
|7||1||1||1||Extended Background Color Multicolor Bitmap Mode (invalid)|
Characteristics[edit | edit source]
Standard Character Mode is used primarily for writing text, however Low Resolution pictures are possible using PETSCII characters (which each comprise of an 8 x 8 pixel block). A Standard Character Mode picture, or screen of text, consists of a maximum size 40 x 25 character locations each filled with a PETSCII character. Each 8 x 8 pixel character location can contain 2 different colors: 1 color is defined per character location, and 1 color is defined for the entire screen background. All 16 colors can be used.
The memory required to hold the data for a bitmap is 1.5 kilobytes; 1 kilobyte for the Screen Memory ($0400-$07ff) and 500 bytes for color RAM ($d800-$dbff). Inconveniently, only the lower nibble for each of the 1000 character locations is used in color RAM with the upper nibble unused; and so the data still spans a block of nearly 1 kilobyte. The background color is defined in $d021. PETSCII characters are stored in Character Generator ROM although other memory locations can hold user-defined characters. User defined characters are popular in when creating tiles in games and it is notably easier to soft scroll a screen of Standard Character Mode than Standard Bitmap Mode.