Character map

The monitor ROM has a built-in font.

Control characters

Control characters can be used to configure the display.

CharacterNameDescription
0NULDoes nothing!
1SOH
2STOPCode for the STOP key
3BREAK
4EOTEnd of Text
5ENQ
6ACK
7BEEPBeep!
8LEFTCode for the “left” key. Moves cursor left.
9RIGHTCode for the “right” key. Moves cursor right.
ACRCode for the “down” key. Moves cursor down.
BUPCode for the “up” key. Moves cursor up.
CRAZCode for the “RAZ” key (Remise à Zéro). Clears the screen.
DLFCode for the “ENT” key. Move to beginning of next line.
ETELETELEnter semi-graphic mode (see below)
FALPHAEnter alphanumeric mode (undoes E)
10DLE
11Shows cursor
12Unused.
13Unused.
14Hide cursor
15
16ACCBegin of accented sequence - uses G2 character set
17
18Erase to end of line
19
1A
1BESCBegin escape sequence (see below)
1CINSCode for the “INS” key. Inserts an empty space at the cursor position and shifts all following characters to the right.
1DDELCode for the “DEL” key. Removes current character and shifts all following characters to the left.
1ETABTabulation.
1FUSUser sequence (see below).

Escape and user sequences

The key codes 1B and 1F mark the start of escape and user sequences. These allow configuring the screen in various ways.

SequenceDescription
1B 20 4xChange character color for the whole screen
1B 20 5xChange background color for the whole screen
1B 4xChange current character color
1B 5xChange current background color
1B 6xChange border color
1B 70Normal size characters
1B 71Double height characters
1B 72Double width characters
1B 73Double size characters
1B 74Opaque characters (printing a character sets the color RAM to the current foreground and background colors)
1B 75Transparent characters (printing a character changes only the shape RAM, colors are preserved)
1B 76Enable video incrustation (some machines will crash if this is done without the color incrustation plugged in)
1B 78Enable fast scrolling (character by character)
1B 79Enable soft scrolling (vertical scroll is done pixel by pixel)
1B 7APage mode (no scrolling, printed text wraps around the screen)
1B 7BToggle inverse attribute (shape RAM is negated)
1G 1h 1lSet window bottom border to line hl
1F 2h 2lSet window top border to line hl
1F 40+x 40+ySet cursor position to (X,Y)

Starting from the TO9, there are also commands to change video mode (note that the monitor doesn't support text output in all modes!)

SequenceDescription
1B 48 Page 1 mode
1B 49 Page 2 mode
1B 4A Overprint (write to page 2)
1B 4B Overprint (write to page 1)
1B 59 Bitmap 4
1B 5A 40 columns
1B 5B 80 columns
1B 5E Bitmap 16
1B 6D Video incrustation
1B 6C Disable video incrustation
1B 88 Triple overprint (write to page 1)
1B 89 Triple overprint (write to page 2)
1B 8A Triple overprint (write to page 3)
1B 8B Triple overprint (write to page 4)

Accent sequences

Character 16 starts an accent sequence. It is followed by an accent code, then a letter.

CodeAccent
41 grave (è)
42 acute (é)
43 circumflex (ê)
48 trema (ë)
4B cedilla (ç)

This only works with lowercase characters. If the character sent after the accent isn't a lowercase letter, the accent is ignored.

Moreover, ACC can be used to write G2 characters:

CodeCharacter
23 Pound (£)
24 Dollar ($)
26 Sharp (#)
27 Paragraph
2C Left arrow
2D Up arrow
2E Right arrow
2F Down arrow
30 Degree (°)
31 Plus/Minus
38 Integer division
3C 1/4
3D 1/2
3E 3/4
6A Œ
7A œ
7B esset

Teletel mode

Character E enters “Teletel” mode. This is a semigraphic mode. Character F switches back to standard mode. The characters for teletel mode are defined according to this grid:

AAAABBBB
AAAABBBB
CCCCDDDD
CCCCDDDD
EEEEFFFF
EEEEFFFF

The character code (in binary) is 0F1EDCBA. This encoding makes it possible to use the following characters while in teletel mode:

  • @, A-Z, []\^_
  • All control characters
  • Characters after number 127 (extended characters)

Escae sequences are still interpreted, allowing for example to change colors for the next characters, use double size teletel characters, and more.

documentations/monitor/charactermap.txt · Last modified: 2015/03/02 21:51 by pulkomandy
CC0 1.0 Universal
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0