Here's shown how to operate tu58fs with a mix of tape image and shared directory.
Setup
Hardware: Say you want to run several XXDP diagnostics. You're working on a Linux under my home "/home/joerg". The PDP-11 is connected with its console port to a terminal emulator, and with the 2nd TU58 port over null-modem to a RS232 on your Linux. Let the serial port for the TU58 on Linux be /dev/ttyS1.
Files: you have the nice XXDP system image "11XDP.DSK" downloaded from http://www.ak6dn.com/PDP-11/TU58/. And you have tons of interesting diagnostics extracted from the big xxdp25 RL02 disk, or downloaded them from my diagnostic database. Problem: 11XXDP.DSK is quite full, so we use a shared directory to move required diags in and out at will.
Start tu58fs
Open a xterm and start the tu58 emulator:
joerg@vmubuprog:~$ sudo ./tu58fs -V -v -p /dev/ttyS1 -b 38400 --xxdp -d 0 r /home/joerg/11XXDP.DSK -sd 1 c /home/joerg/tu58_1
info: tu58fs - DEC TU58 tape emulator with file sharing v0.1
(compile Jan 20 2017 18:45:48)
info: Unit 0 readonly fmt=XXDP size=256KB=512 blocks, img file="/home/joerg/11XXDP.DSK"
info: Host directory "/home/joerg/tu58_1" created
info: Unit 1 read/write fmt=XXDP size=256KB=512 blocks, shared dir="/home/joerg/tu58_1"
info: serial port /dev/ttyS1 at 38400 baud 1 stop
info: TU58 emulation start
info: 0-7 device dialog, R restart, S toggle send init, V toggle verbose, D toggle debug, Q quit
info: emulator started
Then you have the XXDP system running from image 11XXDP.DSK in device 0. You can put the diagnostics you want to run on the shared ~/tu58_1 directory, which under XXDP appears as DD1:
Boot
Boot the PDP-11 from TU58, device code "DD0". If you don't have a bootloader in your PROMs, you can dump the bootloader over ODT console into memory, several people have solutions.
The PDP-11 will boot from 11XXDP.DSK:
BOOTING UP XXDP-XM EXTENDED MONITOR
XXDP-XM EXTENDED MONITOR - XXDP V2.5
REVISION: F0
BOOTED FROM DD0
064KW OF MEMORY
NON-UNIBUS SYSTEM
RESTART ADDRESS: 152000
TYPE "H" FOR HELP !
.DIR
ENTRY# FILNAM.EXT DATE LENGTH START VERSION
1 XXDPSM.SYS 1-MAR-89 29 000050 E.0
2 XXDPXM.SYS 1-MAR-89 39 000105 F.0
3 DRSSM .SYS 1-MAR-89 24 000154 G.2
4 DRSXM .SYS 1-MAR-89 48 000204 C.0
5 DATE .SYS 1-MAR-89 2 000264 B.0
6 DB .SYS 1-MAR-89 2 000266 C.0
7 DD .SYS 1-MAR-89 3 000270 D.0
8 DIR .SYS 1-MAR-89 7 000273 D.0
9 DL .SYS 1-MAR-89 4 000302 D.0
10 DM .SYS 1-MAR-89 4 000306 C.0
11 DR .SYS 1-MAR-89 3 000312 C.0
12 DU .SYS 1-MAR-89 4 000315 E.0
13 DUSZ .SYS 1-MAR-89 2 000321 C.0
14 DY .SYS 1-MAR-89 3 000323 D.0
15 LP .SYS 1-MAR-89 1 000326 B.0
16 MM .SYS 1-MAR-89 3 000327 C.0
17 MS .SYS 1-MAR-89 4 000332 C.0
18 MU .SYS 1-MAR-89 4 000336 E.0
19 HELP .TXT 1-MAR-89 29 000342
20 PATCH .BIC 1-MAR-89 31 000377
21 SETUP .BIC 1-MAR-89 27 000436
22 UPDAT .BIC 1-MAR-89 29 000471
23 XTECO .BIC 1-MAR-89 26 000526
24 FLOAT .BIN 1-MAR-89 18 000560
FREE BLOCKS: 125
Using the shared directory
We now can access the shared directory from within XXDP. Since it just was created, it is empty:
.DIR DD1:
ENTRY# FILNAM.EXT DATE LENGTH START VERSION
FREE BLOCKS: 471
Now copy some diagnostics to the shared dir (yes, we're trying to test a RL disk drive):
joerg@vmubuprog:~$ cp retrocmp/tmp/ZRL* tu58_1/
The files are now on the PDP and can be used:
.DIR DD1:
ENTRY# FILNAM.EXT DATE LENGTH START VERSION
1 ZRLGE0.BIC 20-JAN-99 19 000050
2 ZRLHB1.BIC 20-JAN-99 27 000073
3 ZRLJC0.BIC 20-JAN-99 23 000126
4 ZRLKB3.BIC 20-JAN-99 26 000155
5 ZRLNC0.BIC 20-JAN-99 29 000207
6 ZRLID1.BIN 20-JAN-99 30 000244
7 ZRLLC1.BIN 20-JAN-99 14 000302
8 ZRLMB1.BIN 20-JAN-99 23 000320
FREE BLOCKS: 280
.R DD1:ZRLMB1.BIN
ZRLMB1.BIN
DRSSM-G2
CZRLM-B-0
CZRLM IS A UTILITY PROGRAM FOR FORMATTING BAD SECTOR FILES
UNIT IS RL01,RL02
RSTRT ADR 145702
DR>
Running papertape images
XXDP uses the "Absolute Standard" binary format for program code, which is also used for paper tape binaries. So you're not limited to run XXDP diagnostics programs, you can run every papertape tool.
For example, run the Papertape BASIC:
1) Download http://www.avitech.com.au/mm-files/ptb/DEC-11-AJPB-PB.ptap
Good docs are here: http://www.avitech.com.au/ptb/ptb.html
2) Under linux we copy the BASIC paper tape to the shared dir. XXDP allows only 6.3 filenames, but we intentionally do not rename "DEC-11-AJPB-PB.ptap" to something handy.
joerg@vmubuprog:~$ cp retrocmp/tmp/DEC-11-AJPB-PB.ptap tu58_1
joerg@vmubuprog:~$ ls -l tu58_1
insgesamt 120
-rwxr-xr-x 1 root root 10180 Jan 20 19:24 DEC-11-AJPB-PB.ptap
-rwxr-xr-x 1 root root 9690 Jan 20 19:11 ZRLGE0.BIC
-rwxr-xr-x 1 root root 13770 Jan 20 19:11 ZRLHB1.BIC
-rwxr-xr-x 1 root root 15300 Jan 20 19:11 ZRLID1.BIN
-rwxr-xr-x 1 root root 11730 Jan 20 19:11 ZRLJC0.BIC
-rwxr-xr-x 1 root root 13260 Jan 20 19:11 ZRLKB3.BIC
-rwxr-xr-x 1 root root 7140 Jan 20 19:11 ZRLLC1.BIN
-rwxr-xr-x 1 root root 11730 Jan 20 19:11 ZRLMB1.BIN
-rwxr-xr-x 1 root root 14790 Jan 20 19:11 ZRLNC0.BIC
3) On the PDP under XXDP, we see "DEC-11-AJPB-PB.ptap" truncated to "DEC/11.PTA". And we start it:
.DIR DD1:
ENTRY# FILNAM.EXT DATE LENGTH START VERSION
1 ZRLGE0.BIC 20-JAN-99 19 000050
2 ZRLHB1.BIC 20-JAN-99 27 000073
3 ZRLJC0.BIC 20-JAN-99 23 000126
4 ZRLKB3.BIC 20-JAN-99 26 000155
5 ZRLNC0.BIC 20-JAN-99 29 000207
6 ZRLID1.BIN 20-JAN-99 30 000244
7 ZRLLC1.BIN 20-JAN-99 14 000302
8 ZRLMB1.BIN 20-JAN-99 23 000320
9 DEC/11.PTA 20-JAN-99 20 000347
FREE BLOCKS: 260
.R DD1:DEC???.???
DEC/11.PTA
PDP-11 BASIC, VERSION 007A
*O
READY
10 PRINT "HELLO"
LIST
10 PRINT "HELLO"
READY
RUN
HELLO
STOP AT LINE 10
READY