Creating a program in RSX11M

In hindsight…this was easy. However I first tried CREATE which was supposed to be a valid command. But wasn’t!

>CREATE
?CREATE  ?
CCL -- Syntax error, unknown or ambiguous command
>

Found EDT, which worked!

>@ <EOF>
>EDT HELLO.COB
Input file does not exist
[EOB]
*INSERT   After the INSERT, I pasted in a short program
            IDENTIFICATION DIVISION.                   
            PROGRAM-ID. hello.
            PROCEDURE DIVISION.
            DISPLAY "Hello, world!".
            STOP RUN.
            ^Z    Ctrl Z
[EOB]
*EXIT
DU0:[USER]HELLO.COB;1 5 lines

>DIR *.COB


Directory DU0:[USER]
18-SEP-2021 18:04

HELLO.COB;1         1.         18-SEP-2021 18:04

Total of 1./1. blocks in 1. file

>TYPE HELLO.COB
IDENTIFICATION DIVISION.
PROGRAM-ID. hello.
PROCEDURE DIVISION.
DISPLAY "Hello, world!".
STOP RUN.
>

Confused about 1st RSX11M

And by that I mean the startup of the disks I got from rsx11m.com. Startup ends at “>@ <EOF>”, seen below. So I assumed it was up and ready for you to logon. But when I tried as you can see it replied “LOG — Other User Logged On”. After awhile I realized I was already logged on because it responded to my “DIR” command. I could if I wish type “Bye” and logon somewhere else.

Here are a few of the ending startup messages…

>; PRINT PLOT:=MAP.HPG
>;
>; INSTALL TCP/IP
>;
>SET /NAMED
>SET /UIC=[1,2]
>* Load TCP/IP? [Y/N D:Y T:15S]: N
>@ <EOF>
>LOG
LOG -- Other User Logged On
>DIR


Directory DU0:[200200]
18-SEP-2021 12:33

After startup…Where am I?

After I first startup it seems to imply that I’m in [1,2]. Also what is DU0:[200200]…NOT[200,200] But if I logout and log in to SYSTEM it says I’m in [1,1]…DU0:[1,1]

>@ <EOF>
>SHOW USERS
TT0:	 [200200]    [1,2]
>SHOW DEFAULT
DU0:[200200]  Named  TT0:
Protection UIC:  [1,2]
>BYE
>@LB:[1,2]SYSLOGOUT.CMD
>@ <EOF>
>
 15:33:19  Logout user                [1,2] TT0:
Have a Good Afternoon
18-SEP-2021 15:33 TT0:  logged off RSX021 
>
>LOG SYSTEM
Password: 

RSX-11M-PLUS V4.6   BL87    [1,54] System    RSX021 
18-SEP-2021 15:33  Logged on Terminal TT0:  as SYS1

Good Afternoon

15:33:34  Login  user SYSTEM         [1,1] TT0:
 
	*****************************************************************
	*                                                               *
	*                    Welcome to RSX-11M-PLUS                    *
	*                     RSX021 PiDP-11/70                         *
	*                  Version 4.6  Base level 87                   *
	*                This is file LB:[1,2]LOGIN.TXT                 *
	*                                                               *
	*****************************************************************
 
    Last interactive login on Saturday, September 18, 2021  15:31:56 (TT0:)
    Last batch login on Saturday, August 14, 2021  10:23:39
 
>SHOW USERS
TT0:	 [1,1]       [1,1]     18-SEP-2021 15:33   1	S. SYSTEM        
>SHOW DEFAULT
DU0:[1,1]  Nonamed  TT0:
Protection UIC:  [1,1]
>  

I was interested in these disks because I read that F77, BasicPlus2, C, APL, Pascal, COBOL were installed.

>LOG USER/USER

RSX-11M-PLUS V4.6   BL87    [1,54] System    RSX021 
18-SEP-2021 12:47  Logged on Terminal TT0:  as USR2

Good Afternoon

12:47:27  Login  user USER           [200,1] TT0:
 
	*****************************************************************
	*                                                               *
	*                    Welcome to RSX-11M-PLUS                    *
	*                     RSX021 PiDP-11/70                         *
	*                  Version 4.6  Base level 87                   *
	*                This is file LB:[1,2]LOGIN.TXT                 *
	*                                                               *
	*****************************************************************
 
    Last interactive login on Saturday, September 18, 2021  12:43:35 (TT0:)
 
>@LOGIN.CMD
>SET DEFAULT [USER]/NAMED
	<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
	|                                               |
	|     Hello.                                    |
	|                                               |
	|      You are now logged in on the             |
	|      RSX-11M-PLUS 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-PLUS.            |
	|                                               |
	|      Take it easy.                            |
	|                                               |
	>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>@ <EOF>
>BASIC
RSX BASIC
VERSION 29AU86
READY
10 FOR I= 1 TO 10
20 PRINT I
30 NEXT I
32767 END

RUN
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 

STOP AT LINE 32767
READY
EXIT
>BYE
>@LB:[1,2]SYSLOGOUT.CMD
>@ <EOF>
>
Connect time:   0 hrs  4 mins 15 secs
CPU time used:  0 hrs  0 mins  1 secs
Task total:    13
12:51:42  Logout user USER           [200,1] TT0:
Have a Good Afternoon
18-SEP-2021 12:51 TT0:  logged off RSX021 
>
>

I typed SAVE and apparently it saved it as PROGRAM.BAS. But in my limited playing I couldn’t figure out how to load it back in to work on it more.

I typed HELP BASIC, and found I could type BP2…which is different than BASIC. This is more like what I am used to. This program was invalid under BASIC

>BP2

PDP-11 BASIC-PLUS-2 V2.7-C 

BASIC2

NEW
New file name--TEST

BASIC2

10 PRINT I FOR I= 1 TO 10
32767 END

SAVE
?File exists-RENAME/REPLACE

BASIC2

REPLACE                       The file is saved as TEST.B2S

BASIC2

NEW
New file name-- 

BASIC2

LIST
NONAME        13:15         18-Sep-21

BASIC2

OLD TEST

BASIC2

LIST
TEST          13:15         18-Sep-21
10 PRINT I FOR I= 1 TO 10
32767 END

BASIC2

RUN
TEST  	13:15   	18-Sep-21


 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 

BASIC2

EXIT
>

Data entry machine

Something just popped in my head that I totally forgot about.There was a data entry machine that I was trained on…I think, to help the head of data entry to program. You could design data entry screens by defining fields and edits for those fields. That’s it. That’s all I remember. I don’t remember the brand of the computer. It wasn’t a memorable brand like IBM or DEC. This is actually the first time I’ve thought about it in years.

My first experience with RSX11M-PLUS

After installing…of course!

>log system
Password: 

RSX-11M-PLUS V4.6   BL87    [1,54] System    PIDP   
17-NOV-23 10:46    Logged on Terminal TT0:  as SYS1

Good Morning

10:46:46  Login  user SYSTEM         [1,1] TT0:
 
	*****************************************************************
	*                                                               *
	*                    Welcome to RSX-11M-PLUS                    *
	*                                                               *
	*                  Version 4.6  Base level 87                   *
	*                This is file LB:[1,2]LOGIN.TXT                 *
	*                                                               *
	*****************************************************************
 
 
>@LB:[1,2]SYSLOGIN.CMD

RSX11M startup/shutdown

The system was very casual calling me bro when it was up 🙂 …BRO ALL:”System is running. Please log on.”

Like RSTS/E you run SHUTUP to shut it down!

bill@bill-MS-7B79:~/MyStuff/Computer_Simulator_Emulator/Emulators/Mini/simh/PDP-11/RSX11M/jb$ sudo ../../bin/pdp11 rsx11m.ini
[sudo] password for bill:           

PDP-11 simulator Open SIMH V4.1-0 Current        simh git commit id: 021413a2
Disabling XQ
/home/bill/MyStuff/Computer_Simulator_Emulator/Emulators/Mini/simh/PDP-11/RSX11M/jb/rsx11m.ini-6> att -f tq0 e11 pidp.tap
%SIM-INFO: TQ0: Tape Image 'pidp.tap' scanned as E11 format
%SIM-INFO: contains 83211456 bytes of tape data (21101 records, 5 tapemarks)
%SIM-INFO: A potentially unreasonable number of record sizes(15) vs tape marks (5) have been found
%SIM-INFO: The tape format (E11) might not be correct for the 'pidp.tap' tape image
/home/bill/MyStuff/Computer_Simulator_Emulator/Emulators/Mini/simh/PDP-11/RSX11M/jb/rsx11m.ini-7> att rq0 pidp.dsk
%SIM-INFO: RQ0: 'pidp.dsk' Contains an ODS1 File system
%SIM-INFO: RQ0: Volume Name:  RSX11MPBL87 Format: DECFILE11A   Sectors In Volume: 2000896
/home/bill/MyStuff/Computer_Simulator_Emulator/Emulators/Mini/simh/PDP-11/RSX11M/jb/rsx11m.ini-10> att dz 42,speed=*32
%SIM-INFO: Listening on port 42
/home/bill/MyStuff/Computer_Simulator_Emulator/Emulators/Mini/simh/PDP-11/RSX11M/jb/rsx11m.ini-16> att xu enp24s0
%SIM-INFO: Eth: opened OS device enp24s0
%SIM-INFO: Sharing the host NIC MAC address 30:9C:23:D3:A6:87 may cause unexpected behavior



RSX-11M-PLUS V4.6  BL87   1920.KW  System:"PIDP  "
>RED DU:=SY:
>RED DU:=LB:
>RED DU:=SP:
>MOU DU0:"RSX11MPBL87"
>@DU:[1,2]STARTUP
>TIME 17-NOV-2023 11:37:35
>* Please enter time and date (HH:MM DD-MMM-YYYY) [S T:1M]: 
>TIME 
11:38:11 17-NOV-23
>* Start DECnet? [Y/N D:Y T:1M]: n
>* Start TCP/IP? [Y/N D:Y T:1M]: n
>* Do you have a crash explanation to enter? [Y/N D:N T:1M]: 
>ACS SY:/BLKS=1024.
>CON ONLINE ALL
>ELI /LOG/LIM
>SET /COLOG=ON
>CLI /INIT=DCL/CTRLC/DPR="<15><12>/$ /"
>INS LB:[1,1]RMSRESAB.TSK/RON=YES/PAR=GEN
>INS LB:[1,1]RMSLBL.TSK/RON=YES/PAR=GEN
>INS LB:[1,1]RMSLBM.TSK/RON=YES/PAR=GEN
>INS LB:[3,54]RMSDES.TSK
>INS LB:[3,54]RMSDEF.TSK
>INS LB:[3,54]RMSBCK.TSK
>INS LB:[3,54]RMSRST.TSK
>INS LB:[3,54]RMSCNV.TSK
>INS LB:[3,54]RMSIFL.TSK
>INS LB:[3,54]RMSDSP.TSK
>INS $QMGCLI
>INS $QMGCLI/TASK=...PRI
>INS $QMGCLI/TASK=...SUB
>QUE /START:QMG
>INS $QMGPRT/TASK=PRT.../SLV=NO
>START/ACCOUNTING STAT:0 CRASH:NO INTR:YES
>QUE BAP0:/BATCH
>QUE BAP0:/AS:BATCH
>SET /UIC=[1,54]
>DFL 0=SYS$UTC_OFFSET/GBL
>DFL 0=TZ$OFFSET/GBL
>DFL UTC=TZ$NAME/GBL
>DFL 0=TZ$DST/GBL
>DFL 14=SYS$PWD_WARD/GBL/FIN	! Warn for expired pw last 14 days !
>DFL 3=SYS$HEL_HANGUP/GBL/FIN	! Allow 3 login att. before hangup !
>DFL LB:[RPM]=RPM$DIR/GBL
>INS $EDT
>INS $MAC
>INS $HFT/TASK=...TKB
>INS $LBR
>INS $CMP
>INS $CRF
>INS $ZAP
>INS $SLP
>INS $PAT
>INS $FLX
>INS $BRU
>INS $RPT
>INS $VFY
>INS $DMP
>INS $BAD
>INS $CDA
>INS $IOX
>INS $RMD
>;
>; RPM boot...
>;
>;
>; RPM boot done.
>;
>SET /LOGON
>BRO ALL:"System is running. Please log on."

17-NOV-23 11:38 	From   PIDP::TT0:	to ALL:
"System is running. Please log on."

>BYE
>@LB:[1,2]SYSLOGOUT.CMD
11:38:45  Task "AT.T0 " terminated
	  Aborted via directive or CLI
MCR -- Task active 
>
>
 11:38:45  COT -- Date is 17-NOV-23
Have a Good Morning
11:38:45  Logout user                [1,54] TT0:
17-NOV-23 11:38   TT0:  logged off PIDP   
> 

MTREK and RSX

I saw a post on the PiDP-11 google site about MTREK (a multiuser Startrek game), that I never heard of before. It runs under RSX. Being a loner I was more interested in the DEC RSX OS than MTREK. So I started googling and read about RSX-11M-PLUS V4.6, here. I was especially interested because they mention…The easiest way to get F77, as well as BasicPlus2, C, APL, Pascal, Cobol, DECnet, Johnny Billquist’s TCP/IP and also have 8 DZ11 ports is to boot the version of RSX that on the disk image labelled http://rsx11m.com/PiDP11_DU0.zip. I asked a question about that RSX offering. And Johnny Billquist replied “I would really suggest you instead pick up the image I created”, and it is here.

Testing SDLTRS with trs80-tool output

So I took a known good cassette file startrek.cas and converted it to a wav file, because that is what audacity will create from the MP3 file, that my new cassette player (still waiting for) will create. I then took that wav file and converted it to a new .cas file

./trs80-tool convert startrek.cas startrek.wav
./trs80-tool convert startrek.wav output.cas

A good sign…output.cas is the same size as startrek.cas.

I successfully CLOADed and ran, the new .cas file
I also successfully CLOADed and ran, the new .wav file I created…a cool feature of SDLTRS.

So when my new cassette player arrives I can hit the ground running. With SDLTRS I can completely bypass trs80-tool. I’m still glad I learned about it and it’s very cool itself.

SDLTRS problem solved

I opened an issue, concerning the previous post, and the developer responded…since SDLTRS 1.2.26 the Model I emulation no longer boots directly into BASIC if there is no disk image specified for drive :0, but asssumes the “Expansion Interface” is “connected”: you have to press BREAK (ESC on the PC) a few times while booting to get into BASIC … or disable the “Expansion Interface” (Floppy Disk Controller) by adding the -nofdc or -nofloppy option on the command line …

So adding -nofdc to my command line startup worked!