Now easier for people to get HP2000/Access up (was: More HP microcode & loader rom detective work)

From: Jay West <jwest_at_classiccmp.org>
Date: Tue Jul 27 13:14:54 2004

Dwight wrote....
> OK, take a deep breath. Explain what IOP firmware is?
> Dwight

Ok, I'll take a momentary break from my month-long happy snoopy dance to
answer this :)

HP released HP2000 Time Shared BASIC (TSB) in several versions. 2000A,
2000B, 2000C, 2000C', 2000E, 2000F, 2000F', 2000/Access, and 2000 System.
These were basically just releases over time with more features, different
hardware support, etc. All of the variants require TWO cpus to run, except
2000A and 2000E.

However, 2000A (the first version) required some hardware that is pretty
much impossible to find (fixed head disc's and drums for example). It wasn't
very full-featured as to the BASIC language either. 2000E was a stripped
down version and also lacked some nice BASIC features, and the E version
also had an odd hardware limitation - I forget what it is, but, I think it
was that it could only use 7900A disc drives which are fairly hard to find
(ie. no support for 7905/6/20/25 drives). If you've only got one cpu though,
(and no IOP firmware or MUX set, see below), 2000E is a great little system
to run. The only hard part to find to run 2000E is the 7900 drive and the
12920/21 mux set. For the cpu you can use 2100 or 21MX/M or 21MX/E.

All the other versions require two cpus. One cpu is the "system" processor
and actually runs basic programs, talks to the disc drives and tape drives,
etc. The other cpu is called the "IOP" (I/O Processor) and it's role in life
is mainly to talk to the 12920/21 mux set (what you hook up all user
terminals to) via custom firmware (IOP firmware). The IOP also handles
nonsharable devices that users can use, except the 7970 (and for 2100
platforms, the 2748 paper tape reader) which is/are handled by the system
cpu. Unsubstantiated rumor - I heard HP did the two processor approach with
custom firmware in the IOP because the 2100 cpu wasn't fast enough to keep
up with 32 terminals all doing 2400 baud. So they microcoded the 12920/21
MUX routines and dedicated a processor to just that. I suspect that over
time, with the 21MX-E series, the cpu was now fast enough to handle the mux,
but they were already entrenched in the "two processor, one with firmware"
approach to change back to a single processor (this is strictly conjecture
on my part).

Bear in mind that microcode is specific to which cpu architecture you're
using. For example, the Fast Fortran Processor microcode chip that you plug
into a 2100A or 2100S will certainly not work in a 21MX M series or 21MX E
series. The FFP for E series wont work in an M series, etc. because the
binary representations of the same microorders is different.

Years ago, after years of searching, I found the IOP microcode chips for the
2100, which allowed me to get my 2000/Access system up and running. However,
to my knowledge it is the only 2000/Access system running anywhere, and I'd
definitely like to see other collectors able to get one up and running. The
2100 cpu's are not at all common, and fairly cantankerous. Parts are quite
scarce. So I went searching for the IOP microcode for the M series (because
at the time, I knew HP made the IOP microcode for M series, but didn't think
they ever made it for the E series). Finally Al Kossow found a source that
had a couple IOP microcode boards for the M series - he got one and I got
one. Of course, the M series machines are not all that common either. I
wanted to be able to run (and I wanted many collectors to be able to run)
2000/Access on something easier to find hardware for, and the hardware would
be easier to maintain. A few collectors have M series machines, some of them
I have heard are not in running condition though. Others only have one - and
it takes two.

So I prepared to embark on a long project - porting the M series IOP
microcode to the E series. There is a chart in the HP 21MX/E
microprogramming book, showing the conversion bits between M series
microcode orders and E series microcode orders. So I bought a WCS board, and
was going to download the M series microcode via a prom programmer, modify
the instructions in it from M microorders to the equivalent E microorders,
and pray that the M series microcode didn't use any "M-Only" microorders and
that there were no timing loops to worry about. I could test the code in the
WCS board, and once it was working - burn it to proms for all to use.
However, a while ago I heard that HP actually DID release the 2000/Access
IOP firmware for the E series - but no one in the world seemed to have a set
of those proms anywhere. Many classiccmp'ers and others have been searching
for it. So I figured the microcode conversion project of the "in-hand" M IOP
microcode to E IOP microcode was the best shot. I had just installed the WCS
board a few days ago and was getting ready to dive into that project.

Then at VCF... a kind soul who I shall ever be indebted to (Bob Shannon)
gave me a FAB board (the board that holds microcode roms on the M/E {there's
also the FEM board - better in my book}) in a box with a few other boards he
didn't need. I didn't realize what the firmware chips were - but since it
was coming from Bob, I figured they were probably DMI or FFP most likely. I
was going through all my firmware last night trying to determine exactly
what were in all the E series machines. I couldn't easily identify those
chips (HP uses different part and product numbers for the same thing, so I
didn't catch it). I got a list of all the unknown roms I had and posted it
to the list. Minutes later, I decided to do a google search for one of the
chips on the FAB board Bob had given me, and voila - it popped up on Al's
site as the IOP firmware for the 21MX/E-series. So the Great Trailer
Incident (and poisin ivy) was WELL worth it a thousand times over!

What does this mean for collectors? Well, used to, getting a 2000/Access
system up was a pretty insurmountable task, because you had to have 7900
drives (not common), not one, but TWO 2100 cpus (not common), the 2100 IOP
firmware (not common, but obtainable - you could copy mine), and the
12920/21 mux set (not common). Pretty daunting task. Then when Al Kossow
uncovered the IOP firmware for 21MX/M, you could do it with a 2108 or 2112
(still not real common, and you needed the other stuff). But now, with the
discovery of the IOP firmware for 21MX-E series, the hardest parts are now
somewhat trivial except the 12920/21 mux.

With the E series roms now being found, here's what is needed to run
2000/Access:
Two HP21MX E series cpus (common as dirt)
IOP firmware for E series (copies are now available)
One disc drive: 7900, 7901, 7905 (all uncommon), 7906 (common as dirt),
7920, 7925 (somewhat uncommon)
7970E mag tape (somewhat common)
Processor Interconnect Kit (very rare - BUT - it's nothing more than four
"grd tru +/- boards" and those are very common, plus two special cables that
are rare, but could be made very easily)
12920/21 mux set (rare)

Or, you can go for the 2000/E version still - less functionality but still a
great system:
One 2100, 21MX/M or 21MX/E
2748B paper tape reader
7900 disc drive
12920/21 mux set

So now, more people will be able to find the hardware required. The ONLY
thing that is still fairly difficult to find is the three board 12920/21 mux
set. Now, if someone could just engineer a replacement with modern
technology, then pretty much anyone who wants to could run versions of TSB.
A future project of mine - modify TSB so that the 12920/21 mux isn't needed
at all, but allow it to use baci boards, 12531/HSterm boards... all of which
are common. I'll get there someday!

Regards,

Jay West




---
[This E-mail scanned for viruses by Declude Virus]
Received on Tue Jul 27 2004 - 13:14:54 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:36:52 BST