Sinclair Scientific Programmable

Datasheet legend
Ab/c: Fractions calculation
AC: Alternating current
BaseN: Number base calculations
Card: Magnetic card storage
Cmem: Continuous memory
Cond: Conditional execution
Const: Scientific constants
Cplx: Complex number arithmetic
DC: Direct current
Eqlib: Equation library
Exp: Exponential/logarithmic functions
Fin: Financial functions
Grph: Graphing capability
Hyp: Hyperbolic functions
Ind: Indirect addressing
Intg: Numerical integration
Jump: Unconditional jump (GOTO)
Lbl: Program labels
LCD: Liquid Crystal Display
LED: Light-Emitting Diode
Li-ion: Lithium-ion rechargeable battery
Lreg: Linear regression (2-variable statistics)
mA: Milliamperes of current
Mtrx: Matrix support
NiCd: Nickel-Cadmium rechargeable battery
NiMH: Nickel-metal-hydrite rechargeable battery
Prnt: Printer
RTC: Real-time clock
Sdev: Standard deviation (1-variable statistics)
Solv: Equation solver
Subr: Subroutine call capability
Symb: Symbolic computing
Tape: Magnetic tape storage
Trig: Trigonometric functions
Units: Unit conversions
VAC: Volts AC
VDC: Volts DC
Years of production: 1975-1976 Display type: Numeric display  
New price: GBP 25.00   Display color: Green  
    Display technology: Vacuum fluorescent display 
Size: 5"×3"×1½" Display size: 5+2 digits
Weight: 10 oz    
    Entry method: Reverse Polish Notation 
Batteries: 1×9V alkaline Advanced functions: Trig Exp 
External power: Sinclair Mains Adapter   Memory functions:  
    Programming model: Keystroke entry 
Precision: 5 digits Program functions:  
Memories: 1 numbers Program display:  
Program memory: 24 program steps Program editing:  
Chipset:   Forensic result:  

sciprog.jpg (19175 bytes)According to its manual, the "Sinclair Scientific Programmable is the first [...] calculator to offer a [...] programming facility [...] at a price within the reach of the general public." They neglect to mention that with a budget price comes a budget programmable calculator: the Sinclair Scientific Programmable is the lowest-end scientific programmable calculator I've ever seen and indeed, it would be the lowest-end programmable, period, were it not for that oddest of beasts, the Litronix 2290.

Imagine: a scientific calculator with only 5 digits of precision. (It has the usual 9-digit VFD tube for its display, but a part of the display is permanently reserved for the exponent.) The machine doesn't even have functions for the natural logarithm or exponential, nor does it have a power-of operator. It is a Reverse Polish (RPN) calculator but many of the advantages of RPN are lost when you consider that the machine has only a 2-level stack, the contents of which are destroyed any time a scientific function is invoked. (So for instance, 2 enter 3 log × will yield 0.22764 instead of 0.95424, like on any self-respecting RPN calculator.)

Add to this the relatively low quality of the calculator's construction: a cheap, creaky plastic case, a power switch with a bad contact, buttons that are not properly (or not at all?) debounced. All in all, had I owned one of these machines back 24 years ago, I'd have been endlessly frustrated by my purchase. Today, I am delighted to own one of these curiousities in near perfect working and cosmetic condition.

Add to its shortcomings a very limited and wasteful programming model. The entry of any constant, for instance, requires two extra keystrokes (a start and an end quote.) Worse yet, constants can only be integers; no decimal point or exponent can be entered as part of a program. Many memory operations require an extra keystroke as well, because no automatic stack lift occurs. (E.g., rcl 2 × won't do the trick; you need rcl enter 2 ×.)

Given what a simplistic machine this is, I found the software library that came with it no small surprise. Over 120 programs, many of which actually look quite useful, from all areas of application including mathematics, geometry, statistics, finance, physics, electronics, engineering, even fluid mechanics and materials science.

Obviously, on a calculator as limited as this one, I will never be able to implement my favorite programming example, the Gamma function. What is more unexpected is that the relatively simple approximation, Stirling's formula, proved too difficult a task also. Just how simplistic this machine's programming model is is perhaps best demonstrated by one of the examples from its program library: the factorial program. A hint: after storing 1 in the calculator's memory, to calculate the factorial of n, you need to hit EXEC n times...

01    x-M
02    enter
03    '
04    1
05    `
06    +
07    x-M
08    rcl
09    ×
10    var