RT-11 boot floppy

This page steps through the process of building an RT-11 floppy disk that can be used to boot a PDP-11.

You will need a floppy disk that has already been low-level formatted to suit the drive you are using (eg RX01, RX02, RX50, RX33, etc). The process for formatting your floppy disk varies depending on the drive you are using. For example, DEC doesn’t provide any way to low-level format RX01, RX02 or RX50 disks. Fortunately there are ways this can be done using a PC or third-party QBUS cards. See for example my RQDX Breakout Board page (for information about formatting RX50 and RX33 disks) or my Dilog DQ419 page (for information about formatting RX01 and RX02 disks).

Once you have a floppy disk that has been low-level formatted, you are ready to proceed with the technique described below.

Building a bootable RT-11 RX01 disk

There are a few ways you can do this. The technique shown here assumes that you have a working PDP-11 system that you can already boot RT-11 on. You might be booting RT-11 from an existing drive (such as an RL02 or an MFM Winchester hard drive) connected to the PDP-11, or you might be booting RT-11 over a serial cable from a TU58 emulator running on a PC. If none of those options are available to you, consider looking at John Wilson’s DOS-based “PUTR” program. It can also be used to build an RX01 boot disk on a PC, assuming you have hooked up an 8-inch floppy drive to that PC.

The technique presented here also assumes that your target is an RX01-formatted disc in a drive that appears on your system as device “DY0”. Normally an RX01 drive would appear as a “DX” device in RT-11 (when connected to any RX01 controller), but the instructions below use a “DY” device because the target drive (containing an RX01-formatted floppy disc) was connected to a Dilog DQ419 controller, which always uses RT-11’s DY.SYS driver for both RX01 and RX02 discs.

So let’s go ahead an boot RT-11 on the PDP-11. In the example below, we’re using RT-11 V5.4.

Once the system has booted up, you should get a sign-on message similar to the one below:

RT-11SJ (S) V05.04 C
.

Put your newly formatted RX01 disk in the 8-inch drive connected to the PDP-11. If we try to display the directory on it, we’ll get an error message:

.DIR DY0: ⤶
?DIR-F-Invalid directory

.

We get this error because the disk does not yet have a directory structure on it. So now use the INITIALIZE command to create the directory structure:

.INIT DY0: ⤶
DY0:/Initialize; Are you sure? Y

.DIR DY0: ⤶


 0 Files, 0 Blocks
 486 Free blocks

.

Now we need to copy the required RT-11 files from our existing system drive to the RX01 disk. Because we only have 486 blocks to play with, we need to be selective about the files that we copy across. The RT-11 Installation Guide (which can be found on Bitsavers) explains what the various files are and what you might need or want on your boot disk. The example shown below will boot to an RT-11 command prompt, allow you to copy files and display directories, edit text files, and it includes drivers for RX01, RX02, RL and TU58 drives.

.COPY RT11SJ.SYS DY0: ⤶
 Files copied:
DK:RT11SJ.SYS  to DY0:RT11SJ.SYS

.COPY SWAP.SYS DY0: ⤶
 Files copied:
DK:SWAP.SYS    to DY0:SWAP.SYS

.COPY TT.SYS DY0: ⤶
 Files copied:
DK:TT.SYS      to DY0:TT.SYS

.COPY DU.SYS DY0: ⤶
 Files copied:
DK:DU.SYS      to DY0:DU.SYS

.COPY DD.SYS DY0: ⤶
 Files copied:
DK:DD.SYS      to DY0:DD.SYS

.COPY DX.SYS DY0: ⤶
 Files copied:
DK:DX.SYS      to DY0:DX.SYS

.COPY DY.SYS DY0: ⤶
 Files copied:
DK:DY.SYS      to DY0:DY.SYS

.COPY LS.SYS DY0: ⤶
 Files copied:
DK:LS.SYS      to DY0:LS.SYS

.COPY PIP.SAV DY0: ⤶
 Files copied:
DK:PIP.SAV     to DY0:PIP.SAV

.COPY DUP.SAV DY0: ⤶
 Files copied:
DK:DUP.SAV     to DY0:DUP.SAV

.COPY DIR.SAV DY0: ⤶
 Files copied:
DK:DIR.SAV     to DY0:DIR.SAV

.COPY KED.SAV DY0: ⤶
 Files copied:
DK:KED.SAV     to DY0:KED.SAV

.COPY RESORC.SAV DY0: ⤶
 Files copied:
DK:RESORC.SAV  to DY0:RESORC.SAV

.COPY STARTS.COM DY0: ⤶
 Files copied:
DK:STARTS.COM  to DY0:STARTS.COM

.COPY SL.SYS DY0: ⤶
 Files copied:
DK:SL.SYS      to DY0:SL.SYS

.COPY IND.SAV DY0: ⤶
 Files copied:
DK:IND.SAV     to DY0:IND.SAV

.

Now we need to make the RX01 disk bootable. This syntax is a little complex because we’re using a DY device to make a boot disk for a DX device:

.COPY/BOOT:DX DY0:RT11SJ.SYS DY0: ⤶

.

A nice (but optional) touch is to now customise the startup file (STARTS.COM) a little. The dialog below shows how to get STARTS.COM open for editing:

.UNPROT DY0:STARTS.COM ⤶

.KED DY0:STARTS.COM ⤶

You should now be in a full-screen text editor. Use the arrow keys (not the mouse!) to move around.

Delete the existing content (using the BACKSPACE key, if you’re not familiar with more advanced features of KED) and then insert the following text:

SET TT SCOPE
SET LS CSR=176510 VECTOR=310
SET LS NOFORM0
ASSIGN LS LP
ASSIGN LP LST
SET SL KMON
SET EDIT KED

These changes to the STARTS.COM file do various things that make RT-11 a little more user friendly. It also makes a serial printer available on Channel 1 of your DLV11-J (M8043), assuming you have one of these in your PDP-11. I’ve set it up this way because I typically have a DLV11-J in my system. In my setup, Channel 0 is reserved for the TU58 emulator (at 38,400 baud), Channel 1 is reserved for an RS232 printer (at 1,200 baud or whatever lower rate is required by the printer) and Channel 3 is used for the system console (at 9,600 baud).

Saving our updated STARTS.COM and exiting KED is not straight forward. If you’re using a real terminal (eg VT220) press the GOLD key, then 7 on the numeric keypad, then type EXIT, then press ENTER on the numeric keypad (not RETURN on the main keyboard). That will save the new STARTS.COM file, keep a copy of the old file as STARTS.BAK, and exit KED. If you’re working from a PC keyboard, you won’t have a GOLD key. Instead press NUMLOCK, then 7 on the numeric keypad, then type EXIT, then press ENTER on the numeric keypad (NOT the ENTER key on the main keyboard). If your PC is not responding as it should here, you probably need to fiddle with your keyboard settings in the terminal emulator (eg in PUTTY) to make the terminal emulator send the correct keyboard codes to the PDP-11.

Once you’ve saved the file and exited from KED, do the following minor clean up:

.PROT DY0:STARTS.COM ⤶

.DELETE DY0:STARTS.BAK ⤶

.

Here’s what the final the directory listing looks like:

.DIR DY0: ⤶

RT11SJ.SYS    80P 07-Mar-88      SWAP  .SYS    27  02-Sep-87
TT    .SYS     2  07-Mar-88      DU    .SYS     8  07-Mar-88
DD    .SYS     5  07-Mar-88      DX    .SYS     4  07-Mar-88
DY    .SYS     4  05-Sep-84      LS    .SYS     5  07-Mar-88
PIP   .SAV    30  02-Sep-87      DUP   .SAV    49  02-Sep-87
DIR   .SAV    19  02-Sep-87      KED   .SAV    58  02-Sep-87
RESORC.SAV    25  02-Sep-87      SL    .SYS    17  02-Sep-87
IND   .SAV    58  02-Sep-87      STARTS.COM     1P 16-Jul-85
 16 Files, 392 Blocks
 94 Free blocks

.

All done!

Go ahead and attempt to boot your PDP-11 using the newly built RX01 disk. You’ll need to boot it in a DX device (ie RX01). It won’t boot in a DY device (ie RX02) because it has the DX system handler in the disc header.

I have imaged the RX01 disk that was built using the above instructions. The image is in Dave Dunfield’s ImageDisk format. You can download this image and write it to a blank 8-inch disk using the ImageDisk MSDOS utility. Note that you won’t need to format the disk – ImageDisk will automatically take care of that.

Links

RT-11 V5.6 Installation Guide (AA-H376F-TC)

RT-11 V5.4 RX01 boot disc (in ImageDisk format)

Revision History

26 July 2016: Posted initial version