HP-15C: Keyboard

Version 4.5.00, Build 6308
© 2023 Torsten Manz
H E W L E T T · P A C K A R D 15C
A Simulator for Windows, Linux and macOS

# Keyboard

## Overview

All Simulator functions are accessible from the computer keyboard. You can access the primary functions, like the digits or the square root function, with a single keyboard key. Other functions, especially the secondary functions, require a sequence of two or more consecutive keys.

In addition to key sequences, shortcuts are available for some common and often used functions. Shortcuts should be more intuitive and easier to remember in some cases. For example, to run a program with label `A` you can key in the sequence F3 Q or you can use the shortcut Alt–A.

The following table gives an overview on how key sequences and shortcuts are organised:

Key/Sequence/ Shortcut | Description
--- | ---
key | Primary functions of the HP-15C keys. Also some secondary functions are mapped to a single key, e.g. # for RAN # and P for π.
Alt–key | Pop-up menus and shortcuts for secondary functions.
Shift–key | Secondary functions where the unmodified key is already used, e.g. R for RCL and Shift–R for →RAD.
F key | Gold secondary functions.
G key | Blue secondary functions.
F1…F12 | Function keys and program related commands.
Ctrl–key | Interaction with the operating system.

### macOS specifics

The keyboard on macOS is handled differently:

- Ctrl becomes command or ⌘
- Alt becomes control – option or ⌃–⌥. For some keys also ⌘– option works, but most combinations are used by macOS itself.

### User mode specifics

In User mode, the main and the gold function of the keys A through E are exchanged. Other keys are not affected. The mapping of the computer keyboard to the HP-15C keys is not changed. Clicking ex with the mouse or pressing E on the keyboard in User mode will run the program with label `B`. To call the exponential function in User mode click B or f ex, or press F E.

◀ Overview ▲ Top

## HP-15C Keypad

This section shows keyboard keys and shortcuts according to their position on the HP-15C keypad:

A Alt-A | B Alt-B | C Alt-C | D Alt-D | E Alt-E | MATRIX Alt-Z | FIX | SCI | ENG | SOLVE
√x̅ Q | ex E | 10x X | yx Y | 1/x \, Alt-/ | CHS Alt-±, Z | 7 7 | 8 8 | 9 8 | ÷ ÷, /
x² Alt-X | LN Alt-N | LOG Alt-G | % % | Δ% D | ABS A, | | DEG | RAD | GRD | x≤y
LBL F8 | HYP H | DIM | (i) I | I J, Shift-I | RESULT | x↔ Alt-< Alt-> | DSE | ISG | ∫xy
SST Right | GTO F2, O | SIN S | COS C | TAN T | EEX Shift-E | 4 4 | 5 5 | 6 6 | × * ,×
BST Left | HYP-1 Alt-H | SIN-1 | COS-1 | TAN-1 | π P | SF | CF | F? ? | x=0
PSE F6 | Σ | PRGM | REG | PREFIX Space | RAN # # | →R | →H.MS Shift-M | →RAD Shift-R | Re↔Im Tab
R/S F5, V | GSB F3, B | R↓ Down | x↔y <, > | ← Backsp. | E N T E R Return | 1 1 | 2 2 | 3 3 | − −
P/R F9 | RTN F4 | R↑ Up | RND | CLx ESC | →P | →H Shift-H | →DEG Shift-D | TEST
|  |  | FRAC Shift-F | USER U | x! ! | ŷ,r | L.R. | Py,x
ON Alt-O | f F | g G | STO M | RCL R | 0 0 | . . , | Σ+ Ins | + +
|  |  | INT N | MEM | LSTx L | x̅ | s | Σ− Del | Cy,x

◀ HP-15C Keypad ▲ Top

## Keys by Context

This section summarises keyboard keys, shortcuts and key sequences by context:

- Online Help and Configuration
- Calculating
- Complex Math
- Data Storage Registers
- Edit and Format
- Menus
- System Integration
- Program (Run mode)
- Program (PRGM mode)

Mouse buttons are referred to as B1 = left button, B2 = middle button or mouse wheel and B3 = right button.

### Online Help and Configuration

Keyboard | HP-15C key | Function
--- | --- | ---
F1 | - | Display the simulator online help.
Ctrl–F1 Shift–F1 | - | Display the help file for the current program (if available).
Ctrl–, | - | Opens the Preferences dialogue.

### Calculating

Keyboard | HP-15C key | Function
--- | --- | ---
# | f RAN # | Generate a random number.
! | f x! | Factorial of the number in the X-register.
space | f PREFIX | Displays all ten significant digits of the number in the X-register. The display changes as long as you hold the space key pressed. When you release the key, the display switches back to the current display format.
% | g % | Computes the percentage X of the value in the Y-register.
<, > | x↔y | Exchanges the contents of the X and Y-register.
A | (Pipe) | g ABS | Computes the absolute value of the number in the X-register.
C | COS | Computes the cosine of the number in the X-register.
Shift–D | g →DEG | Converts the number in the X-register from radians to degrees.
E | ex | Computes the exponential function of the number in the X-register.
Shift–E | EEX | Enter EXponent. Allows you to enter the exponent of the number in the X-register.
Shift–F | f FRAC | Computes the decimal fraction of the number in the X-register.
H | f HYP | Prefix for hyperbolic functions. Must be followed by S, C or T or click SIN, COS or TAN respectively.
Alt–H | g HYP-1 | Prefix for inverse hyperbolic functions. Must be followed by S, C or T or click SIN, COS or TAN respectively.
Shift–H | f →H.MS | Converts the number in the X-register from hours-minutes-seconds-decimal seconds format into decimal hours.
I | f (i) | Indirect addressing. See also Complex Math below.
Shift–I | f I | Access to index register as part of a keysequence, e.g. f x↔ I. See also Complex Math below for other usages of Shift–I.
L | g LSTx | Rolls up the stack one register and writes the contents of the LSTx register to the X-register
Shift–M | g →H.MS | Converts the number in the X-register from a decimal hours into an hours-minutes-seconds-decimal seconds format.
N | g INT | Computes the integer of the number in the X-register, i.e. makes it a natural number.
P | g π | Returns the value of π.
Q | √x̅ | Computes the square root of the number in the X-register.
Shift–R | g →RAD | Converts the number in the X-register from degrees to radians.
S | SIN | Computes the sine of the number in the X-register.
T | TAN | Computes the tangent of the number in the X-register.
X | 10x | Computes 10 to the power of the number in the X-register.
Y | yx | Computes Y to the power of X.
Alt–< Alt–> | f x↔ | Must be followed by a valid data storage register. Exchanges the contents of that register and the X-register.
Alt–X | g x² | Computes the square of a number.
Z Alt–− Alt–+ | CHS | Changes the prefix of the number in the X-register.
\ Alt–/ | ⅟x | Computes the inverse of the number in the X-register.
Ins Alt–Enter | Σ+ | Accumulates the numbers in the X and Y-register to the statistic sums in the data storage registers R2 through R7.
Del | g Σ− | Removes the numbers in the X and Y-register from the statistic sums in the data storage registers R2 through R7.

### Complex Math

Keyboard | HP-15C key | Function
--- | --- | ---
G 4 8 | g SF 8 | Switches the HP-15C into Complex mode.
G 5 8 | g CF 8 | Switches Complex mode off.
I | f (i) | Displays the imaginary part of the complex number in the X register. The imaginary part is displayed as long as you hold the key pressed. When you release the key the real part of the number is displayed again.
J Shift–I | f I | Takes the Y and X register from the real stack and creates a complex number Y+iX
Tab | f Re↔Im | Exchanges the real and the imaginary part of the complex number in the X-register. If Complex mode is not active, it is switched on.
F 1 | f →R | The X-register must contain a complex number in polar coordinates. This function then computes the rectangular coordinates.
G 1 | g →P | The X-register must contain a complex number in rectangular coordinates. This function then computes the polar coordinates.

### Data Storage Registers

Keyboard | HP-15C key | Function
--- | --- | ---
M | STO | STOre. Must be followed by a valid data storage register. Copies the contents of the X-register to the given register.
R | RCL | ReCaLl. Must be followed by a valid data storage register. Copies the contents of that register to the X-register.
Alt–M | B3–STO | Invokes the store popup menu. Selecting a register from the menu copies the contents of the X-register to the selected register
Alt–R | B3–RCL | Invokes the recall popup menu. Selecting a register from the menu copies the registers contents to the X-register.

### Edit and Format

Keyboard | HP-15C key | Function
--- | --- | ---
U | f USER | Toggles User mode on/off.
⟵ | ← | In Run mode: Deletes the last digit typed in or clears the X-register if the input is completed. In PRGM mode: Deletes the current program line.
Esc | g CLx | Clears the X-register and sets it to zero.
Shift–Esc | - | Clear all. Sets all registers to zero. This is the combination of f REG and setting the stack registers and the LSTx register to zero. Disabled in PRGM mode.
↑ Wheel fwd | g R↑ | Roll up the stack one register.
↓ Wheel bwd | R↓ | Roll down the stack one register.
Alt–. Alt–, | ON . | Toggles the representation of the decimal point and the digit separator.

### Menus

Keyboard | HP-15C key | Function
--- | --- | ---
Alt–F | B3–F? | Flag menu.
Alt–M | B3–STO | Data storage registers menu in storage mode. Selecting a data storage register from the menu copies the contents of the X to that data storage register.
Alt–O F10 | B3–ON | ON menu.
Alt–R | B3–RCL | Data storage registers menu in recall mode. Selecting a data storage register from the menu copies the contents of that register to the X-register.
Alt–S | B3– | In Run mode, this activates the stack popup menu and the program popup menu in PRGM mode.
Alt–T | B3–TEST | Test menu with ten compare functions. Not available in Run mode.
Alt–Z | B3–MATRIX | Matrix functions menu.
- | B3–A …E | Content menu for each matrix.

### System Integration

Keyboard | HP-15C key | Function
--- | --- | ---
Ctrl–C | double-click B1– | Copies the contents of the X-register to the operating systems clipboard.
Ctrl–Shift–C |  | Copies the contents of the X-register in the current display format.
Ctrl–E | - | Export program to HTML.
Ctrl–V B2 | - | Copies the operating systems clipboard contents to the X-register. If the contents can not be converted into a valid floating-point number, nothing is copied.
Ctrl–M | - | Saves the current simulator memory to the memory file.
Ctrl–L | - | Reloads the previously saved simulator memory from the memory file.
Ctrl–O | - | Open a program file.
Ctrl–R | - | Reset the memory of the Simulator.
Ctrl–S | - | Save program to a file. The default file type is '.15C'
Ctrl–T | - | HP-15C stays on-top of other applications on the desktop even if it hasn't the focus.
Ctrl–Q | - | Exit HP-15C.
Ctrl–+ | - | Select the next available font set from the list (cycle forward). The shortcut is disabled, while the Preferences dialogue is open.
Ctrl–- | - | Select the previous available font set from the list (cycle backward). The shortcut is disabled, while the Preferences dialogue is open.

### Program (Run mode)

Keyboard | HP-15C key | Function
--- | --- | ---
Ctrl–F1 Shift–F1 | - | Display the help file for the current program (if available).
F2 O | GTO | GoTO. Must be followed by a valid program label. Positions the program pointer on the label but does not run the program.
F3 B | GSB | GoSuB. Must be followed by a valid program label. Runs the program with the given label. To run a program with label `A` you must key in F3 Q and not F3 A. This is because A is a secondary function to key √x̅, which is mapped to Q.
F4 | g RTN | ReTurN. The program pointer is moved to step 000.
F5 V | R/S | Run/Stop. Either runs or stops a program.
F9 | g P/R | Program/Run mode. Switches to PRGM mode. macOS: ⌘–F9
F11 | - | Toggles program mnemonics in menus on/off. macOS: ⌘–F11
Alt–F11 | - | Toggles coloured program menus on/off.
F12 Ctrl–D | - | Opens the Program Description dialogue box. Used to edit/enter program documentation
← | g BST | Backward STep. The program pointer is moved back one step.
→ | SST | Single STep. The program pointer is moved forward one step. This allows it to execute a program step by step. While the key is pressed, the display shows the next step but does not executed it. The step is executed only when the key is released.
Alt–A…E | f A…E | Runs the program that starts at the given label.
Alt–0…9 | GSB 0…9 | Runs the program that starts at the given label. There are no shortcuts for labels higher than 9.
- | B3–GTO | Pops up the program menu. Selecting a program step positions the program pointer on that step. This is equivalent to the real HP-15C sequence GTO CHS # # #, where "#" means a digit key. This sequence is not supported by the Simulator.

### Program (PRGM Mode)

Keyboard | HP-15C key | Function
--- | --- | ---
Ctrl–V B2 | - | The clipboard contents is interpreted as a simulator program file. See the Program File Format section for the supported formats.
Ctrl–F1 Shift–F1 | - | Displays the help file of the current program (if available).
F2 O | GTO | GoTO. Must be followed by a (valid) program label. Insert a GoTo statement in the current program.
F3 B | GSB | GoSuB. Must be followed by a (valid) program label. Insert a GoSub statement in the current program.
F4 | g RTN | ReTurN. Insert a Return statement in the program.
F5 V | R/S | Run/Stop. Insert a stop statement in the program.
F6 | f PSE | PauSE. Stops the program for a short time and continuous. The duration of the pause statement can be configured in the Preferences dialogue.
F8 | f LBL | LaBeL. Defines the start of a program or sub-program. Must be followed by a valid program name.
F9 | g P/R | Program/Run mode. Switches back to Run mode. macOS: ⌘–F9
F11 | - | Toggles program mnemonics in menus on/off. macOS: ⌘–F11
Alt–F11 | - | Toggles coloured program menus on/off.
F12 Ctrl–D | - | Opens the Program Description dialogue box. Used to edit/enter program documentation
← | g BST | Backward STep. Moves the program pointer one step back. Line number and contents of the new current step are displayed.
→ | SST | Single STep. Moves the program pointer one step forward. Line number and contents of the new current step are displayed.
Alt–A…E | f A…E | Inserts a LBL A…E statement in the current program.
Alt–0…9 | GSB 0…9 | Inserts a GSB 0…9 statement in the current program.

◀ Keys by Context ▲ Top

## Keyboard Usage

Keyboard | Normal | Alt | Shift | Ctrl
--- | --- | --- | --- | ---
space | PREFIX |  |  |
! | ! |  |  |
# | RAN # |  |  |
% | % |  |  |
* | × |  |  |
+ | + | CHS |  | Next font set
, | . | Swap period and comma |  |
- | - | CHS |  | Previous font set
. | . | Swap period and comma |  |
/ | ÷ | 1/x |  |
0 | 0 | GSB 0 |  |
1 | 1 | GSB 1 |  |
2 | 2 | GSB 2 |  |
3 | 3 | GSB 3 |  |
4 | 4 | GSB 4 |  |
5 | 5 | GSB 5 |  |
6 | 6 | GSB 6 |  |
7 | 7 | GSB 7 |  |
8 | 8 | GSB 8 |  |
9 | 9 | GSB 9 |  |
< | x↔y | x↔ |  |
> | x↔y | x↔ |  |
? | F? |  |  |
A | ABS | GSB A |  |
B | GSB | GSB B |  |
C | COS | GSB C |  | Copy X register to clipboard
D | Δ% | GSB D | →DEG | Program description
E | ex | GSB E | EEX | Export program as html
F | f | Flags menu | FRAC |
G | g | LOG |  |
H | HYP | HYP-1 | →H |
I | (i) |  | I | System Info DM15
J | I |  |  |
K |  |  |  |
L | LSTx |  |  | Reload memory
M | STO | Store menu | →H.MS | Save memory
N | INT | LN |  |
O | GTO | ON menu |  | Open program file
P | π |  |  |
Q | √x̅ |  |  | Quit simulator
R | RCL | Recall menu | →RAD | Reset memory
S | SIN | Show stack |  | Save program file
T | TAN | Tests menu |  | Stay on top
U | USER |  |  |
V | R/S |  |  | Run mode: Paste clipboard to register X PRGM mode: Paste a program to memory
W |  |  |  |
X | 10x | x2 |  |
Y | yx |  |  |
Z | CHS | Matrix functions menu |  |
ß | 1/x |  |  |
\ | 1/x |  |  |
| | ABS |  |  |
Ins | Σ+ |  |  |
Del | Σ- |  |  |
↑ | R↑ |  |  | Read from DM15L/DM-15cc
↓ | R↓ |  |  | Write to DM15L/DM-15cc
→ | SST |  |  |
← | BST |  |  |
⟵ Bksp | ← |  |  |
ESC | CLx |  |  |
⏎ Enter | ENTER |  |  |
⭲ | Re↔Im |  |  |
F1 | Help |  | Help on program | Help on program
F2 | GTO |  |  | Menu bar on/off
F3 | GSB |  |  |
F4 | RTN |  |  |
F5 | R/S |  |  |
F6 | PSE |  |  |
F7 |  |  |  |
F8 | LBL |  |  |
F9 | P/R |  |  |
F10 | ON menu |  |  |
F11 | Mnemonics on/off | Coloured mnemonics on/off |  |
F12 | Program description |  |  |

◀ Keyboard Usage ▲ Top

DM15 ▶

§