It appears that the RPI news black hole struck again and ate my previous
shameless plug for Ersatz-11, so here it is again:
Emulation:
* DEC PDP-11/34a minicomputer
* 124KW core
* RL11 and up to 4 RL01/RL02 drives (actually DOS image files)
* KW11L 60 Hz line clock
* console DL11 with VT100 terminal (or uses COM port and real VT100)
Since this article will probably go into never-never land I’ll keep it
brief. This emulator emulates the DEC PDP-11/34a, on a PC with an 80186
or better (but I doubt it would work on a Mindset!) and at least 640KB.
If you don’t know what a PDP-11 is then you don’t care, trust me. The
emulator is available by anonymous FTP from FTP.UPDATE.UU.SE in the
/pub/ibmpc/emulators directory, the files are e11.com (binary) and
e11beta.txt (writeup). This is a beta test version, several bugs have
been identified and fixed for the next beta release, which will be RSN.
Meanwhile, the version on Update boots RT-11FB and XM, RSTS/E, and RSX-11M,
but not RT-11SJ, 2.9BSD, or IAS. All but IAS will work with the next
version, I have no idea what’s up with IAS and I don’t have a copy of my
own to debug with.
Which reminds me, creating bootable RL01/RL02 disk images is your problem,
I want nothing to do with pirating software from a corporation whose legal
department is bigger than any *company* I’ve ever worked for. My local DEC
sales office is perfectly willing to issue licenses for simulated machines,
as long as you don’t try to pay for them with simulated money. Anyway,
I made all my disk images by Kermitting them from a real PDP-11, it’s very
slow at 9600 baud (4.5 hours for an RL01) but it works. I have no idea
if Pathworks or something like that would work for this.
The next beta release (Real Soon, as I said) will include support for the
RX02 (using image files and/or specially-formatted 1.2MB disks, the
"set density" command is supported so you can create these disks using
FORMAT.SAV or SPEC%() or whatever, as usual), 50 Hz KW11L option, and
multiple DL11 ports (using any combination of video adapter(s) and COM
ports), and maybe LP: emulation if I have time.
Speed: around 50% of the real thing with mapping disabled, on a 386DX/40,
slower with the MMU turned on.
Vaporware:
FPP emulation is planned (probably using 80×87) but totally unbegun.
Separate I/D space and Supervisor mode are mostly written but disabled
to avoid confusing CPU ID routines into thinking it’s a full 11/45
(MMR2 doesn’t work).
22-bit memory and UMRs are planned but will have to wait until after I
convert the program to run in protected mode, trying to do it using EMS
would absolutely kill performance. This means that future versions of
the program will require a 386 or better and >4MB to emulate a fully
loaded 11/44 (or whatever).
I’m working on a utility program to handle diddling PDP-11 file systems
from DOS, so you can get files in and out without having to Kermit through
a COM port, seems silly when your computer is right there. Unfortunately
I’ve gotten a little carried away adding silly features to this program
(driving real TU58s through COM ports, formatting single density floppies,
handling dedicated hard disk partitions) and it may not be ready for a
while. I plan to make it handle at least some form of RT-11, RSTS,
OS/8, and COS-310 file systems, maybe others (ODS-1 is pretty complicated,
I promise nothing).
Versions of the emulator for other architectures and/or OSes are *not*
planned (unless I find an Alpha machine on the doorstep one morning, I’d
start work that day!), the program is over 13,000 lines of assembly source
code (*not included at this time*), and contains many dependencies on the
PC hardware (it controls most devices directly, DOS is used only for file
access and memory allocation) and on the Intel architecture, which is
conveniently very similar to the PDP-11 in little ways, too bad they didn’t
continue the trend instead of totally botching the 386 etc. (ex. PDP-11 has
a separate SP for each ring, but the 386 is so stupid that it pushes the SP
on the *stack* during a ring change!).
Anyway have fun if you care, don’t hassle me about your opinions of old
heavy minicomputers if you don’t. Please let me know of any bugs or
obviously needed features.
The program is free, but don’t let that stop you from forwarding your
paychecks to me if you really want to. I’ll take good care of them.
John Wilson

