Welcome to Jacques Laporte's Home on the Web

 

The HP 35 calculator
Woodstock
Cordic (English)
Cordic (French)
Cordic for Dummies
Digit/digit method
Briggs and HP35
The famous BUG
HP35 on ARDUINO
External Links
Forum
To get in touch
New & Upcoming

updated:

2014-05-22

 

  

 

 

 

 

 

 

 

 

Micro computers were part of my life for more than 25 years (from the very start of the Micro computing Era to the Internet revolution). You will find here a few pages about this saga.

• "You ought to be able to put it in your pocket !" (button The HP 35 Calculator). I personally consider the HP35 as one example of brilliant American know-how and surely the very start of personal computing.

"About 15 minutes-or-so after we finished the 9100 (HP 's first programmable calculator, introduced in l968 at $4900), Bill Hewlett said we should have one in a tenth the volume, ten times as fast, and at a tenth the price, Later he added that he wanted a shirt-pocket machine" (Sheldon Edelman, 1972). 

To pay tribute to this brilliant machine, I will, in the following dedicated web site, describe the HP 35 hardware architecture and comment the calculator firmware, detailing the algorithms function by function: ln, log, sin, cos, 1/x .. etc.

• "The secret of algorithms" (buttons Cordic): I could use the HP 35 since the early 70's and a question then needed an answer: how could they put so much power in such a little box? When I pushed the log key, the result was here immediately. 

It took me quite a bit of time to put the puzzle together . But in 1981, I gave this article to the "l'Ordinateur Individuel": Cordic was the name of the secret of the fast calculator algorithms. Readers gave me a really good feed back (original French and English versions ).

• "Briggs and HP35” : Hewlett-Packard with its 1972 HP35, really revolutionized the engineering world. No more slide rule to handle, no more log tables, just press a key and magically the result was there in around 200 ms!
Surprisingly, the internal algorithm is based on a method close to the approach that described Henry Briggs
in 1624!

I explain in this article the magical link between Briggs' “Radix method” and the firmware of the HP35.

 • "The famous BUG” : By mid 1972, problems (let's call them bugs) were discovered in the firmware of the HP 35 ;  the most visible was the exponential one: exp (ln (2.02)) = 2 instead of 2.02!

HP had sold some 25000 units and elegantly offered a replacement. Around 5000 machines were returned to have their ROMs exchanged.

In 2006, using a dump of a buggy ROM, I could elucidate and fully explain the reasons of the problem. It took me three days to achieve this software engineering hard work. During this time, I felt -35 years later- very close to the man who debugged this code, under maximum pressure, in 1972.

The firmware is crammed in 768 words: no room left in these 3 roms. It was a kind of constant-sum game. For 2 instructions added somewhere (and that was the case with the exp(ln((2.02))) problem), 2 other instructions had to be removed, and in the same ROM!

In fact the algorithms evolved of course (Classic, Woodstock, Spice …), mainly on the precision issue. But the approach in the transcendental functions remained the same. Here, the name of Dave Cochran must be cited. He is the man who implemented Cordic in the 9100 and 35 calculators, based on the J.E. Meggitt’s paper, and made it possible.

**** NEW on the site ***,*

2014: Updated 'Briggs and HP35' discovering new material on the Radix Table method :

See my new page "The Radix Method" (May 2014).

2012 :  New and improved version of the HP-67 ROM based emulator
(Applet or Stand alone version)

Feb 2012:

Updated 'Briggs and HP35'  & 'Digit by digit methods' clarifying the radix method presentation.

 

June 2011 : I'm very glad to introduce a new project : Pietro De Luca, from Pescara, Italy, realized an HP35 hardware emulator on the Arduino platform (button HP35 on ARDUINO)

It is very nice to see the ancient ROM code executed by a very popular & new ATmega328 board.

Very useful too : Cordic is there on your Arduino. Just have to add an old PS/2 keyboard and a HD44780 LCD display

Pietro is currently majoring in computer science at the University of L'Aquila

This project will be supported and updated periodically.



December 2010 : Start of publication of the 'Woodstock family' : a one year series, probably.

Dec 23, 2009 : HP-35 Schematics (using OrCAD).

Updated the "best seller" page "HP POWER UNIT" with circuit schematic and photos of the HP-65 PSU.

Aug 20, 2009 : Inductive display, Keyboard, Anode & Cathode drivers logic.

Nov 11 2008: How to dump the ROM of a HP-35 (or another HP calculator) in half an hour and for a few dollars.

Oct 2008: online the study of the "clock driver circuit", with simulation and screen photos.

Oct 2008:updated the "Power on circuit" study with a Cad schematic, a Spice simulation and error correction (thanks to BE).
 
Aug 2008 : I finished the work on the power supplies, publishing a working Pspice simulation for the HP-35 & other HP power units (UPDATED Oct 14).

March 2008 : updated the HP-35 Power Unit with now the HP-25, HP-45, HP-67, HP-97 power circuit and power adapter block diagrams & photos.

Dec 2007 - Feb 2008 : in line a HP-67 true emulator running an image of the real HP-67 ROMs dumped electronically (the first version -ever- with a card reader simulator, reading and writing mag Cards). With the help of Eric Smith.

* Nov 2007: "Cordic for dummies" , Yet another Cordic class (the simplest I hope).

* July 2007: in line a Java emulator is running a dumped image of the HP-65 ROM, allowing to study how the program storage circuit is working.