DM32 Quick Reference Guide
SwissMicros GmbH
Copyright 2023 v2.60 2023-06-02
Table of Contents
About this guide
Symbols used
-
123 characters on a light grey background represent a soft button or anything on the LCD
-
STO characters on a dark grey background represent a physical button
-
↰ represents the orange key, or left-shift, or LS
-
↱ represents the blue key, or right-shift, or RS
-
| a vertical bar in key sequences show options where different keypresses are possible
Functions accessed using shifted keys are shown as Shift-Key + Key + [Function label]
For instance, invoking number pi is shown as ↱ SIN [π].
Navigation
-
2/8 or +/- move one line down/up
-
3/9 ×/÷ move one page down/up
-
4/6 previous/next link (same as arrows ▲/▼)
-
5 or ENTER jump to selected link
-
7 or F2 back to top
-
F3 open help file selection dialog
-
C or F1 close help file
F-Keys
Screenshot
Pressing F5 saves a 1-bit BMP screenshot file in folder /SCREENS.
The file name is made up of the current date and time. Folders on the internal FAT disk can be accessed by connecting the calculator to a computer and activating USB disk mode in the Setup → File menu.
Setup Menu → 1. File
Save and Load complete calculator state to and from FAT disk as *.d32 files. Calculator state file contains:
-
Load State
Load state from *.d32 file.
-
Save State
Save state to *.d32 file.
-
Load Clean State
Global reset, clears everything and resets settings to defaults. Cannot be undone.
-
Activate USB Disk
Prepare DM32 for connection with computer for file exchange.
-
Show Disk Info
Display FAT Disk information.
Setup Menu → 2. Settings
-
Set Time
Set time and select 12h/24h format.
-
Set Date
Set date and select MDY/DMY format.
-
Stack Font
Cycle through available font variants.
Setup Menu → 3. System
Warning: certain actions in this menu can destroy all stored data of the calculator. Please run 'Save State' in File menu first to preserve data over potential RESET.
-
Flashing firmware from FAT
Starts flashing of new firmware if firmware file is copied to root of FAT filesystem.
-
Bootloader
Connect USB to enter bootloader mode. Note that reset is the only way to exit bootloader mode.
-
Program Info
Displays info about currently loaded program.
-
Reset to DMCP menu
Resets calculator and enters DMCP menu.
-
Format FAT Disk
This will format FAT filesystem. All data will be erased!
-
FAT Disk Media Test
All data stored in the FAT disk will be destroyed by this low-level media test!
-
Power OFF mode
Allows to set power OFF mode. Only for diagnostics.
-
Self Test
Set of tests for KBD, LCD, IR, BEEP and Diagnostics.
Setup Menu → 4. About
General OS and firmware information.
Functions reference by context/topic
Below is a list of functions grouped by topic. Some function names are duplicated as the same function can have various effects depending on the context/topic. Here are links to jump to specific context/topic:
Calculator modes
The calculator has 3 modes:
-
normal mode; where manual calculations take place,
-
equation mode; to select, solve (list mode) and write (entry sub-mode) equations in algebraic format,
-
program mode; allows for writing of programs.
The calculator turns on in the same mode it was turned off in. To enter equations mode, press ↱ STO [EQN].
To exit equations mode, press C . To enter program mode, press ↰ R/S [PRGM]. To exit program mode, press C. To enter a CLEAR instruction as a program line while in program mode, use functions from the clear menu.
Variables and indirect addressing
See MEM menu to query the calculator about variables memory usage.
About variables
There are 28 variables and they have a single-letter name from A to Z, and i and (i) playing an additional, special role in indirect addressing).
They are permanent and survive power cycles.
Local variables, on the other hand, are only available from inside a program label. They are volatile and only exist while the program runs. A maximum of ten can exist at any given time within the same program label. They have single-number names ranging from 0 to 9.
STO
STO A..Z
Stores a variable. Valid memory registers are letters A to Z.
RCL
RCL A..Z
Recalls a variable to the x-register. Variables can be recalled from memory registers A to Z.
STO ARITHMETIC
STO + | - | × | × A..Z
Applies arithmetic with value from x-register to variable (variable changes, x-register doesn't).
RCL ARITHMETIC
RCL + | - | × | × A..Z
Applies arithmetic with value from variable to x-register (x-register changes, variable doesn't).
Indirect addressing with i and (i)
Variables i and (i) work together:
i serves as an index to (i).
Example:
-
store value 32 in variable C:
3 2 STO LN (the LN key invokes letter C),
-
store value 3 in variable i:
3 STO . (the dot key invokes letter i),
-
indirectly recall value in variable C by using index variable i:
RCL R/S (the R/S key invokes letter (i)),
-
value 32 from variable C is returned to x-register.
The example above works because variable names are mapped to numeric memory registers, so that number 3 is mapped to variable C:
-
A-Z to registers 1-26
-
i to register 27 (legacy mapping)
x<>
↰ x<>y A..Z
Exchange x-register with a value from a variable. Also orks with indirect addressing.
VIEW
↱ 0 A..Z
Displays the contents of a variable. Has no effect on the stack. Clear display with ← or C. Also works with indirect addressing.
Complex numbers
The x/y and z/t register pairs can be interpreted by the calculator as two complex numbers for certain operations.
In this case, registers x and z are the real parts of both numbers and registers y and t are the imaginary parts.
CMPLX
↰ STO
Prefix used to indicate the next operation is intended to act upon one or a pair of complex numbers.
-
Available complex unary functions (expect one complex number stored in x- and y-registers):
■ +/-
■ 1/x
■ LN
■ ex
■ SIN
■ COS
■ TAN
-
Available complex binary functions (expect two complex numbers stored in x/y and z/t registers):
■ +
■ -
■ ×
■ ÷
■ yx
Fractions
Fractional number entry requires using . twice. To enter 1 2/3, use 1 . 2 . 3.
Fraction display mode is only a representational feature; all numbers are always stored in memory with maximum calculator precision.
FDISP
↰ .
Toggles fraction display mode.
If displayed fraction doesn't represent stored number exactly, annunciators ▲ or ▼ appear to indicate that stored number
is larger or smaller, respectively, than the displayed fraction.
/c
↱ .
Uses value in x-register to set current maximum denominator and puts the display in fraction mode. Possible values: 2-4095. 1 and 0 have special action:
-
0 sets current denominator to maximum allowed value 4095,
-
1 recalls current maximum denominator to x-register (doesn't toggle the display to fraction mode).
About flags 7, 8, 9
These flags control fraction display. They work in a "cascading" fashion, with flag 9 only effective when flag 8 is set, and 8 only when 7 is set.
-
Flag 7: toggles between decimal and fraction display. Identical to using ↰ . [FDISP].
-
Flag 8 (flag 7 must be set):
■ cleared: displayed fraction is the most precise possible with current maximum denominator as specified with /c,
■ set: displayed fraction uses factors of the current maximum denominator.
-
Flag 9 (flag 8 must be set):
■ set: displayed fraction uses fixed current maximum denominator.
Equations
Equations are written using the calculator's equation mode. They are written in algebraic form. There are 3 types of equations:
-
Assignment: A = W × L
-
Equality: A + B² = C³
-
Expression: √W + 4
Assignment-type equations evaluate differently whether ENTER or XEQ is used.
Note
All functions below describe calculator behavior when in equation list mode. Functions in paragraph Equation entry mode are only valid when that sub-mode is active.
EQN
↱ STO
Toggles equation list mode and annunciator EQN. Shows the equation list, which can be browsed using the arrow keys ↰ 7 [▼] / ↰ 8 [▲] or F3 / F4. Displayed equation is the one currently selected.
Equation entry mode
When in equation list mode (annunciator EQN is on), pressing any key (number, function or variable name) activates equation entry mode to start writing a new equation.
Pressing ← while viewing an existing equation in the equation list also switches to equation entry to edit the selected equation.
Writing and modifying equations
Pressing ← while equation entry is active deletes the right-most character from the equation. Arguments to binary functions (e.g. %CHG) must be separated by a space (R/S).
To enter variable names, use STO or RCL before pressing corresponding letter key.
Terminate equation entry with ENTER. The calculator reverts to equation list mode.
ENTER / XEQ
ENTER / XEQ
When in equation list mode, both keys evaluate the currently selected equation, depending on its type.
-
Equality: both ENTER and XEQ calculate left side minus right side and return result to x-register.
-
Expression: both ENTER and XEQ evaluate expression and return value to x-register.
-
Assignment:
■ ENTER returns result to x-register AND stores it in variable name on left side.
■ XEQ calculates left side minus right side and returns result to x-register.
The calculator prompts for variable values in order to evaluate. For each query, either
-
the current value can be kept as is,
-
or a new value can be entered directly,
-
or a calculation can be performed to obtain a new value.
With desired value ready, R/S proceeds to the next value prompt or, if all equation values have been entered, performs the evaluation.
Equation editing
←
To modify a stored equation, select it from the equation list and press ←. Switches the calculator to equation entry mode. A block cursor displays at the end of the line, which allows for adding characters to the equation of deleting the rightmost character by pressing ←.
SHOW
↱ ENTER
Displays the checksum of the currently selected equation.
C
C
Leaves equation mode. Annunciator EQN turns off.
CLEAR
↰ ←
Deletes currently selected equation instantly. Cannot be undone.
SCRL
↱ RCL
Toggles equation scrolling on/off. In equation mode, if the currently selected equation is too long for the display, keys √x and Σ+ are used to scroll the equation.
To enter a new equation starting with √x from here, this scrolling function must therefore be deactivated. Function SCRL does that in this context.
Solving
The solve function finds a value for a selected variable in either an equation or a program. The solver algorithm attempts to find a value so that:
-
for an equation (can be of any of the 3 types):
■ assignment: the right side equals 0,
■ expression: the expression equals 0,
■ equality: left side minus right side equals 0,
-
for a program:
■ the program returns 0 to the x-register.
FN=
↱ XEQ
Defines the label to be used for solving when using a program as function.
SOLVE
↱ 7
To solve an equation
Use the SOLVE function with the equations list open and the desired equation selected. The calculator prompts for the unknown variable name to be solved for. Press the corresponding letter-key. The calculator then prompts for value of each of the known variables. For each query, either:
-
the current value can be kept as is, or
-
a new value can be entered directly, or
-
a calculation can be performed manually to obtain a new value.
With the desired value ready, R/S proceeds to the next value prompt. If all known values have been entered, R/S starts solving. Value in x-register and of the variable being solved for are used as clues, as starting values, for the solver algorithm.
The variable value which solves the equation is displayed and stored in the x-register. The y- and z- registers hold special values after a solution has been found.
To solve a program
Finds a root for a function defined in the form of a program. The program label to use must be designated beforehand with function FN=. To solve a program:
-
unlike when solving an equation, the calculator must be in normal mode,
-
press ↱ XEQ [FN=],
-
select solve program label A..Z,
-
press ↱ 7 [SOLVE],
-
from there, the calculation proceeds as with solving an equation.
Structure of a "solve program"
A "solve program" is really a regular calculator program or program label which must follow these guidelines:
-
start with a label (to later identify with FN=),
-
include an INPUT instruction for every variable (even the unknown),
-
must be designed to return 0 to x-register; for instance, if the equation is f(x) = g(x), then the program should calculate f(x) - g(x); "=0" is implied,
-
end with a RTN instruction.
Example solve program listing for Ohm's law (V=R×I):
-
V01 LBL V
-
V02 INPUT V
-
V03 INPUT R
-
V04 INPUT I
-
V05 RCL R
-
V06 RCL I
-
V07 ×
-
V08 RCL- V
-
V09 RTN
Stack status after SOLVE
-
x-register: variable value which solves the equation (i.e. makes it equal 0),
-
y-register: previous estimate for the solution (SOLVE algorithm works by iterations, this is the second-to-last value it could find),
-
z-register: value of the equation at the solution point; 0 means exact root has been found, non-zero means the root is an approximation.
Programmatic usage
SOLVE can be called as an instruction in a program. The function to solve must itself be stored as a "solve program". To use SOLVE in this context, function FN= must be called first, then SOLVE.
When SOLVE is done, the found value is stored in the variable being solved for without notice. To display the result, add a VIEW variable instruction as a program line immediately after the call to SOLVE. If no root can be found, the program line following the call to SOLVE is skipped.
Calls to SOLVE can't be nested, i.e. SOLVE cannot find a root for a program which itself calls SOLVE.
Interruption
C | R/S
If interrupted, the solving algorithm leaves the current best guess in the variable being solved for.
Integration
The integrand's function is stored in the calculator as an equation, either in the equations list or as a program line. The latter is necessary if the goal is to call the integrating function from a running program. Depending on the equation type, the value of the integrand's function is equal to:
-
assignment: left side minus right side,
-
expression: the expression value,
-
equality: left side minus right side.
FN=
↱ XEQ
Defines the label to be used for integration when using a program as the integrand's function.
∫FN d (INTEGRATE)
↱ 8
To integrate an equation
Before using the function, lower and upper boundaries must be entered in the x- and y-register, respectively. Use the ∫FN d function with the equations list open and the desired equation selected.
The calculator prompts for the variable name to be used for integration. Press the corresponding letter-key. The calculator then prompts for value each of the other variables. For each query, either:
-
the current value can be kept as is,
-
or a new value can be entered directly,
-
or a calculation can be performed manually to obtain a new value.
With desired value ready, R/S proceeds to the next value prompt or, if all values have been entered, integration starts. The display shows INTEGRATING and annunciator EQN flashes until the result is placed in the x-register.
At that point, the y-register holds the uncertainty of the result. Upper/lower boundaries have been pushed to the z- and t-register, respectively.
To integrate a program
The integrand's function can take the shape of a program. The program label to use must be designated beforehand with function FN=.
Structure of an "integration program"
An "integration program" must follow these guidelines:
-
start with a label (to later identify with FN=),
-
include an INPUT instruction for every variable, even the integration variable,
-
from there, either:
■ write a multi-line program which calculates the function values to integrate (similiar to a "solve program"), or
■ enter the function as an equation on a program line. If preferred, this equation can automatically prompt for variable values in lieu of manually added INPUT instructions earlier in the program, and for this to happen flag 11 has to be set,
-
end with a RTN instruction.
Programmatic usage
The integration algorithm can be called as an instruction in a program. The integrand's function itself must be stored as an "integration program". The two integration instructions appear in the program as:
Remember to explicitly define or prompt (with instruction INPUT) for the boundaries. The result of the programmed ∫FN d instruction does not display because it is assumed it will be used for further calculations inside the program.
If displaying the result is desired, a PSE (↱ R/S) or STOP (R/S) instruction must be entered after the ∫FN d instruction.
Calls to ∫FN d can't be nested, i.e. ∫FN d cannot integrate a program which itself calls ∫FN d.
Integration accuracy
The precision of integration calculation is determined by the current display format setting (FIX, SCI, ENG or ALL). The more digits are displayed, the more accurate the calculation is and the longer it takes for the calculation to complete.
Interruption
C | R/S
Integration can be interrupted, but no information is available unless the calculation finishes normally.
Programming
See MEM menu to query the calculator about program memory usage.
About program memory and labels
The entire program memory is made of program lines (of which the first at the top is permanent and called PRGM TOP) and labels are markers that split this continuous column in discrete programs.
It is then possible to execute only the program lines found directly after a specific label using function XEQ label name.
It could be said that individual programs exist as label-delimited ranges of lines from the main program memory, rather than as self-contained objects. The word label is therefore used, by extension, to designate the programs that they delimit.
Another way of thinking is to consider program memory as one large program in which labels define sub-routines, or modules, made to work together in the larger program.
Note that, although labels are also named with letters A-Z, they have nothing to do with variables.
About nesting and sub-routines
Programs can't be written as nested, that is, program label B can't be "contained" in program label A. Nesting happens at execution, i.e. a program can make a nested call to another.
An instruction line of program A can call program B (using function XEQ), which when executed returns (when the RTN instruction is met) to program A right after the nested call instruction, effectively making program B a sub-routine of program A.
About program pointer and run/stop
The program pointer is positioned at the program line to be executed next. It can be thought of as the program "read head". It can be either running or stopped. R/S runs/stops the pointer, that is, starts or stops program execution.
Using XEQ label name makes the pointer jump to the specified label and immediately run.
Using GTO label name has the same effect but will not make the pointer run. When entering program mode, the line which appears is the one at the program pointer.
PRGM
↰ R/S
Toggles program input mode. Displayed line is where the pointer is at. Toggles annunciator PRGM.
XEQ
XEQ A..Z
Executes program at specified label.
XEQ in a program
Can be used programmatically to make a nested call to another program, effectively using it as a sub-routine. Up to 15 programs can be nested. Function RTN is used to exit a nested program. When invoked, RTN returns the program pointer to parent program at the line following the XEQ nesting command.
RTN
↰ +
LBL
LBL A..Z
Defines entry points for programs. Has no effect when out of program mode. Only one program can exist in memory without a label.
GTO
↰ XEQ A..Z
Immediately moves the program pointer to specified label. If executed manually, stays at the specified label. If executed programmatically, resumes program execution from the specified label.
GTO line number
↰ XEQ . A..Z + nnn
Immediately moves the program pointer to specified label and program line. May be used in normal and PRGM mode to quickly reach a part of the code. Cannot be written as a program line.
GTO top of program memory
↰ XEQ . .
Immediately moves the program pointer to line PRGM TOP at the top of program memory.
Single-step execution / program lines scrolling
↰ 7 [▼] / ↰ 8 [▲] or F3 / F4
Moves the program pointer down/up.
-
While in normal mode: stepping down will execute program line at the pointer and move the pointer down one line. Stepping up moves the pointer up one line without executing. Program line content is shown until key ▼ is released. Useful for debugging.
-
In PRGM mode: scrolls through the program lines for editing. Entering a new instruction inserts a new program line directly below the pointer.
INPUT
↰ 0 A..Z
Halts program and prompts for user input for a variable.
Statistics
All statistics operations are performed from specific menus:
-
L.R. for linear regression
-
x,y for mean and weighted mean
-
s,σ for sample and population standard deviation
-
SUMS for various statistics summations
The entry of statistical data itself is done directly using function Σ+.
Σ+
Σ+
Accumulates statistics data from the x- and y-register. The datapoints entered are added to dedicated summation registers.
If the data to enter is based on one variable only, values accumulated for the Y data point can be ignored (there will be Y data accumulated because Σ+ accumulates from both registers no matter what; it's just unconsequential if not needed). If two-variable data is needed, then for each datapoint entered:
-
in the case of linear regression, the X value is the independent variable and the Y the dependent variable,
-
in the case of a weighted mean, the X value is the quantity and the Y the weight for that datapoint.
Of course, it is also possible to use the X and Y values of a datapoint as two parallel and (possibly) unrelated series.
Pay attention to the fact that an x,y data pair must be entered in reverse order to end up in the right places on the calculator stack (y ENTER x).
Σ-
↰ Σ+ [Σ-]
Deletes statistics data. To remove a datapoint from the summation registers:
-
enter the same, erroneous datapoint in the x-register (and y-register if the data is based on two-variable series),
-
press ↰ Σ+ [Σ-].
Some calculator functions are picked from menus. These menus are opened from the calculator keypad using shift keys.
When a menu is displayed, the F-Keys act as soft buttons to select the function displayed directly above them or to go down a step in the menu hierarchy. To go up a step in the menu hierarchy, press ←. To immediately exit a menu, press C.
There are 15 calculator menus. The links below list them as they appear on the keypad, from left-to-right and top-to-bottom:
PARTS
↱ √
Useful to return parts of a number in x-register. The returned value replaces contents of x-register.
-
IP integer part.
-
FP fractional part.
-
ABS absolute value.
PROB
↱ ex
Calculates probabilities and controls random number functions.
-
Cn,r returns number of combinations of r (in x-register) different elements selected from n (in y-register) elements. Different sequences do not count as separate. Formula: n!/(r!(n-r)!)
-
Pn,r returns number of permutations of r (in x-register) different elements selected from n (in y-register) elements. Different sequences count as separate. Formula: n!/(n-r)!
-
SD uses number in x-register as random seed. One given seed will return the same sequence of pseudo-random numbers when using function R. Defining a seed will restart the random number sequence given by function R.
-
R returns next pseudo-random number to x-register. Lifts the stack.
L.R.
↱ LN
Linear Regression: calculates a best-fit line based on X/Y statistics accumulation (using command Σ+).
-
x takes x-register value as Y and returns estimated value for X.
-
y takes x-register value as X and returns estimated value for Y.
-
r correlation coefficient.
1 = perfect fit.
-
m slope of best-fit line.
-
b Y-offset of best-fit line.
x,y
↱ yx
Calculates mean values based on X/Y statistics accumulation (using command Σ+).
-
x mean of accumulated X-values.
-
y mean of accumulated Y-values.
-
xw mean of accumulated X-values weighted by Y-values.
s,σ
↱ 1/x
Calculates standard deviation based on X/Y statistics accumulation (using command Σ+).
-
Sx sample standard deviation of X values (divider n-1).
-
Sy sample standard deviation of Y values (divider n-1).
-
σx population standard deviation of X values (divider n).
-
σy population standard deviation of Y values (divider n).
SUMS
↱ Σ+
Returns various sums based on X/Y statistics accumulation (using command Σ+).
Specific memory registers number 28 to 33 are used to store these numbers; variables in DM32 are all stored in letter-registers, but they all have a numeric counterpart. Statistics sums can be returned manually using this menu, or programmatically using indirect addressing.
MEM
↰ x<>y
Shows remaining calculator memory. Sub-menus show information about, and allows for selective deletion of, variables and program labels.
-
VAR list of stored, non-zero variables.
Scroll through the list using ↰ 7 [▼] / ↰ 8 [▲] or F3 / F4 .
Pressing ↰ ← [CLEAR] deletes the displayed variable immediately. Cannot be undone.
Pressing ← (no shift key) returns to the previous screen.
-
PGM list of stored program labels and size in bytes for each.
Scroll through the list using ↰ 7 [▼] / ↰ 8 [▲] or F3 / F4 .
Pressing ↰ ← [CLEAR] deletes the displayed program label and all its program lines immediately. Cannot be undone.
Pressing ← (no shift key) returns to the previous screen.
MODES
↰ +/-
Selects trigonometric format and style of decimal separator.
-
DG degrees (full turn = 360). Default mode, no annunciator visible.
-
RD radians (full turn = 2π). Annunciator RAD is lit.
-
GR gradians (full turn = 400). Annunciator GRAD is lit.
-
. sets decimal separator to dot.
-
, sets decimal separator to comma.
DISP
↰ E
Controls display format.
-
FX fixed digits after decimal separator. Enter number of digits from 00 to 11.
-
SC scientific exponent format with desired number of digits after decimal separator.
-
EN engineering format where exponents are always factors of 3, with desired number of digits before exponent.
-
ALL display number in full precision. Trailing zeroes in fractional part are not shown. If number has no fractional part, only the integer appears with no decimal separator.
CLEAR
↰ ←
Clearing utility. Has different effects in PRGM and EQN mode. Action cannot be undone.
-
x clears x-register. Useful as a program instruction.
-
VARS clears all variables.
-
ALL clears all variables and programs.
-
Σ clears statistics registers 28 to 33.
x?y
↰ ÷
Tests x-register against y-register with 6 relational operators.
-
In a program, if test returns true, next program line is executed.
-
In a program, if test returns false, next program line is skipped.
-
If executed outside of a program, true returns YES, and false returns NO without altering the stack.
x?0
↱ ÷
Tests whether x-register against y-register with 6 relational operators.
-
In a program, if test returns true, next program line is executed.
-
In a program, if test returns false, next program line is skipped.
-
If executed outside of a program, true returns YES, and false returns NO without altering the stack.
BASE
↰ ×
Controls number base.
-
DEC decimal floating point, 12 BCD digits (to define).
-
HX hexadecimal fixed point 55 bits (to define).
-
OC octal.
-
BN binary.
FLAGS
↱ ×
Allows setting, clearing and testing flags. Flags are 1-bit pieces of information (either set or cleared) always present in a dedicated memory space. First select operation to carry out and then specify flag number to test for or act upon.
-
SF to set a flag.
-
CF to clear a flag.
-
FS? to test the current state of a flag:
■ As a program instruction, if test returns true, next program line is executed.
■ As a program instruction, if test returns false, next program line is skipped.
■ Outside of a program, true returns YES, and false returns NO without altering the stack.
After selecting one of the operations, enter the flag number. There are 12 flags:
-
0 - 4
User flags. Flags 0-3 show as annunciators on the display if set for immediate visual feedback.
-
5
When set, program stops on OVERFLOW.
-
6
Automatically set on OVERFLOW.
-
7 - 9
Control the display of fractions.
-
10
Controls the evaluation of equations in programs.
■ Clear: equation is evaluated and result written to x-register.
■ Set: equation is displayed using VIEW and can be edited. If a PSE follows the equation, execution resumes after 1 second.
-
11
Controls the input for equation variables when an equation is evaluated, solved or integrated during program execution. Flag is automatically cleared after operation.
■ Clear: evaluation, solving and integration are done with variable values as stored without any user input.
■ Set: program stops and calcualtor prompts for variable values when first encountered; enter value and proceed with program execution with R/S.
Functions alphabetical index
#
+/-
+/-
changes sign of number
+
+
addition
-
-
subtraction
×
×
multiplication
÷
÷
changes sign of number
yx 2
yx
power
←
←
- delete last digit entered
- exit a menu
- erase last function keyed in an equation
- start editing existing equation
- delete program step
▼
↰ ▼
- move to previous catalog entry
- move to previous equation in the list
- move program pointer to previous step
▲
↱ ▲
- move to next catalog entry
- move to next euation in the list
- move program pointer to next step (while editing)
- execute program step at pointer and moves it to next step (while not editing)
1/x
1/x
reciprocal
10x
↰ ex
10 raised to x-register power
%
↱ COS
(x × y) ÷ 100
%CHG
↱ TAN
(x - y) × (100 ÷ y)
π
↱ SIN
3.14159265359 (12 digits approximation of pi)
Σ+
Σ+
accumulate (y,x) into statistics registers
Σ-
↰ Σ+
remove (y,x) from statistics registers
Σx
↱ Σ+ [SUMS]
statistics: sum of x-values
Σx²
↱ Σ+ [SUMS]
statistics: sum of squares of x-values
Σxy
↱ Σ+ [SUMS]
statistics: sum of products of x- and y-values
Σy
↱ Σ+ [SUMS]
statistics: sum of y-values
Σy²
↱ Σ+ [SUMS]
statistics: sum of squares of y-values
σx
↱ s,σ [s,σ] σx
population standard deviation of x-values
σy
↱ s,σ [s,σ] σy
population standard deviation of y-values
Θ,r → y,x
↰ 4
convert coordinates in x- and y-registers from polar to rectangular
∫FN d
↱ 8
integrate equation or program selected by function FN=, using x-register and y-register as uppr and lower limit
( ²
↱ E
opening parethesis
) ²
↱ E
closing parethesis
A
A trough Z ²
STO variable or RCL variable
value of named variable
ABS
↱ √ [PARTS] ABS
absolute value
ACOS
↰ COS
arc cosine
ACOSH
↰ HYP ↰ COS
hyperbolic arc cosine
ALOG ²
↰ ex
antilogarithm
ALL
↰ E [DISP] ALL
display full precision
ASIN
↰ SIN
arc sine
ASINH
↰ HYP ↰ SIN
hyperbolic arc sine
ATAN
↰ TAN
arc tangent
ATANH
↰ HYP ↰ TAN
hyperbolic arc tangent
B
b
↱ LN [L.R.] b
y-intercept of regression line
BASE menu
↰ × [BASE]
call menu to select base number
BIN
↰ × [BASE] BN
select binary mode (base 2)
C
C
C
- turn calculator on
- clear x-register
- clear message and prompt
- cancel menus
- cancel catalogs
- cancel equation entry
- cancel program entry
- halt execution of equation or program
/c
↱ .
set maximum fraction denominator
→°C
↰ 2
convert from °F to °C
CF
↱ × [FLAGS] CF nn
clear flag nn
CLEAR
↰ ← [CLEAR]
call menu with clearing functions
CLEAR ALL
↰ ← [CLEAR] ALL
clear all stored data, equations and programs
CLEAR PGM
↰ ← [CLEAR] PGM
clear all stored programs
calculator must be in program mode
CLEAR EQN
↰ ← [CLEAR] EQN
clear equation in program
calculator must be in program mode
CLΣ
↰ ← [CLEAR] Σ
clear statistics registers
CLVARS
↰ ← [CLEAR] VARS
clear all variables (set them to zero)
CLx
↰ ← [CLEAR] x
clear x-register (set to zero)
→CM
↰ 3
convert from inch to centimeter
CMPLX
↰ STO [CMPLX] operation
set CMPLX_ prefix for complex functions
CMPLX+/-
↰ STO [CMPLX] +/-
complex: change sign
CMPLX+
↰ STO [CMPLX] +
complex: addition
CMPLX-
↰ STO [CMPLX] -
complex: subtraction
CMPLX×
↰ STO [CMPLX] ×
complex: multiplication
CMPLX÷
↰ STO [CMPLX] ÷
complex: division
CMPLX1/x
↰ STO [CMPLX] 1/x
complex: reciprocal
CMPLXCOS
↰ STO [CMPLX] COS
complex: cosine
CMPLXex
↰ STO [CMPLX] ex
complex: natural exponential
CMPLXLN
↰ STO [CMPLX] LN
complex: natural log
CMPLXSIN
↰ STO [CMPLX] SIN
complex: sine
CMPLXTAN
↰ STO [CMPLX] TAN
complex: tangent
CMPLXyx
↰ STO [CMPLX] yx
complex: power
Cn,r
↱ ex [PROB] Cn,r
combinations of n items taken r at a time
COS
COS
cosine
COSH
↰ HYP COS
hyperbolic cosine
D
DEC
↰ × [BASE] DEC
select decimal mode (base 10)
DEG
↰ × [MODES] DG
select degrees for angle representation
→DEG
↰ 6
convert from radians to degrees
DISP
↰ E [DISP]
call menu to select number display format
DSE
↱ 9 variable
Decrement, Skip if Equal or less
used as program instruction
E
E
E
entry of exponent
ENG
↰ E [DISP] EN nn
engineering notation display with number of digits
use . for values over 9
ENTER
ENTER
- separate two numbers
- terminate equation entry
- evaluate selected equation
EQN
↱ STO
toggles equation mode
eˣ
ex
natural exponential
EXP() ²
ex
natural exponential in an equation
F
→°F
↱ 2
convert from °C to °F
FDISP
↰ .
toggles fraction display mode
FIX
↰ E [DISP] FX nn
fixed display with n decimal places
use . for values over 9
FLAGS
↱ × [FLAGS]
call menu for flag management and testing
FN=
↱ XEQ [FN=] label
select labeled program as current function to SOLVE
FP
↱ √x [PARTS] FP
fractional part of number in x-register
FS?
↱ × [FLAGS] FS? nn
test status of flag nn
use . for values over 9
G
→GAL
↱ -
convert from liter to gallon
GRAD
↰ × [MODES] GR
select gradians for angle representation
GTO
↰ XEQ [GTO] label
set program pointer to glabal label
GTO.
↰ XEQ . [GTO] label nn
set program pointer to line nn of program label
GTO..
↰ XEQ . .
set program pointer to PRGM TOP
H
HEX
↰ × [BASE] HX
select hexadecimal mode (base 16)
HYP
↰ HYP [HYP] operation
set HYP_ prefix for hyperbolic functions
→HMS
↱ 5
convert decimal hour format to hh.mmss
→HR
↰ 5
convert hh.mmss hour format to decimal
I
i ²
STO . [i] or RCL . [i]
stores or recalls value of variable i
(i) ²
STO R/S [(i)] or RCL R/S [(i)]
stores or recalls value of variable indirectly designated by variable i
→IN
↱ 3
convert from centimeter to inch
INPUT
↰ 0 [INPUT] variable
prompt for variable value
only used as program instruction
INV(arg) ²
1/x
reciprocal of argument in an equation
IP
↱ √x [PARTS] IP
integer part of number in x-register
ISG
↰ 9 variable
Increment, Skip if Greater
used as program instruction
K
→KG
↰ 1
convert from pound to kilogram
L
→L
↰ -
convert from gallon to liter
LASTx
↰ ENTER
return last number stored in LASTx register
LASTx keeps value of x-register before last operation
→LB
↱ 1
convert from kilogram to pound
LBL
↰ + [LBL] label
name a program with label
for reference by XEQ, GTO or FN= functions
only for programs
LN
LN
natural logarithm
LOG
↰ LN
common logarithm
L.R.
↱ L.R. [L.R.]
call menu for linear regression functions
M
m
↱ L.R. [L.R.] m
slope of regression line
MEM
↰ x<>y [MEM]
call menu for memory information
display remaining memory
MEM PGM
↰ x<>y [MEM] PGM
show programs catalog
MEM VAR
↰ x<>y [MEM] VAR
show variables catalog
MODES
↰ +/- [MODES]
call menu for angle representation units and decimal separator format
N
n
↱ Σ+ [SUMS] n
statistics: number of accumulated datapoints to x-register
O
OCT
↰ × [BASE] OC
select octal mode (base 8)
OFF
↰ C or ↱ C
turn calculator off
cannot be used in a program
P
PARTS
↱ √x [PARTS]
call menu for picking parts of a number
Pn,r
↱ ex [PROB] Pn,r
permutations of n items taken r at a time
PRGM
↰ R/S
toggle program mode
PROB
↱ ex [PROB]
call menu for probability function
PSE
↱ R/S
pause
only for programs
R
r
↱ Σ+ [SUMS] r
statistics: correlation coefficient between x- and y-values
RAD
↰ × [MODES] RD
select radians for angle representation
→RAD
↱ 6
convert from degrees to radians
RADIX,
↰ × [MODES] ,
select comma as decimal separator
RADIX.
↰ × [MODES] .
select period as decimal separator
RANDOM
↱ ex [PROB] R
pseudo-random number to x-register
pseudo-random sequence is defined by function SEED
RCL
RCL variable
recall variable to x-register
RCL+
RCL + variable
add variable and x-register, put result to x-register
RCL-
RCL + variable
subtract variable from x-register, put result to x-register
RCL×
RCL + variable
multiply variable and x-register, put result to x-register
RCL÷
RCL + variable
divide x-register by variable, put result to x-register
RND
↰ RCL
round stored number to FIX n decimal places
round stored number to closest as represented in fraction display mode
RTN
↱ +
marks end of a program
program pointer returns to top of memory
if in sub-routine, returns pointer to calling routine
R↓
R↓
roll stack down
R↑
↱ R↓
roll stack up
S
s,σ
↱ 1/x [s,σ]
call menu for calculating standard deviation
SCI
↰ E [DISP] SC nn
scientific display with nn decimal places
use . for values over 9
SCRL
↱ RCL
toggles scrolling of equations
SEED
↱ ex [PROB] SD
set and restart pseudo-random sequence of function RANDOM
SF
↱ × [FLAGS] SF nn
set flag nn
use . for values over 9
SHOW
↱ ENTER
show full precision of x-register
terminates number entry without lifting stack
SIN
SIN
sine
SINH
↰ HYP SIN
hyperbolic sine
SOLVE
↱ 7 variable
solve displayed equation or program designated by FN= for variable
SPACE ²
R/S
insert blank space in equation entry mode
SQ(arg) ²
↰ √x
square of argument (in an equation)
SQRT(arg)
√x
square root of argument (in an equation)
STO
STO variable
copy x-register to variable
STO+
STO + [.lcd]#variable]
add x-register and variable, store result in variable
STO-
STO - [.lcd]#variable]
subtract x-register from variable, store result in variable
STO×
STO × [.lcd]#variable]
multiply x-register and variable, store result in variable
STO÷
STO ÷ [.lcd]#variable]
divide variable by x-register, store result in variable
STOP
R/S
with program stopped, start running program from pointer position
with program running, stop execution
as a program instruction, stop execution and display x-register
SUMS
↱ Σ+ [SUMS]
call menu for returning various statistics sums
sx
↱ 1/x [s,σ] sx
statistics: sample standard deviation of x-values
sy
↱ 1/x [s,σ] sy
statistics: sample standard deviation of y-values
T
TAN
TAN
tangent
TANH
↰ HYP TAN
hyperbolic tangent
V
VIEW
↱ 0 variable
display contents of variable without recalling it to stack
X
XEQ (EQN mode)
XEQ
evaluate equation
XEQ
XEQ label
execute program identified by label
x2
↰ √x
square of x-register
x√y
↰ yx
x-register root of y-register
¯
↱ yx [̄,ȳ] ̄
statistics: mean of x-values
̂
↱ LN [L.R.] ̂
return x-value forecast for y-value in x-register
x!
↰ 1/x
factorial
XROOT(arg1 arg2) ²
↰ yx
argument1 root of argument2 (in an equation)
̄w
↱ yx [̄,ȳ] ̄w
statistics: weighted mean of x-values
̄
↱ yx [̄,ȳ]
call menu for mean of statistics data
x<>
↱ x<>y variable
exchange x-register with variable
x<>y
x<>y
swap x-register with y-register
x?y
↰ ÷ [x?y]
call menu for comparing x- and y-registers; useful in programs
if test returns true, next program line is executed
if test returns false, next program line is skipped
if used outside of a program, displays YES or NO without affecting the stack
x≠y?
↰ ÷ [x?y] ≠
test whether x-register is NOT EQUAL TO y-register
x≤y?
↰ ÷ [x?y] ≤
test whether x-register is LESS THAN OR EQUAL TO y-register
x<y?
↰ ÷ [x?y] <
test whether x-register is LESS THAN y-register
x>y?
↰ ÷ [x?y] >
test whether x-register is GREATER THAN y-register
x≥y?
↰ ÷ [x?y] ≥
test whether x-register is GREATER THAN OR EQUAL TO y-register
x=y?
↰ ÷ [x?y] ≥
test whether x-register is EQUAL TO y-register
x?0
↰ ÷ [x?0]
call menu for comparing x-register to 0; useful in programs
if test returns true, next program line is executed
if test returns false, next program line is skipped
if used outside of a program, displays YES or NO without affecting the stack
x≠0?
↱ ÷ [x?0] ≠
test whether x-register is NOT EQUAL TO 0
x≤0?
↱ ÷ [x?0] ≤
test whether x-register is LESS THAN OR EQUAL TO 0
x<0?
↱ ÷ [x?0] <
test whether x-register is LESS THAN 0
x>0?
↱ ÷ [x?0] >
test whether x-register is GREATER THAN 0
x≥0?
↱ ÷ [x?0] ≥
test whether x-register is GREATER THAN OR EQUAL TO 0
x=0?
↰ ÷ [x?y] ≥
test whether x-register is EQUAL TO y-register
Y
ȳ
↱ yx [̄,ȳ] ȳ
statistics: mean of y-values
ŷ
↱ LN [L.R.] ŷ
return y-value forecast for x-value in x-register
y,x → Θ,r
↰ 4
convert coordinates in x- and y-registers from rectangular to polar
yˣ
yx
returns y raised to the x power
EOF