Professional Documents
Culture Documents
The HP 67 Programmable Calculator
The HP 67 Programmable Calculator
The HP 67 Programmable Calculator
During this year's VCFE which took place in Munich as every year, I had the
opportunity to buy a HP 67 programmable calculator (as well as an HP 41C) in
unknown state at the VCFE flea market (and it can not be stated often enough, I
have to give my wife a kiss here since she not only never complains about the
fact that I spent far too much money for very obsolete calculators and
computers but instead is as happy as I am about new old machines we get -
thank you, Rikka, you are truly wonderful!).
The HP 67 was HP's flagship programmable calculator in the late 1970s and the
only competitor to Texas Instruments' TI-59. It features 224 merged program
steps and 26 data registers (which is less than the TI-59 offers) and a built-in
magnetic card reader/writer. As a true HP calculator it is a RPN machine in
contrast to the TI-59 which uses an algebraic input method called AOS.
Repairing:
http://www.vaxman.de/my_machines/hp/67/67.html Página 1 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
http://www.vaxman.de/my_machines/hp/67/67.html Página 2 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
I strongly suggest working on a very clean table - ideally inside a tub - to make
sure that none of these parts gets lost! I personally secure the balls and the small
(tiny!) wheel with a strip of duct tape and then remove them altogether with the
tape storing them in a secure place until it is time to reinsert them.
The four plastic balls will engage four control switches which are used to detect the
http://www.vaxman.de/my_machines/hp/67/67.html Página 3 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
presence of a card, its write-protect status, etc. while the tiny plastic wheel acts as
the counterpart of the big rubber wheel pulling the card through the mechanism. In
almost every case there will be some residue of the large, deteriorated rubber wheel
on the small plastic wheel which has to be cleaned very carefully and very
thoroughly. Even small amounts of debris will contaminate your precious magnetic
card strips and will result in a lot of problems reading and writing cards!
After I completed the repair of the card reader/writer, I built a replacement battery
pack using some off the shelf NiMH accumulators. Using a power supply I found
in my collection of miscellaneous spare parts I could then switch on the calculator
and it worked like a charm from the very first moment on. Thus I decided to take it
with me when I went to the USA in May 2007 to attend the OpenVMS boot camp
since leaving the house without a real :-) pocket calculator is no option at all and I
thought I might need something to play with during the endless hours of boring
flights.
When I checked in they were puzzled by the HP 67 dangling from my belt and
decided to check it thoroughly - the funny thing is that one man had a look at it and
said: "What a beauty you have! In the 1980s I saw a lot of these but I haven't seen
them for years!" - so even the security people at the airport know about HP pocket
calculators.
About in the middle of the week I would stay in the USA the card reader/writer
operation became random and finally the reader/writer stopped working at all. Thus
I had to take the HP 67 apart again after coming home to determine the source of
the problem.
http://www.vaxman.de/my_machines/hp/67/67.html Página 5 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
Example programs
Now having a working HP 67 in near mint condition (apart from some minor
scratches on the keyboard) I had to write some programs for it. I have to admit it
(and it is not that easy for me :-) ) that I like the HP way of programming a pocket
calculator more than the Texas Instruments way (altough I normally preferred my
trusty old TI-59 for my everyday calculations).
While the method of programming the TI-59 quite closely resembles programming
in machine language with every byte/word (name it as you like) occupying its own
memory location without any connection to other memory cells, the HP
programming methodology is more like assembly language programming as a
simple example will make clear.
Assume that you want to perform an unconditional jump, a GTO, to a label called A:
On the TI-59 this would occupy two memory locations, one containing 61, the
opcode for GTO and the other one containing 11, resembling the label A. When you
edit a program like this you always have to keep track of the meaning of the
opcodes while scrolling through the memory. Seeing the 11 it is not clear whether it
is the destination of a GTO or the name of a LBL, etc.
HP's way of programming takes the instruction as a whole and saves it into a single
"line" of code (which still consists of several bytes) which will be displayed at once
and not piece by piece. The same instruction GTO A will look like 22 11. 22 is the
GTO opcode while 11 is the label A. In this case the whole instruction can be seen at
once - you do not have to scroll up and down to understand what is going on. This
is what HP called merged instructions.
In the following some rather short and ugly example programs are shown to give an
impression of the way the HP 67 can be programmed.
The following short (and rather unelegant) example program calculates the so
called Ulam-series which is defined like this (for natural numbers):
It is not known whether all numbers will eventually yield 1 during this process, but
no counterexamples have been found so far. It is also not known if there is a
http://www.vaxman.de/my_machines/hp/67/67.html Página 6 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
The following program expects a number in the X-register of the stack and can be
started by pressing A. It will then display the elements of the Ulam-series in
succession and will terminate when the series reaches 1. The last number being
displayed is the number of steps which was necessary to yield 1 for the given initial
value.
The next program is a bit more sophisticated and not as unelegant as the prior one
(although there is quite some room for improvements). It calculates the prime
factors for a given value which is expected in the X-register on the stack.
To run the program place the number to be factored in the X-register and press A.
Whenever a factor is found the calculation will end, showing the factor. To resume
calculation press R/S until 1 will be displayed denoting that there are no more
factors.
http://www.vaxman.de/my_machines/hp/67/67.html Página 7 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
All in all the HP 67 is a bit faster than the mighty TI-59 - although it lacks the large
memory of the TI-59 and the ROM modules the TI-59 supports, the ease of
programming makes the HP 67 more fun to play with (at least for me as I have to
admit). A bit disturbing is the habit of HP calculators of not switching off the
display during calculations resulting in what HP called "blurry display" - a bunch
of flickering nonsense digits. The faint glowing "C" in the left most digit of a TI-59
is far more elegant and saves some power, too. The cards of the HP 67 (and its
successors like the HP 41C) have only half of the data density of the TI-59 cards
(two tracks compared with four tracks). Taking all this into account, it is a close
race between the TI-59 and the HP 67 and if I had to decide which one to take on a
lonely spot I would try to take both. :-) The HP 67 for the fun of programming it
and the TI-59 for its large memory and its ROM modules.
As with all HP calculators, the main site on the internet is The Museum of
HP Calculators which contains an incredible amount of background
information on these great calculators.
http://www.vaxman.de/my_machines/hp/67/67.html Página 8 de 9
The HP 67 programmable calculator 08/04/16 10:07 PM
ulmann@vaxman.de
05-JUN-2007
webmaster@vaxman.de
http://www.vaxman.de/my_machines/hp/67/67.html Página 9 de 9