+Home | Museum | Wanted | Specs | Previous | Next |
Sharp PC-1001 Programmable Scientific Desktop Calculator
Updated 3/2/2019
This is a truly wonderful little machine, packing a great deal of "big scientific programmable calculator" power into a compact, yet highly functional package. The Sharp PC-1001 packs nearly the same computing power of the Tektronix/Cintra 909 (a machine that predates the PC-1001 by about two years) into a package less than 1/3rd the size. The PC-1001 illustrates just how quickly large scale integrated circuit and microprocessor technology changed the face of electronic calculators.
This particular Sharp PC-1001 was built in the fall of 1973, a time during which the calculator world was undergoing massive changes. Hewlett Packard had shocked the world in January of '72 with the introduction of the HP-35, a powerful, battery-powered, truly handheld scientific calculator that fit nicely in a shirt pocket. Prior to the introduction of the HP-35, scientific calculators were relegated to being desktop machines, taking up a significant amount of desk space, and tethered to the desk by their AC power cord. Also during this time, the advent of calculator-on-a-chip IC's dramatically brought down the cost of handheld four function calculators. While the whole calculator world was in a state of rapid change, Sharp, in keeping with its tradition of innovation, kept their collective wits about them in uncertain times, and came up with the idea to shrink the desktop, programmable calculator to make it more portable, as well as significantly reducing the cost of entry for a powerful programmable scientific calculator. The PC-1001 was the result of their efforts.
A profile view, with top part of cabinet removed.
While the HP-35 was a powerful machine, as well as a major advancement in calculator technology, it lacked programmability, an important feature for those that needed to perform more than just the built-in functions the calculator provides. The PC-1000 provided all of the functionality of the HP-35, but along with it provided a learn mode programming facility that allowed the user to compose programs made up of sequences of stored keypresses. A programmable calculator such as the PC-1001 was applicable in many areas, including financial, science, statistics, and surveying, where specialized calculations needed by these disciplines could be programmed into the calculator and executed with a single keypress.
The Keyboard Panel of the Sharp PC-1001
The PC-1001 provides a solid complement of scientific functions. In order to minimize the number of keys on the keyboard an [F] key is used, and most keys have dual purpose, with a press of the [F] key before the function key activating the alternate function. The math functions the machine provides include: yx; square root; sine, cosine and tangent with inverse functions; hyperbolic sine, cosine and tangent; ex; natural logarithm, and base ten logarithm. The constant Pi can be recalled by a single key press. The [RC] key swaps the arguments in dyadic operations, for example, use of the [RC] key allows easy swapping of arguments for the rather unconventional yx function, which seems to want its arguments in reverse order than one would expect. The machine has eight memory registers, which seem to be co-resident with the last eight steps of learn mode program memory. Memory registers can be stored into [x->M], cleared [CM], recalled [MR], or added to [M+]. Each of the memory keys expects a single digit between zero and seven to be pressed after the memory function key to indicate the memory register the operation is to be performed on. The machine uses straight algebraic logic, with no apparent operator hierarchy.
The PC-1001 can operate in scientific
or floating point mode, selectable by a switch on the keyboard panel.
In floating point mode, there seems to be a bug in the implementation
that does not allow entry of numbers with negative exponents. In
scientific mode, such entry works fine, by using the [+/-] (change sign)
key to negate the exponent. Trigonometric functions can accept
their argments in degrees or radians, selected by another switch on
the keyboard panel.
Programming the PC-1001 is quite
straightforward, using simple learn mode programming. Once
programming mode has been entered, by pressing [F] followed by the [S/PRO]
key, successive keystrokes are executed as normal, but also stored into
program memory. While programming mode is active, the 'PRO/BUSY' LED
on the keyboard panel lights to let the user know that the machine is
in program mode. While in program made, each keystroke consumes one step
of program memory. The calculator has capacity to store 64 keystrokes,
however, as mentioned above, it appears that the last 8 storage locations
(56 through 63, assuming memory starts at step 0) have a dual purpose --
they can store program steps or memory registers. Programmers must be careful
when using memory registers so as not to overwrite any program steps that
may be stored in these last few memory locations. The programmer has no
looping or branching facility, only the ability to temporarily halt
the program to allow user input or to display a result, by pressing the
'H/END' key to record a 'halt' instruction. When a halt instruction
is encountered during program execution, the 'HALT' LED on the keyboard
panel lights to let the user know that some interaction with the machine
needs to occur. To terminate program learn mode,
the [F] key is pressed, followed by the [H/END] key, and the calculator
returns to normal mode, extinguishing the 'PRO/BUSY' LED. To begin
execution of a stored program, the [S/PRO] key is pressed. During program
execution, the display is blanked, and the 'PRO/BUSY' LED is lit
to indicate that the machine is busy executing.
The PC-1001 opened up
Internally, the PC-1001 is packed quite
tightly, with most of the electronics (except the displays)
fitting on a single 4 1/2" by 3 1/2" circuit board. The PC-1001 holds
the distinction of being the first electronic calculator to be built
with Rockwell International's PPS-4 microprocessor. The PPS-4 was
a 4-bit microprocessor contained in a single chip, with a family of
other chips that provided random access memory, read-only memory (for
firmware) and I/O functions. The PPS-4 family was an off-the-shelf item
available to anyone from Rockwell. The only custom items are the two
mask-programmed ROMs that contain that firmware that makes up the
calculator functionality. The chips consist of a 10660 PPS-4
microprocessor, a 10432 256x4 Random Access Memory chip,
and a 10696 General Purpose Input/Output chip that interfaces the
system with the keyboard and display,
and two A05-series 1K byte ROM chips that contain the firmware, with
part numbers A0519 and A0520. A Rockwell 10760 TO-5-packaged device,
along with a 3.579545 MHz crystal provide the clock generation for the
system resulting in an effective operating rate for the processor of
around 199KHz. Along with the Rockwell chips, a single TTL 74154
chip rounds out the ICs in the machine. The keyboard connects to the
main board via a high quality plug-in connector with gold-plated
contacts.
Main Circuit board of PC-1001 with five Rockwell IC's that make up the microprocessor that runs the calculator
The display module, consisting of fourteen
rather tiny vacuum fluorescent display tubes soldered to a small circuit
board, also plugs into the main board. The left-most tube in the display is
a special tube containing three symbols, a dot (apparently not used), a minus
sign, and an 'M'. This tube indicates the sign of the number in the display,
and the 'M' lights up when memory register 1 as non-zero content. The following
ten tubes, which display numbers using an eight-segment rendition (allowing
the digit 4 to have a 'tail') with a right-hand decimal point, provide
display of results significant to ten digits (or the ten digit mantissa
when in scientific mode). The third tube from the right end of the display
is a duplicate of the sign/memory status tube, providing a '-' sign for
displaying negative exponents when in scientific mode. Positive exponents
are indicated
by this tube remaining blank. The last two digits indicate the exponent
for numbers represented in scientific notation. When the numeric display
selection switch is in 'FLOAT' mode, the calculator will automatically
switch into scientific notation when the number in the display is larger
than can be represented in ten significant digits. When in 'EXP' (scientific)
mode, the display represents all numbers in normalized scientific notation.
The PC-1001 is not a terribly fast
machine, definitely slower than the HP-35. This is likely owing
to the relatively slow operating rate of the PPS-4 microprocessor.
Measuring the response time
of the machine is quite easy, as the 'PRO/BUSY' LED lights during
calculations to indicate that the machine is busy. The basic four functions
return results within perhaps 1/10th of a second or less. The higher math
functions require more time, with the Sine of 90 degrees taking about 1.5
seconds, and 210 taking a little over 2 seconds. The trigonometric
routines have some bugs in them; for example, calculating the tangent
of 90 (which has an infinite result), results in the calculator showing
an answer of 5000000000., which is patently wrong. Such a calculation
should result in an overflow, which the machine indicates (when properly
detected) with all numeric tubes displaying zero and decimal points
on at the same time, dimly lighting the 'PRO/BUSY' LED, and disabling the
keyboard from all keypresses except the [C] key.
Sharp made a follow-on machine to the
PC-1001, called, logically enough, the PC-1002. The PC-1002 was virtually
identical to the PC-1001 with the notable addition of
a unique feature for the time - a socket located under a cover on the
bottom of the machine that allowed a ROM chip to be plugged in. The ROM
chip provided pre-programmed functions that could be called upon by four additional keys on the keyboard -- [A], [B], [C], and [D]. The ROM could contain
programs up to 256 steps in length. Sharp offered a variety of
ROM modules, and also offered development services for creation of
custom modules for specific customer requirements. Standard ROM modules
were available for statistics, advanced mathematics, surveying, finance, and
others.