# Appendix D. GO51...The 51 Column by 24 Line Video Display

An alternative video screen device driver, which provides a 51 column by 24 line display with upper and lower case character sets, can be incorporated into OS-9 with the command:

    GO51

This command replaces the normal text screen driver with one that uses high resolution graphics to “draw” the characters. As there are fewer pixels (dots) per character in this mode more characters can be displayed on the screen, albeit with some loss of character definition.

Note, however, that the use of a high resolution graphics page means that an extra 6K bytes will be needed in this mode. This extra memory requirement is not normally a problem but in memory-critical applications, such as the C and Pascal compilers, the user can simply avoid the use of GO51.

This mode of display has a set of escape sequences (commands) to emulate commercial data terminals. In addition to the video screen driver, GO51 provides a new keyboard driver which features auto-repeat. The keyboard code allocation is the same as described in section 2.4.3 and Appendix D.

## The GO51 Display Functions

Like the normal 32 by 16 video display functions described in Appendix C the 51 by 24 mode provides many built in facilities to control the display. These functions are activated by the use of the various escape sequences and control characters described below:

Escape Sequence (Hex) | Name/Function
--- | ---
1B 41 X Y | CURSOR XY - move cursor to column X(0-50) and Y(0-23) where X and Y are single byte values.
1B 42 | CLEAR EOL - clear from cursor to the end of line. Cursor position remains unchanged.
1B 43 | CURSOR RIGHT - move cursor right by one character position.
1B 44 | CURSOR UP - move cursor up by one line.
1B 45 | CURSOR DOWN - move cursor down one line.
1B 46 | REVERSE ON - turn reverse field on.
1B 47 | REVERSE OFF - turn reverse field off.
1B 48 | UNDERLINE ON - turn underline on.
1B 49 | UNDERLINE OFF - turn underline off.
1B 4A | CLEAR EOS - clear from cursor to end of screen. Cursor position remains unchanged.

Control Character (Hex) | Name/Function
--- | ---
07 | BELL - generates a short audible tone.
08 | BACKSPACE (CURSOR LEFT) - moves cursor left one character position.
0A | LINE FEED - move cursor down by one line.
0B | CURSOR HOME - move cursor to home position 0,0 (top left).
0C | CLEAR SCREEN - clears the screen and home cursor.