Citizen SRP-80

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:   Display type: Numeric display  
New price:   Display color: Black  
    Display technology: Liquid crystal display 
Size: 6"×3½"×½" Display size: 10+2 digits
Weight: 4 oz    
    Entry method: Algebraic with precedence 
Batteries: 2×"V389" button cell Advanced functions: Trig Exp Hyp Lreg Ab/c Cplx Cmem BaseN Units Const 
External power:   Memory functions: +/-/×/÷/^ 
    Programming model: Partially merged keystroke 
Precision: 12 digits Program functions: Jump Cond  
Memories: 10 numbers Program display:  
Program memory: 128 program steps Program editing:  
Chipset:   Forensic result:  

srp80.jpg (50198 bytes)Yet another programmable Citizen calculator that's a surprise. It was only recently, that I discovered my first Citizen programmable, the SR-59; and now here's another, a folding machine with a much greater memory capacity, but a similar programming model.

The SRP-80 offers four program areas and a 128-step program storage capacity. Unfortunately, programs cannot be viewed or edited; this makes the task of developing and debugging programs more difficult than need be.

Like the SR-59, the SRP-80 also uses relative addresses for its conditional and unconditional jump capability. Instructions such as GOTO or X>0 can transfer control to a program step within plus or minus nine steps of the current program location. If you're writing programs with conditional jumps, you're well advised to write them on paper first; ad-hoc programming is almost impossible with this programming model.

Still, 128 program steps is a fair amount, and full memory arithmetic (even if the keystrokes are unmerged) is also a great plus. This is a capable little machine. To demonstrate, I adapted a program I wrote for the SR-59, an implementation of the incomplete Gamma function. To use this program, you need to enter the integration limit into memory register 0 (aka. M), key in an argument and leave it on the display, and then press, say, RUN 6 (if you stored this program under LRN1.) Unlike the SR-59 version, this program preserves the integration limit in register 0, so the incomplete Gamma function can be easily evaluated for subsequent arguments. If you use a large enough integration limit in order to calculate the true Gamma function, the integration limit only needs to be keyed in once.

01:  STO
02:  2
03:  RCL
04:  0
05:  STO
06:  1
07:  yx
08:  RCL
09:  2
10:  ÷
11:  RCL
12:  1
13:  ex
14:  ÷
15:  RCL
16:  2
17:  =
18:  STO
19:  3
20:  STO
21:  0
22:  1
23:  STO
24:  +
25:  2
26:  RCL
27:  1
28:  GOTO 1
29:  GOTO -9
30:  ÷
31:  RCL
32:  2
33:  ×
34:  RCL
35:  3
36:  GOTO 1
37:  GOTO -8
38:  +
39:  STO
40:  3
41:  RCL
42:  0
43:  =
44:  x<=M 1
45:  GOTO -8
46:  RCL
47:  1
48:  x<->M