[< back to index](../doc_index.md) # Text encodings ans escape sequences ### Text encoding list * `default` – default console encoding (can be omitted) * `scr` – default screencodes (usually the same as `default`, a notable exception are the Commodore computers) * `ascii` – standard ASCII * `pet` or `petscii` – PETSCII (ASCII-like character set used by Commodore machines from VIC-20 onward) * `petjp` or `petsciijp` – PETSCII as used on Japanese versions of Commodore 64 * `origpet` or `origpetscii` – old PETSCII (Commodore PET with original ROMs) * `oldpet` or `oldpetscii` – old PETSCII (Commodore PET with newer ROMs) * `cbmscr` or `petscr` – Commodore screencodes * `cbmscrjp` or `petscrjp` – Commodore screencodes as used on Japanese versions of Commodore 64 * `apple2` – Apple II charset ($A0–$DF) * `bbc` – BBC Micro character set * `sinclair` – ZX Spectrum character set * `jis` or `jisx` – JIS X 0201 * `iso_de`, `iso_no`, `iso_se`, `iso_yu` – various variants of ISO/IEC-646 * `iso_dk`, `iso_fi` – aliases for `iso_no` and `iso_se` respectively * `atascii` or `atari` – ATASCII as seen on Atari 8-bit computers * `atasciiscr` or `atariscr` – screencodes used by Atari 8-bit computers When programming for Commodore, use `pet` for strings you're printing using standard I/O routines and `petscr` for strings you're copying to screen memory directly. ### Escape sequences ##### Available everywhere * `{q}` – double quote symbol * `{apos}` – apostrophe/single quote * `{x00}`–`{xff}` – a character of the given hexadecimal value ##### Available only in some encodings * `{n}` – new line * `{b}` – backspace * `{lbrace}`, `{rbrace}` – opening and closing curly brace (only in encodings that support braces) * `{up}`, `{down}`, `{left}`, `{right}` – control codes for moving the cursor * `{white}`, `{black}`, `{red}`, `{green}`, `{blue}`, `{cyan}`, `{yellow}`, `{purple}` – control codes for changing the text color * `{bgwhite}`, `{bgblack}`, `{bgred}`, `{bggreen}`, `{bgblue}`, `{bgcyan}`, `{bgyellow}`, `{bgpurple}` – control codes for changing the text background color * `{reverse}`, `{reverseoff}` – inverted mode on/off ##### Character availability Encoding | lowercase letters | backslash | pound | yen and katakana | card suits --|--|--|--|--|--|-- `pet`, `origpet` | yes¹ | no | no | no | yes¹ `oldpet` | yes² | no | no | no | yes² `petscr` | yes¹ | no | yes | no | yes¹ `petjp` | no | no | no | yes³ | yes³ `petscrjp` | no | no | no | yes³ | yes³ `sinclair`, `bbc` | yes | yes | yes | no | no `apple2` | no | yes | no | no | no `atascii` | yes | yes | no | no | yes `atasciiscr` | yes | yes | no | no | yes `jis` | yes | no | no | yes | no all the rest | yes | yes | no | no | no 1. `pet`, `origpet` and petscr` cannot display card suit symbols and lowercase letters at the same time. Card suit symbols are only available in graphics mode, in which lowercase letters are displayed as uppercase and uppercase letters are displayed as symbols. 2. `oldpet` cannot display card suit symbols and lowercase letters at the same time. Card suit symbols are only available in graphics mode, in which lowercase letters are displayed as symbols. 3. `petjp` and `petscrjp` cannot display card suit symbols and katakana at the same time Card suit symbols are only available in graphics mode, in which katakana is displayed as symbols. If the encoding does not support lowercase letters (e.g. `apple2`, `petjp`, `petscrjp`), then text and character literals containing lowercase letters are automatically converted to uppercase. ##### Escape sequence availability Encoding | new line | braces | backspace | cursor movement | text colour | reverse | background colour --|--|--|--|--|--|-- `pet`,`petjp` | yes | no | no | yes | yes | yes | no `origpet` | yes | no | no | yes | no | yes | no `oldpet` | yes | no | no | yes | no | yes | no `petscr`, `petscrjp`| no | no | no | no | no | no | no `sinclair` | yes | yes | no | yes | yes | yes | yes `ascii`, `iso_*` | yes | yes | yes | no | no | no | no `apple2` | no | yes | no | no | no | no | no `atascii` | yes | no | yes | yes | no | no | no `atasciiscr` | no | no | no | no | no | no | no all the rest | yes | yes | no | no | no | no | no