HUNTER’s keyboard comprises 58 keys. Most are laid out in the standard QWERTY positions, but there are a few non-standard keys such as PWR, ESC and the cursor keys.
When held down, the keys will auto-repeat at about 8 characters per second.
Power and Help
Used for switching HUNTER on and off.
This key is generally used to ask for power, in which case it operates just for power on/off. If it has been programmed for help. It is necessary to press ‘Shift Power’ to turn HUNTER off.
The ENTER is used for terminating input from the keyboard. For certain inputs, replying to menus, etc., the ENTER is not used as HUNTER will respond automatically to keyboard input.
‘ENTER’ is often called ‘RETURN’ in user programs. The functions are identical.
This key accesses the legends on the upper half of the keys and must be used in combination with another key. The keys A-Z produce upper case with the shift key.
The cursor control keys perform a number of functions including adjustment of viewing angle, moving the virtual screen window as well as moving the cursor.
Delete, Backspace and Backarrow
Delete, backspace and backarrow keys within DEMOS and Basic all perform the same function, i.e. deletes the character to the left of the cursor. Some user programs in CP/M may use backspace differently by not deleting the character, but only moving the cursor back.
This key is similar to ‘shift’ in that it generates a new set of ASCII codes.
By holding down CTL and pressing an alphabetic key, a control code is generated e.g. CTL+A clears the screen and CTL+G sounds the bleeper. (Note: this function is inhibited in the file manager).
Another use of control is for adjustment of the LCD display viewing angle. By pressing CTL and either up or down arrow the viewing angle may be changed to suit the user. This function is always active.
The CTL/FN key may also be used to generate key sequences known as function keys. These strings may be used for frequently used commands and are present within system programs (DEMOS, Basic, etc.) They are operated in a similar fashion to control, but pressing a numeric key 1-8, giving the eight function keys.
The commands implemented are displayed on the bottom line of display (this may be turned off, see the LBL key).
Within Basic programs the key may be initialised to new functions, see Function Keys.
Escape and Break
ESC is an upper-shifted key used to break into and terminate execution of HUNTER Basic. ‘BREAK’ (BRK) is used to interrupt a Basic program. See ON BREAK. Break is also available for CP/M programs and in terminal mode.
INS and LBL
INS will return the virtual screen window to its original position.
CTL+INS will reverse the operation of the ‘SHIFT’ key on the characters A - Z, providing a ‘CAPS’ function.
LBL switches the function line display on and off. LBL is an upper shifted key.
Keyboard keys are each equated to the characters they represent by unique numerical codes, as listed in ASCII Character Set. These values are defined according to the American Standard Code for Information Exchange (ASCII).
The ASCII definitions of each key for the keyboard are contained in 116 consecutive RAM locations named KEYBUF. The upper shift keys are defined in the first 56 locations, followed by the 56 lower shift keys. These memory locations form a ‘map’ of the physical keyboard. On power up, the HUNTER automatically defines these locations to a standard configuration. However, the programmer has the option to be able to define special keyboard arrangements.
The schematic of the keyboard, Keyboard Memory Map, shows the value in KEYBUF for each key.
It is important to note that on powering up HUNTER, the keyboard will revert to the standard version. The programmer should define the special keyboard requirements at an early stage in the program to ensure that the re-definition occurs each time the program is run.
Special codes are assigned to keys whose functions are:
Shift key (latched)
Momentary shift key
Power On/Off key
Virtual screen window up key
Virtual screen window down key
Virtual screen window right key
Virtual screen window left key
Virtual screen right
Virtual screen left
In order for the operating system to detect a change of these keys, the SPELFLG location must be cleared. Changes modifying the special codes should only be done under software control.
‘Enter’ is not a special code: it is simply CR (Decimal 13)
LATCHED SHIFT CODE 129 (81H)
This key should be defined in both shift halves in order to function correctly! This function gives a ‘toggle’ action, changing shift with each operation.
MOMENTARY SHIFT CODE 130 (82H)
As HUNTER powers up in the lower shift, it is important for the momentary shift code to be defined in the lower shift half of KEYBUF. This function gives a ‘conventional’ shift requiring simultaneous depression of shift and the desired key.
CONTROL CODE 132 (84H)
On detection of this key the control code for the key pressed is derived from the code located in the upper shift half of KEYBUF, if this key has a valid ‘control’ equivalent.
CONTROL CODE 133 (85H)
On detection of this key the control code for the key pressed is derived from the code located in the lower shift half of KEYBUF, if this key has a valid ‘control’ equivalent.
HELP CODE (86H)
The detection of this key causes the firmware to enter the HELP text mode. Help mode is exited by pressing the ‘HELP’ key again.
ON/OFF CODE 136 (88H)
The power on/off key may be relocated to any position on the keyboard. After HUNTER has been powered off the power key defaults back to the top right hand position of the keyboard.
The above keys allow the user to view the contents of the virtual screen. The keys are completely transparent to the user program.
LABEL CODE 143 (8FH)
Switches the function key display line on and off. The key is transparent to the user program.
INSERT CODE 144 (9GH)
Returns the virtual screen window to its original position after being moved by the window control keys. The key is transparent to the user program.
Unlike most computers, HUNTER’S ON/OFF switch is not actually in control of power removal. The key is seen by the software scanning the keyboard and the actual decision to turn off is up to the software itself.
If a machine code program places HUNTER into an endless loop, it will be impossible to turn off the machine. This may be overcome by removing the main batteries.