I'm sure Rodney Brown would like to have the
register/address mappings
for the HP150.
Sure.
The HP150 only decodes the bottom 8 address lines when doing an I/O
cycle, but the manual suggests setting the upper byte to 0 for
compatibility with future products. Expansion cards may, of course,
decode all 16 I/O address lines.
The I/O map is as follows :
0000-0003 : MPSC Datacomm controller (7201)
0004-000B : HPIB controller (9914)
000C-000F : Baud rate generator (8116T)
0010-0013 : Interrupt controller (8259)
0014-0015 : Datacomm 1 port control, clock select
0016-0017 : Datacomm 2 port control, manfuacturing test repeat
0018-001B : Keyoard/touchscreen controller (8041A)
001C-002F : Reserved, DO NOT USE
0030-003F : Internal printer interface
0040-005F : Real time clock (MM58167A)
0060-007F : I/O image DO NOT USE
0080-00FF : Resereved for accessory slots
Now, to expand each of thase :
MPSC (7201/8274)
0000 : Channel A data register (R/W)
0001 : Channel A control register (R/W)
0002 ; Channel B data register (R/W)
0003 : Channel B control register (R/W)
HPIB (9914)
0004 : Interrupt status 1/Interrupt Mask 1 (R/W)
0005 : Serial poll (R)
0006 : Bus Status/Auxilliary command (R/W)
0007 : Data In/Data Out (R/W)
0008 : Interrupt Status 0/Interrupt Mask 0 (R/W)
0009 : Address switch/address reg (R/W)
000A : Address status register (R)
000B : Command pass-through/parallel poll (R/W)
Baud rate generator (8116T)
000C : Baud rate select (W). High nybble -> port 2, low nybble -) port 1
Nybble : Baud
0 50
1 75
2 110
3 134.5
4 150
5 300
6 600
7 1200
8 1800
9 2000
A 2400
B 3600
C 4800
D 7200
E 9600
F 19200
Interrupt cnotroller (8259A)
0010, 0011 : Interrupt controller registers (R/W)
Datacom 1 control/clock select
0014 : Read
Bit
7 0
6 0
5 0
4 1
3 DM
2 0
1 OCR2
0 OCR1
0014 : Write
7,6 Clock select
1 OCD2
0 OCD1
Datacom 2 contorlmanufacturing test repeat
0016 : Read
4 POD (1 if datacom 1 daughterboard in place)
3 DM
2 MTST (1 if U62 pin 14 grounded -> repeat failing manufacturing test)
1 OCR2
0 OCR1
0016 : Write
1 OCD2
0 OCD1
Keyboard/touchscreen cotnroller (8041A)
0018 : Data register (R/W)
0019 : Status/cmmmand register (R/W)
Internal printer
0030 : write -> Character to print
0030 : read
2 Not PaperOut
1 Online
0 Ack
Reak tune clock (58167A)
0040 : Millisecond counter (R/W)
0041 : Tenth/hundreth second counter (R/W)
0042 : Seconds (R/W)
0043 : Minutes (R/W)
0044 : Hours (R/W)
0045 : Day (R/W)
0046 : Date (R/W)
0047 : Month (R/W)
0048 : Milisecond RAM (R/W)
0049 : Tenth/hundreth second RAM (R/W)
004A : Seconds RAM (R/W)
004B : Minutes RAM (R/W)
004C : Hour RAM (R/W)
004D : Day RAM (R/W)
004E : Date RAM (R/W)
004F : Month RAM (R/W)
0050 : Interrupt status (R)
0051 : Interrupt control (W)
0052 : Counter reset (W)
0053 : RAM reset (W)
0054 : Status bit (R)
0055 : Go command register (W)
0056-005F : Reserved.
Incidentally, the HP150-II (12" CRT model) is much the same except that
there's no internal printer interface. The keyboard/touchscreen
controller is replaced by an 8042 talking to the HP-HIL chip.
That should get you started :-)
[...]
I have several later HP9000's and checked the
chips in them. They have a
48 pin chip and are marked 1TL1-0008. A quick google search confirms
that's the "medusa" chip.
Yes. I think it also campe in a PLCC package, and was used in some later
disk units.
The HP9000/200 machines (the only ones I know much about) had a built-in
HPIB port using a 9914 chip. There was an expansion card (98624 IIRC)
that added another HPIB interface, also using a 9914, and a 'high speed
disk interface' using the 1TL1 Medusa. I certainly have the former card
in my collection (to go on the bench soon), I may well have the latter.
Anohter chip you might come acress in HP HPIB devices is the 1LH4-0001.
This is _NOT_ an HPIB controller, it's just the bus buffer. The pinout
(from the 82169 service manual) is :
------------
Gnd --| U |-- Vcc
D0 --| |-- Q0 ]
D1 --| |-- Q4 ]
D2 --| |-- Q1 ]
D3 --| |-- Q5 ]
D4 --| |-- Q2 ]
D5 --| |-- Q6 ]
D6 --| |-- Q3 ]
D7 --| |-- Q7 ] HPIB connector signals
CA/ --| |-- EOI ]
TA --| |-- REN ]
SRQ --| |-- DAV ]
ATN --| |-- NRFD ]
EOI --| |-- NDAC ]
DAV --| |-- IFC ]
NDAC --| |-- SRQ ]
NRFD --| |-- ATN ]
IFC --| |-- PPL/
REN --| |-- UPE/
Gnd --| |-- SC
------------
It appears that SC = System controller
CA/ = Contoller active
TA = Talker active
-tony