Est. 1997 Beginner

Casio FX9750G

The BASIC-like programming language of Casio's monochrome fx-9750G graphing calculator: named program files, If/Then/Else, For, While and Do loops alongside Goto/Lbl and ⇒ jumps, Prog subroutines nested ten deep, and Locate/Getkey screen I/O in 26 KB.

Created by Casio Computer Co., Ltd.

Paradigm Procedural (structured If/For/While/Do blocks mixed with Goto/Lbl, ⇒ and Isz/Dsz jumps)
Typing Untyped numeric variables A-Z, r and θ, plus lists (six list files) and 26 matrices (Mat A-Mat Z); no string variables, text only as quoted literals
First Appeared c. 1997
Latest Version No version numbers of its own: the fx-9750G's built-in program mode, with a 26 KB program capacity. The same dialect continued, extended, in the fx-9750G PLUS, fx-9750GII and fx-9750GIII

Casio FX9750G is the name the encyclopedia uses for the programming language built into Casio’s fx-9750G, a monochrome graphing calculator of the late 1990s. The language is what hobbyists now call Casio BASIC. Casio’s own specification sheets describe it only as a “Basic type” programming language. Programs are entered token by token from menus and stored under file names. They mix structured blocks (If/Then/Else/IfEnd, For/To/Step/Next, While/WhileEnd, Do/LpWhile) with the older jump-based style of Casio’s earlier graphing calculators (Goto/Lbl, the ⇒ conditional jump, Isz/Dsz). The fx-9750G’s 26 KB of program memory, Locate text positioning and Getkey keyboard polling made it a practical platform for school programs and small games. Its successors, up to the fx-9750GIII still sold today, run later versions of the same dialect.

A note on the date

The encyclopedia’s master list gives 1996. That is the year Wikipedia gives for the second-generation Casio series that the fx-9750G belongs to. The colour CFX-9850G in that series was on sale in the US by April 1996. For the fx-9750G itself, the evidence points to 1997:

  • The MyCalcs database (run by the TI-Planet community) lists the fx-9750G from 1997 and its French twin, the fx-8930GT, from 1997.
  • A TI-Planet article on a 1998 Fnac catalogue calls the fx-8930GT “the French name at the time for the international fx-9750G of 1997”, renamed Graph 30 for the 1998 school year.
  • Casio US’s graphing-calculator list captured by the Wayback Machine in January 1997 includes the CFX-9850G but not the fx-9750G.

No dated Casio announcement has been found, so this page uses 1997 as an approximate year. The machine may have appeared in some markets late in 1996.

History and origins

Casio made the first graphing calculator, the fx-7000G, in 1985. Its programming language was a sequence of keyed formulas with a small set of control commands. Wikipedia describes that first-generation language as building loops from Isz and Dsz together with Lbl and Goto, “rather than using simpler conditional commands, such as for or while”. The same style carried through the Power Graphic and Icon Menu models of the early 1990s, such as the fx-7700GE, fx-9700GE and colour CFX-9800G.

The fx-9750G belongs to the next generation, alongside the CFX-9850G (three-colour screen), the CFX-9950G, and the cheaper fx-7400G. Its owner’s manual documents the full set of structured control commands, which that first-generation description says were missing. The fx-9750G has the same 21-character by 8-line display as its colour siblings, but in black and white. It runs on four AAA batteries with a CR2032 backup cell and weighs 190 g with batteries.

It was sold under several names. In France it was the fx-8930GT and then the Graph 30, and Casio France’s 1999 product sheet gives 32 KB total memory (28 KB for the user) for that model. The Casio UK specification sheet from 2001 gives 26 KB, which matches the fx-9750G owner’s manual. Casio’s international support site still hosts the original English fx-9750G manual as a PDF.

Design philosophy

The manual introduces programming as recorded manual calculation: “Commands and calculations are executed sequentially, just like the manual calculation multistatements.” A program is what you would otherwise type on the RUN screen, with the output command ◢ (shown as ^ in the manual) placed where you would press EXE to see an intermediate result.

Three design choices shape the language:

  • Files, not slots. Each program is stored under a file name of up to eight characters, such as OCTA or AREA. Registering a name costs 17 bytes. Programs call each other by name with Prog "name", and any program can be password-protected with the “secret” function. Protected programs can still be run by anyone.
  • Token entry. Commands are single tokens chosen from function-key menus, not typed letter by letter. Most tokens take one byte of memory. Lbl 1, Goto 2 and structured commands such as If and For take two.
  • Everything from the calculator is available. Programs can switch modes, draw and analyse graphs, run statistics and regressions, work on lists and matrices, and send or receive data over the link cable.

Key features

Memory and data

Featurefx-9750G (owner’s manual)
Program capacity26 KB (maximum), shared with other data
Program namesUp to 8 characters, 17 bytes each
Numeric variablesA–Z plus r and θ
Matrices26 (Mat A–Mat Z) plus MatAns
ListsSix list files, selected from the set-up screen
StringsNo string variables. Text is used only as quoted literals
Subroutine nestingUp to 10 levels of Prog. Deeper nesting gives Ne ERROR
Display21 characters × 8 lines. Locate addresses columns 1–21 and lines 1–7

Command set

GroupCommands
Input / output?→A (prompt), ◢ (display and pause), "text", : and newline as statement separators
ConditionalsIf…Then…Else…IfEnd, and the single-line jump condition ⇒ statement
LoopsFor 1→A To 10 Step 0.1…Next, While…WhileEnd, Do…LpWhile
ControlProg "file", Return, Break, Stop
JumpsGoto n / Lbl n (0–9, A–Z, r, θ), Isz, Dsz
Relational=, ≠, >, <, ≥, ≤
ScreenClrText, ClrGraph, ClrList, Locate col, line, value, DrawGraph, DrawStat, DrawDyna and table/recursion display commands
Keyboard and linkGetkey, Send(, Receive(

Two behaviours stand out. A Goto/Lbl inside a subroutine is local to that subroutine and cannot jump out of it. And if a Prog call sits inside a loop, the manual says the call “immediately breaks the loop and launches the subroutine”.

Example: structured input validation

This program is taken from the manual’s command reference. It prompts until the value is between 0 and 10:

Lbl 1:?→A
If A>0 And A<10
Then "GOOD"
Else Goto 1
IfEnd

Example: the older counting style

The manual also documents the first-generation idiom, which still works. This program reads ten values and prints their average. Dsz decrements A and skips the next statement when A reaches zero:

10→A:0→C:
Lbl 1:?→B:B+C→C:
Dsz A:Goto 1:C÷10

Example: breaking out of a loop

While A>0
If A>2
Then Break
IfEnd
WhileEnd
A◢

Getkey and Locate

Getkey returns a two-digit code for the last key pressed (0 if none), with codes laid out by the key’s position on the keypad. Locate prints a value, variable or string at a given column and line. Together they allow simple interactive programs and games. The cheaper fx-7400G from the same generation has only 7 KB of memory and, according to Wikipedia, lacks Getkey, Locate and matrices.

Evolution

The language was never versioned separately from the hardware. The fx-9750G line went through several revisions:

ModelWhat changed for programmers
fx-9750G (c. 1997)The original: 26 KB, the structured command set described above
fx-9750G PLUSSame programming model. Wikipedia lists about 28,000 bytes of memory and new statistical tests
fx-9750GII (around 2009)Shares the fx-9860GII’s architecture and has a USB port, per Wikipedia
fx-9750GIII (2020, per Wikipedia)Adds a MicroPython interpreter alongside Casio BASIC

The fx-9860G family, which the fx-9750GII and GIII share their architecture with, added string memories and more commands. Wikipedia cites the fx-9860GII software manual as its source for strings in Casio BASIC. This page does not describe those later features as part of the fx-9750G language.

Current relevance

The original fx-9750G is now a second-hand collector’s item, but its language lives on. Casio’s current fx-9750GIII still runs Casio BASIC programs written in the same If/For/While style, and Casio still publishes the original fx-9750G manual on its support site. Hobbyist communities such as Planet Casio and TI-Planet keep model-equivalence tables and program archives for the whole family. No emulator or container image for the original fx-9750G is known.

Why it matters

If Wikipedia’s account of the earlier models is right, the fx-9750G generation is where block-structured control flow arrived on Casio’s mainstream graphing calculators. It kept the jump-based style of the 1985–1995 models alongside it. It was also the low-cost, monochrome way into that generation. Its name was carried forward through the fx-9750G PLUS, GII and GIII, so a line of calculators allowed in major exams such as the IB Diploma and AP Calculus has run a direct descendant of this language for decades. For some students it was probably their first programming language, typed in token by token on a keypad, though no survey of that exists.

Sources and unverified points

  • Verified: The command set, 26 KB capacity, 8-character file names at 17 bytes each, 10-level Prog nesting and Ne ERROR, Locate ranges, Getkey behaviour, 26 matrices, six list files, the Program Library contents, display and power specifications, and the example programs (fx-9750G owner’s manual, Casio support PDF fx-9750G_EN.pdf, chapters 19–21 and Appendix F). The fx-7400G’s 7 KB (its Casio manual). Casio UK’s 2001 FX9750G specification sheet and Casio France’s 1999 Graph 30 sheet (Wayback Machine). Casio US’s January 1997 graphing lineup without the fx-9750G (Wayback Machine). The CFX-9850G mention in U.S. 1 of 3 April 1996, the “fx-9750 series” in REA’s 1999 AP Calculus AB book, the IB paper wording and the Ryerson statistics texts (Internet Archive full text). The 99-bottles-of-beer.net entry dated 04/20/05 (Wayback Machine capture of 27 May 2005).
  • Not independently verified: The 1997 release year, which comes from collector sources (MyCalcs/TI-Planet) and not from a dated Casio document. The fx-8930GT → Graph 30 renaming and its timing (TI-Planet). The fx-9750G PLUS memory figure, the fx-9750GII’s approximate 2009 date and the fx-9750GIII’s 2020 introduction (Wikipedia and MyCalcs). The claim that first-generation Casio models had no If/For/While (Wikipedia, not checked against those models’ manuals). The fx-7400G’s lack of Locate (Wikipedia; its manual shows no Getkey).

Timeline

1985
Casio introduces the fx-7000G, generally described as the first graphing calculator. Its programs, and those of the models that follow it, build loops from Goto/Lbl, the ⇒ conditional jump and the Isz/Dsz count jumps
1996
Casio's CFX-9850G colour graphing calculator is on sale in the United States (a Princeton, New Jersey newspaper mentions it on 3 April 1996). Wikipedia dates the start of this second-generation series, to which the monochrome fx-9750G belongs, to 1996
1997
The fx-9750G appears, by collector databases' reckoning, as the black-and-white sibling of the CFX-9850G. TI-Planet describes it as the international fx-9750G of 1997 and says it was sold in France as the fx-8930GT, then renamed the Graph 30 for the 1998 school year
1999
Casio France's product sheet for the Graph 30 (the French fx-9750G) lists it as scientific, graphing and programmable for upper-secondary and higher education, with 32 KB total memory and 36 lists
1999
REA's AP Calculus AB test-preparation book reprints a list of graphing calculators permitted on the exam, which includes the Casio "fx-9750 series" alongside the CFX-9850 and CFX-9950 series
2001
Casio UK still lists the FX9750G, with a specification sheet giving 26 KB total memory, a 21 × 8 display, 759 functions and "Programming language: Basic type"
2005
An anonymous contributor submits a "Casio FX9750G" version of the 99 Bottles of Beer song to 99-bottles-of-beer.net (dated 20 April 2005), which is the source of this language's name in the encyclopedia
2020
According to Wikipedia, Casio introduces the fx-9750GIII, which keeps Casio BASIC programming and adds a MicroPython interpreter. It is the current descendant of the fx-9750G line

Notable Uses & Legacy

Casio's built-in Program Library

The owner's manual ends with five ready-to-type programs written in the language: prime factor analysis (for integers up to 10¹⁰), greatest common measure, a t-test value, circle and tangents, and rotating a figure. The last two use the whole display for graphics

IB Diploma mathematics examinations

International Baccalaureate Mathematics HL papers ask candidates to record the make and model of their calculator, giving 'Casio fx-9750G, Sharp EL-9600, Texas Instruments TI-85' as the examples

AP Calculus approved-calculator lists

The College Board's approved graphing calculator list, as reprinted in REA's 1999 AP Calculus AB preparation book, include the Casio fx-9750 series, so programs written in this language could be carried into the exam room

University statistics courses

Custom editions of a business statistics textbook, including editions for Ryerson University in Toronto (the earliest seen is dated 2005), contain step-by-step 'Calculator Lessons' for the Casio FX-9750G or CFX-9850GB

Running Today

Run examples using the official Docker image:

docker pull
Last updated: