The Amstrad CPC character set (alternatively known as the BASIC graphics character set) [1] is the character set used in the Amstrad CPC series of 8-bit personal computers when running BASIC (the default mode, until it boots into CP/M). This character set existed in the built-in "lower" ROM chip. It is based on ASCII-1967, with the exception of character 0x5E which is the up arrow instead of the circumflex, as it is in ASCII-1963, a feature shared with other character sets of the time. [2] [3] Apart from the standard printable ASCII range (0x20-0x7e), it is completely different from the Amstrad CP/M Plus character set. The BASIC character set had symbols of particular use in games and home computing, while the CP/M Plus character reflected the International and Business flavor of the CP/M Plus environment. [4] This character set is represented in Unicode (excluding 0xEF, 0xFC, and 0xFD) [5] as of the March 2020 release of Unicode 13.0, which added symbols for legacy computing. The three missing characters have however been accepted for inclusion in Unicode 16.0 in the symbols for legacy computing supplement. [6]
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
0x | ◻ | ⎾ | ⏊ | ⏌ | ⚡︎ | ⊠ | ✓ | ⍾ | ← | → | ↓ | ↑ | ↡ | ↲ | ⊗ | ⊙ |
1x | ⊟ | ◷ | ◶ | ◵ | ◴ | ⍻ | ⎍ | ⊣ | ⧖ | ⍿ | ␦ | ⊖ | ◰ | ◱ | ◲ | ◳ |
2x | SP | ! | " | # | $ | % | & | ’ | ( | ) | * | + | , | - | . | / |
3x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | : | ; | < | = | > | ? |
4x | @ | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
5x | P | Q | R | S | T | U | V | W | X | Y | Z | [ | \ | ] | ↑ | _ |
6x | ` | a | b | c | d | e | f | g | h | i | j | k | l | m | n | o |
7x | p | q | r | s | t | u | v | w | x | y | z | { | | | } | ~ | DEL |
8x | ▘ | ▝ | ▀ | ▖ | ▌ | ▞ | ▛ | ▗ | ▚ | ▐ | ▜ | ▄ | ▙ | ▟ | █ | |
9x | · | ╵ | ╶ | └ | ╷ | │ | ┌ | ├ | ╴ | ┘ | ─ | ┴ | ┐ | ┤ | ┬ | ┼ |
Ax | ^ | ´ | ¨ | £ | © | ¶ | § | ‘ | ¼ | ½ | ¾ | ± | ÷ | ¬ | ¿ | ¡ |
Bx | α | β | γ | δ | ε | θ | λ | μ | π | σ | φ | ψ | χ | ω | Σ | Ω |
Cx | 🮠 | 🮡 | 🮣 | 🮢 | 🮧 | 🮥 | 🮦 | 🮤 | 🮨 | 🮩 | 🮮 | ╳ | ╱ | ╲ | 🮕 | ▒ |
Dx | ▔ | ▕ | ▁ | ▏ | ◤ | ◥ | ◢ | ◣ | 🮎 | 🮍 | 🮏 | 🮌 | 🮜 | 🮝 | 🮞 | 🮟 |
Ex | ☺ | ☹ | ♣ | ♦ | ♥ | ♠ | ○ | ● | □ | ■ | ♂ | ♀ | ♩ | ♪ | ☼ | ![]() |
Fx | ⭡ | ⭣ | ⭠ | ⭢ | ▲ | ▼ | ▶ | ◀ | 🯆 | 🯅 | 🯇 | 🯈 | ![]() | ![]() | ⭥ | ⭤ |
Each of the characters in the C0 character range (0x00-0x1F) had a special function. [11]
Value (hex) | Value(dec) | Name | Parameter | Locomotive BASIC equivalent | Function |
---|---|---|---|---|---|
00 | 0 | NUL | No effect. Ignored. | ||
01 | 1 | SOH | 0-255 | Print the symbol given by the parameter value. This allows the symbols in the range 0 to 31 to be displayed. | |
02 | 2 | STX | CURSOR 0 | Turn off text cursor. | |
03 | 3 | ETX | CURSOR 1 | Turn on text cursor. | |
04 | 4 | EOT | 0-2 | MODE | Set screen mode. |
05 | 5 | ENQ | 0-255 | Send the parameter character to the graphics cursor. | |
06 | 6 | ACK | Enable Text Screen (see NAK) | ||
07 | 7 | BEL | Sound Bleeper. Note that this flushes the sound queues. | ||
08 | 8 | BS | Move cursor back one character. [a] | ||
09 | 9 | TAB | Move cursor forward one character. [a] | ||
0A | 10 | LF | Move cursor down one line. [a] | ||
0B | 11 | VT | Move cursor up one line. [a] | ||
0C | 12 | FF | CLS | Clear text window and move cursor to top left corner. | |
0D | 13 | CR | Move cursor to left edge of window on current line. [a] | ||
0E | 14 | SO | 0-15 | PAPER | Set Paper Ink. |
0F | 15 | SI | 0-15 | PEN | Set Pen Ink. |
10 | 16 | DLE | Delete current character. [a] | ||
11 | 17 | DC1 | Clear from left edge of window to, and including, the current character position. [a] | ||
12 | 18 | DC2 | Clear from, and including, the current character position to the right edge of window. [a] | ||
13 | 19 | DC3 | Clear from start of window to, and including, the current character position. [a] | ||
14 | 20 | DC4 | Clear from, and including, the current character position to the end of window. [a] | ||
15 | 21 | NAK | Turn off text screen. The screen will not react to anything sent to it until after an ACK is sent. | ||
16 | 22 | SYN | 0-1 | Set transparency (0 disables, 1 enables) | |
17 | 23 | ETB | 0-3 | Set graphics ink mode. 0 normal (overwrite), 1 XOR, 2 AND, 3 OR | |
18 | 24 | CAN | Exchange Pen and Paper Inks, effectively applying the reverse video effect. | ||
19 | 25 | EM | 0-255 (9 times) | SYMBOL | Set the matrix for user definable character. The first parameter specifies which character's matrix to set. The next eight specify the matrix. |
1A | 26 | SUB | 1-80, 1-80, 1-25, 1-25 | WINDOW | Set Window. The parameters specify left, right, top and bottom edges of the window. |
1B | 27 | ESC | No effect. Ignored. | ||
1C | 28 | FS | 0-15, 0-31, 0-31 | INK | Set Ink to a pair of colors. The first parameter specifies the Ink, the next two the required colors. [b] |
1D | 29 | GS | 0-31, 0-31 | BORDER | Set Border to a pair of colors. Equivalent to a BORDER command. The two parameters specify the two colors. [b] |
1E | 30 | RS | Move cursor to top left hand corner of window. | ||
1F | 31 | US | 1-80, 1-25 | LOCATE | Move cursor to the given position in the current window. The first parameter gives the column to move to, the second gives the line. |
The Amstrad CPC is a series of 8-bit home computers produced by Amstrad between 1984 and 1990. It was designed to compete in the mid-1980s home computer market dominated by the Commodore 64 and the ZX Spectrum, where it successfully established itself primarily in the United Kingdom, France, Spain, and the German-speaking parts of Europe.
Windows-1252 or CP-1252 is a legacy single-byte character encoding that is used by default in Microsoft Windows throughout the Americas, Western Europe, Oceania, and much of Africa.
Locomotive Basic is a proprietary dialect of the BASIC programming language written by Locomotive Software on the Amstrad CPC and the later Locomotive BASIC-2 as a GEM application on the Amstrad PC1512 and 1640. It was the main descendant of Mallard BASIC, the interpreter for CP/M supplied with the Amstrad PCW.
PETSCII, also known as CBM ASCII, is the character set used in Commodore Business Machines' 8-bit home computers.
The ATASCII character set, from ATARI Standard Code for Information Interchange, alternatively ATARI ASCII, is a character encoding used in the Atari 8-bit home computers. ATASCII is based on ASCII, but is not fully compatible with it.
LocoScript is a word processing software package created by Locomotive Software and first released with the Amstrad PCW, a personal computer launched in 1985. Early versions of LocoScript were noted for combining a wide range of facilities with outstanding ease of use. This and the low price of the hardware made it one of the best-selling word processors of the late 1980s. Four major versions of LocoScript were published for the PCW, and two for IBM-compatible PCs running MS-DOS. LocoScript's market share didn't expand with the PC versions, which were not released until after Windows had become the dominant PC operating system.
Box-drawing characters, also known as line-drawing characters, are a form of semigraphics widely used in text user interfaces to draw various geometric frames and boxes. These characters are characterized by being designed to be connected horizontally and/or vertically with adjacent characters, which requires proper alignment. Box-drawing characters therefore typically only work well with monospaced fonts.
AMSDOS is a disk operating system for the 8-bit Amstrad CPC Computer. The name is a contraction of Amstrad Disk Operating System.
JIS X 0201, a Japanese Industrial Standard developed in 1969, was the first Japanese electronic character set to become widely used. The character set was initially known as JIS C 6220 before the JIS category reform. Its two forms were a 7-bit encoding or an 8-bit encoding, although the 8-bit form was dominant until Unicode replaced it. The full name of this standard is 7-bit and 8-bit coded character sets for information interchange (7ビット及び8ビットの情報交換用符号化文字集合).
Symbol is one of the four standard fonts available on all PostScript-based printers, starting with Apple's original LaserWriter (1985). It contains a complete unaccented Greek alphabet and a selection of commonly used mathematical symbols. Insofar as it fits into any standard classification, it is a serif font designed in the style of Times New Roman.
MouseText is a set of 32 graphical characters designed by Bruce Tognazzini and first implemented in the Apple IIc. They were then retrofitted to the Apple IIe forming part of the Enhanced IIe upgrade. A slightly revised version was then released with the Apple IIGS.
KPS 9566 is a North Korean standard specifying a character encoding for the Chosŏn'gŭl (Hangul) writing system used for the Korean language. The edition of 1997 specified an ISO 2022-compliant 94×94 two-byte coded character set. Subsequent editions have added additional encoded characters outside of the 94×94 plane, in a manner comparable to UHC or GBK.
KS X 1001, "Code for Information Interchange ", formerly called KS C 5601, is a South Korean coded character set standard to represent Hangul and Hanja characters on a computer.
The ZX Spectrum character set is the variant of ASCII used in the ZX Spectrum family computers. It is based on ASCII-1967 but the characters ^, ` and DEL
are replaced with ↑, £ and ©. It also differs in its use of the C0 control codes other than the common BS
and CR
, and it makes use of the 128 high-bit characters beyond the ASCII range. The ZX Spectrum's main set of printable characters and system font are also used by the Jupiter Ace computer.
The Atari ST character set is the character set of the Atari ST personal computer family including the Atari STE, TT and Falcon. It is based on code page 437, the original character set of the IBM PC.
The RPL character set is an 8-bit character set and encoding used by most RPL calculators manufactured by Hewlett-Packard as well as by the HP 82240B thermal printer. It is sometimes referred to simply as "ECMA-94" in documentation, although it is for the most part a superset of ISO/IEC 8859-1 / ECMA-94 in terms of printable characters, and it differs from ISO/IEC 8859-1 by using displayable characters rather than control characters in the 0x80 to 0x9F range of code points.
The Amstrad CP/M Plus character set is any of a group of 8-bit character sets introduced by Amstrad/Locomotive Software for use in conjunction with their adaptation of Digital Research's CP/M Plus on various Amstrad CPC / Schneider CPC and Amstrad PCW / Schneider Joyce machines. The character set was also used on the Amstrad ZX Spectrum +3 version of CP/M.
The TRS-80 computer manufactured by Tandy / Radio Shack contains an 8-bit character set. It is partially derived from ASCII, and shares the code points from 32 - 95 on the standard model. Code points 96 - 127 are supported on models that have been fitted with a lower-case upgrade.
Sharp MZ character sets are character sets made by Sharp Corporation for Sharp MZ computers. The European and Japanese versions of the software use different character sets.
Symbols for Legacy Computing is a Unicode block containing graphic characters that were used for various home computers from the 1970s and 1980s and in Teletext broadcasting standards. It includes characters from the Amstrad CPC, MSX, Mattel Aquarius, RISC OS, MouseText, Atari ST, TRS-80 Color Computer, Oric, Texas Instruments TI-99/4A, TRS-80, Minitel, Teletext, ATASCII, PETSCII, ZX80, and ZX81 character sets. Semigraphics characters are also included in the form of new block-shaped characters, line-drawing characters, and 60 "sextant" characters. Additional characters were added to this block in Unicode 16.0 as well.