Casio AL-1000 Introduction Article
Electronics, November 13, 1967
An article announcing Casio Computer Co., Ltd.'s new
AL-1000 programmable
electronic calculator. The AL-1000 was introduced in Japan in early October
of 1967, with publication lead-times resulting in the approximate delay of
one month before this article was published. The AL-1000 was later marketed
by Commodore in North America through an OEM agreement with Casio.
The AL-1000 represented a new second-generation architecture for Casio's
electronic calculators, utilizing a small magnetic core memory array
manufactured for Casio by Mitsubishi. Casio's first-generation electronic
calculators utilized discrete transistorized shift registers for storage of
the working registers. This change reduced the number of components
required to implement the calculator, freeing up room in the chassis
to add on extra logic for the programming functions without changing
the physical size of the calculator from the earlier machines.
The AL-1000 was also Casio's first programmable
calculator, though its programmability was limited to only 30 steps,
and had no conditional or branching capabilities. The programming
was somewhat tedious, as the machine did not use learn-mode programming
where steps of the program are entered into the machine using the keys
of the keyboard to represent each instruction. In learn-mode programming,
if the user wanted to enter an add instruction, they would just press
the [÷] key on the keyboard. For programming the division function
on the AL-1000, the user had to look up the division
function in a table, and press a specific digit key on the keyboard
to represent the add operation (in this case, the division is
programmed by pressing the [9] key). There were fifteen program
codes, and only ten numeric keys on the keypad, so some of the
programming codes involved pressing a digit key followed by the decimal
point [.] key to encode the function. For example, to program
the square root operation, the code is "4.", so to program this
code, the user would press [4] followed by the [.] key. This would appear
on the display as "4.", distinguishing it from "4", which is the code
for manipulating memory register 1. Thus, in programming mode it
was possible for the display to contain multiple decimal points being lit
for operation codes for [AC](2.), [KC](3.), [√](4.), Program Stop(6.),
and End Program(7.). Other codes that are not defined cause undefined
operations, e.g., using program code "8.", which isn't a valid program
code, would cause expected operation to occur if accidentally used in a
program. The calculator did not detect the use of invalid operation codes,
and the logic would carry out undefined operations if they were used.
The AL-1000 did have an ability to reset the program counter to the beginning
of a program (the "End Program") function, allowing for simple looping,
but the user would have to press a key to resume the program at the beginning
when the "End Program" code was encountered.
But, without conditional testing capabilities, the looping
feature had somewhat limited usefulness. The programming was
useful mostly for simple linear calculations that did not need any kind of
intelligent iteration, and was intended mainly for automating repetitive
operations, freeing the operator from having to key in all aspects of a
repetitive process. The programming feature also had no ability to embed
constants in a program, meaning all constants within a program had to be
pre-stored in memory registers in order to be used. This requirement
led to crowding of the limited number of memory registers. Casio addressed
this to a degree by providing two half-sized memory registers that could
be used for storing smaller constants, leaving the four full fourteen digit
registers for larger constants and variables within a program.
The AL-1000, due to its relatively low price (~$900US, or ~380,000¥ in
Japan) when introduced, and approx. $1,495 when introduced in the US in
early 1968.
Casio claims historically that the AL-1000 was the first stored program
programmable electronic calculator. There were a number of stored
program programmable electronic calculators that were on the market before
the AL-1000 was announced, including the groundbreaking
Mathatronics Mathatron,
as well as the
Monroe EPIC-2000.
If punched-card programmable calculators (where the program is stored on
punched cards rather than in some form of electronic memory), then
the
Wang LOCI-2
can also be included in the mix.
Some time after the introduction of the AL-1000, an updated
version of the calculator, the
AL-1000S, was introduced,
that added electronics to the calculator that allowed it to
be plugged into an external box that provided an interface to a modified
typewriter that could accept input and print output for recording the
results of calculations.