**GO-21 SciRPN closely simulates the venerable HP-21 Pocket Scientific
Calculator.**
The HP-21 was released in 1975 and sold for a MSRP of $125.
Virtually indistinguishable from the real item in operation, GO-21 is a powerful yet
simple retro calculator.

- RPN (Reverse Polish Notation)
- 10-digit LED calculator display, 10-99 to 10+99
- Four stack registers with roll down
- One storage register with arithmetic memory operators
- Math, trigonometric, polar⇔rectangular, logarithmic, power and other miscellaneous functions
- One additional window with views of:
- stack/storage registers
- keystroke log

- Copy-from and Paste-to the calculator display

This document is not an exhaustive reference manual; rather, it's a terse outline of the calculator's function keys.

In this document normal calculator keys are shown in bold, such as **+**, or **CHS**, or **4**, or **SIN**.
Most keys can perform one other function, however, labeled in **blue**. To execute one of these functions
you first touch the colored *prefix key*
followed by the desired function key.

So to compute the inverse sine of a number
you'd touch two keys, the **blue** prefix key followed by the **SIN** key.
However, this document will simply show the key as **sin ^{-1}**: the font color
implies the prefix character is used.

The GO-21 LED window acts as a display area, as well as a touch sensitive input area that initiates further activities not available on an actual HP-21.

The display shows the **X** stack register, usually the result of the latest calculation.
Tapping the display
brings up the **Copy / Paste** menu, allowing you to export the value of **X**, or import a new value of **X**.

In GO-21, numbers in the display normally appear rounded to only two decimal places. For example, the fixed constant π, which is actually in the calculator as 3.14159265358979, normally appears in the display as 3.14 (unless you tell the calculator to show you the number rounded to a greater or lesser number of decimal places).

Although a number is normally shown to only two decimal places, GO-21 always computes internally using each number as a 14-digit mantissa and a two-digit exponent of 10.

One or two keys control how numbers are displayed.
**DSP .** (the **DSP** key followed by the decimal point key) allows numbers to be displayed in fixed decimal point format,
and **DSP** alone displays numbers in scientific notation format. Display control
alters only the manner in which a number is displayed, the actual number itself is not altered by any of the display control keys.

To select a display mode press one of the display modes
followed by a number key to specify the number of decimal places (**0-9**) to which the display is to be rounded.

GO-21 extension: Engineering display mode is enabled using three keys, the blue shift key followed by **DSP** followed by a digit 1-5 (**DSP** *n*).

GO-21 switches the display from fixed point notation to full scientific notation
(**DSP 7**) whenever the number is too large or too small to be seen with a
fixed decimal point.
This feature keeps you from missing unexpectedly large or small answers.

The display format resets to the default FIX 2 when GO-21 restarts. To keep your favorite display setting even across restarts enable the
Settings option **Persistent DSP**.

You can key in numbers multiplied by powers of 10 by pressing **EEX** (enter exponent of ten). You can save time when
keying in exact powers
of 10 by merely pressing **EEX** and then pressing the desired power of 10. To key in negative exponents of 10, key in the number,
press **EEX**, press **CHS** to make the exponent negative, then key in the power of 10.

When a number is greater than 9.9999999 x 10^{99} an overflow has occurred and
**9.9999999+99** is displayed instead. Other illegal operations, such as a divide by zero,
display the word
**Error**, then set the illegal number to zero.

Automatic storage of intermediate results is the reason that GO-21 slides so
easily through the most complex equations. The displayed **X** register, which is the only visible register
in the calculator display,
is one of four registers inside the calculator that are positioned to form the automatic memory stack.
We label these registers **X**, **Y**, **Z**, and **T**. They are "stacked" one on top of the other with the
displayed **X** register on the bottom.

T |
4.00 |

Z |
3.00 |

Y |
2.00 |

X |
1.00 |

The **R↓** (roll down) and **X⇔Y** (**X** exchange **Y**) keys allow you to
review the stack contents or to shift data within the stack for computation at any time. Each time you press the **R↓** key
the stack contents shift downward one register, with the contents of **X** rotating up to the **T** register.
Notice that the contents of the registers are shifted - the registers themselves maintain their positions.
Always remember, though, that it takes four presses of the **R↓** key to return the contents to their original registers.

The **X⇔Y** (**X** exchange **Y**) key exchanges the contents of the **X** and **Y** registers
without affecting the **Z** and **T** registers.

To clear the displayed **X** register only, press **CLX**. To clear the entire automatic memory stack, including the
displayed **X** register, press **CLR** (clear stack).
This replaces all numbers in the stack with zeros.

The **ENTER** key lifts the stack, by copying the contents of **Z** into **T**, **Y** into **Z**, **X**
into **Y**,
hence losing the contents of **T** and duplicating the contents of **X**.

The opposite of lifting the stack is called dropping the stack. When the stack drops, **Y** is copied to **X**,
**Z** is copied to **Y**, and **T** is copied to **Z**, hence losing the contents of **X** and duplicating the
contents of **T**.

GO-21 provides views of the calculator's internal state unavailable on the real hardware.
This makes using the calculator much easier. Access to this additional information is
controlled by a ** double-tap** on the calculator display. If the information view is visible, a double-tap hides the view. If the view is not
visible, the information view appears. So a double-tap toggles the visibility of the auxiliary information.

(Note: unlike for iPhone and iPod touch, which have tiny screens, on iPad the information view is by default always visible, but you can hide it with a double-tap.)

The auxiliary information view includes this touch point that toggles what the view shows.

The auxiliary view shows the 4 stack registers and the memory register. Touching the switch-views control transitions to the paper tape window and shows up to 200 lines of key-press history to help you make sense of the values you see in the stack-register window.

**Prefix Clear**To clear the blue prefix you have mistakenly pressed, merely press

**ENTER**, then press the correct key.**Reciprocals**To calculate the reciprocal of a number in the displayed

**X**register, press**1/X**.**Square Roots**To calculate the square root of a number in the displayed

**X**register, press**√X**.**Using Pi**The value π accurate to 14 places (3.14159265358979) is provided as a fixed constant in GO-21. Merely press

**π**whenever you need it in a calculation.**Storage Register**In addition to automatic storage of intermediate results that is provided by the four-register automatic memory stack, GO-21 also has one addressable storage register that is unaffected by operations within the stack. This storage register allows you to set aside a number as a constant or for use in later calculations.

To store a value appearing in the display, press

**STO**. When a number is stored in memory, it is merely copied into the storage register.To copy a number from the storage register into the displayed

**X**register, press the**RCL**key.Recalling a number causes the stack to lift unless the preceding keystroke was

**ENTER**or**CLX**.When you recall a number, it is copied from the storage register into

**X**, and it also remains in the storage register. You can recall a number from the storage register any number of times without altering it; the number will remain in the storage register as a 10-digit number with a two-digit exponent of 10 until you overwrite it by storing another number there, or until you clear the storage register.To clear the number from the storage register, simply store the quantity zero in the register by pressing

**0 STO**.**Storage Register Arithmetic**Arithmetic is performed

*upon the contents of the storage register*by pressing**M+**,**M-**,**Mx**or**M÷**.**M+**(**X**added to storage register, sum placed in storage register.)**M-**(**X**subtracted from storage register, difference placed in storage register.)**Mx**(**X**multiplied by storage register, product placed in storage register.)**M÷**(Storage register divided by**X**, quotient placed in storage register.)

**X**register and the rest of the stack remain unchanged.If the magnitude of a number in the storage register exceeds 9.999999999 x 10

^{99}, the display immediately shows**OF**(overflow) to indicate that a storage register has overflowed.**Trigonometric Functions**GO-21 provides you with six trigonometric functions. It also calculates angles in decimal degrees or radians. Use the slide switch to select

**DEG**or**RAD**.Note: 360 degrees = 2π radians = 400 grads.

The six trigonometric functions provided by the calculator are:

**sin**(sine)**sin**(inverse sine)^{-1}**cos**(cosine)**cos**(inverse cosine)^{-1}**tan**(tangent)**tan**(inverse tangent)^{-1}

Each trigonometric function assumes angles in decimal degrees or radians. Trigonometric functions are one-number functions, so to use them you key in the number, then press the function keys.

**Polar/Rectangular Coordinate Conversion**Two functions H and o are provided for polar/rectangular coordinate conversions. Polar angle

*θ*is assumed in decimal degrees or radians, depending upon the trigonometric mode selected.To convert values in the

**X**and**Y**registers representing rectangular*(x, y)*coordinates, respectively, to polar*(r, θ)*coordinates, magnitude and angle, respectively, press**→P**. Magnitude*r*then appears in the**X**register and angle*θ*is placed in the**Y**register.Conversely, to convert values in the

**X**and**Y**registers representing polar*(r, θ)*coordinates, respectively, to rectangular coordinates*(x, y)*, press**→R**. Coordinate*x*then appears in the**X**register and coordinate*y*is placed in the**Y**register.**Logarithms**GO-21 computes both natural and common logarithms as well as their inverse functions (antilogarithms):

**ln**is log_{e}(natural log). It takes the log of the value in**X**to base*e*(2.718...).is antilog*e*^{x}_{e}(natural antilog). It raises*e*(2.718...) to the power of the value in**X**. (To display the value of*e*, press**1**.)*e*^{x}**log**is log_{10}(common log). It computes the log of the value in the**X**register to base 10.**10**is antilog^{x}_{10}(common antilog). It raises 10 to the power of the value in the**X**register.

**Raising Numbers to Powers****Y**permits you to raise a positive number (either an integer or a decimal) to any power. In conjunction with^{x}**1/X**,**Y**provides a simple way to extract roots. For example, the cube root of 5 is equivalent to 5^{x}^{1/3}.

If you attempt a calculation containing an improper operation -
say, division by zero - the display will show Error. To clear, press **CLX**.

The following are improper operations:

**÷**where**X**= 0**Y**where^{x}**Y**< 0 with**X**not an integer, or where**Y**= 0 with**X**< 0**√X**where**X**< 0**1/X**where**X**= 0**log**where**X**<= 0**ln**where**X**<= 0**sin**where absolute value of^{-1}**X**> 1**cos**where absolute value of^{-1}**X**> 1where**M÷****X**= 0

These are the default Settings:

**Slide Switch Gesture**unavailable on macOS**Background Color or Picture**unavailable on iPhones with a display smaller than 5.5 inches

Reminder: on macOS taps/touches are pointer clicks, pans/swipes/scrolls are pointer drags.

- Shake to clear
**X**. Not available on macOS. - Single tap the calculator display for Copy / Paste.
- Double tap the calculator display to show/hide the stack/memory view.
- Two-finger pan for iPad to reposition the stack/memory and calculator views on iOS. For macOS drag using your pointing device (if the view scrolls rather than drags, use the switch-views control as a drag point).
- Touch switch-views control to alternate between two views.
- Swipe left and right to manipulate slide switches, if activated in
**Settings**. Not available on macOS. - Flick left on the calculator display to erase last mantissa character entered.
- Triple tap the calculator display to show/hide the Info button .

**X**,**Y**,**Z**and**T**registers, and the memory register are continuous and survive a power Off.**DSP***n*switches to Engineering display format.

**5.4 - 2020.02.02**

- Remember visibility state of the stack view and restore appropriately across restarts.
- Automatic Display Switching: ensure switch to SCI 7, and repair display formats FIX 8 and FIX 9.
- Tweak Display Engine LED segments A and F.
- Improved memory management.
- Update for iOS 13.3.1 and macOS 10.15.3.

**5.3 - 2020.01.17**

- For iPhones with a 5.5 inch display or larger there is a new
**Background Color or Picture**setting.

**5.2 - 2020.01.07**

- Add a Setting,
**High Visibility Display**, so it's easier to view the calculator display in a very bright environment. The**X**register is shown in black on a white background, and each tiny LED display segment is drawn 33% larger.

**5.1 - 2020.01.02**

- Mac Catalyst enhancements.
- Documentation updates.

**5.0 - 2019.12.25**

- Share common code with GO-25 SciRPN and GO-29 SciRPN. This great internal refactoring resulted in external changes including, but not limited to:
- Default display rounding method changed to Half Away From Zero, which may affect displayed results. Use Half To Even in Settings to revert to the previous behavior.
- New stack / memory Register and paper tape Keystroke views. Use the switch-views control to alternate between them.
- Use new Appearance dark / light module (WkWebView) to render HTML throughout.

- New Key Tap Feedback option
**Haptic Feel**that uses touch feedback rather than sound to indicate a key tap, assuming your device includes the feature and that it is enabled in Settings. - Update for iOS 13.3.
- Update for iPadOS 13.3 and macOS Catalina 10.15.2: this means that GO-21 now runs on your friendly Macintosh computer!
- Minimum iOS version is 9.0; minimum macOS version is 10.15.

**4.15 - 2019.07.14**

- Update for iOS 12.3.1.

**4.14 - 2019.03.23**

- Update for iOS 12.1.4.
- Documentation now supports BigCatOs Appearances.

**4.13 - 2018.09.14**

- Update for iOS 12.0.
- Do not raise the stack when using the EEX shortcut immediately after an ENTER.

**4.12 - 2018.09.03**

- Update for iOS 11.4.1.
- Documentation updates.

**4.11 - 2017.12.21**

- Update for iOS 11.2.1.
- Settings now stick!

**4.10 - 2017.10.31**

- Update for iOS 11.1 and iPhone X.
- Add new Setting,
**Display Rounding**. Choose from*Half Toward Even*(default) or Todd Knoblock's new*Half Away From Zero*. - GO-21 extension, Engineering display mode via
**DSP***n*. - First key click on startup now sounds if
**Play Sound On Touch Down**is enabled.

**4.9 - 2017.10.11**

- Update for iOS 11.0.2.
- Full support for iPhone X.
- Restore support for 3.5" devices.
- Cosmetic changes to the status bar blend mode.

**4.8 - 2017.09.19**

- Update for iOS 11.
- Preliminary support for iPhone X; full support in a future update.
- Triple tap the display to show/hide the Info button .

**4.7 - 2017.07.11**

- Documentation updates.
- Update for iOS 10.3.2.

**4.6 - 2016.12.10**

- Add a third Key Tap Sound:
**Brief Tick**. - Update for iOS 10.1.1.
- GO-21 now requires that your iDevice run an iOS version >= 8.

**4.5 - 2016.06.06**

- Inherit "paper tape" support as implemented in GO-25. The keystroke log is maintained on the flip side of the stack/memory window.
- Update for iOS 9.

**4.4**

- New audio framework lets you adjust the calculator sound volume using the hardware volume control.

**4.3**

- New look for iPhone 6 Plus.

**4.2**

- Update for iOS 8.

**4.1**

- Flick left on the display to erase last mantissa character entered.
- Update for iOS 7.1, 64-bit clean.

**4.0**

- Update for iOS 7.

**3.10**

- An alternate way to display and hide the stack information view is to double tap the display.

**3.9**

- Support for new iPhone and iPod larger screen size.
- Enlarge the numeric button touch halos for better responsiveness.

**3.8**

- Nothing new, just documentation updates.

**3.7**

- High resolution Retina Display artwork for iPad.

**3.6**

- Documentation updates.

**3.5**

- Make key tap sound selectable on touch up (default) or touch down.

**3.4**

- For iPad new Background from Photos option.

**3.3**

- Help completly re-done, now uses the
**Krypton**and**GO-25**HTML scheme. - Improve key tap responsiveness.
- Re-designed stack view.
- Key Tap Sound setting OFF.

Copyright (©) 2009 - 2020 BigCatOs. All rights reserved.

Contact |
Privacy