Warren wrote...
Well, I went and did it. I am now the proud owner
of an HP-2117F, if I
can identify it correctly,
Oh yes, you identified it correctly. Congrats on a nice box!
My experience with the HP 1000 series machines is,
almost exclusively,
programming them in TSB on HP-200B, C, and F systems, many moons ago.
Woohoo! Another TSB'er, and one getting real hardware no less. Awesome!
Jay, you seem to be an alpha geek when it comes to HP
iron.
Old HP 21xx/21MX iron... there's a few others lurking on the list far more
competant than I on that gear, but I'm not a complete idiot (usually) on the
topic :) I do seem to be one of the few that really focuses on TSB.
(A term of respect, no offense intended...)
None taken :)
So, could you look at the
above auctions, and tell me what I need to make a good system.
Obviously, a disk system comes to mind... but, if you could be
specific, I would appreciate it.
What you need depends on what OS you are going to run. Bear in mind that my
first love is TSB and always will be. BUT... do yourself a favor (and I
HIGHLY recommend anyone else messing with HP 21xx/21MX gear do the same) and
take a look at HP-IPL/OS. This is a small but incredibly useful and powerful
OS written recently (comparatively) by list member Bob Shannon and Terry
Newton. Think of it as a sort-of Forth-like development system - the
learning curve to get it up and running and start really using it
productively is measured in minutes, not hours - and there is some real
meat/capability there for those who want it. Folks, I'm telling you -
HP-IPL/OS is hella cool. See:
http://www.infionline.net/~wtnewton/oldcomp/hp2100/
I'll detail some "off the top of my head" OS & hardware choices below,
or at
least generalizations to consider before digging into things deeper.
Also, what are the chances of this
being a suitable machine to run Time-Share BASIC, or TSB?
Good, with additional hardware ;) See below...
I imagine I
would need microcode boards or ROM for the microcode boards already
there, but, for all I know, it already *IS* a TSB machine.
Special microcode is needed for 2000/Access only. The other versions of TSB
don't need it. The microcode used to be something of a holy grail... but
over the years I have located it for most all the different HP machines (no
small amount of thanks for that should also go to Al Kossow, Eric Smith, and
Bob Shannon). It should no longer be considered an obstacle at all. For most
of the "more fun" versions of TSB, you'll need two cpus though so be on the
lookout for another 21MX :) But continue reading below before giving up hope
if two cpu's isn't in your future...
Ok... where to begin....
There are three likely candidates that pop into my head. HP-IPL/OS, TSB, and
RTE. There are other choices that I know exist, but I haven't done the
legwork to find media/docs and try them out. Some of us HP inclined people
need to spearhead some of these less common OS's like DOS, MTOS, DACE...
they need to be preserved and I'm not aware of anyone actively working on
locating them and running them. Twould be a shame if they vanish into the
bitbucket... Oh, there's also the standalone stuff... the early HP's didn't
run OS's, there was standalone fortran, apl, linkers, editors, etc... much
like the early PDP8 stuff. The standalone setups shouldn't be totally
discounted.
HP-IPL/OS - I'm not going to go into any detail on this one here. It rocks.
Nuff said. See the URL above which speaks for itself. It will run on the
tinyest of configurations, up to the largest setup you can imagine. I'll let
Bob fill in any details people want to know, he's way more qualified than I
to speak on HP-IPL/OS requirements. This absolutely should be the first OS
anyone runs when getting into HP gear, because you'll get your machine doing
something interesting and fun with little hardware right away.
RTE - I need others on the list to speak to this. I don't run it currently,
although I have booted up a few different versions a couple times. To my own
way of thinking, it's an odd non-intuitive OS. That's my own (somewhat
uninformed) subjectivity though, many other HP'ers will strongly disagree
and their points are no less valid than mine (since they run it, probably
more valid than mine). I can say that running this OS is very attainable,
it's well documented and available. There is no doubt that it is by far the
most common OS on the HP 21xx/2100/21MX product line, and definitely the
reason it flourished for so many years. Pretty much any HP box you find in
the wild was last running RTE. RTE is like TSB in that there are different
variations or flavors of it, and each one has very different hardware
requirements (some versions require special microcode). I have some good
documentation about what hardware was required for which variant of RTE, but
I have both forgotten the specifics and where I pigeonholed those docs. I do
know that it ran on fairly small systems with little memory, up to the
biggest boxes/setups possible. In my biased opinion, the biggest advantage
of running RTE is hardware support - since it was the most common OS for
these boxes by far, almost any hardware you have will be supported. There's
much less worry about things like "I have to have a 7900A drive and 13210A
controller" because RTE will support the old 13210A drives, the later 13037
subsystems (7905/7906/7920/7925) as well as HP-IB drives (7906H, 7912, etc.
etc.), and wasn't SCSI done too? It is likely that I will be taking one of
my machines and making it run RTE permanently, if for no other reason than
to run large assembly's of HP code. Not to mention that I feel a little
guilty not being super-familiar with the flagship OS of these machines.
TSB - This is the most fun choice to me, or maybe I mean nostalgic. I (and a
suprising number of others) cut my teeth on HP 2000 TimeShared BASIC. It was
suprisingly popular in high schools and colleges as a teaching machine - so
it was many peoples first experience programming. The versions that were
produced were 2000A, 2000B, 2000C, 2000C' (2000C "prime" or "high
speed"),
2000E, 2000F, 2000F' (2000F "prime" or "high speed"), and
2000/Access. I
would dismiss A and B out of hand (with regards to what you should try to
run nowdays). They required certain specific hardware that is highly
unlikely to be found and were fairly primitive with regards to features like
the later versions were. For the purposes of discussion I'll lump 2000C &
2000C' together, and then separately lump 2000F & 2000F' together. I tend to
dismiss C and F as not worthy of pursuing, but only because 2000/Access has
every feature of C & F plus more. Used to, when the special microcode for
2000/Access was unobtanium - 2000C and F were certainly good candidates to
run since they didn't need the microcode. But now that the microcode is
found and easy to replicate, I see no real reason to build a C or F system.
Note that when I dismiss A, B, C, and F.... I wouldn't do that so easily if
there was a different look & feel to those systems. I realize someone may
want A, B, C, or F for nostalgia. But keep in mind that Access has all the
same commands and syntax (with VERY minor exceptions) as A, B, C, and F. So
if someone wants to feel the nostalgia of running that old 2000B system,
they will certainly feel the exact same nostalgia on an E or Access system.
It's unlikely they would notice a difference (even if the person's memory of
the A, B, C, or F machine was as fresh as yesterday). So that leaves us with
2000/E and 2000/Access as good candidates.
2000/E is a fairly stripped down version of TSB. As fas as capabilities go,
it's a bit more like 2000A and B. It requires a single cpu. I am not sure
about memory, but I suspect it needed 32kw (definitely not more than that,
since DMS wasn't supported or needed). It probably needed the floating point
option. The system console must be a 12531 board, TSB never supported any
other boards for the console (foggy memory, there may have been a high speed
"crt" board, something like 12880? that looked to the system just like a
12531, this would be ok). The BACI board (which is by far the most common
serial interface) will not work. The only disc drive supported is a 7900A,
which means you need a 7900A disc drive and a 13210A disc controller
interface (2 card set). These drives are not all that common but do show up
from time to time. You also need a paper tape reader,
2748B, which uses the
12597-6001 interface board (usually marked "8 bit
dupr" for 8 bit duplex
register board). You also need a Time Base Generator (TBG) board. A mag
tape drive is very handy (7970B or 7970E, E prefered), which uses a 13181
controller (2 card set) - but this is NOT required. Lastly, what is required
and seems to be very hard to find... is the 16 channel multiplexor used to
hook up user terminals. This was 12921-60002, 12921-60001, and 12922-60001
(a 3 board set, generally called a "mux set" or "12920/21/22" set).
These
three boards hook up to an external printed circuit board (don't have the
number handy) which presented 16 db25 ports. If you don't have the external
board, you CAN build your own RS232 cables with DB25 on one end and connect
them to the right spots on the mux set boards instead. So in a nutshell, to
your 2117F cpu, you need to add a 12531 console board, 7900A disc drive &
13210 controller set, 2748B paper tape reader & 12597 interface, and
12920/21 mux set. The major differences between 2000/E and 2000/Access...
the basic language has no "system" statement, nor formatted printing (no
print using or image), and no timed input. There are no group libraries,
only system and user. It also doesn't support MRJE to IBM or CDC mainframes.
Some disagree, but I think 2000/E is a very nice and very usable system.
2000/Access is the last/best version of TSB. It's very close to 2000C and F,
but with group libraries and IBM/CDC MRJE. For this (as well as 2000C and
2000F) you must have TWO cpu's, not just one. About the only cpu you CANT
use is the short 21MX/M designated 2105 (2108 and 2112 are fine) - this is
just due to space reasons. The main cpu needs 32kw of memory and the
floating point option. The slave cpu needs anywhere from 16kw to 32kw
depending on how you gen your system and the 2000/Access special microcode.
Paper tape is not required (unless you are using 2100A/2100S cpu's). For
disc, you can use 7900A or 7901A drives which use the 13210 controller set,
or you can use the 13037 subsystem (that's a single 13037 card in the master
cpu, and a small rackmount 13037 controller box) which lets you use
7905(7906) and 7920 drives. You can use both 13210 and 13037 setups on the
same system. Note, the last access as released didn't support 7906 drives
directly. It supported 7905's though, and the system has no way of telling a
7906 drive isn't a 7905, you just don't get the extra capacity. If you have
a 7906 just tell the system it's a 7905 and it'll work fine. The 7920 drive
also works and is supported on the 13037. The 7925 drive works on the 13037,
but I do not know for sure that TSB can use it partially or at all. On the
bright side, most any HP 21xx/21MX cpu found in the wild will meet the above
spec (sans microcode), and 7906 drives are common as dirt - still! A mag
tape unit (7970B or 7970E plus 13181 controller) is not optional, it's
required (they aren't super rare fortunately). The 12920/21/22 mux set is
also required (these are rare). TBG board is required. Console must be a
12531. The 2000/Access microcode is required (I can burn a set for you). The
extra requirement here (besides 7970 and 2nd cpu and microcode) is the
processor interconnect kit. This is a set of two 12566 boards in each cpu (4
total) along with two big cables that ties the two cpu's together.
Fortunately, 12566 boards aren't uncommon - the cables are, but those can be
fabricated yourself.
So, there you have it. If I were you, I'd focus on HP-IPL/OS first, while at
the same time looking around for the remaining gear to get RTE and Access
up. As I recall, any hardware that will run Access will most definitely run
some form of RTE, but the reverse isn't necessarily true. Welcome to the HP
crowd, congrats on your system... If I can help just drop me a line.
Best regards,
Jay West