PAR
ERR
ADRS
ERR
RUN
PAUSE
MASTER
USER
SUPER
KERNEL
DATA
16
18
22
 
  USER D
  USER I
  SUPER D
  SUPER I
  KERNEL D
  KERNEL I
  CONS PHY  
  PROG PHY
ADDRESS  
PARITY
HIGH
LOW
DATA  
  DATA PATHS  
  U ADDRS
  BUS REG  
  DISPLAY
  REGISTER
21
20
19
18
17
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
LOAD
ADRS
EXAM
DEP
CONT
ENABLE
HALT
S INST
S BUS
START
DEL to Ctrl/H

PDP 11/70 Emulator v1.3   April 2016

This emulator came about because years ago I was a programmer for RSTS/E on a PDP 11/45 and had admired the console idle loop light pattern - but I couldn't quite remember how it looked. Given the lack of availability of real systems it became time to write an emulator!

I was going to start with a PDP 11/45 emulator but the extra memory of a PDP 11/70 became far too attractive (a whole 4MB!). It took some time before I finally produced a PDP 11/45 version.

I have met my core objective - I can now see the RSTS/E console light pattern that I was looking for. Also I have now seen some of the light patterns for other OSes. RSX and BSD 2.11 have their own different patterns and Unix V5 operates with absolute minimum light movement (I'm assuming it operates mostly in WAIT mode).

Note: The boot code in this emulator is a custom PDP 11 program running with it's own set of light patterns. It operates by mapping a WAIT instruction to different addresses within Supervisor mode, and is invoked by the LIGHTS command. The source for this program can be found in the RT11 operating environment as BOOT.MAC

This code was developed using google chrome (impressive debugger!). Other browsers may fail to boot guest OSs because they don't properly support binary XHTTP requests. Impressively this problem has now almost dissappeared for modern browsers.

If you plan to run the emulator repeatedly or for a project, consider downloading the emulator to your own machine or server. This will significantly speed any of the emulator disk accesses and response times. All files and emulator OS disks can be found in the top level folder of http://skn.noip.me/pdp11/

Happy emulating!

Paul Nankervis

List of guest OS's:

DiskOSComment
RK0Unix V5 Boot using: unix then login as root
RK1RT11 v4.0 The lightest/fastest OS here
RK2XXDP Diagnostic OS and utilities
RL0BSD 2.9 Boot using: rl(0,0)rlunix   CTRL/D to get to multiuser
RL1RSX 11M v3.2 Login as 1,2 with password SYSTEM
RL2RSTS/E v7.0 Option: <LF> Suboption: <LF> ... Login as 1,2 with password system
RL3XXDP Larger version of diagnostics - including PDP 11/70 utilities
RP0BSD 2.11 Will autoboot and enter multiuser mode. Login as root with no password
RP1RSX 11M v4.6 Starts logged in as 1,2 - accounts 1,2 and 200,1 have no password

Note: Disks are shown in approximately order size. The RK05 disks at the top are small and not too bad to use across a network. The RP06 disks at the bottom can be rather slow.

Youtube video 1

Youtube video 2

Performance

Javascript performance is very dependant on the hardware and browser you use. An iPod will take forever to boot anything - give up now! On my MacBook Air the test command in Chrome takes around 157 clock ticks while the other browser on the system takes about 1117 clock ticks for the same test. Of course your favourite browser will be different again.

Chrome test

BOOT> test
157 CLOCK TICKS
BOOT>

Other browser test

BOOT> test
1117 CLOCK TICKS
BOOT> 

Example boot of Unix V5

BOOT> boot rk0
@unix

login: root
# date
Fri Mar 21 12:09:02 EST 1975
# chdir /etc
# pwd
../etc
# ls -al
total 40
drwxr-xr-x  2 bin       240 Mar 21 12:07 .
drwxr-xr-x  9 bin       160 Jan 29 16:14 ..
-rwxr--r--  1 bin       474 Nov 26 18:13 getty
-rwxr-xr-x  1 bin      1446 Nov 26 18:13 glob
-rwxr--r--  1 bin      1972 Nov 26 18:13 init
-rwxr-xr-x  1 bin       814 Nov 26 18:13 lpd
-rwxr--r--  1 bin      4136 Nov 26 18:13 mkfs
-rwxr--r--  1 bin      1800 Nov 26 18:13 mknod
-rwsr-xr-x  1 root     2078 Nov 26 18:13 mount
-rw-r--r--  1 bin        49 Nov 26 18:13 passwd
-rw-r--r--  1 bin        70 Nov 26 18:13 rc
-rw-r--r--  1 bin        56 Nov 26 18:13 ttys
-rwsr-xr-x  1 root     1990 Nov 26 18:13 umount
-rwxr-xr-x  1 bin        32 Nov 26 18:13 update
-rw-r--r--  1 root      144 Mar 21 12:09 utmp
# cat /etc/passwd
root::0:1::/:
daemon::1:1::/bin:
bin::3:1::/bin:
# cal 10 1981
      Oct 1981
 S  M Tu  W Th  F  S
             1  2  3
 4  5  6  7  8  9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
# ls -al /bin
total 339
drwxr-xr-x  2 bin       944 Nov 26 18:13 .
drwxr-xr-x  9 bin       160 Jan 29 16:14 ..
-rwxr-xr-x  1 bin      1514 Nov 26 18:13 ar
-rwxr-xr-x  1 bin      7308 Nov 26 18:13 as
-rwxr-xr-x  1 bin      6042 Nov 26 18:13 bas
-rwxr-xr-x  1 bin       152 Nov 26 18:13 cat
-rwxr-xr-x  1 bin      5668 Nov 26 18:13 cc
...

Example boot of RT11 v4.0

BOOT> boot rk1
RT-11SJ  V04.00C

.D 56=5015

.TYPE V4USER.TXT
Welcome to RT-11 Version 4. RT-11 V04 provides new hardware support
and some major enhancements over Version 3B
...
.D 56=0

.MAC BOOT
ERRORS DETECTED:  0

.LINK BOOT

.DIR BOOT

BOOT  .MAC    16                 BOOT  .OBJ     4
BOOT  .SAV     4
 3 Files, 24 Blocks
 2851 Free blocks

.DIR

SWAP  .SYS    25  01-Feb-82      RT11BL.SYS    65  01-Feb-82
RT11SJ.SYS    67  01-Feb-82      RT11FB.SYS    80  01-Feb-82
TT    .SYS     2  01-Feb-82      DT    .SYS     3  01-Feb-82
DP    .SYS     3  01-Feb-82      DX    .SYS     3  01-Feb-82
...

Example boot of XXDP

BOOT> boot rk2

CHMDKB1 XXDP+ DK MONITOR
BOOTED VIA UNIT 2
28K UNIBUS SYSTEM

ENTER DATE (DD-MMM-YY): <CR>

RESTART ADDR: 152010
THIS IS XXDP+.  TYPE "H" OR "H/L" FOR HELP.

.D

ENTRY# FILNAM.EXT        DATE          LENGTH  START

    1  HDDKB0.SYS       2-JAN-70          2    000112
    2  HMDKB1.SYS       2-JAN-70         17    000113
    3  HDDKB1.SYS       2-JAN-70          2    000114
    4  HSAAC4.SYS       8-DEC-82         24    000115
....

Example boot of BSD 2.9

BOOT> boot rl0
:boot

70Boot
: rl(0,0)rlunix

CONFIGURE SYSTEM:
xp 0 csr 176700 vector 254 attached
rk 0 csr 177400 vector 220 attached
hk ? csr 177440 vector 210 skipped:  No CSR
rl 0 csr 174400 vector 160 attached
rp ? csr 176700 vector 254 interrupt vector already in use
ht 0 csr 172440 vector 224 skipped:  No CSR
tm 0 csr 172520 vector 224 skipped:  No CSR
...
Erase=^?, kill=^U, intr=^C
# ls -al
total 546
drwxr-xr-x11 root     daemon       512 Mar  7 09:00 .
drwxr-xr-x11 root     daemon       512 Mar  7 09:00 ..
-rw-rw-r-- 1 root     daemon       164 Sep 29 09:20 .cshrc
-rw-rw-r-- 1 root     daemon       266 Mar  7 08:43 .login
-rw-rw-r-- 1 root     superuse       2 Jul 26 16:00 .msgsrc
-rw-rw-r-- 1 root     daemon       116 Mar 30 00:59 .profile
-rw-r--r-- 1 root     superuse      56 Nov 20 16:03 2.9stamp
-rw-rw-r-- 1 root     superuse     450 Mar 30 00:50 READ_ME
drwxrwxr-x 2 bin      bin         1632 Nov 20 16:04 bin
-rwxrwxr-x 1 root     superuse   23572 Mar  7 09:05 boot
...
# cat /etc/passwd
root::0:2:The Man:/:/bin/csh
toor::0:2:The Man:/:
daemon:***:1:1:The devil himself:/:
sys:***:2:1::/:
bin:***:3:1::/:
uucp::4:1:UNIX-to-UNIX Copy:/usr/spool/uucppublic:/usr/lib/uucp/uucico
notes:***:5:1:Notesfiles maintainer:/usr/spool/notes:
anon:***:6:1:Notesfiles anonymous user:/usr/spool/notes:
news:***:7:1:News maintainer:/usr/spool/news:
wnj:ZDjXDBwXle2gc:8:2:Bill Joy,457E,7780:/a/guest/wnj:/bin/csh
dmr:AiInt5qKdjmHs:9:2:Dennis Ritchie:/a/guest/dmr:
ken:sq5UDrPlKj1nA:10:2:& Thompson:/a/guest/ken:
mike:KnKNwMkyCt8ZI:11:2:mike karels:/a/guest/mike:/bin/csh
carl:S2KiTfS3pH3kg:12:2:& Smith,508-21E,6258:/a/guest/carl:/bin/csh
joshua::999:2:&:/usr/games:/usr/games/wargames
# CTRL/D
Wed Dec 31 16:04:16 PST 1969
/etc/fstab: No such file or directory
/usr/sys: No such file or directory
init: /dev/tty07: cannot open
...

Berkeley Unix 2.9BSD

:login: root

Welcome to the 2.9BSD (Berkeley) UNIX system.

tty: Command not found.
# ls -al /bin
total 1182
-rwxrwxr-x 1 bin      bin         8692 Dec 31 16:59 #
drwxrwxr-x 2 bin      bin         1632 Nov 20 16:04 .
drwxr-xr-x11 root     daemon       512 Mar  7 09:00 ..
-rwxrwxr-x 2 bin      bin         2917 Dec 31 16:59 [
-rwxrwxr-x 1 bin      bin        30340 Mar 24 08:27 adb
-rwxrwxr-x 1 bin      bin         9844 Dec 31 16:58 ar
-rwxrwxr-t 1 bin      bin         5626 Sep 30 17:39 as
-rwxrwxr-x 1 bin      bin         4508 Jan 18 08:22 cat
-rwxrwxr-t 1 bin      bin         7314 Oct  9 04:04 cc
-rwxrwxr-x 1 bin      bin         5096 Dec 31 16:59 chgrp
-rwxrwxr-x 1 bin      bin         3364 Dec 31 16:59 chmod
...

Example boot of RSX 11M v3.2

BOOT> boot rl1

  RSX-11M V3.2 BL26   1912K  MAPPED
>RED DL1:=SY:
>RED DL1:=LB:
>MOU DL1:RSXM26
>@DL1:[1,2]STARTUP
>* Enter date and time ( dd-mmm-yy hh:mm ) [S]: 31-OCT-81 12:00
>TIM 31-OCT-81 12:00
...
>HEL 1,2
PASSWORD: system

        RSX-11M BL26   MULTI-USER SYSTEM

GOOD AFTERNOON
31-OCT-81 12:01 LOGGED ON TERMINAL TT0:

Welcome to RSX-11M V3.2 timesharing

>PIP /LI

DIRECTORY DL1:[1,2]
31-OCT-81 12:01

BOOT.MAC;1          15.        31-OCT-81 12:42
SYE.HLP;1           8.         26-MAY-79 13:52
EDTCOM.MSG;1        16.        26-MAY-79 13:52
...

Example boot of RSTS/E v7.0

BOOT> boot rl2

RSTS V7.0-07 Vixen (DL2)

Option: <LF>

You currently have: JOB MAX = 63, SWAP MAX = 31K.

Default memory allocation table specifies some existing memory
as being nonexistent.


Table will be reset by RSTS.

  Memory allocation table:

     0K: 00000000 - 00203777 (  33K) : EXEC
    33K: 00204000 - 00303777 (  16K) : RTS (BASIC)
    49K: 00304000 - 16737777 (1863K) : USER
  1912K: 16740000 - End              : NXM

  Table suboption? <LF>

You currently have crash dump enabled.
CRASH.SYS file of 50 blocks is not available
Crash dump automatically disabled

DD-MMM-YY? 31-OCT-81
12:00 PM? 12:00
INIT    V7.0-07A        RSTS V7.0-07 Vixen

Command File Name? <CR>
DETACHING...
...
HELLO 1,2
Password: system
Job 1 is detached under this account
Job number to attach to? <CR>
1 other user is logged in under this account

WELCOME TO RSTS/E V7.0 TIME SHARING

Ready

PRINT "Hello world",PI*4
Hello world     12.5664

Ready

DIR
 Name .Ext    Size   Prot    Date       SY:[1,2]
CREATE.LOG       3   < 60> 31-Oct-81
LOGIN .SAV      13   <232> 23-Sep-79
LOGOUT.SAV      11   <232> 23-Sep-79
PIP   .SAV      50   <232> 23-Sep-79
...

Ready

SYSTAT

RSTS V7.0-07 Vixen status at 31-Oct-81, 12:01 PM Up: 1:53

Job    Who    Where    What    Size    State    Run-Time  Pri/RB   RTS
 1    [SELF]  Det     ERRCPY   5/31K   SR            7.5    0/6   BASIC
 2    [SELF]  KB0     SYSTAT  11/31K   RN Lck        9.0   -8/6   BASIC

Busy Devices: None

Disk Structure:
Disk    Open    Free    Cluster Errors  Name    Comments
DL2       2     5568       2      0     VIXEN   Pub, DLW

Small   Large   Jobs    Hung TTY's      Errors
478       0      2/8        0              0

Run-Time Systems:
 Name   Ext       Size  Users   Comments
BASIC   BAC     16(16)K   2     Perm, Addr:33, KBM, CSZ
RT11    SAV      4(28)K   0     Temp, Addr:65, KBM, CSZ, EMT:255
TECO    TEC      8(24)K   0     Non-Res

Resident Libraries: None

Message Receivers:
 Name   Job     Msgs    Max     Senders
ERRLOG   1       0      40      Priv

Ready

RUN $UTILTY
UTILTY  V7.0-07E        RSTS V7.0-07 Vixen
#HELP

UTILTY  System Utility Program

UTILTY Commands        Meaning

LOGINS                 Enable logins.

NO LOGINS              Disable logins.

SET LOGINS n           Limit LOGINs to n jobs.

FORCE KBn:  TEXT       Force TEXT to a keyboard (n=KB number).  If "ALL"
                       is  used  in place of KBn:, all KB's are used.  A
                       control character may be  forced  by  placing  an
                       (UPARROW)  as  the first character of TEXT.  If ^
...

Example boot of XXDP

BOOT> boot rl3

CHMDLD0 XXDP+ DL MONITOR
BOOTED VIA UNIT 3
28K UNIBUS SYSTEM

ENTER DATE (DD-MMM-YY): <CR>

RESTART ADDR: 152010
THIS IS XXDP+.  TYPE "H" OR "H/L" FOR HELP.

.D

ENTRY# FILNAM.EXT        DATE          LENGTH  START

    1  MMDP  .SAV       3-MAR-83C        17    000310
    2  MTDP  .SAV       3-MAR-83C        17    000331
    3  HSAAD0.SYS       3-MAR-83         24    000352
    4  HSABC0.SYS       3-MAR-83         28    000402
    5  HSACC0.SYS       3-MAR-83         27    000436
    6  HSADB0.SYS       3-MAR-83         25    000471
    7  HUDIB0.SYS       3-MAR-83          5    000522
    8  HELP  .TXT       3-MAR-83         14    000527
...
.R EKBA??
EKBAD0.BIC
AA
CEKBAD0 11/70 CPU #1

END PASS
END PASS
END PASS
restart through switches

.R EKBE??
EKBEE1.BIC

CEKBEE0 11/70 MEM MGMT

CPU UNDER TEST FOUND TO BE A KB11-CM

END PASS #     1  TOTAL ERRORS SINCE LAST REPORT      0
END PASS #     2  TOTAL ERRORS SINCE LAST REPORT      0
END PASS #     3  TOTAL ERRORS SINCE LAST REPORT      0
END PASS #     4  TOTAL ERRORS SINCE LAST REPORT      0
END PASS #     5  TOTAL ERRORS SINCE LAST REPORT      0
....

Example boot of BSD 2.11

BOOT> boot rp0

70Boot from xp(0,0,0) at 0176700
Press <CR> to boot, or any other key to abort: 0
: xp(0,0,0)unix
Boot: bootdev=05000 bootcsr=0176700

2.11 BSD UNIX #1: Tue Mar 31 15:40:56 PST 1981
    root@vixen.skn.noip.me:/usr/src/sys/VIXEN

phys mem  = 3932096
avail mem = 3710848
user mem  = 307200

hk ? csr 177440 vector 210 skipped:  No CSR.
ht ? csr 172440 vector 224 skipped:  No CSR.
ra ? csr 172150 vector 154 skipped:  No autoconfig routines.
rl 0 csr 174400 vector 160 attached
tm ? csr 172520 vector 224 skipped:  No CSR.
tms ? csr 174500 vector 260 skipped:  No CSR.
ts ? csr 172520 vector 224 skipped:  No CSR.
xp 0 csr 176700 vector 254 attached
Automatic reboot in progress...
Tue Mar 31 15:46:36 PST 1981
Tue Mar 31 15:46:36 PST 1981
checking quotas: done.
Assuming non-networking system ...
checking for core dump...
preserving editor files
clearing /tmp
standard daemons: update cron accounting.
starting lpd
starting local daemons: sendmail.
Tue Mar 31 15:47:04 PST 1981

2.11 BSD UNIX (vixen.skn.noip.me) (console)

login: root
erase, kill ^U, intr ^C
# uname
2.11BSD
# ps -al
  F S   UID   PID  PPID CPU PRI NICE  ADDR  SZ WCHAN    TTY TIME COMMAND
  1 R     0    80    75   3  50   0  21600  59          co  0:00 ps -al
# cat /etc/passwd
root:*:0:1:The Man:/:/bin/sh
daemon:*:1:1:The devil himself:/:/bin/sh
sys:*:4:2:Operating System:/tmp:nologin
operator:*:2:5:System &:/usr/guest/operator:/bin/csh
bin:*:3:20:Binaries Commands and Source:/:/bin/csh
nobody:*:32767:31:Nobody:/nonexistent:/bin/sh
uucp:*:66:1:UNIX-to-UNIX Copy:/usr/spool/uucppublic:/usr/sbin/uucico
ingres:*:39:74:INGRES Owner:/usr/ingres:/bin/csh
# ls -al /sys/conf
total 147
drwxr-xr-x  5 root          512 Mar 31 13:55 .
drwxr-xr-x 23 root          512 Mar 31 15:45 ..
-r--r--r--  1 root          238 Dec 27  1986 :comm-to-bss
...
# cat > hello.c
#include <stdio.h>
main()
{
    printf("Hello world\n");
}
CTRL/D
# cc hello.c
# ls -al hello* a.out
-rwxr-x--x  1 root         5335 Mar 31 15:52 a.out
-rw-r-----  1 root           59 Mar 31 15:52 hello.c
# ./a.out
Hello world
# cd /sys/conf
# ed VIXEN
10271
/NPTY/
NPTY            0               # pseudo-terminals - GENERIC sys needs NONE
s/0/2/
.
NPTY            2               # pseudo-terminals - GENERIC sys needs NONE
w
10271
q
# ./config VIXEN
Creating ../VIXEN.
Copying standard files to ../VIXEN.
Setting configuration options for VIXEN.
Creating device header files.
Creating Makefile for VIXEN.
# cd /sys/VIXEN
# make
make -f Make.sys I=/usr/include H=../h M=../machine AS="/bin/as -V" CPP="/lib/cpp -P -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h"  CFLAGS="-O -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h" SED="/bin/sed"
cc -O -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h -S ../sys/init_main.c
/bin/sed -f SPLFIX init_main.s | /bin/as -V -u -o init_main.o
rm -f init_main.s
cc -O -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h -S ../sys/init_sysent.c
/bin/sed -f SPLFIX init_sysent.s | /bin/as -V -u -o init_sysent.o
rm -f init_sysent.s
cc -O -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h -S ../sys/kern_acct.c
/bin/sed -f SPLFIX kern_acct.s | /bin/as -V -u -o kern_acct.o
rm -f kern_acct.s
cc -O -DKERNEL -DVIXEN -DFPSIM -DSOFUB_MAP -I. -I../h -S ../sys/kern_clock.c
/bin/sed -f SPLFIX kern_clock.s | /bin/as -V -u -o kern_clock.o
rm -f kern_clock.s
...
size unix
text    data    bss     dec     hex
50624   7792    23708   82124   140cc   total text: 118272
        overlays: 7680,7360,7680,7488,7488,7744,5632,6144,7680,2752
Compacting symbol table
symcompact unix
symcompact: 209 symbols removed
Compacting strings table
strcompact unix
rearranging symbols
symorder ../pdp/symbols.sort unix
./checksys unix
System will occupy 210528 bytes of memory (including buffers and clists).

               end {0075414}          nbuf {0017116}           buf {0044360}
             nproc {0017104}          proc {0061314}         ntext {0017106}
              text {0074354}         nfile {0017112}          file {0071720}
            ninode {0017110}         inode {0017200}      ncallout {0017114}
           callout {0035764}     ucb_clist {0017122}        nclist {0017120}
          ram_size {0000000}       xitdesc {0017176}      quotdesc {0000000}
         namecache {0036504}       _iosize {0010004}          nlog {0016156}
# make install
install -c -o root -g kmem -m 744 unix /unix
# 

Example boot of RSX 11M 4.6

BOOT> boot rp1

  RSX-11M V4.6 BL56   1912.K MAPPED
>RED DB1:=SY:
>RED DB1:=LB:
>MOU DB1:RSXM56
>@DB1:[1,2]STARTUP
>* PLEASE ENTER TIME AND DATE (HR:MN DD-MMM-YY) [S]:
>TIM
00:00:11 29-APR-74
>* ENTER LINE WIDTH OF THIS TERMINAL [D D:132.]:
>SET /BUF=TI:132.
>ACS SY:/BLKS=1024.
>;
>; This system startup command file (LB:[1,2]STARTUP.CMD) contains a
>; template of commands to initialize the queue print spooler and queue
....
>INS LB:[1,54]INI.TSK
>INS LB:[1,54]MAC.TSK
>@ <EOF>
><b>BYE</b>
Have a nice day
29-APR-74 00:00 TT0:  logged off VIXEN
>HELLO 200,1
Password: <CR>

RSX-11M BL56   [1,54] System     VIXEN
29-APR-74 00:00 Logged on Terminal TT0:

Good Morning

>@LOGIN.CMD
        <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
        |                                               |
        |     Hello.                                    |
        |                                               |
        |      You are now logged in on the             |
        |      RSX-11M Operating System.                |
        |                                               |
        |      This is the USER account.  Nothing       |
        |      that you do in this account can do       |
        |      any harm either to the system, or to     |
        |      this account.                            |
        |                                               |
        |      Use this account with the terminal       |
        |      warm-up session described in the book    |
        |      Introduction to RSX-11M.                 |
        |                                               |
        |      Take it easy.                            |
        |                                               |
        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>@ <EOF>
>DIR

Directory DB1:[200,1]
29-APR-74 00:00

GSA.MAC;1           19.        03-JAN-90 17:07
SEARCH.MAC;1        10.        03-JAN-90 17:07
RENAME.MAC;1        12.        03-JAN-90 17:07
....

Bugs?

Plenty! Especially in the places where I haven't managed to figure out what a real PDP 11/70 should do. :-( Core PDP 11/70 stuff is well documented but some lesser used system functions require reverse engineering to understand.

If you have something you want me to look at let me know and I'll prioritise. However always happy to accept fixes!

home