CASIO fx-4500P
The file-based formula programming language of Casio's 1989 fx-4500P scientific calculator: named program files, BASIC-style A=expression assignment, Lbl/Goto and ⇒ conditional jumps, and Prog subroutines nested up to nine levels deep in 1,103 steps.
Created by Casio Computer Co., Ltd.
The CASIO fx-4500P was a pocket scientific calculator released by Casio in 1989. On this site the name also covers the programming language built into it. The language is formula-centred and keyed in token by token. It stands out among Casio calculators for two design choices. Programs are kept as named files rather than numbered slots, and assignment is written BASIC-style, V=U-GT, rather than with the → arrow used on Casio’s graphing models. Around that core it has numbered or named labels, Goto, a ⇒/⇏ conditional jump, Prog subroutine calls nested up to nine levels deep, prompts, pauses and a 1,103-step program area shared with an expandable memory bank.
A note on the date
The encyclopedia’s master list gives 1986, but no source found supports a 1986 fx-4500P. The earliest dated evidence is from 1989. The September 1989 issue of the Japanese magazine Oh!X reports that Casio “has released” (発売した) the fx-4500P programmable scientific calculator for students and engineers at ¥8,500. Micom BASIC for September 1989 also calls it newly released (新発売) at the same price. Viktor Toth’s rskey.org museum also gives 1989. One Japanese collector database (Kyoro’s Room) gives 1991, which is too late given the 1989 magazine notices. This page uses 1989. The 1986 figure may be confused with Casio’s earlier formula programmables such as the fx-4000P of 1985.
History and origins
Casio’s formula-programmable line began with models like the fx-4000P (1985). It had a one-line dot-matrix display and 550 program steps, and it assigned values with an arrow (Ans→X). The fx-4500P is generally described as its successor. It is not a graphing calculator, although the case is printed with “DOT MATRIX LCD”. It has a two-tier display: a 12-character dot-matrix line for formulas and text above a 10-digit seven-segment line for results.
Casio’s own introduction in the owner’s manual calls it “an advanced programmable scientific calculator” with “a large-volume program memory” and a built-in formula memory “handy when performing repeat calculations”. The Oh!X launch notice describes 124 functions, fractions, integration, base-2/8/16 conversion, statistics and regression. It gives the size as 73 × 141.5 × 9.2 mm and the weight as 90 g.
The machine was sold outside Japan too. Maplin in the UK swapped it into its 1990 catalogue in place of the FX-4200, and French, Czech, Portuguese-language and Argentine magazines and newspapers carried it in reviews and price lists through the 1990s.
Design philosophy
The fx-4500P’s programming model is a recorded sequence of manual calculations. The manual says so directly: “The programs for this unit are made based upon manual calculations.” A program is essentially a series of formulas you would otherwise type by hand, run one after another. A small set of commands then adds prompting, looping and branching.
Two decisions set it apart from Casio’s graphing calculators of the same era:
- Files instead of program slots. Programs are stored under file names of up to 127 steps, such as
GOING UPorCOMING DOWN. Any number of files may be created as long as the total fits in 1,103 steps. You run a file withProg "name", and rskey.org notes that a file number alone does not work. - Equals-sign assignment. Assignment reads like a formula written on paper:
H=UT-(1/2)GT². rskey.org’s review singles this out as different from how Casio’s graphing calculators handle assignment.
Key features
Memory
| Feature | fx-4500P behaviour (owner’s manual) |
|---|---|
| Program area | 1,103 steps shared by all files |
| Standard memories | 26 (A–Z) |
| Expanded memories | Up to 163 via Defm. Each extra memory costs 8 program steps, so 163 memories leave 7 steps |
| Array access | Any letter can be subscripted, e.g. A[0], A[1], mapping onto consecutive memories |
| Formula memory | A separate 127-step formula store, run with the CALC key |
| Line length | Up to 127 steps per program line |
| Step cost | Most functions take 1 step. Lbl name, Goto name and Prog "file" take 2 |
Commands
| Command | Purpose |
|---|---|
V=expr | Assignment |
{A} / {A,B} | Variable input: prompt for the listed variables |
"text" | Display text or label a prompt |
◢ | Display command: show the result and stop until EXE is pressed |
Lbl name / Goto name | Unconditional jump. Label names may contain letters and numbers, up to 126 steps |
left op right ⇒ stmt ⇏ stmt ◣ | Conditional jump with six relational operators (=, ≠, >, <, ≥, ≤). ⇒ runs when the condition is true, ⇏ when it is false, and ◣ ends the conditional |
Prog "file" | Call another file as a subroutine. The manual allows nesting to 9 levels; going deeper gives Ne ERROR |
Pause n | Pause for about n × 0.5 s (n = 0–9, so up to 4.5 s) |
Fixm | Freeze A–Z at their current values so { } prompts are skipped |
The specification page lists the program facilities as unconditional jump (Goto, Lbl), conditional jump with the six comparisons, subroutines (Prog, “10 routines”), unlimited stored programs within capacity, and program checking, debugging, deletion and addition.
Example: the manual’s branch
This short program is taken from the owner’s manual. It reads A, prints √A if A ≥ 0 and prints A² otherwise, then loops:
Lbl 0
{A}
A≥0⇒B=√A◢⇏B=A²◢
◣Goto 0
Example: shared subroutines
The manual’s larger example has three files. MAIN asks for a direction and calls one of two formula files:
F3 MAIN
L1 Lbl 0
L2 {T,N}
L3 N"GOING UP:0,COMING DOWN:1"
L4 N=1⇒Prog COMING DOWN:⇏N=0⇒Prog GOING UP◣◣
L5 Goto 0
Here GOING UP holds V=U-GT◢ and H=UT-(1/2)GT²◢, and COMING DOWN holds the matching + versions. The manual’s point is that common lines move out into a shared driver, shortening the programs overall. The nested conditional needs two ◣ codes because it contains two conditions.
Evolution
The language did not get version numbers; it changed only with the hardware. The fx-4500PA revision kept the 1,103-step program area and the 26-to-163 memory scheme. rskey.org dates it to 1998. Casio’s international (Asia) product page for the fx-4500PA still lists “up to 1,103 program steps” and a “program file system for storing multiple programs”. That page gives a function count of 242, where the 1989 Oh!X notice gave 124. The difference seems to come from how the functions were counted, and those figures are the vendor’s own.
Casio’s later formula programmables, such as the fx-4800P, grew the program area to 4,500 steps (per rskey.org). This page does not claim a direct line of descent in the language, because no Casio source documents one.
Current relevance
The fx-4500P is a collector’s machine today. Used units sell cheaply on Japanese and European second-hand markets. Hobbyists reportedly still write about running prime-factorisation and similar programs on it, and rskey.org keeps it in its programmable-calculator exhibit hall. The fx-4500PA is still listed on Casio’s regional websites, so machines running the language may still be on sale in some markets. No emulator or container image for it is known.
Why it matters
The fx-4500P is an example of the high-end “formula programmable” that sat between keystroke programmables and full graphing calculators in the late 1980s. Its file-based storage let one small device hold a named library of formulas and even a phone book. That made it practical as a packaged professional tool, as the pre-programmed ventilation-design calculators show. Its BASIC-style assignment and plain-text file names also made it one of the more readable programmable calculators of its time. Science et Vie Micro’s 1990 test praised its formula entry and editing but complained that its keyboard was cramped, and rskey.org’s review makes the same complaint.
Sources and unverified points
- Verified: 1989 release and ¥8,500 price (Oh!X Sept 1989, Micom BASIC Sept 1989, both via Internet Archive full text). 1,103 steps, 26/163 memories, 8 steps per extra memory, 127-step formula memory, the command set, 9-level
Prognesting and thePausetiming (fx-4500P owner’s manual pages 40–41, 80, 90–91 and 108–120, and the specifications on page 158). Maplin catalogue change (Maplin Magazine no. 37, 1990). Science et Vie Micro review (no. 76, October 1990, p. 98). Burton workbook packages, “as of January 1993”, $139 each (Laboratory Ventilation Workbook, 2nd ed., ©1994, ISBN 0-883992-02-8). Buenos Aires newspaper price lists at $75 (Nov 1992, Apr–Jun 1998). fx-4000P on the French market by May 1985 (Science & Vie Micro no. 17). rskey.org’s 1989 date, forensic result, file-nameProgrule, BASIC-style assignment and keyboard complaint (checked against the live exhibit page). - Not independently verified: the fx-4500PA’s 1998 date (rskey.org only), the fx-4000P→fx-4500P succession (collector sources, not Casio), the 242-function count (Casio’s product page and 1998 Argentine price lists, not reconciled with the 124 given at launch and in 1991–93 listings), and the fx-4800P’s 4,500-step figure (rskey.org only).
Timeline
Notable Uses & Legacy
Ventilation design calculators (Burton / IVE)
The Laboratory Ventilation Workbook (2nd ed., ©1994) describes Lab CAD and IAQ CAD packages, each built on a pre-programmed Casio FX-4500P. Their twelve and fifteen programs cover duct sizing, air density correction, dilution ventilation rates, fan laws and CO₂-decay air-change rates
Physics and engineering formulas
The owner's manual's worked examples compute a projectile's velocity and height with shared subroutine files, the deflection of a cantilever under a concentrated load, Newton's-method equation solving, quadratic equations and normal-distribution values
Pocket data bank
The same file system that holds programs can hold free-form text records. The manual shows a telephone list stored as a program file and searched by name, and both the Oh!X launch notice and Science et Vie Micro pointed this out
Collector benchmarks
Viktor Toth's rskey.org museum uses the fx-4500P to demonstrate a Lanczos-approximation log-Gamma program. It also records the machine's result on the 'forensic' calculator benchmark, an accuracy test (not a speed test) whose ideal answer is 9: the fx-4500P returns 9.00001568547