====== Character map ====== The monitor ROM has a built-in font. ====== Control characters ====== Control characters can be used to configure the display. ^Character^Name^Description^ |0|NUL|Does nothing!| |1|SOH|| |2|STOP|Code for the STOP key| |3|BREAK|| |4|EOT|End of Text| |5|ENQ|| |6|ACK|| |7|BEEP|Beep!| |8|LEFT|Code for the "left" key. Moves cursor left.| |9|RIGHT|Code for the "right" key. Moves cursor right.| |A|CR|Code for the "down" key. Moves cursor down.| |B|UP|Code for the "up" key. Moves cursor up.| |C|RAZ|Code for the "RAZ" key (Remise à Zéro). Clears the screen.| |D|LF|Code for the "ENT" key. Move to beginning of next line.| |E|TELETEL|Enter semi-graphic mode (see below)| |F|ALPHA|Enter alphanumeric mode (undoes E)| |10|DLE|| |11||Shows cursor| |12||Unused.| |13||Unused.| |14||Hide cursor| |15||| |16|ACC|Begin of accented sequence - uses G2 character set| |17||| |18||Erase to end of line| |19||| |1A||| |1B|ESC|Begin escape sequence (see below)| |1C|INS|Code for the "INS" key. Inserts an empty space at the cursor position and shifts all following characters to the right.| |1D|DEL|Code for the "DEL" key. Removes current character and shifts all following characters to the left.| |1E|TAB|Tabulation.| |1F|US|User 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. ^Sequence^Description^ |1B 20 4x|Change character color for the whole screen| |1B 20 5x|Change background color for the whole screen| |1B 4x|Change current character color| |1B 5x|Change current background color| |1B 6x|Change border color| |1B 70|Normal size characters| |1B 71|Double height characters| |1B 72|Double width characters| |1B 73|Double size characters| |1B 74|Opaque characters (printing a character sets the color RAM to the current foreground and background colors)| |1B 75|Transparent characters (printing a character changes only the shape RAM, colors are preserved)| |1B 76|Enable video incrustation (some machines will crash if this is done without the color incrustation plugged in)| |1B 78|Enable fast scrolling (character by character)| |1B 79|Enable soft scrolling (vertical scroll is done pixel by pixel)| |1B 7A|Page mode (no scrolling, printed text wraps around the screen)| |1B 7B|Toggle inverse attribute (shape RAM is negated)| |1G 1h 1l|Set window bottom border to line hl| |1F 2h 2l|Set window top border to line hl| |1F 40+x 40+y|Set 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!) ^Sequence^Description^ |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. ^Code^Accent^ |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: ^Code^Character^ |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: |AAAA|BBBB| |AAAA|BBBB| |CCCC|DDDD| |CCCC|DDDD| |EEEE|FFFF| |EEEE|FFFF| 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.