In 2001 I created a port of 2.9BSD UNIX that runs on a PDP-11/23, includes
MSCP drivers, and will boot from an MSCP hard drive. MSCP hard disk controllers
include the RQDX3, Andromeda UDC11, and many ESDI and SCSI controllers. Also
included are the standalone utilities to enable loading 2.9BSD onto a "cold"
PDP-11 via VTserver. It has been uploaded to the
PUPS archive at. See
here for a list of
mirrors of the archive. The MSCP version is stored, for example, here:
Caldera has made the Ancient UNIX license free (registration no longer
required) for non-commercial use.
Here is some extra info on setting up 2.9BSD on a PDP-11/23. Some of this
pertains to specific hardware.
Setting up the floppy drive
Assuming that the hard drive is DU0: and the floppy is DU1:, type the
following UNIX commands:
ln ra1a floppy
This creates the floppy node, and an alias "/dev/floppy".
Supplemental directions for setting up 2.9BSD UNIX on a PDP-11/23 with 3-M
"NMU INTF" card:
In order to activate the second SLU port, do the following:
mknod tty01 c 0 1
cp dtab dtab.old
Edit (using "vi" or whatever) the line in dtab that appears as:
#kl 1 176500 300 5 klin klou ; DL-11
so that it appears as:
kl 1 177500 310 5 klin klou ; DL-11
After the next reboot, the second RS-232 port will be active, and you can log in
a second user on that port.
Note on the 3-M "NMU INTF" card LTC:
2.9BSD UNIX will complain that there is "no clock?" on boot. Ignore this
message. The "NMU INTF" has a non-standard LTC that is not detected properly by
UNIX. It will function properly, however, after boot.
Y2K issues in 2.9BSD UNIX
2.9BSD does have Y2K bugs. One that must be dealt with immediately is setting
the date. The "date" command interprets the two digit date "xx" as 19xx. It is
fairly easy to find the source for "date.c" and fix it to interpret all dates as
20xx. Until this is done, you can set the date as follows:
This sets the date to one minute before midnight on 12/31/1999. Waitone minute
until the date rolls over to 01/01/2000.
This sets the date to one minute before midnight on 12/31/2000. Wait one minute
until the date rolls over to 01/01/2001.
This sets the date to one minute before midnight on 12/31/2001. Wait one minute
until the date rolls over to 01/01/2002.
From now on, UNIX will remember that the year is 2002, even after a reboot.
Whenever you set the date, omit the year, and it will default to 2002.
Repeat until the year is correct. After a few more years (as in now, which will
be 2010 in a couple hours), this procedure will become rather tedious.
Hopefully, by then someone will publish a fixed "date.c". If you want to do it
yourself, find the source code for "date.c", change "1900" to "2000", and