
What's new
on the site ?
**** NEW ****
I started to publish this month my work on the Woodstock family.
It will include:
- HP-21 @ HP-25 Reverse engineering hardware,
- HP-25 ROM comment,
- HP-67 Hardware & Firmware.
Feb 2010 : - updated HP-21 @ HP-25 PSU circuit diagrams (with equivalence).
Oct 2009 : -
Display text revisited with new photos,
- The forum is more productive (how to repair you HP),
- updated Classic power adapter block diagram with equivalence.
Aug
20, 2009 : Inductive display, Keyboard, Anode&Cathode drivers and a full
schematic of the display.
5820 in October,
6222 visitors
in August 2009
21 July 2008 : published a Pspice
simulation (with the schematic) of the HP (35, 67 & 97) power unit
(Best seller in 2009).
19 March 2008 : updated the "HP-35 power unit"
with the HP-67, HP-97 power circuits and Classic power adapter block diagram &
photo.
Feb 15, 2008 : more cosmetic changes (many
requests) : the "h" (black) key is bringing the black labels (e.g : 1/x,
PAUSE, etc) on the right key, it will improve visibility. As many people
asked me : this software a true emulator running an image of the real
HP-67 ROMs dumped electronically.
Feb 07, 2008 : a few cosmetic changes, the
yellow and blue labels are now below the key - but no room for the black labels.
Not this simulator is a tool meant to study the HP-67 firmware.
January 30, 2008 - Version 2.3 of the
HP-67 ROM simulator (the first version -ever- with a card
reader simulator) is uploaded.
The function PAUSE is implemented : you can as
with the real calculator insert a "pause" in the execution of a program, enter data or read a card :
here is a program on a card to test the function (see
manual for more details). I changed slightly the format of data on a card,
dumping it in hexadecimal form : the parser is now more robust, correcting a
potential problem in the read routine when pasted from a text editor.
Card format (1 side) : 34 records (lines) of 7 digits (28 bits)
each digit is an hexadecimal number {0x0-0xf} (together 952 bits) :
(1 record 0f '0' for clocking out),
1 record of header,
32 records of data or program,
1 record of check-sum (just an addition of the records).
In the header is recorded the status of the machine and
one of the 6 card types:
- one sided program,
- 1rst side of a two sided PRGM,
- 2nd side of a two sided PRGM,
- one sided data card,
- 1rst side of a two sided data card,
- 2nd side of a two sided data card.
The order of reading the sides does not matter.
There is no format control in the simulator (just a filter for spaces 0x20 and CRLF
0x0d 0x0a )
; everything is done by the ROM. So if you modify a card with a text
editor, be sure the check sum is corrected (I used once my HP-16C to sum the
records) -but there is no interest.
If you want to study a function, just put a break point
@ 6027 : the entry point of the dispatch routine, the function code is in A[1],
A[0], ex CLx = 0x32 (not this is not the visual form (row, col) = 44 for CLx) ;
but it's the same format 0x32 on the card or in memory, though reversed in the
latter case.
Remember : if one of the two 2 applet windows are
hidden by the main window, the clr button in the debug window will bring them to the front of the window stack.
January
22, 2008 - HP-67 ROM
simulator The WRITE, READ & MERGE commands are
working on the uploaded version 2.2 (W/DATA and WRITE in PRGM mode, READ & MERGE
in both modes). It allows to dump the prgm or data memory into the Java applet window,
sava it for later use into a pure text editor and read it later into the
simulator.
I have added "CRD" button to
simulate the insertion of a Card in the right slot,
a MD button to dump the data memory and ,
a MP button to dump the program memory.
1)
When in PRGM mode, pressing "CARD" stores the program steps in the CARD Window,
Ctr A and Ctr C allows you to save it in a text editor.
2)
Pressing "CARD" in RUN mode loads the program, into the CARD window.
Cards must be
a pure text file and can be stored on your PC or MAC (now RTF or whatever, just
*.txt).
If 2 cards are requested, the simulator displays "Crd"
to prompt you for side 2 (more than 112 steps) : repeat the procedure.
For Data, the function "f W/DATA" is doing the same thing
as on the real HP-67, save data registers for future use.
To save data press "f W/DATA" ant the simulator will
prompt you for one or two cards (if secondary registers are not empty).
To load a data card in the simulator, paste the text in the Card Window and
press "CARD".
To use the "Merge" function refer to the HP-67 manual.
Other buttons in this version (2.2) :
MP : dumps the program memory to the applet window,
MD : dumps the data memory,
Clr : brings the 2 applet windows to the front of the window stack, in
case the are hidden.
Here is a demo CARD : the
small program computing the area of a circle (enter the radius and press the A
key).
Please be kind to report problem and give feed back. I have
not yet created the user guide, but a good break point to follow the code is @
217 (octal) where a key is fetched and will be serviced.
* Dec 2007, Jan 2008 : The Java simulator running the dump
of the HP-67's ROM is here (version 2.1) ; but the comments for the
micro code ( HP-65 & HP-67) are still on my desk, sorry! - Jan 2008 I hope).
Thank you to E. Smith for his precious help,
on the microcode source and card reader handshake.
This is a work in progress. In fact if the simulation works rather well AFAIK in
RUN and PRGM modes ; but the handshaking between the microprocessor and the CRC is not yet
completely available : it is a hard work since the related "op codes" are mostly
unknown to us, at the moment.
* Nov 2007: "Cordic
for dummies" : Yet another Cordic class (the simplest I hope).
* July 2007:
-> Hardware in depth exploration : The power on reset
circuit.
-> I received recently the unexpected and precious help from a friend
regarding the HP-65's ROM. The Java simulator is running now
the
HP-65 micro-code without problem, allowing to study how the program
storage circuit is working ; its program
memory symbolic
addressing and its hardware label-searching mechanism are very
original. The simulator is here :
HP-65 ROM simulator, the comments are coming.
In Dec 2007, Pavel Burdanov reported a problem with this simulation. A
simple typo formatting the ROM image has been corrected. All is working
fine now, to my knowledge.
* May 2007 : I
continued the "HP-35 hardware pages" with a reverse
engineering of the power units for the Classic and Woodstock series.
This job has been completed with the precious help of Daniel WEED -
ex-rocket scientist from Phoenix, AZ. Dan did a nice job deconstructing
the power unit of the HP-45 and repairing one unit with modern discrete
componants.
* March 2007 :
3204 visitors, around 3000 visitors per month since.
* January 2007, I started
to publish the HP-35 hardware pages. It is a kind
of "black box" reverse engineering: you can't open a chip to see what's
going on inside. But I had input and output signal traces on my scope
and in mind the 1972 state of the art (sometimes though it is hard to
follow, because of HP ingenuity for example the way they mixed PMOS
chips and TTL logic, or the efficient inductive drive technique used
for the LED display is great art! think that in the worst case -13 8's
and 2 minus signs -needs only
100mW!).
* The HP 35 ROM
Mapping is finally on line (a very hard work) : "The
HP-35 firmware decoded & other mysteries".
Should be revisited in December 2006.
* I bought this summer a fac-simile of Briggs' "Arithmetica
Logarihmica" and I could complete the page "The Difference Method of
Henry Briggs".
Upcoming
projects
The reverse engineering of the HP-35 (hardware and
software) is finished.
Here are the projects I'm
currently working on :
One of these programmable calculators reverse engineering :
-> HP 25, HP 65 or HP 67.
You
can support the development of my initiative -for the preservation of
this software know how by giving me a clue, the copy of a rare
document, a helping hand, or just an encouraging email.
I particularly search all documents or indications allowing to
draw a secure timeline for the HP-35 (ads, prices, amount of sales per
period, production per period, etc).
You can publish on this site or post on the forum. Welcome!Thank you all very much, in advance!