14 Saved Work, Clearing, and Troubleshooting
SpicyRPN resumes the calculator you left, including unfinished work. That is useful when a calculation spans several sessions, but it also means that reopening the application is not a fresh start. An old financial input, a pending storage command, or an unfinished exponent can still determine what the next key does.
When something looks wrong, first read the mode, flags, and status message. Then identify whether you need to finish an entry, cancel a command, correct a calculation, or clear a particular bank. These are different operations. This chapter provides a way to choose among them without discarding unrelated work.
14.2 Independent workspaces and shared data
14.3 Resuming an unfinished entry
14.4 Cancel the pending operation before editing
14.5 Choose the smallest clear that fits
Clear a memory bank deliberately
14.6 Prepare a fresh problem without resetting the application
14.7 Diagnose an unexpected result
14.8 Recover from a calculation error
Interpret the kind of failure
14.9 Respond to a saved-state error
Unable to save; the last saved state was restored
Restore failure or unavailable calculator memory
Information for a source-build investigation
14.10 Identify the build and report a reproducible problem
14.1 What is saved automatically
The application saves actions as you perform them, including individual entry keystrokes. There is no separate Save command and no need to press ENTER merely to preserve a partly typed number. Successful actions save their numerical and presentation changes together. The application does not depend on receiving a final quit notification to save the last key.
Saved work belongs to the application on the current device. It is held in a local database, not synchronized between your Mac, iPhone, and iPad by a calculator account. The current interface has no named calculation files, export/import command, cloud synchronization, or user-facing history browser. Keep the original observations, transaction inputs, and any results you need outside the calculator as appropriate to your work.
|
Area |
Retained work |
|
RPN workspace |
Stack values and order, fixed or unlimited depth, Last X and Last Y, and unfinished numeric entry. |
|
ALG workspace |
Expression, unfinished number, current value, completed-result state, and the last successful ANS. |
|
Complex values |
Both components of existing stored values, even with complex mode off; unfinished component drafts and the selected entry component. New real-mode assignments have zero imaginary part. |
|
Shared settings |
Working precision, notation and display digits, angle unit, date order, complex mode, rectangular/polar choice, and BEGIN/END payment timing. |
|
Memory banks |
Ordinary registers, associative pairs, statistical accumulators, financial registers, and the expanded cash-flow list. |
|
Pending input |
Orange or blue shift, STO and its arithmetic modifier, RCL, HYP/INVHYP, ALG FUNC, CPT and FIX prompts, and MCLR selection. |
|
ALG worksheets |
Active worksheet, accepted inputs, exact field drafts, selected field, labeled results, and selected output. Numeric values keep their components and precision, without their full operation history. Relaunch does not evaluate a draft or execute its operation. |
|
RPN financial readiness |
Whether the next bare TVM key is ready to store or solve, as explained in section 11.4. |
|
Presentation |
Selected keyboard panel, digit-ruler preference, main-number and complex-component scroll offsets, open tool and its input fields, and saved calculation or tool errors. |
The full-stack inspector is temporary: it closes when the application leaves the active state, and does not reopen merely because it was open before. Open it again with the display triangle to inspect the retained stack. Window dimensions can change the layout and scientific-notation fallback without changing a value. A saved horizontal scroll position is a viewing preference, not a stored numerical change.
The database also retains information about how reachable values were calculated. That information does not provide an undo button, an earlier version of each memory bank, or a browsable calculation tape. In particular, Last X and Last Y hold saved previous RPN operands, distinct from the current stack positions X (S0) and Y (S1). LAST X/Y recall those operands under their specific rules; they do not restore a complete earlier calculator state.
14.2 Independent workspaces and shared data
RPN and ALG have independent working areas. Selecting the other mode does not evaluate an expression, finish a number, copy the displayed value, or clear the workspace you leave. Return to the earlier mode to continue its entry. RPN’s Last registers and ALG’s ANS are independent recovery aids, not two names for one previous result.
The settings and memory banks in table 14.1 are shared. Storing a new value in ordinary R2 in ALG changes what RPN later recalls from R2. Changing working precision or the display count in either mode affects subsequent work in both. Changing DEG to RAD changes the shared angle choice, but does not rewrite a trigonometric function already inserted into an ALG expression; that function retains its original unit. See section 4.5 and chapter 5.
An ordinary mode selection cancels active shifts and pending command prefixes. For RPN, it also makes the next bare TVM key a store. Consequently, switching away and back is not equivalent to simply pausing immediately after a financial store. When resuming a financial task, use explicit STO/RCL and the solve procedure in section 11.4 if the next bare key’s purpose is uncertain.
The ALG \(\Delta \)FIX prompt is an exception to immediate mode switching: the first mode-button press cancels that prompt and leaves ALG selected. Press the requested mode again to switch.
The examples use CLEAR on orange \(1/x\) in RPN and the unshifted editing key in ALG. Prepare their stated precision, display, and stack settings with the procedures in section 3.1 and chapter 5; no example depends on old memory contents. Angle units, date order, and payment timing do not affect the example results in this chapter.
Continue two independent unfinished numbers
Use real mode, 600 working digits, FIX 4, a fixed RPN stack of 5, and no open tool or pending shift or command. Leave both numbers unfinished: do not press ENTER in RPN or equals in ALG until instructed below. Select RPN and press:
f CLEAR 7.00
Select ALG and enter:
CLEAR 2 + 3.0
Return to RPN. The unfinished number is still 7.00. Press 5 ENTER; it becomes 7.0050. Return to ALG and press 4 =. Its second operand becomes 3.04, so the result is 5.0400.
Neither mode supplied a value to the other. Both results follow from continuing the characters already present in that workspace. No memory bank is changed by this example.
Complex mode and representation changes require extra care. Unlike an ordinary RPN/ALG switch, they validate and commit pending numeric entries in both workspaces before changing the shared setting. They do not evaluate a whole ALG expression. If an unfinished ALG exponent prevents the change while RPN is selected, return to ALG and complete, correct, or clear that entry. Section 8.1 explains this case.
14.3 Resuming an unfinished entry
After reopening, check these items before typing:
- 1.
- Read any saved-state error first. Follow section 14.9 if the message concerns saving or restoring memory.
- 2.
- Check the selected RPN/ALG button, any open tool, and the flags for a shift or pending command. A digit may be a register selector or FIX count rather than the next digit of your number.
- 3.
- Read ENTRY and the displayed literal. In RPN, ENTRY means a number is being entered. In ALG it means the whole expression is unfinished, even when no individual number is being typed.
- 4.
- Continue the intended entry, cancel the pending command, or deliberately clear the appropriate working area. Closing and reopening does none of those things for you.
Trailing zeros, a trailing decimal point, an exponent marker and its sign, and the selected complex component can all be resumed. Once an entry has been committed, new digits follow the normal next-operand rules rather than appending to the formatted result. In RPN the reserved stack lift has already happened before a saved partial number reappears; continuing its digits does not lift again.
Leave and resume an exponent
Use RPN, real mode, fixed depth 5, 600 working digits, and FIX 4, with no pending prefix or open tool. Press:
f CLEAR 12.30 EEX +/\(-\)
The unfinished literal reads 12.30 E-. Close the application and reopen it. With the same literal and ENTRY restored, press 2 ENTER. The number is \(12.30\times 10^{-2}=0.123\), displayed as 0.1230. The exponent-sign key did not negate the coefficient.
If a tool panel reopens, its fields may contain an unfinished or invalid draft. Edit those fields and Apply, or Close without applying. Entering digits in a field does not enter a calculator operand. A validation message can also be restored with the panel. Reopening is not an Apply action; the proposed settings have not taken effect merely because their draft fields were saved.
14.4 Cancel the pending operation before editing
A pending prefix temporarily changes the meaning of the next key. Use its indicator, not the large number alone, to decide what to press. The header’s CANCEL dismisses any pending shift or command in one press, including CPT or a command and shift selected together. It preserves unfinished numeric entry, the ALG expression, all values, and settings, and dismisses a displayed error. CANCEL also appears while an ALG worksheet is active. An unfinished number or expression alone does not make it appear. Its position remains fixed beside the branding even when CAL is visible.
An ALG worksheet has its own CANCEL, also available through physical Escape. Worksheet cancellation returns to the suspended main expression and discards that worksheet’s unaccepted drafts, not earlier accepted fields, ANS updates, or completed operations. If you relaunch before canceling, the active worksheet and its exact draft resume. Review accepted financial fields carefully: their ENTER action already stored the corresponding bank register. See section 4.12.
Table 14.2 lists other cancellation methods. CANCEL works for every shift or command in the table, including a notation digit selector; use a tool’s Close control for an open tool or the worksheet’s CANCEL control for an open worksheet.
|
What is showing |
How to cancel |
|
Only f or g |
Press that same shift again. The other shift selects the other layer instead. |
|
STO, an arithmetic STO, RCL, or ALG FUNC or CPT |
With no shift active, press unshifted backspace. It cancels without deleting a character. If a shift is also active, repeat that shift first to remove it, then press backspace. |
|
HYP or INVHYP |
Press unshifted backspace. Pressing a shift instead cancels HYP and activates that shift; a following key can then execute its alternate function. |
|
MCLR |
Press backspace or either shift once. The press cancels MCLR and is consumed, leaving no shift active; no bank, value, or unfinished entry is cleared. |
|
DIGITS notation selector (legacy restored-state prompt) |
Press unshifted backspace to cancel the selection without changing display settings. |
|
ALG \(\Delta \)FIX |
Press any key other than a digit or equals; backspace is convenient. It cancels the whole count prompt and does not delete a count digit or edit the expression. A mode-button press also cancels without switching. |
|
ALG worksheet |
Its CANCEL button or physical Escape closes it and discards unaccepted drafts; earlier accepted fields, ANS updates, and completed bank operations remain. |
|
Open tool |
Press Close. Physical Escape is the panel’s Close shortcut; it is not sent to the calculator entry engine. |
|
Full-stack inspector |
Use the collapse triangle, tap outside the inspector, or press physical Escape. Calculator keyboard input is held back while inspecting. |
Outside a tool, worksheet, or inspector, physical Escape cancels a pending shift, command, or displayed error without clearing a value. With none of those present, it performs CLx instead. Do not press Escape repeatedly as a general acknowledgment: the next press may clear the operand. Selecting the current entry-mode button is another way to cancel ordinary prefixes while retaining the workspace, subject to the FIX rule above.
Cancel STO and keep typing the same number
Use RPN, real mode, fixed depth 5, 600 working digits, FIX 4, and no pending prefix. Press:
f CLEAR 42 STO \(\leftarrow \) 3 ENTER
Backspace cancels STO without deleting 2 or committing 42. The next digit extends the literal to 423, and ENTER displays 423.0000. No ordinary register is selected or changed. Without the cancellation, digit 3 would have selected register R3.
CLx or CLEAR can also cancel an ordinary pending STO/RCL, and ALG FUNC, instead of performing their clear. After cancellation, repeat the intended clearing sequence if you still want to erase the operand or workspace. Use CANCEL whenever you want to dismiss the selection without considering shift routing or the clear key’s other functions.
14.5 Choose the smallest clear that fits
These clears assume that no shift or command is pending. Backspace edits the current entry, CLx clears one operand, and CLEAR clears the active working area. None is an ordinary-memory reset. For the RPN rows below, X is S0 and Y is S1; Last X and Last Y are separately saved previous operands.
|
Action |
Effect |
|
RPN backspace |
During a real numeric entry, remove the last character. Removing its last character leaves zero in the reserved X position; it does not reverse the initial lift. With no numeric entry, backspace acts as CLx. |
|
ALG backspace |
Remove the last numeric character or, after that number is committed, the last expression element. After a completed result, clear the working expression while preserving ANS. |
|
CLx: blue backspace in either mode |
In RPN, finish an active number, save its value in Last X, and replace X with zero; preserve Y, deeper values, and Last Y. In ALG, remove the current number or trailing operand, including a closed group, while preserving the earlier expression and ANS. |
|
RPN CLEAR: orange \(1/x\) |
Discard the unfinished entry and zero the stack. Keep the configured fixed depth, or one zero X for unlimited depth. Preserve both Last registers, all memory banks, settings, and the ALG workspace. |
|
ALG CLEAR: main editing key |
Discard the entire expression and unfinished number. Preserve ANS, all memory banks, settings, and the RPN workspace. |
In a complex entry, backspace edits the selected component; clearing all its characters leaves that component zero within the pair. CLx acts on the whole operand. To change just one accepted component, use Re/Im as described in section 8.2.
CLx is not DROP. After CLx in RPN, typing a new number lifts the zero into Y, moving an earlier Y deeper. To replace an accepted X while retaining Y as the other operand, use orange DROP on the roll-down key, then type the replacement. The complete correction examples in section 3.8 demonstrate this distinction.
Clear a memory bank deliberately
There is no one-key factory reset. MCLR is a selected group clear, not a reset of every bank, both workspaces, and all preferences. Cleared banks cannot be reconstructed with LAST X/Y or ANS. Clear only the data that the new task is intended to replace.
The sequences in table 14.4 clear entire groups, not individual register addresses. Start with no pending prefix and press each sequence as shown. For the full group-selection and cancellation rules, see section 6.10.
Sequence |
Scope |
g STO 0 |
All ordinary registers and associative pairs, in either entry mode. |
g STO \(\Sigma +\) |
All statistical accumulators; RPN only. |
g STO n |
All five financial registers and all cash flows, in either entry mode. |
g STO R\(\downarrow \) |
The RPN stack and unfinished RPN entry; both Last registers remain. |
The three memory-bank clears preserve an unfinished numeric entry, expression, and stack; they do not first commit the entry. Their flags disappear because the entries are removed. A stored zero also counts as occupied, so overwriting a value with zero is not equivalent to emptying its bank. Group clearing does not reset settings or BEGIN/END.
Dedicated RPN clears offer narrower choices. Orange Sigma-plus, \(\mathrm {CL}_{\Sigma }\), removes statistics; orange FV, \(\mathrm {CL}_{fin}\), removes only financial registers; blue FV, \(\mathrm {CL}_{cf}\), removes cash flows and stores \(n=0\). These commands first finish an active numeric entry. CLcf therefore turns off CF but leaves FIN present. CLfin can leave cash flows whose selected n must be set again before use. None of these clears removes an earlier ordinary-memory copy of a statistical total.
In ALG, orange FV and blue FV have those same bank-clear scopes while preserving the main expression. For statistics, open STAT, select Clear statistics, and press CLEAR STATISTICS. This removes the bank and updates ANS to zero; the main expression and ordinary copies in R4–R9 remain. Worksheet CANCEL afterward closes the worksheet without undoing that completed clear.
14.6 Prepare a fresh problem without resetting the application
Do not toggle BGN, CMPLX, or a representation setting blindly. Read the current flag or labels first, then change only what differs from the intended starting state. A fresh problem is a known set of relevant inputs, not necessarily an empty calculator.
First close any tool or inspector, cancel pending input, and select the intended entry mode. Set the required working precision, notation, angle unit, and complex setting. Then clear the working area and initialize the inputs that belong to the task:
- Arithmetic or a new ALG expression: clear the active stack or expression. Retained memory flags need not be removed when the calculation does not use those banks.
- Statistics: clear statistics before entering a new data set. Stack CLEAR alone leaves all earlier observations in the accumulators.
- TVM: clear or explicitly replace the financial inputs and check BGN. Set each of the four quantities used by the target solve, including deliberate zeros. CLEAR does not remove an old PMT or FV.
- NPV/IRR: CF0 starts a new list. Include zero-flow periods, set the periodic rate or guess explicitly, and check n before evaluating a saved list.
- Other financial tools: explicitly store their required inputs. AMORT uses elapsed payments in n; simple interest uses days; depreciation uses useful life. The same register names do not imply the same input meanings.
14.7 Diagnose an unexpected result
Locate the first step that differs from the intended calculation. Compare an actual stored value with an actual stored value, or compare rounded displays at the same notation and digit count. If you compare another calculator, also match its entry, financial, date, and rounding conventions; a matching function name is not enough.
|
Symptom |
Check first |
|
A digit does not enter a number |
Look for STO/RCL, MCLR, a shift, or the ALG FIX prompt. Close a tool or stack inspector; tap the display to restore physical-keyboard focus. |
|
Scientific or financial keys are missing |
Show the appropriate panel. In ALG, STAT and associative legends open worksheets; financial stores and explicit CPT use different sequences from RPN. |
|
A trig result has the wrong size |
Check DEG/RAD/GRAD and the unit of each ALG function already entered. Changing the setting does not convert an operand. See section 7.4. |
|
Subtraction, division, a power, or root is reversed |
RPN uses Y (S1) before X (S0). Inspect the stack without rolling it; use SWAP if the operands are reversed. In ALG check grouping and precedence. |
|
Extra operands remain |
ENTER during entry confirms; idle ENTER duplicates. Percentage functions retain Y; statistical and financial commands have their own result counts and lift rules. |
|
An ALG total seems unchanged |
The large display can be the current operand or a preview. Read the expression and press equals to evaluate it. Repeated equals does not repeat an operation. |
|
Digits differ, or a small value shows an exponent |
Read the pinned exponent and notation count. FIX can use scientific fallback. Display rounding does not round stored values; increasing working precision does not repair old approximations. See chapter 5. |
|
A component, sign, or complex root differs |
Check COMPLEX, Re/Im versus polar labels, component selection, and principal branches. Complex mode off hides existing imaginary parts; new stores, recalls, and calculations in that mode write real values. See chapter 8. |
|
A memory recall is zero or the wrong value |
Check bank and address. Unset ordinary registers and unmatched associative keys return zero. Rounded-looking real keys may differ internally. Associative keys with the same real part address one entry in either mode; a later store replaces it. Real-mode recall copies only the real component, leaving the source memory unchanged. |
|
A statistical answer includes old data |
Check the initial statistics clear, RPN’s y-before-x entry order or ALG’s labeled X/Y fields, count, corrections, and the difference between a weight and repeated samples. See chapter 10. |
|
A financial key stores instead of solving |
In ALG, a bare register key always stores; use CPT then the target register to solve. In RPN, recall, ENTER, mode selection, and ordinary arithmetic affect bare-key readiness. Use the procedure in section 11.4. |
|
A loan or savings answer differs |
Recall all four non-target inputs. Check old PMT/FV, cash signs, n and i period units, BGN, fractional-period conventions, and deliberate payment rounding. |
|
NPV or IRR differs |
Review the expanded list, omitted zero periods, signs, n selection, periodic i, and IRR guess/bounds. IRR does not automatically replace i. See chapter 12. |
|
Dates, bonds, or depreciation differ |
Check MDY/DMY, six fractional date digits, day-count/coupon conventions, clean price, salvage, and the meaning of n/i for that tool. See chapter 13. |
|
Finish the expression first |
A direct ALG financial calculation would replace unfinished compound work. Complete it with equals or clear it; storage still uses the displayed operand. |
|
A worksheet action rejects edited fields |
ENTER accepts a selected field; equals only evaluates it. Accept every edited field before computing. CANCEL closes the worksheet and discards its unaccepted edits; reopen it to compute from retained accepted inputs. |
|
A conversion has the wrong scale or offset |
Check Dimension, From, To, US/Imperial names, and temperature reading versus interval. Apply uses the current operand, not an unfinished ALG total. See chapter 9. |
Some limitations are properties of the numerical methods rather than entry mistakes. Custom complex special-function algorithms and raw-sum statistical formulas can lose accuracy through cancellation. The relevant subject chapters describe their numerical limits; a longer readout alone cannot resolve them.
14.8 Recover from a calculation error
A calculation error is different from a storage failure. An operand may be outside a function’s domain, an expression may be incomplete, or a solver may be unable to find a result. Read the exact message before clearing it. The next enabled calculator key normally clears the message and performs that key’s action; it is not merely an acknowledgment key. Physical Escape can dismiss an error without performing arithmetic, provided that a message or prefix is still active.
An attempted operation can finish numeric entry before detecting its error. The retained operand can therefore be correct even though ENTRY has changed. In RPN, check X (S0) and Y (S1) before backspacing: with entry no longer active, backspace is CLx. In ALG, a committed number is an expression element, so backspace can remove it as a whole rather than remove its final digit. A failed ALG evaluation retains the expression and does not replace ANS.
Correct the sign after a rejected factorial
Use RPN, real mode, fixed depth 5, 600 working digits, FIX 4, and no pending prefix. Show the Scientific panel and press:
f CLEAR 2 +/\(-\) \(x!\)
Real factorial rejects the negative argument. The entry is now committed: X remains -2.0000 , with ENTRY off and an error message. If the intended argument was positive 2, press:
+/\(-\) \(x!\)
Sign change clears the message and negates the retained operand; factorial returns 2.0000. A physical Escape once before this correction would only dismiss the error. No operand recall is needed, because the rejected factorial did not replace X with an answer.
Finish an ALG group after evaluation fails
Use ALG, real mode, 600 working digits, FIX 4, and no pending prefix. Press:
CLEAR 2 + ( 3 \(\times \) 4 =
The message reports unbalanced parentheses. The expression remains available; press ) =. The closing parenthesis is processed while the previous message is dismissed, and evaluation returns 14.0000. The calculation is \(2+(3\times 4)\), not a request to start again from the displayed 4.
Interpret the kind of failure
For missing operands, supply the required input or replace the incomplete expression. For a domain error, check signs, integer requirements, zero divisors, and whether the selected real or complex function is appropriate. Statistics may need more observations or nonzero variance; financial tools may require explicitly stored registers even when a recall of an unset register would show zero. These are input conditions, not requests for more display digits.
A convergence or bracketing error describes an unsuccessful numerical search. Check the model, scale, and any IRR bounds; it does not by itself prove that no mathematical root exists. A capacity or expression-limit message requires a smaller problem or a different decomposition. Unlimited RPN still needs enough actual operands, and cyclic roll is unavailable with an unlimited stack.
RPN can also display NaN, \(\infty \), or \(-\infty \) from basic arithmetic without a separate rejected-command message. NaN means not a number. Treat these as nonfinite values, not ordinary results. Check the function’s domain and replace or clear the affected operand before continuing. ALG rejects nonfinite expression results. Complex mode extends some domains but does not make division by zero or every singular function finite.
For \(\Sigma +\) or \(\Sigma -\), the message Statistics samples must be finite means a sample’s real component is NaN or infinity. Statistics totals must be finite means an existing total is nonfinite or the proposed update would produce one. Both errors preserve the statistical bank; no sample is partly added or removed. Correct the operands and retry, or clear and re-enter the observations if the saved bank already contains nonfinite totals. See chapter 10.
The warning Used real portion only means that a real-only operation omitted nonzero imaginary data while complex mode was active. It can accompany a successfully computed real answer; it is not a save failure. Later input can remove the warning, so its absence does not certify that all stored inputs were real. See section 8.7.
LAST X and LAST Y can help after a successful but unintended RPN operation. They recall saved previous operands, distinct from the current X (S0) and Y (S1); recover them before another command overwrites the saved values. They do not provide a general error rollback or restore an earlier memory bank. Use the worked recovery sequence in section 3.8. If the original inputs are uncertain, record what remains, then re-enter a known problem rather than applying a series of guessed reversals.
14.9 Respond to a saved-state error
The messages in this section concern the local database, not the mathematical validity of a calculation. Record the full message before trying to continue. A long message can include a specific SQLite operation, error code, or state-validation detail that distinguishes an access problem from incompatible or damaged saved data.
Unable to save; the last saved state was restored
The application tried to save an action and could not finish the transaction. It then successfully reloaded the last durable calculator and presentation state. The attempted action has not been accepted as new saved work. The screen can return to an earlier entry or pending command, not merely an earlier displayed number.
For example, if the saved state was 42 followed by STO, and selecting R3 could not be saved, the restored state can again show the editable 42 and the pending STO. The register selection has not completed. Read those restored flags before deciding whether to retry the selector or cancel storage; typing a new calculation immediately could instead complete the pending command.
Check any cause identified by the message, such as an unavailable or unwritable storage location, and resolve that condition before relying on another save. After it is resolved, retry the intended action from the state actually restored. There is no separate Retry button. If the message recurs, stop making changes, record the failure and visible state, and report it. Repeated clears are also writes and do not repair a database access problem.
Restore failure or unavailable calculator memory
The message Unable to restore calculator memory appears when startup cannot open or reconstruct the saved calculator. Calculator memory is unavailable can appear when an unsuccessful save is followed by an unsuccessful attempt to reload it. The application disables calculator keys instead of silently replacing the saved database with a blank one. A zero or an older number still visible on the screen is not proof that the saved banks are empty or usable.
There is no editable recovery workspace, database-repair control, or factory-reset button in this screen. Record the full message and the application version, then obtain help with that particular storage failure. If the message says that the state was saved by a newer application, use the compatible build that created it rather than assuming that an older binary can read it. Reopening can retry startup, but cannot by itself repair invalid data or make an incompatible format compatible.
Preserve the affected installation’s data while investigating. Deleting the application data, removing its database, or creating a replacement database discards the saved work; those actions are not the same as canceling an entry and are not a recovery procedure supplied by this interface. Do not treat reinstalling as an assured way to preserve or repair calculator memory.
Information for a source-build investigation
The normal database is Calculator.sqlite in the application’s SpicyRPN directory under Application Support, within its sandbox. The exact enclosing path depends on the platform and installation; it is not a document you select from the calculator. The application uses SQLite’s WAL journal mode with synchronous FULL for its saves. A developer investigating a copy must preserve the database and any associated WAL state consistently; copying only an arbitrary live main file is not an application backup command.
Xcode previews and builds launched with the developer’s ephemeral option intentionally use in-memory state and do not retain it across process termination. Relaunch tests can use a separate temporary test database. If work seems to vanish only in a development or test run, include the launch configuration in the report. See chapter D for the supported build and test procedures.
14.10 Identify the build and report a reproducible problem
This manual identifies application version 2.0.0 (build 3). Open HELP, choose Licenses & Acknowledgments, then Credits to read the installed version and build. For a source build, the app target records MARKETING_VERSION and CURRENT_PROJECT_VERSION; the generated bundle records CFBundleShortVersionString and CFBundleVersion. Also record the source package version and any local changes when reporting a problem with your own build.
A useful report gives a short sequence that another person can follow without inheriting your current calculator. Include:
- Application version and build; source package version and local changes, if applicable; device or Mac model and OS version; screen orientation or window size.
- RPN or ALG; real or complex mode and representation; working and display digits; notation, angle unit, stack depth, date order, and payment timing wherever they affect the example.
- A complete preparation: which workspace or bank was cleared, which memory values or financial inputs were stored, and whether any entry, shift, or prefix was active.
- The exact key sequence, including shifts, panel changes, tool or worksheet field names and values, and the Apply, ENTER, COMPUTE, Use value, Close, or CANCEL action. Identify physical shortcuts when those were used instead of on-screen keys.
- The expected value or behavior and its basis, the actual result with exponent and relevant flags, and the first differing step. Include the whole error or warning text.
- Whether it repeats from that preparation and whether reopening changes it. For a persistence problem, identify the final successful action, the failing action, and what returned after relaunch.
A screenshot can document a layout defect or exact flag arrangement, but it does not show every hidden register or undisplayed digit. Include the relevant input values and the sequence in text as well. For financial work, state the period and rate conventions; for dates, write the intended calendar dates alongside their numeric encodings. For a numerical comparison, distinguish a difference in rounded output from a difference in retained value or algorithm.
If the report requires sensitive amounts, replace them with a small reproducible example when possible. A saved database can contain both current values and their calculation provenance, so do not assume it is equivalent to a screenshot of the display. Use the project’s report channel with the information needed to reproduce the problem, and retain the original data separately while the issue is investigated.