4.3. Setup — System Reconfiguration

Version II.0, March 1979

page225 The UCSD Pascal Operating System keeps certain information about the user in a file called SYSTEM.MISCINFO. During each system initialization this file is read into memory, and from there it is accessed by many parts of the system, particularly (if the user has a terminal suitable for it) by the screen oriented editor.

Much of this information needs to be initially set up by the user to conform to his particular hardware configuration or his taste or convenience. Most of this information concerns the nature of the terminal and keyboard, although there are a few miscellaneous fields.

SETUP is run like any other compiled Pascal program, by entering the Command level of the system, typing X for eXecute and typing the filename SETUP followed by a carriage return. You should see the following (user input is in bold type):

Execute what file? SETUP
INITIALIZING....................
.............................
SETUP: C(HANGE) T(EACH) H(ELP) Q(UIT) [C3]

If this does not happen it may be because the setup program is not on the disk. If so, the system will display the message

no file SETUP.CODE
If neither of the above happens, something is drastically wrong. Contact UCSD. Assuming all is well, continue.

All commands to the SETUP program are invoked by typing a single letter chosen from the prompt line.

SETUP: C(HANGE) T(EACH) H(ELP) Q(UIT)
Type ‘H’ to find out what the commands at this level do. The program is self teaching, so the rest of this document explains the information SETUP was designed to change.

SETUP does not tell the system how to do random access cursor addressing on the user's terminal (for those terminals which have this capability). To allow the system to use that feature, please refer to Section 4.7 of this document.

4.3.1. Miscellaneous Information

page226 It is interesting to note that on all PDP-11 systems, the key which generates ASCII DC1 (or control-R); functions as an alpha-lock.

HAS CLOCK
Values: TRUE, FALSE
A real time clock is available. A real time clock module, such as the DEC KW11, may be found on many processors. It is assumed to be a line frequency (60 cycle) clock. If available it is used by the PASCAL system to optimize disk directory updates. See section 2.1.5 TIME intrinsic.

STUDENT
Values: TRUE, FALSE
If true, tells the system to simplify certain parts of the system for novice use. E.g., an error detected while compiling sends student back to the editor without choice.

HAS 8510A
Values: TRUE, FALSE
The system is running on a Terak 8510a hardware configuration.

HAS BYTE FLIPPED MACHINE
Values: TRUE, FALSE
True if low order byte is in bits 0-7 of words on your processor (9900, 6800, GA440) and False if high order byte comes first (PDP11, 8080, 6502).

HAS WORD ORIENTED MACHINE
Values: TRUE, FALSE
True if sequential addresses address sequential 16 bit words, False if sequential addresses address sequential 8 bit bytes.

4.3.2. General Terminal Information

HAS SLOW TERMINAL
Values: TRUE, FALSE
When this field is true, the system issues abbreviated prompt lines and messages. Suggested setting: 600 baud and under – True, otherwise False.

HAS RANDOM CURSOR ADDRESSING
Values: TRUE, FALSE
Only applies to video terminals. See Section 4.7 in order to allow the system to make use of this feature.

HAS LOWER CASE
Values: TRUE, FALSE

SCREEN WIDTH
The number of characters per line of a terminal.

SCREEN HEIGHT
The number of lines per display screen of a video terminal. Set to 0 for a hard copy terminal or other terminal in which paging is page227 not appropriate.

NON PRINTING CHARACTER
Values: Any printing character.
What should be displayed by the terminal to indicate the presence of a non-printing character. Recommended setting: ASCII “?”.

VERTICAL MOVE DELAY
The number of NUL characters to send after a vertical cursor move. Many types of terminals require a delay after certain cursor movements which enables the terminal to complete the movement before the next character is sent. This number of NUL characters will be sent after carriage returns.

ERASE TO END OF LINE
self explanatory

ERASE TO END OF SCREEN
self explanatory

MOVE CURSOR UP
self explanatory

4.3.3. Control Key Information

The user may choose which control keys suit his particular keyboard arrangement and his taste.

Some keyboards generate two codes when some single key is pressed. If that is the case for any of the keys mentioned here, it must be noted in the field PREFIXED[field-name] which has either the value TRUE or the value FALSE. The prefix for all such keys must be the same and must be noted in the field LEAD IN FROM KEYBOARD. This feature may also be used to access control functions with two-character sequences if a user's keyboard is unable to generate many control characters. As an example, suppose the user's keyboard had a vector pad which generated the value pairs ESC “U”, ESC “D”, ESC “L” and ESC “R” for the keys for Up-Arrow, Down-Arrow, Left-Arrow and Right-Arrow, respectively. Assume also that all other keys on the keyboard generate only single codes. Then the user would give the following fields the following values:

KEY FOR MOVING CURSOR UPASCII “U”
KEY FOR MOVING CURSOR DOWNASCII “D”
KEY FOR MOVING CURSOR LEFTASCII “L”
KEY FOR MOVING CURSOR RIGHTASCII “R”
LEAD IN KEY FOR KEYBOARDESC
PREFIXED[KEY FOR MOVING CURSOR UP]TRUE
PREFIXED[KEY FOR MOVING CURSOR DOWN]TRUE
PREFIXED[KEY FOR MOVING CURSOR LEFT]TRUE
PREFIXED[KEY FOR MOVING CURSOR RIGHT]TRUE
KEY FOR STOP
Console output stop character. The STOP character is a toggle; when pressed, the key will cause output to the file ‘OUTPUT’ to cease. When the key is depressed again, the write to file ‘OUTPUT’ will resume where it left off. This function is very useful for reading data which is being displayed faster than one can read.
Suggested setting: ASCII DC3

page228 KEY FOR FLUSH
Console output cancel character. Similar in concept and usage to the STOP key, the FLUSH key will cause output to the file ‘OUTPUT’ to go undisplayed until FLUSH is pressed again or the system writes to file ‘KEYBOARD’. Note that, unlike the STOP key, processing continues uninterrupted while output goes undisplayed.
Suggested setting: ASCII ACK

KEY FOR BREAK
Typing the character BREAK will cause the program currently executing to be terminated with a run-time error immediately.
Suggested setting: Something difficult to hit accidentally.

KEY TO END FILE
console end of file character. When reading from the files KEYBOARD or INPUT or the unit ‘CONSOLE:’, this key sets the Boolean function EOF to TRUE. See section 2.2.4 EOF intrinsic.
Suggested setting: ASCII ETX

KEY TO DELETE CHARACTER
Each time you press this key one character is removed from the current line, until nothing is left on that line.
Suggested setting: ASCII BS

KEY TO DELETE LINE
Pressing LINE DELETE will cause the current line of input to be erased.
Suggested setting: ASCII DEL

The rest of this section contains information only of interest to users who are using video display terminals with a selective erase capability and may be safely ignored by users having any other kind of terminal, such as hard copy terminals or storage tube terminals.

KEY TO MOVE CURSOR UP
KEY TO MOVE CURSOR DOWN
KEY TO MOVE CURSOR LEFT
KEY TO MOVE CURSOR RIGHT
These keys are used by the screen oriented editor to control the basic motions of the cursor. If the keyboard has a vector pad, set these fields to the values it generates, otherwise, we suggest choosing 4 keys in the pattern of a vector pad and use the control codes which correspond to them, for example the keys ‘O’, ‘.’, ‘K’ and ‘;’ on most keyboards encircle an imaginary vector pad. You may wish to use a prefix character before such keys as described above.

page229

EDITOR ESCAPE KEY
The key which, in the system screen oriented editor, is to be used to escape from commands, reversing any action taken.
Suggested setting: ASCII ESC

EDITOR ACCEPT KEY
The key which, in the system screen oriented editor, is to be used to accept commands, making permanent any action taken.
Suggested setting: ASCII ETX

4.3.4. Video Screen Control Characters

This section describes the characters which, went sent to the terminal by the computer, controls the terminals actions. You should consult the manual for your terminal to find the appropriate values. If a terminal does not have one of these characters, the field should be set to 0 unless otherwise directed.

Some screens require a two character sequence to exercise some of their functions. If the first character in all of these sequences is the same, it can be set as the value of the field LEAD IN TO SCREEN and for each field-name which requires that prefix, the user must set the field PREFIX[field-name] to TRUE. For example, suppose ERASE TO END OF LINE and ERASE TO END CF SCREEN were respectively performed by the sequences ESC “L” and ESC “S” but all the other screen controls were single characters. The user would then set the following fields to the following values:

LEAD IN TO SCREENASCII ESC
ERASE TO END OF LINEASCII “L
ERASE TO END CF SCREENASCII “S
PREFIXED[ERASE TO END OF SCREEN]TRUE
PREFIXED[ERASE TO END OF LINE]TRUE
ERASE TO END OF SCREEN
The character which erases the screen from the current cursor position to the end of the screen.

ERASE TO END OF LINE
The character which, when sent to the screen, erases all characters from the current cursor position to the end of the line the cursor is on.

ERASE LINE
The character which, when sent to the screen, erases all the characters on the line the cursor is currently on.

ERASE SCREEN
The character which, when sent to the screen, erases the entire screen.

BACKSPACE
The character which, when sent to the screen, causes the cursor to move space to the left.
page230 MOVE CURSOR HOME
The character which moves your cursor to the upper left of the current page. Important:: If your terminal does not have such a character, set this field to CARRIAGE RETURN, ASCII mnemonic CR.

MOVE CURSOR UP
MOVE CURSOR LEFT
The characters which move your cursor non-destructively one space in those directions.

4.3.5. Quit

The quit mode of SETUP gives many options: Memory update, which places the definitions in the memory cells which are appropriate. Disk update, which creates the file NEW.MISCINFO. Return, which takes the user back to setup, and Exit, which returns the user to the Pascal command level.

4.3.6. Quick Reference Summary

BACKSPACE
EDITOR ACCEPT KEY
EDITOR ESCAPE KEY
ERASE LINE
ERASE SCREEN
ERASE TO END OF LINE
ERASE TO END OF SCREEN
HAS 8510A
HAS BYTE FLIPPED MACHINE
HAS CLOCK
HAS LOWER CASE
HAS RANDOM CURSOR ADDRESSING
HAS SLOW TERMINAL
HAS WORD ORIENTED MACHINE
KEY FOR BREAK
KEY FOR FLUSH
KEY FOR STOP
KEY TO DELETE CHARACTER
KEY TO DELETE LINE
KEY TO END FILE
KEY TO MOVE CURSOR DOWN
KEY TO MOVE CURSOR LEFT
KEY TO MOVE CURS9R RIGHT
KEY TO MOVE CURSOR UP
LEAD IN FROM KEYBOARD
LEAD IN TO SCREEN
MOVE CURSOR HOME
MOVE CURSOR RIGHT
MOVE CURSOR UP
NON PRINTING CHARACTER
page231
PREFIXED [DELETE CHARACTER]
PREFIXED [EDITOR ACCEPT KEY]
PREFIXED [EDITOR ESCAPE KEY]
PREFIXED [ERASE LINE]
PREFIXED [ERASE SCREEN]
PREFIXED [ERASE TO END OF LINE]
PREFIXED [ERASE TO END CF SCREEN]
PREFIXED [KEY FOR BREAK]
PREFIXED [KEY FOR FLUSH]
PREFIXED [KEY TO MOVE CURSOR DO?IN]
PREFIXED [KEY TO MOVE CURSOR LEFT]
PREFIXED [KEY TO MOVE CURSOR RIGHT]
PREFIXED [KEY TO MOVE CURSOR UP]
PREFIXED [KEY FOR STOP]
PREFIXED [KEY TO DELETE CHARACTER)
PREFIXED [KEY TO DELETE LINE)
PREFIXED [KEY TO END FILE]
PREFIXED [MOVE CURSOR HOME]
PREFIXED [MOVE CURSOR RIGHT]
PREFIXED [MOVE CURSOR UP]
PREFIXED [NON PRINTING CHARACTER]
SCREEN HEIGHT
SCREEN WIDTH
STUDENT
VERTICAL MOVE DELAY
page232
This page last regenerated Sun Jul 25 01:11:47 2010.