[HPCC-Conf] Too Quiet?
Tony Duell
hpcc-conf@lists.handheld.org
Tue Oct 1 18:11:01 2002
> > Yes, I'm still fooling around with hardware, but as I learnt at the
> > conference, I'm about the only person left who will attack a calculator
> > with a soldering iron. Suggestions as to how to encourage this activity
> > are welcome.
>
> I haven't taken a soldering iron to a calculator since 1982, but I'm
> not the least bit opposed to doing so if it's for a good reason (repair,
First good reason : Because it's there :-)
> or an interesting/useful hack). In the last few years, most of my
> calculator hacking has only involved clipping test leads onto the legs
> of components, in order to monitor the bus signals and extract the
> microcode for use in simulation.
As an aside I have a slight objection to calling this microcode. I guess
it _is_ the microcode of a ficticious processor that runs user bytecodes
as its instruction set (or whatever), but it still seems a little odd to
me. Anyway....
> For the first and second generation handhelds (Classic, Woodstock,
> Topcat, HP-19C, and HP-67 models), since there is no self-test it is
> much more difficult to extract the complete microcode. I've tried one
> approach, and am considering two others:
>
> 1) Monitor the bus, and manually operate the calculator to put it
> through it's paces. If you exercise enough of the functionality,
> a bus monitor will see most of the ROM locations. It's very
> difficult to get all of the used locations (and there may be some
> unused locations). This is equivalent to doing code coverage
> analysis for software testing, except that usually you have the
> source code (or at least the object code) *before* you do that.
> This technique is totally non-intrusive.
>
> 2) Same as the previous approach, except use a bus monitor that is
> capable of overdriving the address line. When there are addresses
Hmmm... However breif the 'overdrive' pulse, I'd still worry about the
output driver on the ISA line... Should be OK, but I'd prefer to cut the
track (which can be repaired to give the same electrical performance, and
as I _use_ my machines rather than put them in a museum, I don't mind
about minor mods like cut-n-jumpered tracks. Maybe if I had anything rare
I'd worry more.
> 3) Disconnect the address line (ISA line is the second generation)
> between the CPU and ROMs, and drive the desired addresses directly.
The HP67 actually has a jumper for this (close to the keyboard PCB
connector at the front edge of the logic PCB). I should have remembered
to point this out to you.
> This can be accomplished by lifting a pin, or by cutting a trace.
> HP actually did this for factory service of some calculators that
> were defective on initial construction, or returned by customers.
> The Topcat series machines have a set of five test points at one
There are useful testpoints in just about all early HP calculators.
In the case of the Woodstocks, the ISA, Sync, and Phi_1 (I think it's
phu_1) are brought out to testpoints near the front edge of the PCB.
For the HP67, those signals appear on 3 otherwise unused pins of the
keyboard PCB connector. They go nowhere on the keyboard PCB.
For the classics, there are a set of (normally) 12 testpoints giving the
power lines, buffered clocks, sync, IA (address), IS (data), init
(reset), data, carry, etc. I demonstrated some of those in the repair
session. The rest of you (who didn't attend said session) will just have
to ask me nicely for info ;-)
> trace cut then jumpered. I expect that HP had some sort of custom
> diagnostic machine that attached to the test points, but I've never
I beleive that's the case, although I have no real proof
There's aonter method :
4) Desolder the ACT (despite the flamefest on another mailing list
related to this, I've desoldered many chips from HP machines without
damage). Take over the complete bus yourself (the ACT bus is similar to
the NUT bus, and you must have docs on that!).
-tony