Turbo Pascal 2.0 course cover
← Back to Modules
module
43

Appendix IV - The Keyboard

The course names keys the way the Einstein does: ENTER, DELETE, ESC, BREAK, GRPH, F0, CONTROL. Where that key is depends on what you are sitting at.

On A Real Einstein

Press the key with that name on it. CONTROL and SHIFT are held down while you press the other key.

In MAME

MAME lays the Einstein's keys over yours by position, so the key in the same place on your keyboard is the Einstein's key, whatever your keycap says.

EinsteinIn MAME
ENTERReturn
DELETEBackspace
CONTROLCtrl (the left one)
ESC, SHIFT, CAPS LOCKthe key of the same name
the horizontal cursor keyTab; Shift and Tab for left
the vertical cursor keythe Down arrow; Shift and Down for up
BREAKleft Option (left Alt) - but it does nothing under the emulator
GRPHF8
F0 to F7F1 to F8

MAME has keys of its own - Escape to quit, F3 to reset - and starts with them switched off, so that those keys reach the Einstein. Forward delete (Fn and Backspace on a Mac laptop) switches them on and off. If Escape ever closes MAME, that is what has happened.

Characters

To typePressDrawn on screen as
'SHIFT and 7'
"SHIFT and 2"
; +the ; + key, plain and shifted; +
: *the : * key, plain and shifted (in MAME: the ' key): *
=the = key=
- (minus)SHIFT and =-
_the key marked -_
`SHIFT and the key marked -a pound sign
( )SHIFT and 8, SHIFT and 9( )
< >SHIFT and ,, SHIFT and .< >
@SHIFT and 0@
[ ]the ← and → keys (in MAME: Left and Right)a left arrow, a right arrow
{ }SHIFT with ← and →a quarter, three quarters
^the ↑ key (in MAME: Up)an up arrow
~SHIFT with ↑a division sign
|the ½ key (in MAME: the \ key)a double bar
\SHIFT with the ½ keya half

CAPS LOCK is on when the Einstein starts. Press it once for small letters.

The Cursor Keys

The Einstein does not have four arrow keys. It has two grey cursor keys, side by side at the right-hand end of the QWERTY row, each marked with a double-headed arrow:

KeyOn its ownWith SHIFT
the horizontal cursor keycursor rightcursor left
the vertical cursor keycursor downcursor up

Three other keys have a single arrow printed on them, but they are ordinary character keys, and the arrow is the character they type: the Einstein draws [ as a left arrow, ] as a right arrow and ^ as an up arrow.

KeyWhere it isTypesWith SHIFT
← (marked ¼ and ←)end of the QWERTY row, next to the cursor keys[{
→ (marked ¾ and →)end of the ASDF row, next to ENTER]}
↑ (marked ÷ and ↑)the number row, between = and ½^~

In MAME the two cursor keys are on your Tab key and your Down arrow: Tab is right, Shift and Tab is left, Down is down, and Shift and Down is up. Your Left, Right and Up arrows are the three character keys: Left types [, Right types ] and Up types ^. That is why MAME users so often report that the Einstein's arrow keys type brackets and do not move the cursor. The keys under those three arrows are not the cursor keys.

In Turbo's editor the horizontal cursor key is CTRL-D, and with SHIFT CTRL-H: one place right or left. The vertical key does nothing visible, and with SHIFT it is CTRL-K, the start of a two-key command: SHIFT and the vertical key, then D, leaves the editor. The diamond (S5) is the way to move. While a program is asking a question, SHIFT and the horizontal key rubs out the last character (S11).

Tatung's own manual describes the two cursor keys and the keyboard this way, and MAME's Einstein agrees with it. What the keys do in Turbo Pascal was checked in MAME, not on a real Einstein. If you have one and it behaves differently, please let us know and this page will be corrected.

Turbo Pascal's Keys

At The Menu

KeyDoes
WWork file: name the program you are working on
EEdit it
RRun it - compiling it first
SSave it
DDir: list the disc. ENTER for everything, or a mask such as *.INC
QQuit to 0:, offering to save first if you need to
CCompile, without running (S37)
OOptions; in it, C compiles to a .COM file from then on, Q goes back (S6, S37)
MMain file: the program C compiles, whatever the work file is (S38)
SPACEDraw the menu again

Capital or small letters, and no ENTER after them.

In The Editor

KeysDoes
DELETERub out the character before the cursor
CTRL-SCursor one character left
CTRL-DCursor one character right
CTRL-XCursor down a line
ENTEREnd the line; with auto-indent on, the next starts under the one before
CTRL-Q CTRL-IAuto-indent off (Indent leaves the status line)
CTRL-K CTRL-DLeave the editor, keeping your text

The horizontal cursor key moves right and, with SHIFT, left: it sends the same codes as CTRL-D and CTRL-H, and CTRL-H moves left just as CTRL-S does. The vertical cursor key does nothing visible, and with SHIFT it is taken as the CTRL-K prefix, so SHIFT and the vertical key followed by D leaves the editor. The three keys marked with single arrows type [ ] ^ (The Cursor Keys, above).

The rest, from S5:

KeysDoes
CTRL-ECursor up a line
CTRL-A, CTRL-FA word left, a word right
CTRL-R, CTRL-CA screen up, a screen down
CTRL-W, CTRL-ZMove the text down or up a line on screen
CTRL-Q CTRL-S, CTRL-Q CTRL-DStart, end of the line
CTRL-Q CTRL-R, CTRL-Q CTRL-CTop, end of the program
CTRL-Q CTRL-E, CTRL-Q CTRL-XTop, bottom of the screen
CTRL-Q CTRL-PBack to where you were
CTRL-GDelete the character under the cursor
CTRL-TDelete the word to the right
CTRL-Q CTRL-YDelete to the end of the line
CONTROL and -Delete the whole line (in MAME: Ctrl and -)
CTRL-Q CTRL-LRestore the line you are on, as it was
CTRL-VInsert / Overwrite
CTRL-NSplit the line at the cursor, cursor staying put
CTRL-Q CTRL-FFind; CTRL-L finds the next
CTRL-Q CTRL-AFind and replace; options U ignore capitals, GN all without asking
CTRL-K CTRL-B, CTRL-K CTRL-KMark the start and end of a block (not shown on screen)
CTRL-K CTRL-C, CTRL-K CTRL-V, CTRL-K CTRL-YCopy, move, delete the block
CTRL-K CTRL-RRead a file into the text at the cursor: it asks Read block from file: - give the name without .PAS (S28)

After ENTER or a CTRL-K command, give the editor a moment: a key pressed in the first second or so can be lost.

While A Program Runs

KeysDoes
CTRL-H, or SHIFT and the horizontal cursor keyRubs out the last character of an answer you are typing (DELETE does nothing here)
CTRL-XClears the whole answer
CTRL-CStops a program that is waiting for you to type. Stops a running loop only if the program starts with {$U+}
ESCAfter a compile error: back to the editor, with the cursor at the mistake

Get the Newsletter

New guides, disk images and community finds, roughly once a quarter. No spam, we promise, this isn't Tatung's marketing department.
Your subscription could not be saved. Please try again.
Your subscription has been successful.

Newsletter

Subscribe to our newsletter and stay updated.