#acl FreaknetGroup:read,write,admin,delete,revert All:read = Appunti VAX VMS = <> == Elenco licenze UTILI by Gerry == {{{ Licenza Prodotto ---------- ---------------------------------- VAX-VMS Sistema operativo VAXCLUSTER Clustering VMSCLUSTER Idem per Alpha (?) VOLSHAD Volume shadowing (mirror software) DVNETRTG DECnet con routing UCX TCP/IP FTSV File Transfer Spooler (freeware) BASIC Compilatore e interprete Basic BLISS32 Compilatore BLISS (freeware) C Compilatore C (anche C++?) COBOL Compilatore COBOL DIBOL Compilatore DIBOL FORTRAN Compilatore FORTRAN (anche F90?) PASCAL Compilatore Pascal SCAN Compilatore Scan (freeware?) }}} == QUALE simh == last version from git! {{{ apt install git gcc make libpcap-dev libsdl2-dev git clone https://github.com/simh/simh.git cd simh make vax }}} make quel che ti serve ovviamente == DECNET BRIDGE == deve stare su una macchina DIVERSA da dove gira il simh. gli serve una eth tutta sua non condivisa col vax emulato. Sta su corazzini, bella li' * http://decnet.ipv7.net/soft-en.html [[attachment:decnet-bridge_0.9-3.tar.gz]] == Password reset di un sistema == by Zappolo {{{ avviare simh ./vax sim> boot al prompt >>> dare i seguenti comandi B /R5:1 DUA0 SET/STARTUP OPA0: SET WINDOW_SYSTEM 0 SET WRITESYSPARAMS 0 CONTINUE SPAWN @SYS$SYSTEM:STARTUP SET DEFAULT SYS$SYSTEM: RUN SYS$SYSTEM:AUTHORIZE MODIFY SYSTEM /PASSWORD=newpassword }}} == problemi di SNORRY == L'immagine DD ha delle inconsistenze. Confrontata con l'immagine storica del disco fisico, ho trovato dove questa FINISCE all'interno del dump della scheda da 2GB del disco emulato. Dopo di esso ci sono solo ZERI e poi merda linux rimasta dentro la scheda... Quindi ho fatto {{{ dd if=snorry.img of=fisico.img bs=512 count=2070235 }}} e l'ho fatto partire in emulazione su wopr. da li' ho dato ana/disk {{{ Asbesto Molesto, [30.01.20 12:00] SNORRY::SYSTEM$ ana / disk dua0: Analyze/Disk_Structure for _SNORRY$DUA0: started on 30-JAN-2020 12:00:08.09 %ANALDISK-W-CHKSCB, invalid storage control block, RVN 1 SNORRY::SYSTEM$ Asbesto Molesto, [30.01.20 12:02] Disk SNORRY$DUA0:, device type RA92, is online, mounted, file-oriented device, shareable, available to cluster, error logging is enabled. Error count 0 Operations completed 5430 Owner process "" Owner UIC [SYSTEM] Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G:R,W Reference count 91 Default buffer size 512 Total blocks 2070235 Sectors per track 73 Total cylinders 2182 Tracks per cylinder 13 Volume label "SNORRYSYS" Relative volume number 0 Cluster size 9 Transaction count 189 Free blocks 1233315 Maximum files allowed 103511 Extend quantity 5 Mount count 1 Mount status System Cache name "_SNORRY$DUA0:XQPCACHE" Extent cache size 64 Maximum blocks in extent cache 123331 File ID cache size 64 Blocks currently in extent cache 0 Quota cache size 240 Maximum buffers in FCP cache 548 Volume owner UIC [1,1] Vol Prot S:RWCD,O:RWCD,G:RWCD,W:RWCD Volume Status: ODS-2, subject to mount verification, protected subsystems enabled, file high-water marking, write-through caching enabled. Asbesto Molesto, [30.01.20 12:05] immagine da 2GB: Asbesto Molesto, [30.01.20 12:05] SNORRY::SYSTEM$ ana /disk dua0: Analyze/Disk_Structure for _SNORRY$DUA0: started on 30-JAN-2020 12:05:27.66 %ANALDISK-I-SHORTBITMAP, storage bitmap on RVN 1 does not cover the entire devic e SNORRY::SYSTEM$ Asbesto Molesto, [30.01.20 12:05] Disk SNORRY$DUA0:, device type RA92, is online, mounted, file-oriented device, shareable, available to cluster, error logging is enabled. Error count 0 Operations completed 5418 Owner process "" Owner UIC [SYSTEM] Owner process ID 00000000 Dev Prot S:RWPL,O:RWPL,G:R,W Reference count 91 Default buffer size 512 Total blocks 3887112 Sectors per track 73 Total cylinders 4097 Tracks per cylinder 13 Volume label "SNORRYSYS" Relative volume number 0 Cluster size 9 Transaction count 189 Free blocks 1233315 Maximum files allowed 103511 Extend quantity 5 Mount count 1 Mount status System Cache name "_SNORRY$DUA0:XQPCACHE" Extent cache size 64 Maximum blocks in extent cache 123331 File ID cache size 64 Blocks currently in extent cache 0 Quota cache size 240 Maximum buffers in FCP cache 548 Volume owner UIC [1,1] Vol Prot S:RWCD,O:RWCD,G:RWCD,W:RWCD Volume Status: ODS-2, subject to mount verification, protected subsystems enabled, file high-water marking, write-through caching enabled. SNORRY::SYSTEM$ Asbesto Molesto, [30.01.20 12:06] immagine di snorry trimmata alla dimensione fisica: Asbesto Molesto, [30.01.20 12:06] Default buffer size 512 Total blocks 2070235 Sectors per track 73 Total cylinders 2182 Tracks per cylinder 13 Asbesto Molesto, [30.01.20 12:06] immagine di snorry 2GB: Asbesto Molesto, [30.01.20 12:06] Default buffer size 512 Total blocks 3887112 Sectors per track 73 Total cylinders 4097 Tracks per cylinder 13 Asbesto Molesto, [30.01.20 12:07] non e' che il FS e' stato espanso Asbesto Molesto, [30.01.20 12:07] e' che vede il device per quanto e' grosso Asbesto Molesto, [30.01.20 12:07] @gerriunderscore @Mancausoft Asbesto Molesto, [30.01.20 12:07] e l'errore di ana/disk e' DIVERSO tra i due Asbesto Molesto, [30.01.20 12:07] l'immagine precisa del disco trimmata giusta dice Asbesto Molesto, [30.01.20 12:07] %ANALDISK-W-CHKSCB, invalid storage control block, RVN 1 SNORRY::SYSTEM$ Asbesto Molesto, [30.01.20 12:08] mentre l'immagine disco da 2GB dice Asbesto Molesto, [30.01.20 12:08] %ANALDISK-I-SHORTBITMAP, storage bitmap on RVN 1 does not cover the entire devic e SNORRY::SYSTEM$ Asbesto Molesto, [30.01.20 12:08] che e' ben diverso }}} un ana/disk/repair ripara il fs trimmato correttamente... Un successivo BACKUP /IMAGE ha copiato ogni file senza problemi ho creato altri 2 devices dua0 boot, dua1 copia di boot trimmata e ana/disk/repair-ata, dua2 idem ho formattato dua2, initialize l'ho montata FOREIGN e ho dato backup /image da dua2 a dua3 {{{ SNORRY::SYSTEM$ mount /foreign dua2: %MOUNT-I-MOUNTED, SNORRYNEW mounted on _SNORRY$DUA2: SNORRY::SYSTEM$ backup /image dua1: dua2: %BACKUP-I-NOBACKUP, DUA1:[SYS0.SYSEXE]ERRORLOG.DMP;1 data not copied, file marke d NOBACKUP %BACKUP-I-NOBACKUP, DUA1:[SYS0.SYSEXE]PAGEFILE.SYS;1 data not copied, file marke d NOBACKUP %BACKUP-I-NOBACKUP, DUA1:[SYS0.SYSEXE]SWAPFILE.SYS;1 data not copied, file marke d NOBACKUP %BACKUP-I-NOBACKUP, DUA1:[SYS0.SYSEXE]SYSDUMP.DMP;1 data not copied, file marked NOBACKUP }}} ha copiato tutto pero' dua3 da: {{{ Asbesto Molesto, [30.01.20 13:59] il disco backuppato da' cio': Asbesto Molesto, [30.01.20 13:59] SNORRY::SYSTEM$ ana /disk _Device: dua0: Analyze/Disk_Structure for _SNORRY$DUA0: started on 30-JAN-2020 13:58:44.96 %ANALDISK-W-CHKSCB, invalid storage control block, RVN 1 %ANALDISK-I-BADHIGHWATER, file (1423,2,1) ERRORLOG.DMP;1 inconsistent highwater mark and EFBLK %ANALDISK-W-ALLOCCLR, blocks incorrectly marked allocated LBN 1126638 to 1126646, RVN 1 %ANALDISK-W-INCQUOTA, QUOTA.SYS indicates 627067 blocks used, actual use is 627057 blocks for [SYSTEM] %ANALDISK-W-FREESPADRIFT, free block count of 1232973 is incorrect (RVN 1); the correct value is 1232982 SNORRY::SYSTEM$ }}} Alla fine, secondo me: {{{ Asbesto Molesto, [30.01.20 12:37] allora. 2GB. Asbesto Molesto, [30.01.20 12:37] la mia ipotesi e': Asbesto Molesto, [30.01.20 12:37] il sistema ha girato con l'immagine da 2GB, e tempo fa fu pure fatto un ana/disk/repair, me lo ricordo Asbesto Molesto, [30.01.20 12:37] quindi ha CAPITO che il disco e' da 2GB Mancausoft, [30.01.20 12:37] si esatto Asbesto Molesto, [30.01.20 12:37] MA il fs e' rimasto da 1.05 gb (rvn invalid storage block) Katolaz, [30.01.20 12:37] 710 messaggi Mancausoft, [30.01.20 12:37] [In reply to Asbesto Molesto] non e' detto Asbesto Molesto, [30.01.20 12:37] ora se lo resizi Asbesto Molesto, [30.01.20 12:37] si vede il disco ristretto e da' errore Katolaz, [30.01.20 12:37] che minchia siete PAZZI? Mancausoft, [30.01.20 12:37] [In reply to Asbesto Molesto] io non ho sto errore Asbesto Molesto, [30.01.20 12:37] quindi ti dice quella cosa Katolaz, [30.01.20 12:37] che cazzo e' successo? Katolaz, [30.01.20 12:38] MORTO MEDIALAB? Mancausoft, [30.01.20 12:38] perche' io uso i parametri giusti a simh Asbesto Molesto, [30.01.20 12:38] MA se metti il fs alla dimensione fisica del disco Mancausoft, [30.01.20 12:38] se metti parametri a cazzo in simh hai quell'errore Katolaz, [30.01.20 12:38] CROLLATO IL VATICANO? Asbesto Molesto, [30.01.20 12:38] improvvisamente gli coincide tutto tranne RVS 1 Asbesto Molesto, [30.01.20 12:38] allora, un colpo di ana/disk/rep Asbesto Molesto, [30.01.20 12:38] e si sistema Mancausoft, [30.01.20 12:38] se metti il parametro giusto a simh non hai quell'errore Mancausoft, [30.01.20 12:38] [In reply to Asbesto Molesto] no Asbesto Molesto, [30.01.20 12:38] IMHO si Asbesto Molesto, [30.01.20 12:38] zero errori su ana/disk per me e' RISOLUTIVO }}} == edit dei files == intanto usa vmsterm (in fondo a questo doc) per connetterti. usa xterm! poi, {{{ edit /edt nomefile all'asterisco, scrivi CHANGE editi visualmente! quando hai finito, ctrl-z torna all'asterisco, scrivi exit, e lui salva. Se premi "Home" ti apre search! Scrivi il testo da cercare, premi nuovamente home e va sul testo trovato! NOTA: SU VMSTERM/XTERM, IL CUT'N PASTE DA MOUSE FUNZIONA COL TASTO CENTRALE SUL MIO THINKPAD. }}} == recall dei comandi / history == recall /all == Dove stanno i files == alias cagate e definizioni stanno dentro {{{ SYS$SYSCOMMON:[SYSMGR]SYLOGIN.COM }}} cercare: {{{ SNORRY::SYSTEM$ set def [000000] SNORRY::SYSTEM$ dir [...]games*;* $ DIR [.mydirectory...]my*file.spec*;* would find any file beginning with MY followed by any sequence, ending its name with FILE, and with its type specification beginning with SPEC in MYDIRECTORY and all the tree down inside. $ DIR $Disk:[user...]myfile.typ;4 would search for 4th version of MYFILE.TYP in all the USER's directory tree. $ DIR $Disk:[user.*...]myfile.typ would look inside all subdirectories AND their subtrees in USER. Furthermore, since this feature is one of DIRECTORY SPECIFICATION and no of DIR, you can use it for any program that allows ambiguous file specification (e.g.): $ SEARCH [...]*.*;* MY_SEARCH_SEQUENCE would search in all the files contained in the directory tree that hangs from the current directory for "my_search_sequence" and report all the files that contain it. }}} Login banner e welcome: dentro SYS$SYSROOT:[SYSMGR] ci sono ANNOUNCE.TXT e WELCOME.TXT {{{ Snorry: stanno in dua0:[games] dua0:[GAMES.STARTREK]STARTREK.EXE startrek.com deve avere i path giusti all'interno (dua0: nell'emulatore) Glorry: dua0:[games] molti eseguibili .com puntano a dka200: che era di glorry, va settato a dua0: }}} == vax.ini dell'emulatore simh glorry == {{{ set log ./glorry.log load -r ./ka655.bin attach nvr ./nvram.bin set cpu 64m set cpu idle set rq0 ra92 attach rq0 ./glorry.img ; disable unused stuff ; rl01/02 set rl disable ; magtape set ts disable ; floppy lo abilito set ry disable ; deqna is faster! SET XQ TYPE=DEQNA set xq mac=08-00-2B-0C-AC-CA attach xq eth2 ; create a tape device, you never know set tq enable set tq tk70 att tq0 mua0.tape ; se attivi questo, perdi lo schermo qua sotto screen ; set console telnet=17100 set cpu conhalt dep bdr 0 boot cpu exit }}} you need the correct ka655.bin or ka655xbin or whatever the hell your fucking simh version need, to avoid a lot of diag / boot errors! call it "vax.ini" in the same dir of the disk image, '''launch vax from root user''' With the above setup, vax will boot automagically. If you need to tweak and boot manually, simply write {{{ boot dua0: }}} at the simh prompt. ET VOILA', AVEC LA MERDE == ethernet holocaust == vax.ini ha settato "eth0". su corazzini parte da eth3 PERCHE' UDEV MERDA PORCODIO. ma eth0 viene visto su eth3, che ha l'ip di corazzini. ora se tiri su anche eth4 ed eth5, puoi avere altri vax.ini su eth1 ed eth2. HAI CAPITO PORCODIO? == problemino con mmm.exe == Sto gioco ha bisogno di una patch: {{{ > suspend ENTER FILENAME TO STORE IT UNDER (0 TO ABORT REQUEST) ?a.sav YOUR CURRENT SITUATION IS SAVED AND WILL BE GOOD FOR ANY REVISION 16 YOU CAN NOW QUIT OR CONTINUE. ENTER RESTORE, AT ANY TIME, TO LOAD THE SITUATION YOU SUSPENDED WHEN YOU ARE FINISHED, PURGE THE FILE. > restore ENTER FILENAME IT WAS SUSPENDED UNDER (0 TO ABORT REQUEST) ?a.sav %FOR-F-INPSTAREQ, input statement requires too much data unit 55 file SYS_USERS:[LUTHER]A.SAV;1 user PC 0002278B SNORRY::LUTHER$ Non e' grave, visto che il gioco al massimo dura 450 mosse, ma e' una cosa abbastanza antipatica. Si aggiusta facilmente cambiando un byte con patch: $ patch mmm.exe PATCH>depo/long LOC>0002278B NEW>5901043D NEW>exit old: 0002278B: 5901283D new: 0002278B: 5901043D PATCH>update %PATCH-I-WRTFIL, updantig image file DUA1:[GIASSI]MMM.EXE;2 Non mi ricordo di aver avuto questo problema quando ci ho giocato 30 e passa anni fa, ma e' possibile che non sapessi nemmeno che il comando per salvare fosse 'suspend'. }}} da una mail di Sandro Giassi == Creare utenti by Gerry == N.B. Tutto questo funziona a patto che l'utente DEFAULT non abbia subito modifiche "strane" e che SYS_USERS sia un nome logico valido === In AUTHORIZE === Cercare il primo UIC (ottale!) libero con {{{ SHOW [200,*]/BRIEF }}} poi {{{ ADD /PASSWORD=/OWNER="Nome Utente"/ACCOUNT=USERS/UIC=[200,]/DEVICE=SYS_USERS/DIRECTORY=[]/NOPWDLIFETIME/FLAG=NODISUSER ADD/PROXY *:: /DEFAULT }}} === In DISKQUOTA (se le quote sono attive, cfr. QUOTA.SYS) === Uno solo dei seguenti in base alle esigenze: {{{ ADD [] (così aggiunge con i default presi da [0,0]) }}} {{{ ADD []/PERMQUOTA=/OVERDRAFT= (se si omette uno dei due qualificatori, per quel valore prende i default da [0,0]) }}} === Al prompt (dopo aver creato l'utente) === {{{ CREATE/DIRECTORY SYS_USERS:[]/OWNER=[] }}} == Licenze vax/vms == '''ATTENZIONE Il file delle licenze che ti mandano oggi e' pieno di CR / LF ad minchiam. VA CONVERTITO CON dos2unix prima di caricarlo sul vax altrimenti da' un mare di errori.''' IMPORTANTE NON FARLE SCADERE ALTRIMENTI I CAZZI IN CULO SI MOLTIPLICANO A DISMISURA sucati le licenze da decus usa, anzi no, da montagar.com, anzi no, da encompass, anzi no! da https://www.hpe.com/h41268/live/index_e.aspx?qid=24548 usa i numeri decus: {{{ guarda e' qui asbesto@gemini:~/licenzevms$ ls cazzo glorry glorry~ howto snorry snorry~ asbesto@gemini:~/licenzevms$ /AUTHORIZATION=DECUS-USA-904422-1257142 - perfetto, allora ce l'ho 904422 e' il mio id snorry:/AUTHORIZATION=DECUS-USA-908286-1224202 - bene quello al momento e' l'unica cosa che ti serve per generare le licenze }}} se le licenze sono gia' scadute devi caricare come prima cosa UCX, che e' il tcpip. {{{ Gerardo Cacciari, [23.03.19 12:47] dicevo: il db delle licenze è l'unico file *.ldb in sys$system e dicevo anche che però in caso di cluster bisogna stare piu attenti a quel che si fa ma visto che questo non è un cluster basta cancellare fisicamente quel file GLORRY::SYSTEM$ dir sys$system:*.ldb.* Directory SYS$COMMON:[SYSEXE] LMF$LICENSE.LDB;1 Total of 1 file. GLORRY::SYSTEM$ GLORRY::SYSTEM$ del/conf sys$system:LMF$LICENSE.LDB;1 DELETE SYS$COMMON:[SYSEXE]LMF$LICENSE.LDB;1 ? [N]: y GLORRY::SYSTEM$ ora creare database nuovo: dare semplicemente LIC CRE Gerardo Cacciari, [23.03.19 13:00] ora carichi le licenze che ti servono, quelle fondamentali vms tcp e decnet rispettivamente vax-vms ucx dvnetend creo un fiile con dentro ste 3 licenze, copy/paste in un .com: Gerardo Cacciari, [23.03.19 13:07] non importava il resto, i vari enable e disable l'importante sono i license register il resto non serve a niente e fa solo casino tanto non hai licenze caricate e non hai licenze nel db (dato che è nuovo) quindi solo le tre parti LICENSE REGISTER crea peto.com (copy/paste) CTRL-Z dopodiche' lancio @peto poi LIC LOAD e le carica tutte con SH LIC vedi le licenze caricate. eventualmente (glorry) vedi anche licenze infinite che sono rimaste in memoria ma non stanno piu' nel DB che e' stato cancellato prima. se ora riavvio, vien su con quelle licenze caricate :) ma carichiamo le 4 licenze infinite di glorry: GLORRY::SYSTEM$ set def dua0:[data.lic] GLORRY::SYSTEM$ dir Directory DUA0:[DATA.LIC] BLISS_PAK.COM;1 DIBOL_PAK.COM;1 FTSV_PAK.COM;1 SCAN_PAK.COM;1 VMS_PAKS_END_20110719.BCK;1 VMS_PAKS_END_20140124.COM;1 VMS_PAKS_END_20160513.COM;1 VMS_PAKS_END_20170714.COM;1 Total of 8 files. GLORRY::SYSTEM$ quindi eseguo @bliss_pak etc. etc. e poi RIAVVIARE!!! al riavvio puoi settare il TCPIP. POI carichi il file delle licenze, infine, con ftp, su una tua utenza, ci vai e lo lanci Gerardo Cacciari, [23.03.19 15:00] SNORRY::RPT$ sho log users "USERS" = "SYS_DISK:[USERS]" (LNM$SYSTEM_TABLE) SNORRY::RPT$ sho log sys_users "SYS_USERS" = "SNORRY$DKA0:[USERS.]" (LNM$SYSTEM_TABLE) SNORRY::RPT$ Gerardo Cacciari, [23.03.19 15:00] Uno è rooted e l'altro no ergo set def sys_users set def [asbesto] @filedelcazzo e attendi }}} SE hai rete / ti sei ricordato prima della scadenza: crea un file con le licenze base e layered insieme, ascii entra nel vax da system sucati con ftp IN ASCII il file delle licenze rinominalo .com poi: {{{ lic dis * lic del * @nomedelfile.com lic load lic ena * }}} fine! == Configurazione tcpip == lancia @sys$manager:tcpip$config va solo cambiata l'interfaccia, per glorry, poiche' ha gia' i settings. ora e' su emu ed e' differente poi va eliminata la vecchia interfaccia di glorry, che pare essere ze0 vedi tutto da "tcpip", "sh int" "sh con int" ergo set conf nointerf ze0 exit o ctrl-z e tcpip e' a posto! riavviare tcpip per vedere se ci sono errori strani lo fai dal menu di @sys$manager:tcpip$config POI va fatto questo: {{{ $! RPT 23-MAR-2019 $ $ ON ERROR THEN GOTO END_LOOP $ ON CONTROL_Y THEN GOTO END_LOOP $ $ IF F$SEARCH("POST_DECNET_SETUP.TMP;*") .NES. "" THEN - DELETE/NOLOG POST_DECNET_SETUP.TMP;* $ $ MCR NCP SHOW KNOWN LINES TO POST_DECNET_SETUP.TMP $ OPEN/READ LINE_LIST POST_DECNET_SETUP.TMP $ $LOOP: $ READ/END=END_LOOP LINE_LIST LINE_ENTRY $ $ LINE_ITEM = F$EDIT(LINE_ENTRY,"TRIM,COMPRESS") $ LINE_ITEM = F$ELEMENT(0," ",LINE_ITEM) $ $ IF (LINE_ITEM .EQS. "") .OR. - (LINE_ITEM .EQS. "Known") .OR. - (LINE_ITEM .EQS. "Line") THEN GOTO LOOP $ $ WRITE SYS$OUTPUT "Line/Circuit ",LINE_ITEM $ $ MCR NCP SET CIRCUIT 'LINE_ITEM' STATE OFF $ MCR NCP SET LINE 'LINE_ITEM' STATE OFF $ $ MCR NCP SET LINE 'LINE_ITEM' BUFFER SIZE 1456 $ MCR NCP DEFINE LINE 'LINE_ITEM' BUFFER SIZE 1456 $ MCR NCP SET CIRCUIT 'LINE_ITEM' HELLO TIMER 90 $ MCR NCP DEFINE CIRCUIT 'LINE_ITEM' HELLO TIMER 90 $ $ MCR NCP SET LINE 'LINE_ITEM' STATE ON $ MCR NCP SET CIRCUIT 'LINE_ITEM' STATE ON $ $ GOTO LOOP $ $END_LOOP: $ CLOSE LINE_LIST $ IF F$SEARCH("POST_DECNET_SETUP.TMP;*") .NES. "" THEN - DELETE/NOLOG POST_DECNET_SETUP.TMP;* $ $ EXIT }}} ora, DECNET E BRIDGE SEMENTALE == Problemi al disco == anal /disk ana/disk/repair porcoddio == decnet settings == {{{ $! RPT 23-MAR-2019 $ $ ON ERROR THEN GOTO END_LOOP $ ON CONTROL_Y THEN GOTO END_LOOP $ $ DEFINE/USER SYS$OUTPUT NL: $ DEFINE/USER SYS$ERROR NL: $ DELETE/NOLOG POST_DECNET_SETUP.TMP;* $ $ MCR NCP SHOW KNOWN LINES TO POST_DECNET_SETUP.TMP $ OPEN/READ LINE_LIST POST_DECNET_SETUP.TMP $ $LOOP: $ READ/END=END_LOOP LINE_LIST LINE_ENTRY $ $ LINE_ITEM = F$EDIT(LINE_ENTRY,"TRIM,COMPRESS") $ LINE_ITEM = F$ELEMENT(0," ",LINE_ITEM) $ $ IF (LINE_ITEM .EQS. "") .OR. - (LINE_ITEM .EQS. "Known") .OR. - (LINE_ITEM .EQS. "Line") THEN GOTO LOOP $ $ MCR NCP SET CIRCUIT 'LINE_ITEM' STATE OFF $ MCR NCP SET LINE 'LINE_ITEM' STATE OFF $ $ MCR NCP SET LINE 'LINE_ITEM' BUFFER SIZE 1456 $ MCR NCP DEFINE LINE 'LINE_ITEM' BUFFER SIZE 1456 $ MCR NCP SET CIRCUIT 'LINE_ITEM' HELLO TIMER 90 $ MCR NCP DEFINE CIRCUIT 'LINE_ITEM' HELLO TIMER 90 $ $ MCR NCP SET LINE 'LINE_ITEM' STATE ON $ MCR NCP SET CIRCUIT 'LINE_ITEM' STATE ON $ $ GOTO LOOP $ $END_LOOP: $ CLOSE LINE_LIST $ DELETE/NOLOG POST_DECNET_SETUP.TMP;* $ $ EXIT }}} == vmsterm == [[attachment:vmsterm]] funge bene, usa xterm, permette EDIT da rt11!!! {{{ #!/bin/sh # vmsterm # from an original script by Bob Ess # key translations by Erik Ahlefeldt # # Script file using Xterm and telnet to connect to a VMS host # and give a decent vt220 emulation. # # Some adjustment made by asbesto@freaknet.org # 25-DEC-2014 # # Usage statement Usage(){ echo echo " Usage : vmsterm -options" echo echo " Options: -80 for 80 column terminal" echo " -132 for 132 column terminal" echo " -bg colorname" echo " -fg colorname" echo " -fn fontname" echo " -fb bold fontname" echo " -host [crusher.saltmine.com] [earth] [192.168.7.7]" echo " -port portnum" echo "" echo " Example: \"vmsterm -80 -fg white -bg black -fn 9x15 -fb 9x15b -host earth\"" echo " Starts a VMS session with an 80 column terminal" echo " with a black background, white foreground, a normal" echo " font of 9x15 and a bold font of 9x15b, and connects" echo " to the node 'earth'" echo "" echo " Example: \"vmsterm -host earth -port portnum\"" echo " Starts a VMS session with default terminal settings " echo "" echo " Example: \"vmsterm -help\"" echo " Displays vmsterm options " echo exit 1 } # Default to a black foreground with a white background. # Use the 9x15 and 9x15bold fonts. Connect to 192.168.3.3 by default. # FG=black BG=white HOST="museo.freaknet.org" PORT="1134" FONT=10x20 BFONT=9x15bold COLS=80 # Parse the command line arguments # while [ $# != 0 ]; do case $1 in -80) COLS=80 FONT=spc12x24c BFONT=spc12x24b shift ;; -132) COLS=132 FONT=9x15 BFONT=9x15b shift ;; -fg) shift FG=$1 shift;; -bg) shift BG=$1 shift;; -fn) shift FONT=$1 shift;; -fb) shift BFONT=$1 shift;; -host) shift HOST=$1 shift;; -port) shift PORT=$1 shift;; -help) Usage;; *) Usage;; esac done xterm -title "VMSTERM" -sb -sl 1000 -geo ${COLS}x24 -fg ${FG} -bg ${BG} \ -cr blue -fn ${FONT} -fb ${BFONT} -xrm \ 'XTerm*VT100.translations: #override \n \ ~Shift F1: string(0x1b) string("OP") \n \ ~Shift F2: string(0x1b) string("OQ") \n \ ~Shift F3: string(0x1b) string("OR") \n \ ~Shift F4: string(0x1b) string("OS") \n \ ~Shift F5: string("Break") \n \ ~Shift F6: string(0x1b) string("[17~") \n \ ~Shift F7: string(0x1b) string("[18~") \n \ ~Shift F8: string(0x1b) string("[19~") \n \ ~Shift F9: string(0x1b) string("[20~") \n \ ~Shift F10: string(0x1b) string("[21~") \n \ ~Shift F11: string(0x1b) string("[23~") \n \ ~Shift F12: string(0x1b) string("[24~") \n \ Shift F1: string(0x1b) string("[23~") \n \ Shift F2: string(0x1b) string("[24~") \n \ Shift F3: string(0x1b) string("[25~") \n \ Shift F4: string(0x1b) string("[26~") \n \ Shift F5: string(0x1b) string("[28~") \n \ Shift F6: string(0x1b) string("[29~") \n \ Shift F7: string(0x1b) string("[31~") \n \ Shift F8: string(0x1b) string("[32~") \n \ Shift F9: string(0x1b) string("[33~") \n \ Shift F10: string(0x1b) string("[34~") \n \ Shift F11: string(0x1b) string("[28~") \n \ Shift F12: string(0x1b) string("[29~") \n \ Print: string(0x1b) string("[28~") \n \ Cancel: string(0x1b) string("[29~") \n \ Pause: string(0x1b) string("Om") \n \ Insert: string(0x1b) string("[2~") \n \ Delete: string(0x1b) string("[3~") \n \ Home: string(0x1b) string("[1~") \n \ End: string(0x1b) string("[4~") \n \ Prior: string(0x1b) string("[5~") \n \ Next: string(0x1b) string("[6~") \n \ BackSpace: string(0x7f) \n \ Num_Lock: string(0x1b) string("OP") \n \ KP_Divide: string(0x1b) string("OQ") \n \ KP_Multiply: string(0x1b) string("OR") \n \ KP_Subtract: string(0x1b) string("OS") \n \ KP_Add: string(0x1b) string("Ol") \n \ KP_Enter: string(0x1b) string("OM") \n \ KP_Decimal: string(0x1b) string("On") \n \ KP_0: string(0x1b) string("Op") \n \ KP_1: string(0x1b) string("Oq") \n \ KP_2: string(0x1b) string("Or") \n \ KP_3: string(0x1b) string("Os") \n \ KP_4: string(0x1b) string("Ot") \n \ KP_5: string(0x1b) string("Ou") \n \ KP_6: string(0x1b) string("Ov") \n \ KP_7: string(0x1b) string("Ow") \n \ KP_8: string(0x1b) string("Ox") \n \ KP_9: string(0x1b) string("Oy") \n \ ~Shift Up: string(0x1b) string("[A") \n \ Shift Up: scroll-back(1,lines) \n \ ~Shift Down: string(0x1b) string("[B") \n \ Shift Down: scroll-forw(1,lines) \n \ Right: string(0x1b) string("[C") \n \ Left: string(0x1b) string("[D")' \ -e telnet $HOST $PORT }}} == Immagine X fatta al CUD == emiliano, [18.07.20 12:34] Config: {{{ attach nvr nvram.bin set cpu 128m set cpu idle=vms set rq0 ra92 attach rq0 discoX.img boot cpu }}} emiliano, [18.07.20 12:34] questo il config, poi però sono in grado di farlo partire solo così: {{{ >>>B/R5:1 }}} e poi {{{ SYSBOOT> USE DEFAULT SYSBOOT> SET STARTUP_P1 "MIN" SYSBOOT> CONTINUE }}} Asbesto Molesto, [18.07.20 12:35] MIN sta ovviamente per MINCHIA. emiliano, [18.07.20 12:36] naturalmente se vuoi resettare la pw di SYSTEM devi aggiungere a questi comandi la solita procedura prima di CONTINUE {{{ SYSBOOT> SET WINDOW_SYSTEM 0 SYSBOOT> SET WRITESYSPARAMS 0 SYSBOOT> SET STARTUP_P1 "MIN" SYSBOOT> CONTINUE }}} == Links == * https://en.wikipedia.org/wiki/Clara_Petacci * https://github.com/jpetazzo ---- CategoryMuseo