To set up your OpenBSD/hp300 workstation, follow the diskless(8) man page.
At any time after it recognizes the keyboard, while it is doing its self test or searching for a bootable system, you can hit reset to return it to a cold-boot configuration. On HIL keyboards, this is <control>-<shift>-break for non-AT layouts (where break is the key in the upper left, where escape is on sane keyboards), and <control>-<shift>-pause for AT layouts. There is no equivalent over serial terminal -- you'll need to power-cycle your machine.
After it beeps (i.e. recognizes the HIL keyboard), press <return> twice to get the list of bootable devices. To perform simple hardware checks, hit <control>-C before it starts booting an OS. You can then type T to perform an extended self test or L to perform the extended self test infinitely until it finds a fatal error or L is typed again.
The newer HP Boot ROM, present on Series 400 machines and some of the later 300s (345, 375, 380, 382, 385) is capable of a little bit more. To select which device to boot from, press <return> once, after it beeps twice (i.e. recognizes the HIL keyboard). To get to a configuration and test menu, press:
C <return>This will allow you to configure interrupt levels, select codes, and serial console properties. You can also hit <control>-C to get to a menu of extended tests with several fancy options.
For more information, Michael Wolfson has scanned in parts of the HP Apollo 9000 Series 400 HP-UX Owner's Guide, which has some good information on this topic.
ROM systems are assigned a single letter ID (only "B", for BASIC, is presently supported on Series 300).
All system files found are assigned an ID of the form "nna", where "a" is either the same letter "a" mentioned above (if an ASCII letter), or "Z" (if not an ASCII letter). "nn" is a number of the form " 1" to "99" denoting the order of occurrence of systems which result in the same ID letter "a". The range of system IDs is " 1A" to "99Z".
The boot ROM loads the first system found unless characters (other than that system's ID) are typed on the boot control keyboard (see below). The search order used by the boot ROM is:
Revision B and later also support booting over the network, using a 98643 card or built-in ethernet. For older systems, the best choice is to make your boot drive on HPIB at address 0. Remember, you'll need to capitalize the letters.
The Scan for Systems selection searches mass storage devices for an operating system to boot. The first mass storage device found with an HP-UX Compatible operating system on it boots. Mass storage devices are searched by the priority shown in this table.
Priority Level | Device | Select Code | Bus Address | Unit Number |
1 | SCSI | 0-31 | 7-5 | 0 |
2 | HP-IB | 0-31 | 7-5 | 0 |
3 | SRM | 14 | N/A | N/A |
4 | LAN | 21 | N/A | N/A |
5 | Bubble RAM | 30 | N/A | N/A |
6 | EEPROM | N/A | N/A | 0 |
7 | SCSI | 0-31 | 4-0 | 0 |
8 | HP-IB | 0-31 | 4-0 | 0 |
9 | SRM | Other than 14 | N/A | N/A |
10 | LAN | Other than 21 | N/A | N/A |
11 | Bubble RAM | Other than 30 | N/A | N/A |
12 | EEPROM | Other than 0 | N/A | 0 |
So, for these newer systems, your best bet is to make your boot drive a SCSI drive at address 6 (7 is the system controller on the motherboard).
It is also possible to configure the Boot ROM to default to a specific device from the configuration menu.
Copyright 1990, Hewlett-Packard Company. All Rights Reserved. BOOTROM Series 400 Rev. 1.1 MD12 REV 1.2 1990/08/07.14:27:08 MC68030 Processor MC68882 Coprocessor Configuration EEPROM Utility Chip at 41 HP-HIL.Keyboard [...]First, you'll need either a Domain keyboard or a HIL keyboard. Now, put your machine into "service mode". For a 4XXs, there's a toggle switch on the back of the machine (near the top). For a 4XXt or 4XXdl, there's a green button on the front, behind the silly door. For a 425e, there's a toggle switch on the back of the machine (in the middle). Once you're in "service mode", the other green LED will light up. Reset the machine. You may then need to hit return to get the Domain boot prompt. At that prompt, you can type H to get a list of available commands. You need to type the following things to convert to HP-UX mode:
CF 2 2 P EThis is the full procedure captured from a serial console.
Be sure to turn off "service mode" when you're done. I found it prevented me from selecting which device I wanted to boot from. Moreover, on the 425e, the service switch selects the OpenBSD console.
See The fatmac HP9000/300 guide for instructions on upgrading.
device name | location | device file | max speed | hardware handshaking | FIFO | serial console | comments |
dca0 | built-in | /dev/tty0 | 19200 | no | no | DIP switches non-null cable |
for 318, 319, 320, 330, 340, 350, 360, 362, 370 located on Human/System Interface board |
dca0 | built-in | /dev/tty0 | 38400 | yes | yes | config Boot ROM | for 345, 375, 380, 382, 385, 400 Series (except 425e) located on motherboard |
dcaN | 98644A DIO-I card | /dev/ttyN | 19200 | yes | no | DIP switches | hardware handshaking only for transmit |
dcaN | 98626A DIO-I card | /dev/ttyN | 19200 | yes | no | DIP switches | hardware handshaking only for transmit |
dclN | 98628A DIO-I card | /dev/ttyN | 19200 | yes | yes 256 bytes |
jumper | weird centronics connector goes to normal db25 |
apci0 apci1 |
built-in | /dev/ttya0 /dev/ttya1 |
19200 | no | no | no | for 400 Series machines (except 425e), requires break-out cable |
apci0 apci1 apci2 |
built-in | /dev/ttya0 /dev/ttya1 /dev/ttya2 |
19200 | no | no | yes | for 425e only, serial console on apci0 |
dcmN | 98642A DIO-I card | /dev/tty0[0-3] | 19200 | yes | yes 128/16 bytes |
DIP switches | Only port 0 has flow control Only port 1 does console Uses RJ-11 jacks |
dcmN dcmN+1 |
98638 DIO-II card | /dev/tty0[0-3] /dev/tty[4-7] |
19200 | yes | yes 127/16 bytes |
no | Appears to kernel as two 98642 boards |
Now, reinsert the card and power on your machine. All console messages will be sent over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit. Theoretically, you should be using a null-modem cable, but I found that for my 98562, I needed a non-null modem cable.
Now, all console messages will be sent over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit.
1 5 3 R X N
(If your machine does not have an HP-IB controller, replace 5 with 4 in the instructions above)
This is the full procedure captured from a serial console on my 400s. It may be slightly different for the 300 series machines (345, 375, 380, 382, 385).
Note that the 425e does not support serial console setup in the ROM. However, OpenBSD will use the first serial port (on apci0) as the console if the service/normal switch on the back is set to the service position; no other setup is necessary.
Now, your machine will reset and then send all console messages over the serial port at 9600 bps, 8 bits, no parity, 1 stop bit. Use a null-modem cable.
If you want to convert from serial console to monitor/keyboard console, follow the same procedure, except type L instead of R.
You may also temporarily override this setting by typing L<return> or R<return> after your system beeps twice and recognizes the keyboard. This will work even if you have a Domain keyboard.
Since the serial console will be mapped to /dev/console, you do not need to add an entry in /etc/ttys. You just need to verify that the /etc/ttys line for /dev/console is marked as being on. You probably want to change the terminal type from vt220 to vt100 or whatever terminal type you will be connecting to it.
This table gives the pinout for the serial connector on the rear panel.
Source:
HP Apollo 9000 Series 400 Domain/OS Owner's Guide (1990)
HP Order No. A1630-90005
Pin No. | Signal | Pin No. | Signal |
1 | Ground | 14 | SIO2_RTS |
2 | SIO1_TXD | 15 | SIO2_CTS |
3 | SIO1_RXD | 16 | SIO2_DCD |
4 | SIO1_RTS | 17 | Spare |
5 | SIO1_CTS | 18 | SIO2_DTR |
6 | SIO1_DSR | 19 | SIO3_DTR |
7 | Inline resistor | 20 | SIO1_DTR |
8 | SIO1_DCD (not supported in Domain/OS) |
21 | SIO3_TXD |
9 | SIO3_RXD | 22 | SIO1_RI (not supported in Domain/OS) |
10 | SIO3_CTS | 23 | SIO3_RTS |
11 | Spare | 24 | Spare |
12 | SIO2_TXD | 25 | SIO3_DCD |
13 | SIO2_RXD |