DEC - PDP11



 ____  ______  __     _ _ __  __       ____  _    _   _ ____ 
|  _ \/ ___\ \/ /    / / |  \/  |     |  _ \| |  | | | / ___|
| |_) \___ \\  /_____| | | |\/| |_____| |_) | |  | | | \___ \
 |  _ < ___) /  \_____| | | |  | |_____|  __/| |__| |_| |___) |
|_| \_\____/_/\_\    |_|_|_|  |_|     |_|   |_____\___/|____/
                                                             
  ____  _          _     _          _   _ _   _ _ _ _        
|  _ \(_)___  ___| |__ (_)   ___  | | | | |_(_) (_) |_ _   _
 | | | | / __|/ __| '_ \| |  / _ \ | | | | __| | | | __| | | |
 | |_| | \__ \ (__| | | | | |  __/ | |_| | |_| | | | |_| |_| |
 |____/|_|___/\___|_| |_|_|  \___|  \___/ \__|_|_|_|\__|\__, |
                                                       |___/
 
                                   

                        
In questa pagina andremo a configurare due dei tre dischi RP rimasti liberi (nello specifico RP01 e RP02 che in RSX-11M sono nominati DS1: e DS2:) per poi poterli utilizzare come storage per le home directory dei vari utenti e per utility di sistema che andremo ad installare.

Dopo aver effettuato il boot del nostro sistema provvediamo a loggarci come utente SYSTEM:

root@semenzara:/home/DEC/RSX11M# pdp11 pdp11.config

PDP-11 simulator V4.0-0 Current        git commit id: 4b03e149

[...]

>@ <EOF>

>
>bye

Have a Good Morning
29-JUL-2021 10:05 TT0:  logged off EMULO 
>
>hello system
Password:

RSX-11M-PLUS V4.6   BL87    [1,54] System    EMULO 
29-JUL-2021 10:05  Logged on Terminal TT0:  as SYS1

Good Morning

 
*****************************************************************
*                                                               *
*                    Welcome to RSX-11M-PLUS                    *
*                                                               *
*                  Version 4.6  Base level 87                   *
*                This is file LB:[1,2]LOGIN.TXT                 *
*                                                               *
*****************************************************************
 

    Last interactive login on Tuesday, July 6, 2021  10:25:07 (TT11:)
 


>

Ora procediamo a formattare il primo dei due dischi RP, RP01 che nel nostro sistema si chiama DS1:, la procedura corretta da seguire per formattare un disco consiste in prima instanza nell'
allocare il disco al nostro terminale con il comando ALL, in seguito si procede con il mount del disco in modalità FOREIGN, a questo punto sarà possibile procedere con la creazione della tabella dei bad blocks con il comando BAD, infinire potremo formattare il disco dandogli un nome:

>INS $BAD

>ALL DB1:

>MOU /FOR DB1:

>BAD DB1:
BAD -- DB1: Total bad blocks= 0.

>INIT DB1: USERS

>

Ora per procedere con il secondo disco DB2: è necessario smontare e deallocare il disco DB1: dal terminale:

>DMO DB1:

10:36:10  *** DB1:  -- Dismount complete


DMO -- TT0:    dismounted from DB1:    *** Final dismount initiated ***

>DEA DB1:

>

Procediamo ora con disco DB2: in modo analogo al disco DB1:

>ALL DB2:

>MOUT  /FOR DB2:

>BAD DB2:
BAD -- DB2: Total bad blocks= 0.

>INIT DB2: TOOLS

>DMO DB2:

10:52:46  *** DB2:  -- Dismount complete


DMO -- TT0:    dismounted from DB2:    *** Final dismount initiated ***

>DEA DB2:

>

Arrivati a questo punto abbiamo RP1 e RP2 correttamente formattati e pronti per essere montati a sistema con i nomi rispettivamente di USERS e TOOLS.
Questi dischi dovranno essere disponibili per tutti gli utenti ed identificabili logicamente all'interno del sistema operativo attraverso i loro nomi, quindi dovranno essere di tipo PUBBLICO e rerenziati con i nomi logici rispettivamente di US: (USERS) e TL: (TOOLS):

>SET /PUB=DB1:

>SET /PUB=DB2:

>MOU DB1: USERS

>ASN DB1:=US: /SYSTEM

>MOU DB2: TOOLS

>ASN DB2:=TL: /SYSTEM

>

Ora rendiamo automatico il mount andando a modificare il file DB0:[1,2]STARTUP.CMD inserendo le righe in grassetto alla fine del file subito dopo la sezione per l'avvio della DECNET, come da esempio sottostante:

>EDT [1,2]STARTUP.CMD
    1       .;

*CHA
.;
.; STARTUP.CMD for RSX-11M-PLUS distribution kits.
.;
.;

[...]

.; Start Decnet and LAT

.sett $cex
.sett $dec
.sett $nns
.sett $lat
asn DB0:=XX:
INS DB0:[005,054]LCP
LCP CREATE /TERMINALS=25
@[5,1]NETINS

.; Mount other disks

SET /PUB=DB1:
MOU DB1:USERS
ASN DB1:=US: /SYSTEM
SET /PUB=DB2:
MOU DB2:TOOLS
ASN DB2:=TL: /SYSTEM

.EXIT



<ctrl+z>
*EXIT
DB0:[1,2]STARTUP.CMD;5 195 lines


>

Bene, a questo punto possiamo andare ad installare delle utility che sicuramente faranno molto comodo quando andremo a sperimentare con il nostro RSX-11M :)

***NOTA BENE***
***NOTA BENE*** ***NOTA BENE***
Se il vostro emulatore SIMH gira su s.o. Linux o su uno unix in generale, verificate che i files .tap dai quali andrete ad installare le utility abbiano come permissioni 755 o -rwxr-xr-x, in caso contrario è possibile che l'emulatore non sia in grado di leggere correttamente i nastri virtuali e che l'RSX-11M vi dia degli errori strani quando andrede ad accedere ai nastri.
***NOTA BENE*** ***NOTA BENE*** ***NOTA BENE***

Cominciamo con un programma che non ha bisogno di presentazioni, il Kermit T3.63 nella versione patched del grande Johnny Billquist (tutti i dettagli nella directory del disco UTILITY dove andremo ad installare il programma), lo potete trovare qui o scaricare direttamente da questo link: rsx11m_kermit_t3.63.tap o dal sito di Johnny: ftp://ftp.update.uu.se/pub/pdp11/rsx/comm/kermit/T3.63

Per installarlo procediamo con il montare il nastro nel nostro tape reel virtuale:

> <ctrl+e>
Simulation stopped, PC: 021070 (BR 21036)
sim> att ts0 tapes/rsx11m_kermit_t3.63.tap
TS: Tape Image 'tapes/rsx11m_kermit_t3.63.tap' scanned as SIMH format
sim> G

>

Ora utilizziamo il programma BACKUP per installare l'archivio contenente il kermit nel nostro disco UTILITY (DB2:):

>ALL MS0:

>MOU/FOR MS0:

>INS $BRU

>BRU /BAC:KERMIT_T3.63/REW/NOI/UFD/NEW MS0: DB2:

BRU - Starting Tape 1 on MS0:

BRU - End of Tape 1 on MS0:

BRU - Completed

>

Ora andiamo a vedere cosa effettivamente è stato installato sul disco DB2:, fate attenzione, visto che la directory creata non è nel classico formato utente:gruppo, impostiamo il formato NAMED per poter referenziare una directory direttamente con il suo nome logico:

>SET /NAMED

>SET /DEF=DB2:[KERMIT]

>DIR



Directory DB2:[KERMIT]
29-JUL-2021 15:35

DAPRLX.ODL;1        2.         31-AUG-2018 11:11
FOO.B2S;1           1.         31-AUG-2018 11:11
K11.BWR;1           27.        31-AUG-2018 11:11
K11.COM;1           1.         31-AUG-2018 11:12
K11.ODL;1           3.         31-AUG-2018 11:12
K1180S.MAC;1        58.        31-AUG-2018 11:12
K11XXA.XXA;1        13.        31-AUG-2018 11:12
K11ANN.V51;1        3.         31-AUG-2018 11:12
K11ANN.V54;1        4.         31-AUG-2018 11:12
K11ART.DOC;1        37.        31-AUG-2018 11:12
K11ART.RNO;1        24.        31-AUG-2018 11:12
K11ASM.COM;1        2.         31-AUG-2018 11:13
K11ASM.E80;1        4.         31-AUG-2018 11:13
K11ASM.M41;1        2.         31-AUG-2018 11:13
K11ASM.RT4;1        4.         31-AUG-2018 11:13
K11ASM.RTE;1        3.         31-AUG-2018 11:13
K11ATR.MAC;1        43.        31-AUG-2018 11:13
K11ATT.COM;1        1.         31-AUG-2018 11:13
K11CDF.MAC;1        4.         31-AUG-2018 11:13
K11CM1.MAC;1        14.        31-AUG-2018 11:13
K11CMD.MAC;1        140.       31-AUG-2018 11:13
K11COM.MAC;1        8.         31-AUG-2018 11:14
K11CPY.MAC;1        19.        31-AUG-2018 11:14
K11CVT.MAC;1        31.        31-AUG-2018 11:14
K11DAP.E80;1        5.         31-AUG-2018 11:15
K11DAP.M41;1        4.         31-AUG-2018 11:15
K11DAT.MAC;1        16.        31-AUG-2018 11:15
K11DEB.MAC;1        18.        31-AUG-2018 11:15
K11DEF.MAC;1        6.         31-AUG-2018 11:15
K11DER.MAC;1        12.        31-AUG-2018 11:15
K11DFH.MAC;1        8.         31-AUG-2018 11:15
K11DIA.MAC;1        91.        31-AUG-2018 11:15
K11DSP.MAC;1        12.        31-AUG-2018 11:16
K11E80.MAC;1        136.       31-AUG-2018 11:16
K11ECO.MAC;1        38.        31-AUG-2018 11:17
K11EDI.MAC;1        34.        31-AUG-2018 11:17
K11ER1.MAC;1        9.         31-AUG-2018 11:17
K11ER2.MAC;1        9.         31-AUG-2018 11:17
K11ER3.MAC;1        9.         31-AUG-2018 11:17
K11ERR.MAC;1        4.         31-AUG-2018 11:17
K11F85.DOC;1        41.        31-AUG-2018 11:17
K11F85.RNO;1        38.        31-AUG-2018 11:18
K11FB.MAC;1         1.         31-AUG-2018 11:18
K11FIL.DOC;1        11.        31-AUG-2018 11:18
K11FIX.MAC;1        6.         31-AUG-2018 11:18
K11FLP.DOC;1        6.         31-AUG-2018 11:18
K11HEX.B2S;1        6.         31-AUG-2018 11:18
K11HEX.BAS;1        6.         31-AUG-2018 11:18
K11HEX.C;1          4.         31-AUG-2018 11:18
K11HEX.COM;1        1.         31-AUG-2018 11:18
K11HEX.ENC;1        59.        31-AUG-2018 11:18
K11HEX.FTN;1        9.         31-AUG-2018 11:19
K11HLP.HLP;1        152.       31-AUG-2018 11:19
K11HLP.MAC;1        29.        31-AUG-2018 11:20
K11HLP.RNO;1        143.       31-AUG-2018 11:20
K11I31.CMD;1        1.         31-AUG-2018 11:21
K11I31.DOC;1        9.         31-AUG-2018 11:21
K11I31.ODL;1        3.         31-AUG-2018 11:21
K11ID.COM;1         1.         31-AUG-2018 11:21
K11ID.ODL;1         3.         31-AUG-2018 11:21
K11IDD.CMD;1        4.         31-AUG-2018 11:21
K11IDD.ENC;1        307.       31-AUG-2018 11:21
K11IDD.ODL;1        4.         31-AUG-2018 11:23
K11IDM.CMD;1        4.         31-AUG-2018 11:23
K11IDM.COM;1        5.         31-AUG-2018 11:23
K11IDM.ENC;1        305.       31-AUG-2018 11:23
K11IDM.ODL;1        4.         31-AUG-2018 11:25
K11INI.MAC;1        50.        31-AUG-2018 11:25
K11INS.DOC;1        68.        31-AUG-2018 11:26
K11INS.MSS;1        68.        31-AUG-2018 11:26
K11INS.RNO;1        72.        31-AUG-2018 11:27
K11LCL.MAC;1        18.        31-AUG-2018 11:27
K11LNK.COM;1        1.         31-AUG-2018 11:27
K11M41.MAC;1        137.       31-AUG-2018 11:27
K11MAC.MAC;1        26.        31-AUG-2018 11:28
K11MCO.MAC;1        89.        31-AUG-2018 11:29
K11MIT.DOC;1        176.       31-AUG-2018 11:29
K11MIT.MSS;1        166.       31-AUG-2018 11:30
K11MIT.PS;1         266.       31-AUG-2018 11:31
K11MNU.COM;1        7.         31-AUG-2018 11:33
K11NHD.MAC;1        4.         31-AUG-2018 11:34
K11NRS.COM;1        1.         31-AUG-2018 11:34
K11PAK.MAC;1        122.       31-AUG-2018 11:34
K11PCO.MAC;1        43.        31-AUG-2018 11:34
K11PK.MAC;1         74.        31-AUG-2018 11:35
K11POS.COM;1        5.         31-AUG-2018 11:35
K11POS.ODL;1        3.         31-AUG-2018 11:35
K11PRT.MAC;1        55.        31-AUG-2018 11:35
K11RCO.MAC;1        51.        31-AUG-2018 11:36
K11REC.MAC;1        43.        31-AUG-2018 11:36
K11RMS.MAC;1        109.       31-AUG-2018 11:36
K11RMZ.MAC;1        22.        31-AUG-2018 11:37
K11RSX.CMD;1        1.         31-AUG-2018 11:37
K11RSX.COM;1        3.         31-AUG-2018 11:37
K11RSX.ENC;1        424.       31-AUG-2018 11:37
K11RSX.ODL;1        3.         31-AUG-2018 11:40
K11RXX.MAC;1        24.        31-AUG-2018 11:40
K11SEN.MAC;1        46.        31-AUG-2018 11:41
K11SER.MAC;1        61.        31-AUG-2018 11:41
K11SHO.MAC;1        36.        31-AUG-2018 11:41
K11SML.COM;1        3.         31-AUG-2018 11:42
K11SML.ODL;1        6.         31-AUG-2018 11:42
K11ST0.MAC;1        57.        31-AUG-2018 11:42
K11ST1.MAC;1        46.        31-AUG-2018 11:42
K11STD.MAC;1        10.        31-AUG-2018 11:42
K11SUB.MAC;1        40.        31-AUG-2018 11:42
K11TOL.PAT;1        6.         31-AUG-2018 11:43
K11TRA.MAC;1        8.         31-AUG-2018 11:43
K11TSX.MAC;1        20.        31-AUG-2018 11:43
K11USR.DOC;1        182.       31-AUG-2018 11:43
K11USR.RNO;1        165.       31-AUG-2018 11:44
MAKEFILE.;1         2.         31-AUG-2018 11:45
README.1ST;1        3.         31-AUG-2018 11:45
SNDTXT.C;1          2.         31-AUG-2018 11:45
K11IDD.TSK;1        233.    C  31-AUG-2018 11:58
K11IDM.TSK;1        232.    C  31-AUG-2018 11:58
K11RSX.TSK;1        315.    C  31-AUG-2018 11:58

Total of 5625./5625. blocks in 117. files

>

Come possiamo vedere, sono presenti diversi eseguibili (.TSK) ed il file di HELP (.HLP) che dovremo andare a copiare nelle directory dove risiedono i rispettivi tipi di files:

>PIP DB0:[1,54]/CO=K11RSX.TSK

>PIP DB0:[1,54]/CO=K11IDD.TSK

>PIP DB0:[1,54]/CO=K11IDM.TSK

>PIP DB0:[1,2]/CO=K11HLP.HLP

>PIP DB0:[1,54]K11RSX.TSK/PR/WO:R

>PIP DB0:[1,54]K11IDD.TSK/PR/WO:R

>PIP DB0:[1,54]K11IDM.TSK/PR/WO:R

>PIP DB0:[1,2]K11HLP.HLP/PR/WO:R

>

Ora andiamo come al solito a modificare il file DB0:[1,2]STARTUP.CMD per fare in modo che il programma sia caricato al boot del sistema
inserendo le righe in grassetto alla fine del file subito dopo la sezione del montaggio dei dischi :

>SET /DEF=DB0:[1,2]

>EDT STARTUP.CMD
    1       .;

*CHA
.;
.; STARTUP.CMD for RSX-11M-PLUS distribution kits.
.;
.;
.; This file is a prototype startup file distributed as part of the
.; RSX-11M-PLUS distribution.  You should customize this file to meet
.; the needs of your particular installation. For example, application
.; tasks may be installed here, the CUSPS from LIBUIC ([3,54] on the
.; distribution kit) may be installed if not already installed in the
.; saved system image, etc.

[...]


.; Mount other disks

SET /PUB=DB1:
MOU DB1:USERS
ASN DB1:=US: /SYSTEM
SET /PUB=DB2:
MOU DB2:TOOLS
ASN DB2:=TL: /SYSTEM

.; KERMIT Startup
INS $K11IDM/TASK=...KER

<ctrl+z>
*EXIT
DB0:[1,2]STARTUP.CMD;6 198 lines

>

Vediamo se funziona tutto correttamente, carichiamo il programma e proviamo a lanciarlo:

>INS $K11IDM/TASK=...KER

>KER
Kermit-11 T3.63  Last edit: 3-Oct-06

Check SHOW RELEASE_NOTES for possible incompatabilities
with previous releases of Kermit-11 and other Kermits.
Linked for RSX11M/M+ and P/OS
Kermit-11>HELP

    Additional information is available on:


      @                 BINARY FILES      BYE               COMMAND-LINE
      CONNECT           COPY              CWD               DECNET
      DELETE            DIAL              DIRECT            DISCONNECT
      DISPLAY           ERASE             EXIT              FINISH
      GET               HANGUP            HELP-FILE         HOST
      INTRODUCTION      LOCAL             LOGFILE           Modems
      MicroRSX          QUIT              PARITY            PRINT
      PRO/350           RECEIVE           REMOTE            RENAME
      RESTRICTIONS      RSTS              RSX11M/M+         RT11
      SEND              SERVER            SET               SHOW
      STARTUP           SYSTEM            TAKE              TSX+
      TYPE              USAGE             WHO

 Topic ?
Kermit-11>QUIT

>

BINGO! :)

Ora smontiamo e deallochiamo il nastro.

>

>DMO MS0:

15:58:24  *** MS0:  -- Dismount complete


DMO -- TT0:    dismounted from MS0:    *** Final dismount initiated ***

>DEA MS0:

>


Proseguiamo con un programma che fornisce l'editing di riga alla nostra CLI (sia MCR che DCL) sviluppato direttamente da Johnny Billquist (tutti i dettagli nella directory del disco UTILITY dove andremo ad installare il programma), lo potete trovare qui
NOTA BENE: Parte del programma dipende dal kernel in esecuzione sul nostro PDP11 emulato, nell'archivio troverete un eseguibile già compilato per il kernel che abbiamo generato, nel caso installiate questa utility su di un RSX-11M-Plus emulato o reale con un kernel diverso, probabilmente sarà necessario compilarlo nuovamente, per fare questo serve un altra utility (MAKE) sempre di Johnny Billquist che troverete più avanti.

Ora iniziamo montando il nastro

> <ctrl+e>
>
Simulation stopped, PC: 021070 (BR 21036)
sim> att ts0 tapes/cleacd.tap
TS: Tape Image 'tapes/cleacd.tap' scanned as SIMH format
sim> g

Ora come di consueto allochiamo l'unità a nastro al nostro terminale, montiamo il nastro come foreign e procediamo ad effettuare il restore del package sul disco TOOLS DB2:

>

>all ms0:


>mou/for ms0:

>BRU /BAC:CLEACD/REW/NOI/UFD/NEW MS0: DB2:

BRU - Starting Tape 1 on MS0:

BRU - End of Tape 1 on MS0:

BRU - Completed

>

Ora diamo un occhiata al contenuto della directory che abbiamo appena ripristinato:

>

>DIR DB2:[OLDCLE]




Directory DB2:[OLDCLE]
29-JUL-2021 16:18

README.TXT;1        4.         12-NOV-2018 08:08
EMATAB.MAC;1        7.         12-NOV-2018 08:08
IMPURE.STB;1        1.         12-NOV-2018 08:11
CLESUB.MAC;1        46.        12-NOV-2018 08:08
EDTTAB.MAC;1        7.         12-NOV-2018 08:08
CLEACD.OBJ;1        7.         12-NOV-2018 08:10
CLEACD.LST;1        138.       12-NOV-2018 08:10
CLEACD.CRF;1        13.        12-NOV-2018 08:10
CLECMD.OBJ;1        6.         12-NOV-2018 08:10
CLECMD.LST;1        101.       12-NOV-2018 08:10
CLECMD.MAC;1        33.        12-NOV-2018 08:08
EXP.MAC;1           32.        12-NOV-2018 08:08
CLEDEF.MAC;1        1.         12-NOV-2018 08:08
EXPKERN.MAC;1       19.        12-NOV-2018 08:08
EXPSYM.MAC;1        6.         12-NOV-2018 08:08
CLECMD.CRF;1        9.         12-NOV-2018 08:10
CLESUB.OBJ;1        5.         12-NOV-2018 08:11
CLESUB.LST;1        121.       12-NOV-2018 08:11
CLIACD.BAT;1        1.         12-NOV-2018 08:08
CLIACD.CMD;1        3.         12-NOV-2018 08:08
CLIACD.MAC;1        139.       12-NOV-2018 08:08
CLIACD.615;1        9.         12-NOV-2018 08:08
CLIACD.616;1        294.       12-NOV-2018 08:08
CLIACDASM.CMD;1     1.         12-NOV-2018 08:08
CLIACDBLD.CMD;1     1.         12-NOV-2018 08:08
CLESUB.CRF;1        6.         12-NOV-2018 08:11
DBUG.MAC;1          8.         12-NOV-2018 08:08
IMPURE.LST;1        23.        12-NOV-2018 08:11
EDTTAB.OBJ;1        2.         12-NOV-2018 08:11
EDTTAB.LST;1        13.        12-NOV-2018 08:11
TACD.PMD;1          19.        12-NOV-2018 08:09
EMATAB.OBJ;1        2.         12-NOV-2018 08:11
EDTACD.TSK;1        10.     C  12-NOV-2018 08:11
EDTACD.MAP;1        16.        12-NOV-2018 08:11
EDTACD.CRF;1        7.         12-NOV-2018 08:11
EDTACD.STB;1        3.         12-NOV-2018 08:11
EMATAB.LST;1        15.        12-NOV-2018 08:11
CLEAINS.CMD;1       1.         12-NOV-2018 08:13
EMAACD.TSK;1        10.     C  12-NOV-2018 08:11
EMAACD.MAP;1        16.        12-NOV-2018 08:11
EXPMC.MLB;1         22.     C  12-NOV-2018 08:09
COPY.CMD;1          1.         12-NOV-2018 08:09
EMAACD.CRF;1        7.         12-NOV-2018 08:11
EMAACD.STB;1        3.         12-NOV-2018 08:11
EXP.OBJ;1           24.        12-NOV-2018 08:11
EXP.LST;1           83.        12-NOV-2018 08:11
EXPSYM.OBJ;1        11.        12-NOV-2018 08:11
TEST.MAC;1          2.         12-NOV-2018 08:09
EXPSYM.LST;1        24.        12-NOV-2018 08:11
EXPKERN.OBJ;1       34.        12-NOV-2018 08:11
EXPKERN.LST;1       76.        12-NOV-2018 08:11
IMPURE.MAC;1        9.         12-NOV-2018 08:09
X.CMD;1             1.         12-NOV-2018 08:09
EXP.TSK;1           54.     C  12-NOV-2018 08:11
CLEACD.MAC;1        54.        12-NOV-2018 08:09
EXP.MAP;1           25.        12-NOV-2018 08:11
TODO.TXT;1          3.         12-NOV-2018 08:09
EXP.CRF;1           12.        12-NOV-2018 08:11
TACD.MAC;1          1.         12-NOV-2018 08:09
EXP.STB;1           4.         12-NOV-2018 08:11
T.CMD;1             1.         12-NOV-2018 08:09
MAKEFILE.;1         4.         12-NOV-2018 08:09
CLEAINS.CMD;2       1.         12-NOV-2018 08:14

Total of 1611./1698. blocks in 63. files

Bene, sembra che ci sia tutto, ora andiamo a modificare il solito file DB0:[1,2]STARTUP.CMD inserendo le righe in grassetto per attivare l'editor al boot:

>SET /DEF=DB0:[1,2]

>EDT STARTUP.CMD
    1       .;

*CHA
.;
.; STARTUP.CMD for RSX-11M-PLUS distribution kits.
.;
.;
.; This file is a prototype startup file distributed as part of the
.; RSX-11M-PLUS distribution.  You should customize this file to meet
.; the needs of your particular installation. For example, application
.; tasks may be installed here, the CUSPS from LIBUIC ([3,54] on the
.; distribution kit) may be installed if not already installed in the
.; saved system image, etc.

[...]

.; KERMIT Startup
INS $K11IDM/TASK=...KER

.; CLEACD Startup
@DB2:[CLEACD]CLEAINS.CMD

        .EXIT

<ctrl+z>
*EXIT
DB0:[1,2]STARTUP.CMD;7 201 lines

Ora bisogna creare il file DB0:[1,2]SYSLOGIN.CMD dove andremo a registrare l'opportuna estensione ACD a seconda del tipo di terminale utilizzato dal login:

>EDT SYSLOGIN.CMD
Input file does not exist
[EOB]

*CHA
[EOB]

        .ENABLE SUBSTITUTION
        .ENABLE QUIET

        .IF P5 <> "P" SET /NOPRIV=TI:
        .IF P7 = "B" .GOTO DONE

        .TESTDEVICE TI:
        .SETS DEVN <EXSTRI>[1:2]
        .IF DEVN = "VT" .GOTO DONE
        .IF DEVN = "HT" .GOTO SLAV
        .IF DEVN = "RT" .GOTO SLAV

        .IFINS ...ACD ACD UNL TI:
        .IFT <LOCAL> .GOTO SLAV

        SET /INQUIRE=TI:
        .IF <EXSTAT> = <SUCCES> .GOTO SLAV

        .DISABLE QUIET
        ;
        ; Please ignore any random characters that may have printed on your
        ; terminal just now.  They came from a SET /INQUIRE=TI: command.
        ; Evidently your terminal does not recognize escape sequences.
        ; This will not affect the running of this command file.
        ;
        .ENABLE QUIET

.SLAV:
        .IFF <LOCAL> SET /EBC=TI:
        .TRANSLATE CLE$EMACS
        .IF <EXSTRI> = "" .GOTO NACD
        .TESTPARTITION ACD'<EXSTRI>'
        .PARSE <EXSTRI> "," JUNK JUNK JUNK STAT JUNK
        .IF STAT = "NSP" .GOTO NACD


        .SETS TERM ",15,24,25,26,27,30,31,36,"
        .IF <STRLEN> = 0 .GOTO NACD
        ACD LIN TI: TO NUM CLE$EMACS

.NACD:
        .IF P6 <> "S" SET /NOSLAVE=TI:
        .IFINS ...NEW NEW

.DONE:
        .IFDF DEVN .ERASE SYMBOL DEVN
        .IFDF TERM .ERASE SYMBOL TERM

        CLI /UNOVR

        .DISABLE QUIET
        .DISABLE SUBSTITUTION
        .IF P3 <> "GUEST" .GOTO EXIT
        .TESTFILE LB:[1,2]GUEST.CMD
        .IF <FILERR> = <SUCCES> .CHAIN LB:[1,2]GUEST.CMD/LO

.EXIT:
        .TESTFILE LOGIN.CMD
     .IF <FILERR> = <SUCCES> .CHAIN LOGIN.CMD/LO


<ctrl+z>
*EXIT
DB0:[1,2]SYSLOGIN.CMD;1 62 lines

>

Bene è ora di verificare se tutto funziona, effettuaimo l'inserimento a mano dei TSK:

>

>@DB2:[OLDCLE]CLEAINS.CMD

>INS DB2:[OLDCLE]EXP

>ACD INS DB2:[OLDCLE]EDTACD AS NUM 127 TOP ASS CLE$EDT

>ACD INS DB2:[OLDCLE]EMAACD AS NUM 220 TOP ASS CLE$EMACS

>@ <EOF>

Ora smontiamo il nastro e lo deallochiamo.

>DMO MS0:


16:27:50  *** MS0:  -- Dismount complete


DMO -- TT0:    dismounted from MS0:    *** Final dismount initiated ***


>DEA MS0:

>

Ora ci disconnettiamo e ci riconnettiamo nuovamente in modo da verificare se con un nuovo login funziona tutto correttamente:

>

>BYE

Connect time:   6 hrs 22 mins  3 secs
CPU time used:  0 hrs 27 mins 38 secs
Task total:   238

Have a Good Afternoon
29-JUL-2021 16:27 TT0:  logged off EMULO 
>

>

>HELLO SYSTEM
Password:

RSX-11M-PLUS V4.6   BL87    [1,54] System    EMULO 
29-JUL-2021 16:28  Logged on Terminal TT0:  as SYS2

Good Afternoon

 
*****************************************************************
*                                                               *
*                    Welcome to RSX-11M-PLUS                    *
*                                                               *
*                  Version 4.6  Base level 87                   *
*                This is file LB:[1,2]LOGIN.TXT                 *
*                                                               *
*****************************************************************
 

    Last interactive login on Thursday, July 29, 2021  10:05:47 (TT0:)

 
>@LB:[1,2]SYSLOGIN.CMD


>@ <EOF>

Ora lanciamo diversi comandi e poi verifichiamo che con i tasti freccia siano richiamabili e modificabili.

Passiamo ora ad installare ulteriori 2 utility di Johnny Billquist che ci aiuteranno a compilare il CLEACD e a trasferire files binari su sistemi non RSX.

Iniziamo con MAKE (MKE), per prima cosa montiamo il nastro con il backup del programma ed effettuiamo il restore:

> <ctrl+e>
Simulation stopped, PC: 021070 (BR 21036)
sim> att ts0 tapes/make.tap
TS: Tape Image 'tapes/make.tap' scanned as SIMH format
sim> g


>INS $BRU

>ALL MS0:

>MOU/FOR MS0:

>BRU /BAC:MAKE/REW/NOI/UFD/NEW MS0: DB2:

BRU - Starting Tape 1 on MS0:

BRU - End of Tape 1 on MS0:

BRU - Completed

>

Ora andiamo a vedere se il restore è completo:

>SET DEF /NAMED

>DIR DB2:[MKE]



Directory DB2:[MKE]
31-AUG-2021 15:15

MKE.MKE;1           4.         19-SEP-2018 16:04
MKE.DOC;1           51.        19-SEP-2018 16:04
MKE.ENC;1           91.        19-SEP-2018 16:04
MKERES.ENC;1        54.        19-SEP-2018 16:04
MKEFSL.ENC;1        52.        19-SEP-2018 16:04
DEFAULT.MKE;1       4.         19-SEP-2018 16:04
MKETEST.MKE;1       11.        19-SEP-2018 16:04
MKERES.TSK;1        70.     C  19-SEP-2018 16:06
MKEFSL.TSK;1        70.     C  19-SEP-2018 16:06
MKE.TSK;1           93.     C  19-SEP-2018 16:07

Total of 500./518. blocks in 10. files

>

Sembra tutto ok, quindi smontiamo il nastro e proviamo se funziona:

>DMO MS0:

15:16:19  *** MS0:  -- Dismount complete


DMO -- TT0:    dismounted from MS0:    *** Final dismount initiated ***

>DEA MS0:

>INS DB2:[MKE]MKE.TSK

>MKE
MAKEFILE.(0): Error - Makefile 'MAKEFILE.' not found.

>REM MKE

>

Tutto OK! :) Se volete saperne di più consultate il file .DOC all'interno della directory.
Ora procediamo analogamente con l'utility COD, questa utility ci permette di codificare un file RSX-11M in un file di testo (tipo base64 per capirci) per poterlo poi trasferire senza problemi su sistemi non RSX, la stessa utility ci permetterà poi di decodificarlo ripristinandolo in formato RSX-11M per poterlo poi eventualmente eseguire, linkare o compilare, anche qui s
e volete saperne di più consultate il file .DOC all'interno della directory.

> <ctrl+e>

Simulation stopped, PC: 021070 (BR 21036)
sim> att ts0 tapes/cod.tap
TS: Tape Image 'tapes/cod.tap' scanned as SIMH format
sim> g


>

>ALL MS0:

>MOU/FOR MS0:

>BRU /BAC:COD/REW/NOI/UFD/NEW MS0: DB2:

BRU - Starting Tape 1 on MS0:

BRU - End of Tape 1 on MS0:

BRU - Completed

>DIR DB2:[COD]



Directory DB2:[COD]
31-AUG-2021 15:17

COD.CMD;1           1.         31-AUG-2018 11:48
COD.DOC;1           4.         31-AUG-2018 11:48
COD.ENC;1           77.        31-AUG-2018 11:48
COD.MAC;1           72.        31-AUG-2018 11:48
COD.TSK;1           96.     C  31-AUG-2018 11:57

Total of 250./253. blocks in 5. files

>DMO MS0:

15:17:47  *** MS0:  -- Dismount complete


DMO -- TT0:    dismounted from MS0:    *** Final dismount initiated ***

>DEA MS0:

>INS DB2:[COD]COD.TSK

>COD /HE
HE    - This help
ID    - Identify program
WI:n  - Maximum line width n
NM    - No messages
EN    - Encode
DE    - Decode (Default)

>REM COD

>

Ora possiamo anche arrestare il sistema:

>RUN SHUTUP

>

RSX-11M-PLUS Shut down program

[...]

Per ulteriori utility, e per moltre altre cose per il nostro RSX-11M-PLUS vi invito a visitare il sito FTP dell' "Update Computer Club" dell' università di UPSSALA in Svezia, gestito da Johnny Billquist ftp://ftp.update.uu.se

Nel prossimo tutorial inizieremo ad installare i vari linguaggi di programmazione.


Installazione Linguaggi
Torna a Installazione DECNET
Torna su PDP 11
Torna su DEC
Torna su Mimac