From d96ce5b867a1163331acd201bd7dd2553ea85956 Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Sun, 9 Feb 2025 08:48:21 +0100 Subject: [PATCH 1/3] Add a TCL procedure for running MIDAS. --- build/basics.tcl | 202 ++++------ build/build.tcl | 10 + build/dm.tcl | 34 +- build/emacs.tcl | 6 +- build/ka10/include.tcl | 44 +-- build/ka10/processor.tcl | 123 +++--- build/kl10/include.tcl | 63 ++- build/kl10/processor.tcl | 26 +- build/ks10/include.tcl | 31 +- build/ks10/processor.tcl | 6 +- build/lisp.tcl | 97 ++--- build/macsyma.tcl | 8 +- build/mark.tcl | 10 +- build/mchn/HX/custom.tcl | 6 +- build/mchn/PT/custom.tcl | 6 +- build/mchn/TT/custom.tcl | 12 +- build/misc.tcl | 825 ++++++++++++++------------------------- build/muddle.tcl | 99 +++-- build/sail.tcl | 3 +- build/zork.tcl | 6 +- 20 files changed, 631 insertions(+), 986 deletions(-) diff --git a/build/basics.tcl b/build/basics.tcl index fce4f17d7..e280f824d 100644 --- a/build/basics.tcl +++ b/build/basics.tcl @@ -13,9 +13,7 @@ respond "*" ":delete .;@ its\r" # The new ITS is now canonical. respond "*" ":rename .;@ nits, .;@ its\r" -respond "*" ":midas sysbin;_syseng;dump\r" -dump_switches -expect ":KILL" +midas "sysbin;" "syseng;dump" dump_switches respond "*" ":delete sys;ts dump\r" respond "*" ":link sys;ts dump,sysbin;dump bin\r" respond "*" ":link sys;ts load,sys;ts dump\r" @@ -34,47 +32,44 @@ mkdir "device" mkdir "cstacy" # TCTYP -respond "*" ":midas sys1; ts tctyp_syseng;tctyp\r" -expect ":KILL" +midas "sys1; ts tctyp" "syseng;tctyp" respond "*" ":link sys1;ts tctype, sys1; ts tctyp\r" source $build/emacs.tcl # TAGS -respond "*" ":midas sys2;ts tags_sysen2;tags\r" -expect ":KILL" +midas "sys2;ts tags" "sysen2;tags" # magdmp, paper tape -respond "*" ":midas dsk0:.;_syseng;magdmp\r" -respond "PTRHRI=" "y\r" -magdmp_switches -expect ":KILL" +midas "dsk0:.;" "syseng;magdmp" { + respond "PTRHRI=" "y\r" + magdmp_switches +} # magdmp -respond "*" ":midas sys1;ts magfrm_syseng;magfrm\r" -expect ":KILL" +midas "sys1;ts magfrm" "syseng;magfrm" -respond "*" ":midas sys1;ts stink_sysen2;stink\r" -expect ":KILL" +# STINK linker +midas "sys1;ts stink" "sysen2;stink" -respond "*" ":midas sysbin;_sysen1;pdset\r" -expect ":KILL" +# PDSET +midas "sysbin;" "sysen1;pdset" respond "*" ":delete sys;ts pdset\r" respond "*" ":link sys;ts pdset,sysbin;pdset bin\r" -respond "*" ":midas sysbin;_syseng;lock\r" -expect ":KILL" +# LOCK +midas "sysbin;" "syseng;lock" respond "*" ":delete sys;ts lock\r" respond "*" ":link sys;ts lock,sysbin;lock bin\r" respond "*" ":link sys3; ts vtfix, sys; ts lock\r" -respond "*" ":midas sysbin;_syseng;@dev\r" -expect ":KILL" +# ATSIGN DEVICE +midas "sysbin;" "syseng;@dev\r" respond "*" ":delete sys;atsign device\r" respond "*" ":link sys;atsign device,sysbin;@dev bin\r" -respond "*" ":midas sysbin;_syseng;crtsty\r" -expect ":KILL" +# CRTSTY +midas "sysbin;" "syseng;crtsty" respond "*" ":job crtsty\r" respond "*" ":load sysbin;crtsty bin\r" respond "*" "purify\033g" @@ -83,18 +78,16 @@ respond "*" ":kill\r" respond "*" ":link sys3;ts crtsty,sysbin;crtsty bin\r" # CTN, networking "supdup" CRTSTY -respond "*" ":midas /t sysbin;ctn bin_syseng; crtsty\r" -respond "with ^C" "NET==1\r\003" -expect ":KILL" +midast "sysbin;ctn bin" "syseng; crtsty" { + respond "with ^C" "NET==1\r\003" +} respond "*" ":job ctn\r" respond "*" ":load sysbin; ctn bin\r" respond "*" "purify\033g" respond " BIN" "sys3; ts ctn\r" respond "*" ":kill\r" -respond "*" ":midas /t sysbin;_sysen2;peek\r" -peek_switches -expect ":KILL" +midast "sysbin;" "sysen2;peek" peek_switches respond "*" ":job peek\r" respond "*" ":load sysbin;peek bin\r" respond "*" "purify\033g" @@ -102,65 +95,51 @@ respond {$G} "q" expect ":KILL" respond "*" ":link sys; ts p,sys; ts peek\r" -respond "*" ":midas device;jobdev arc_syseng;arcdev\r" -expect ":KILL" +midas "device;jobdev arc" "syseng;arcdev" respond "*" ":link device;jobdev ar,device;jobdev arc\r" -respond "*" ":midas device;oarcdv bin_sysen2; dmarcd\r" -expect ":KILL" +midas "device;oarcdv bin" "sysen2; dmarcd" # JOBDEV D (DSKDEV) -respond "*" ":midas device;jobdev d_syseng;dskdev\r" -expect ":KILL" +midas "device;jobdev d" "syseng;dskdev" -respond "*" ":midas sysbin;_sysen2;find\r" -expect ":KILL" +midas "sysbin;" "sysen2;find" respond "*" ":link sys;ts find,sysbin;find bin\r" respond "*" ":link sys;ts fi,sys;ts find\r" respond "*" ":link sys;ts comb,sys;ts find\r" respond "*" ":link sys2;ts lf,sys;ts find\r" -respond "*" ":midas sys;ts dskuse_syseng;dskuse\r" -expect ":KILL" +midas "sys;ts dskuse" "syseng;dskuse" -respond "*" ":midas channa;atsign taraka_taraka\r" -expect ":KILL" +midas "channa;atsign taraka" "taraka" respond "*" ":link sys; atsign dragon,channa; atsign taraka\r" -respond "*" ":midas channa;rakash dmpcpy_syseng; dmpcpy\r" -expect ":KILL" +midas "channa;rakash dmpcpy" "syseng; dmpcpy" -respond "*" ":midas channa;rakash modems_syseng; modems\r" -expect ":KILL" +midas "channa;rakash modems" "syseng; modems" respond "*" ":link channa;ts modems,channa;rakash modems\r" +respond "*" ":link dragon;hourly modems,channa;ts modems\r" -respond "*" ":midas channa;rakash netime_sysen1; netime\r" -expect ":KILL" +midas "channa;rakash netime" "sysen1; netime" respond "*" ":link channa;ts netime,channa;rakash netime\r" -respond "*" ":link dragon;hourly modems,channa;ts modems\r" - -respond "*" ":midas channa;rakash papsav_sysen3;papsav\r" -expect ":KILL" +midas "channa;rakash papsav" "sysen3;papsav" -respond "*" ":midas dragon;rakash pfthmg_syseng; pft\r" -respond "mcp=" "0\r" -expect ":KILL" +midas "dragon;rakash pfthmg" "syseng; pft" { + respond "mcp=" "0\r" +} respond "*" ":link channa; rakash pfthmg,dragon; rakash pfthmg\r" # LOSS device -respond "*" ":midas device;jobdev loss_syseng;loss\r" -expect ":KILL" +midas "device;jobdev loss" "syseng;loss" respond "*" ":link device;jobdev los,device;jobdev loss\r" -respond "*" ":midas syshst;_syshst;hosts3\r" -expect ":KILL" +midas "syshst;" "syshst;hosts3" respond "*" ":link syshst;ts hosts3,syshst;hosts3 bin\r" respond "*" ":link syseng;t20mac 999999,system;t20mac >\r" -respond "*" ":midas syshst;_syshst;h3make\r" -expect ":KILL" +midas "syshst;" "syshst;h3make" respond "*" ":link syshst;ts h3make,syshst;h3make bin\r" # Run H3MAKE to make the SYSBIN; HOSTS3 > database. H3MAKE looks for @@ -172,37 +151,32 @@ respond "*" ":syshst;h3make\r" expect {$$^K} # basic TCP support -respond "*" ":midas sys;atsign tcp_syseng;@tcp\r" -expect ":KILL" +midas "sys;atsign tcp" "syseng;@tcp" # Chaosnet support -respond "*" ":midas sysbin;_syseng;@chaos\r" -expect ":KILL" +midas "sysbin;" "syseng;@chaos" respond "*" ":link sys;atsign chaos,sysbin;@chaos bin\r" # ARPANET support if { ! [string equal "$mchn" "DM"] } { - respond "*" ":midas sys;atsign netrfc_syseng; netrfc\r" - respond "DEMONP=" "0\r" - expect ":KILL" + midas "sys;atsign netrfc" "syseng; netrfc" { + respond "DEMONP=" "0\r" + } } # CHA: and CHAOS: device -respond "*" ":midas device;jobdev cha_dcp;chadev\r" -expect ":KILL" +midas "device;jobdev cha" "dcp;chadev" respond "*" ":link device;jobdev chaos,device;jobdev cha\r" respond "*" ":link syseng;netwrk 999999,sysnet;netwrk >\r" # CHAOS ARPA/NCP/TCP gateway -respond "*" ":midas sysnet;_arpa\r" -expect ":KILL" +midas "sysnet;" "arpa" respond "*" ":link device;chaos arpa, sysnet;arpa bin\r" respond "*" ":link device;chaos ncp, sysnet;arpa bin\r" respond "*" ":link device;chaos tcp, sysnet;arpa bin\r" -respond "*" ":midas .;ts redrct_sysnet;redrct\r" -expect ":KILL" +midas ".;ts redrct" "sysnet;redrct" # Old NIC Arpanet HOSTS TXT. Run a TECO macro to generate # SYSENG;HOSTS PRETTY and HOSTS INSERT. @@ -212,9 +186,7 @@ respond "&" "\032" respond ") " ":kill\r" # telnet server -respond "*" ":midas sysbin;telser_sysnet;telser\r" -expect ":KILL" - +midas "sysbin;telser" "sysnet;telser" # TCP port 23 (telnet) uses TELSER respond "*" ":link device;tcp syn027,sysbin;telser bin\r" # NCP sockets 1 and 23 use TELSER @@ -222,13 +194,10 @@ arpanet "rfc001" "sysbin;telser bin" arpanet "rfc027" "sysbin;telser bin" # Old telnet server -respond "*" ":midas sys;atsign stelnt_syseng;stelnt\r" -expect ":KILL" +midas "sys;atsign stelnt" "syseng;stelnt" # telnet client -respond "*" ":midas sysbin;telnet_sysnet;telnet\r" -expect ":KILL" - +midas "sysbin;telnet" "sysnet;telnet" respond "*" ":link sys;ts telnet,sysbin;telnet bin\r" respond "*" ":link sys;ts tcptn,sys;ts telnet\r" respond "*" ":link sys;ts ttn,sys;ts telnet\r" @@ -236,8 +205,7 @@ respond "*" ":link sys;ts ncptn,sys;ts telnet\r" respond "*" ":link sys;ts oth,sys;ts telnet\r" # old user telnet -respond "*" ":midas sys1;ts ut_syseng;ut\r" -expect ":KILL" +midas "sys1;ts ut" "syseng;ut" # supdup TCP port (95) uses telser respond "*" ":link device;tcp syn137,sysbin;telser bin\r" @@ -247,9 +215,7 @@ arpanet "rfc137" "sysbin;telser bin" arpanet "rcf107" "sys1;ts supdup" # supdup client -respond "*" ":midas sysbin;supdup_sysnet;supdup\r" -expect ":KILL" - +midas "sysbin;supdup" "sysnet;supdup" respond "*" ":link sys1;ts supdup,sysbin;supdup bin\r" # these two links are expected by sysnet; ftps > and are present @@ -258,9 +224,7 @@ respond "*" ":link ksc;nuuos 999999,klh;nuuos >\r" respond "*" ":link ksc;macros 999999,klh;macros >\r" respond "*" ":link ksc;out 999999,klh; out >\r" -respond "*" ":midas sysbin;ftps_sysnet;ftps \r" -expect ":KILL" - +midas "sysbin;ftps" "sysnet;ftps" respond "*" ":link device;tcp syn025,sysbin;ftps bin\r" respond "*" ":link device;tcp syn031,sysbin;ftps bin\r" respond "*" ":link device;chaos smtp,sysbin;ftps bin\r" @@ -269,24 +233,19 @@ arpanet "rfc025" "sysbin;ftps bin" arpanet "rfc031" "sysbin;ftps bin" arpanet "rfc103" "sysbin;ftps bin" -respond "*" ":midas sysbin;ftpu_sysnet;ftpu\r" -expect ":KILL" - +midas "sysbin;ftpu" "sysnet;ftpu" respond "*" ":link sys;ts ftp,sysbin;ftpu bin\r" # NAME -respond "*" ":midas sysbin;name_sysen2;name\r" -expect ":KILL" +midas "sysbin;name" "sysen2;name" respond "*" ":link syseng;ttytyp 999999,system;ttytyp >\r" # Build INQUIR;INQUPD BIN -respond "*" ":midas inquir;inqupd bin_inquir;inqupd\r" -expect ":KILL" +midas "inquir;inqupd bin" "inquir;inqupd" # Build INQUIR;DIRS BIN -respond "*" ":midas inquir;dirs bin_inquir;dmunch\r" -expect ":KILL" +midas "inquir;dirs bin" "inquir;dmunch" # create .temp.;lsr1 empty respond "*" "lsrini\033j" @@ -305,14 +264,13 @@ respond "*" "\033g" expect ":KILL" # pword/panda -respond "*" ":midas sysbin;panda bin_sysen1;pword\r" -respond "Is this to be a PANDA?" "yes\r" -expect ":KILL" -respond "*" ":midas sysbin;pword bin_sysen1;pword\r" -respond "Is this to be a PANDA?" "no\r" -expect ":KILL" -respond "*" ":midas sysbin;pwinit bin_sysen1;pwinit\r" -expect ":KILL" +midas "sysbin;panda bin" "sysen1;pword" { + respond "Is this to be a PANDA?" "yes\r" +} +midas "sysbin;pword bin" "sysen1;pword" { + respond "Is this to be a PANDA?" "no\r" +} +midas "sysbin;pwinit bin" "sysen1;pwinit" respond "*" ":job pwinit\r" respond "*" ":load sysbin;pwinit\r" respond "*" "\033g" @@ -348,26 +306,20 @@ respond "*" ":link device;tcp syn117,sys;ts name\r" respond "*" ":link device;chaos name,sys;ts name\r" arpanet "rfc117" "sys;ts name" -respond "*" ":midas device;atsign mldev_sysen2;mldev\r" -expect ":KILL" - +midas "device;atsign mldev" "sysen2;mldev" respond "*" ":link device;jobdev db,device;atsign mldev\r" respond "*" ":link device;jobdev es,device;atsign mldev\r" respond "*" ":link device;jobdev no,device;atsign mldev\r" respond "*" ":link device;jobdev sj,device;atsign mldev\r" respond "*" ":link device;jobdev up,device;atsign mldev\r" -respond "*" ":midas device;atsign mlslv_sysen2;mlslv\r" -expect ":KILL" - +midas "device;atsign mlslv" "sysen2;mlslv" respond "*" ":link device;tcp syn123,device;atsign mlslv\r" respond "*" ":link device;chaos mldev,device;atsign mlslv\r" -respond "*" ":midas device;jobdev fc_sysen2;fcdev\r" -expect ":KILL" +midas "device;jobdev fc" "sysen2;fcdev" -respond "*" ":midas device;atsign dirdev_syseng;dirdev\r" -expect ":KILL" +midas "device;atsign dirdev" "syseng;dirdev" respond "*" ":link device;jobdev dir,device;atsign dirdev\r" respond "*" ":link device;jobdev dirdb,device;atsign dirdev\r" respond "*" ":link device;jobdev dires,device;atsign dirdev\r" @@ -375,16 +327,15 @@ respond "*" ":link device;jobdev dirno,device;atsign dirdev\r" respond "*" ":link device;jobdev dirsj,device;atsign dirdev\r" respond "*" ":link device;jobdev dirup,device;atsign dirdev\r" -respond "*" ":midas sys1;ts cftp_sysen2; cftp\r" -respond "KLp==" "0\r" -expect ":KILL" +midas "sys1;ts cftp" "sysen2; cftp" { + respond "KLp==" "0\r" +} respond "*" ":link device;chaos telnet,sysbin;telser bin\r" respond "*" ":link device;chaos supdup,sysbin;telser bin\r" # decuuo -respond "*" ":midas decsys;_decuuo\r" -expect ":KILL" +midas "decsys;" "decuuo" respond "*" ":job decuuo\r" respond "*" ":load decsys;decuuo bin\r" respond "*" "purify\033g" @@ -392,19 +343,16 @@ respond "TS DEC" "\r" respond "*" ":kill\r" respond "*" ":link sys;ts dec\021 *,must; be here\r" -respond "*" ":midas decsys;_decbot\r" -expect ":KILL" +midas "decsys;" "decbot" # palx -respond "*" ":midas sys;ts palx_sysen1;palx\r" -expect ":KILL" +midas "sys;ts palx" "sysen1;palx" # GT40 boot ROM. palx "gt40;" "gt40;bootvt" # PLAN/CREATE -respond "*" ":midas sys3;ts create_syseng;create\r" -expect ":KILL" +midas "sys3;ts create" "syseng;create" respond "*" ":link sys1;ts plan,sys3;ts create\r" processor_basics diff --git a/build/build.tcl b/build/build.tcl index c617f65e0..60ba00497 100644 --- a/build/build.tcl +++ b/build/build.tcl @@ -173,6 +173,16 @@ proc arpanet {rfc file} { } } +proc midas {target source {action ""}} { + respond "*" ":midas ${target}_$source\r" + eval $action + expect ":KILL" +} + +proc midast {target source {action ""}} { + midas "/t $target" $source $action +} + proc macro10 {target sources} { respond "*" ":macro\r" respond "*" "$target=$sources\r" diff --git a/build/dm.tcl b/build/dm.tcl index 8c6f32961..8608fd40d 100644 --- a/build/dm.tcl +++ b/build/dm.tcl @@ -4,48 +4,42 @@ log_progress "ENTERING BUILD SCRIPT: DM" # Dynamic Modeling PDP-10. # Demon starter. -respond "*" ":midas sys; atsign demstr_sysen2; demstr\r" -expect ":KILL" +midas "sys; atsign demstr" "sysen2; demstr" # Demon status. Self purifying. -respond "*" ":midas sysen2; ts demst_sysen2; demst\r" -expect ":KILL" +midas "sysen2; ts demst" "sysen2; demst" # Gun down dead demons. respond "*" ":link taa; pwfile 999999, sysen1; pwfile >\r" -respond "*" ":midas sysbin;_sysen2; gunner\r" -expect ":KILL" +midas "sysbin;" "sysen2; gunner" respond "*" ":link sys; atsign gunner, sysbin; gunner bin\r" # Line printer unspooler demon. -respond "*" ":midas sys; atsign unspoo_sysen1; unspoo\r" -# Just accept the defaults for now. -respond "(CR) FOR DEVICE LPT, nn FOR Tnn" "\r" -respond "(CR) FOR .LPTR. DIRECTORY, OR TYPE NEW NAME" "\r" -expect ":KILL" +midas "sys; atsign unspoo" "sysen1; unspoo" { + # Just accept the defaults for now. + respond "(CR) FOR DEVICE LPT, nn FOR Tnn" "\r" + respond "(CR) FOR .LPTR. DIRECTORY, OR TYPE NEW NAME" "\r" +} # ARPANET support, Dynamic Modeling demon style if [string equal "$mchn" "DM"] { - respond "*" ":midas sys;atsign netrfc_syseng; netrfc\r" - respond "DEMONP=" "1\r" - expect ":KILL" + midas "sys;atsign netrfc" "syseng; netrfc" { + respond "DEMONP=" "1\r" + } } # Arpanet survey demon. -respond "*" ":midas sys; atsign survey_survey; survey\r" -expect ":KILL" +midas "sys; atsign survey" "survey; survey" # Survey giver demon. -respond "*" ":midas survey; atsign surgiv_surgiv\r" -expect ":KILL" +midas "survey; atsign surgiv" "surgiv" respond "*" ":link sys; atsign surgiv, survey;\r" # Survey sender demon. respond "*" ":link sys; atsign sursnd, survey;\r" # Login program. -respond "*" ":midas sysbin;_syseng; booter\r" -expect ":KILL" +midas "sysbin;" "syseng; booter" # Enter an empty password for AS. respond "*" ":job pw\r" respond "*" "2/" diff --git a/build/emacs.tcl b/build/emacs.tcl index e72ffb700..d2f57047b 100644 --- a/build/emacs.tcl +++ b/build/emacs.tcl @@ -1,5 +1,4 @@ -respond "*" ":midas sysbin;_.teco.;teco\r" -expect ":KILL" +midas "sysbin;" ".teco.;teco" respond "*" ":job teco\r" respond "*" ":load sysbin;teco bin\r" sleep 2 @@ -105,8 +104,7 @@ respond "*" ":rename emacs;\[rmai\] \021:ej, emacs;\[rmai\] 147\r" respond "*" ":link emacs;emacs init,emacs;* emacs\r" # make TS BABYL -respond "*" ":midas sys3;ts babyl_kmp;babyl\r" -expect ":KILL" +midas "sys3;ts babyl" "kmp;babyl" # INFO # For some unknown reason, we can't use a printing terminal when diff --git a/build/ka10/include.tcl b/build/ka10/include.tcl index a6cd5baea..5d01622eb 100644 --- a/build/ka10/include.tcl +++ b/build/ka10/include.tcl @@ -83,26 +83,24 @@ proc its_switches {} { } proc make_ntsddt {} { - respond "*" ":midas dsk0:.;@ ddt_system;ddt\r" - respond "cpusw=" "0\r" - respond "ndsk=" "0\r" - respond "dsksw=" "0\r" - respond "dsktp=" "0\r" - respond "1PRSW=" "1\r" - expect ":KILL" + midas "dsk0:.;@ ddt" "system;ddt" { + respond "cpusw=" "0\r" + respond "ndsk=" "0\r" + respond "dsksw=" "0\r" + respond "dsktp=" "0\r" + respond "1PRSW=" "1\r" + } # Old NTS DDT with 340 support. - respond "*" ":midas dsk0:.;@ ntsddt_syseng; ntsddt\r" - expect ":KILL" + midas "dsk0:.;@ ntsddt" "syseng; ntsddt" } proc make_salv {} { - global mchn - - respond "*" ":midas dsk0:.;_system;salv\r" - respond "time-sharing?" "n\r" - respond "machine?" "$mchn\r" - expect ":KILL" + midas "dsk0:.;" "system;salv" { + global mchn + respond "time-sharing?" "n\r" + respond "machine?" "$mchn\r" + } } proc make_dskdmp {} { @@ -110,17 +108,13 @@ proc make_dskdmp {} { global out # On-disk @ DSKDMP. - respond "*" ":midas dsk0:.;@ dskdmp_system;dskdmp\r" - dskdmp_switches "N" - expect ":KILL" + midas "dsk0:.;@ dskdmp" "system;dskdmp" { dskdmp_switches "N" } # Paper tape DSKDMP. This is used for booting ITS. respond "*" $emulator_escape punch_tape "$out/dskdmp.rim" type ":vk\r" - respond "*" ":midas ptp:_system;dskdmp\r" - dskdmp_switches "Y" - expect ":KILL" + midas "ptp:" "system;dskdmp" { dskdmp_switches "Y" } } proc dump_switches {} { @@ -162,10 +156,10 @@ proc bootable_tapes {} { global out global mchn - respond "*" ":midas .;magdmp bin.${mchn}_syseng;magdmp\r" - respond "PTRHRI=" "n\r" - magdmp_switches - expect ":KILL" + midas ".;magdmp bin.${mchn}" "syseng;magdmp" { + respond "PTRHRI=" "n\r" + magdmp_switches + } respond "*" $emulator_escape create_tape "$out/magdmp.tape" diff --git a/build/ka10/processor.tcl b/build/ka10/processor.tcl index e34ed2ebe..4c24d44c5 100644 --- a/build/ka10/processor.tcl +++ b/build/ka10/processor.tcl @@ -20,18 +20,15 @@ respond "*" ":midas;324 dsk0:.;@ mark_syseng; mark\r" expect ":KILL" # utnam -respond "*" ":midas sys3; ts utnam_lars; utnam\r" -expect ":KILL" +midas "sys3; ts utnam" "lars; utnam" # Name Dragon respond "*" ":link syseng;tvkbd rooms, sysen2;\r" -respond "*" ":midas sysbin;_sysen2;namdrg\r" -expect ":KILL" +midas "sysbin;" "sysen2;namdrg" respond "*" ":link channa;rakash namdrg, sysbin; namdrg bin\r" # STUFF -respond "*" ":midas sys1;ts stuff_sysen2;stuff\r" -expect ":KILL" +midas "sys1;ts stuff" "sysen2;stuff" respond "*" ":link channa;rakash tvfix, sys1; ts stuff\r" # IOELEV, PDP-11 doing I/O for the PDP-10 host. @@ -53,7 +50,7 @@ palx "cons;" "lmcons;ccons" cwd "spcwar" respond "*" ":midas;324 spcwar; war\r" expect ":KILL" -respond "*" ":midas spcwar; stars\r" +midas "spcwar;" "stars" expect ":KILL" respond "*" ":midas;324 spcwar; math\r" expect ":KILL" @@ -77,24 +74,23 @@ respond "recording" "\r" expect ":KILL" # Spacewar, timesharing -respond "*" ":midas games;ts spcwar_spcwar; spcwar\r" -respond "ITS version" "YES\r" -respond "ships" "\r" -respond "designs" "\r" -respond "suns" "\r" -expect ":KILL" +midas "games;ts spcwar" "spcwar; spcwar" { + respond "ITS version" "YES\r" + respond "ships" "\r" + respond "designs" "\r" + respond "suns" "\r" +} # PDP-6/10 Dazzle Dart -respond "*" ":midas games;ts dazdrt_klh; dazdrt\r" -respond "Run under ITS?" "YES\r" -expect ":KILL" +midas "games;ts dazdrt" "klh; dazdrt" { + respond "Run under ITS?" "YES\r" +} respond "*" ":midas;324 dsk0:.;@ dazdrt_klh; dazdrt\r" respond "Run under ITS?" "NO\r" expect ":KILL" # Knight TV Spacewar -respond "*" ":midas gjd;_swr data\r" -expect ":KILL" +midas "gjd;" "swr data" respond "*" ":job swr\r" respond "*" ":load gjd; swr bin\r" respond "*" "first\033,last\033\060ygjd; swr ships\r" @@ -104,52 +100,44 @@ expect ":KILL" # Dump TV bitmap as XGP scan file. # TVREAD expects the binary in BKPH. -respond "*" ":midas bkph; ts zap_zap\r" -expect ":KILL" +midas "bkph; ts zap" "zap" # View bitmap file on TV. -respond "*" ":midas sys2; ts tvread_vis; tvread\r" -expect ":KILL" +midas "sys2; ts tvread" "vis; tvread" # Save TV display as bitmap file. -respond "*" ":midas sys2; ts tvwrit_sysen2; tvwrit\r" -expect ":KILL" +midas "sys2; ts tvwrit" "sysen2; tvwrit" # Save TV display as text file. -respond "*" ":midas sys2; ts record_sysen2; record\r" -expect ":KILL" +midas "sys2; ts record" "sysen2; record" # TV paint program. -respond "*" ":midas sys2; ts tvedit_sysen2; tvedit\r" -expect ":KILL" +midas "sys2; ts tvedit" "sysen2; tvedit" # KLH's Knight TV clock. -respond "*" ":midas klh; ts tinyw_klh; clock\r" -respond "=" "1\r" -respond "=" "1\r" -expect ":KILL" -respond "*" ":midas klh; ts bigw_klh; clock\r" -respond "=" "1\r" -respond "=" "0\r" -respond "=" "0\r" -expect ":KILL" -respond "*" ":midas klh; ts digiw_klh; clock\r" -respond "=" "1\r" -respond "=" "0\r" -respond "=" "1\r" -expect ":KILL" +midas "klh; ts tinyw" "klh; clock" { + respond "=" "1\r" + respond "=" "1\r" +} +midas "klh; ts bigw" "klh; clock" { + respond "=" "1\r" + respond "=" "0\r" + respond "=" "0\r" +} +midas "klh; ts digiw" "klh; clock" { + respond "=" "1\r" + respond "=" "0\r" + respond "=" "1\r" +} # XD, view XGP files on TV. -respond "*" ":midas sys3;ts xd_sysen2;xd\r" -expect ":KILL" +midas "sys3;ts xd" "sysen2;xd" # TV-munching square. -respond "*" ":midas sys2;ts munch_sysen2;munch\r" -expect ":KILL" +midas "sys2;ts munch" "sysen2;munch" # TITLER -respond "*" ":midas dsk0:.;@ titler_mb; titler\r" -expect ":KILL" +midas "dsk0:.;@ titler" "mb; titler" # MLIFE respond "*" ":midas;324 games;ts mlife_rwg;mlife\r" @@ -167,30 +155,25 @@ respond "*" ":midas;324 dsk0:.;@ 3406_stan.k; 3406\r" expect ":KILL" # 340D -respond "*" ":midas stan.k;mod11 bin_340d\r" -expect ":KILL" +midas "stan.k;mod11 bin" "340d" respond "*" ":link sys1;ts 340d, stan.k; mod11 bin\r" # Munching squares for 340 display. -respond "*" ":midas lars; ts munch_munch\r" -expect ":KILL" -respond "*" ":midas /t dsk0: .; @ munch_lars; munch\r" -respond "with ^C" ".iotlsr==jfcl\r\003" -expect ":KILL" +midas "lars; ts munch" "munch" +midast "dsk0: .; @ munch" "lars; munch" { + respond "with ^C" ".iotlsr==jfcl\r\003" +} # Minskytron, translated from PDP-1. -respond "*" ":midas dsk0: lars; ts minsky_minsky tron\r" -expect ":KILL" +midas "dsk0: lars; ts minsky" "minsky tron" respond "*" ":link dsk0: .; @ minsky, lars; ts minsky\r" # Edward Lorenz' strange attactor. -respond "*" ":midas dsk0: lars; ts lorenz_lorenz\r" -expect ":KILL" +midas "dsk0: lars; ts lorenz" "lorenz" respond "*" ":link dsk0: .; @ lorenz, lars; ts lorenz\r" # Mandelbrot. -respond "*" ":midas lars; ts tvbrot_tvbrot\r" -expect ":KILL" +midas "lars; ts tvbrot" "tvbrot" # MUSRUN respond "*" ":midas;77\r" @@ -212,20 +195,16 @@ respond "*" ":midas;324 sys;ts 10run_sysen2; 10run\r" expect ":KILL" # Display all Type 342 characters. -respond "*" ":midas dsk0:maint;_tst342\r" -expect ":KILL" +midas "dsk0:maint;" "tst342" # XGP spooler -respond "*" ":midas sys2;ts xgpspl_sysen2;xgpspl\r" -expect ":KILL" +midas "sys2;ts xgpspl" "sysen2;xgpspl" # XGP unspooler -respond "*" ":midas sysbin;_syseng;scrimp\r" -expect ":KILL" +midas "sysbin;" "syseng;scrimp" # CARPET, remote PDP-11 debugger through Rubin 10-11 interface. -respond "*" ":midas sys3;ts carpet_syseng;carpet\r" -expect ":KILL" +midas "sys3;ts carpet" "syseng;carpet" # Patch PDP-6 LISP to run on PDP-10. respond "*" ":job lisp\r" @@ -247,9 +226,9 @@ respond " " "dsk0:.;@ lisp\r" respond "*" ":kill\r" # Lisp display slave, PDP-6 version. -respond "*" ":midas sys; atsign 6slave_sysen2; ld10\r" -respond " PDP6F = " "1\r" -expect ":KILL" +midas "sys; atsign 6slave" "sysen2; ld10" { + respond " PDP6F = " "1\r" +} # Test for the 340 "hack hack". respond "*" $emulator_escape diff --git a/build/kl10/include.tcl b/build/kl10/include.tcl index 0afe63b1f..e93750300 100644 --- a/build/kl10/include.tcl +++ b/build/kl10/include.tcl @@ -51,40 +51,39 @@ proc its_switches {} { proc make_ntsddt {} { # KL10 NTSDDT. - respond "*" ":midas dsk0:.;@ ddt_system;ddt\r" - respond "cpusw=" "2\r" - respond "ndsk=" "3\r" - respond "dsksw=" "3\r" - respond "dsktp=" "0\r" - respond "1PRSW=" "0\r" - expect ":KILL" + midas "dsk0:.;@ ddt" "system;ddt" { + respond "cpusw=" "2\r" + respond "ndsk=" "3\r" + respond "dsksw=" "3\r" + respond "dsktp=" "0\r" + respond "1PRSW=" "0\r" + } } proc make_salv {} { - global mchn - - respond "*" ":midas dsk0:.;_system;salv\r" - respond "time-sharing?" "n\r" - respond "machine?" "$mchn\r" - expect ":KILL" + midas "dsk0:.;" "system;salv" { + global mchn + respond "time-sharing?" "n\r" + respond "machine?" "$mchn\r" + } } proc make_dskdmp {} { - respond "*" ":midas dsk0:.;@ dskdmp_system;dskdmp\r" - expect "Configuration" - respond "?" "ASK\r" - respond "HRIFLG=" "N\r" - respond "BOOTSW=" "N\r" - respond "R11R6P=" "N\r" - respond "R11R7P=" "N\r" - respond "RM03P=" "N\r" - respond "RM80P=" "N\r" - respond "RH10P=" "Y\r" - respond "R10R6P=" "N\r" - respond "NUDSL=" "500.\r" - respond "KS10P=" "N\r" - respond "KL10P=" "Y\r" - expect ":KILL" + midas "dsk0:.;@ dskdmp" "system;dskdmp" { + expect "Configuration" + respond "?" "ASK\r" + respond "HRIFLG=" "N\r" + respond "BOOTSW=" "N\r" + respond "R11R6P=" "N\r" + respond "R11R7P=" "N\r" + respond "RM03P=" "N\r" + respond "RM80P=" "N\r" + respond "RH10P=" "Y\r" + respond "R10R6P=" "N\r" + respond "NUDSL=" "500.\r" + respond "KS10P=" "N\r" + respond "KL10P=" "Y\r" + } } proc dump_switches {} { @@ -140,10 +139,10 @@ proc bootable_tapes {} { global out global mchn - respond "*" ":midas .;magdmp bin.${mchn}_syseng;magdmp\r" - respond "PTRHRI=" "n\r" - magdmp_switches - expect ":KILL" + midas ".;magdmp bin.${mchn}" "syseng;magdmp" { + respond "PTRHRI=" "n\r" + magdmp_switches + } respond "*" $emulator_escape create_tape "$out/magdmp.tape" diff --git a/build/kl10/processor.tcl b/build/kl10/processor.tcl index 87637be8e..61b5610d4 100644 --- a/build/kl10/processor.tcl +++ b/build/kl10/processor.tcl @@ -3,10 +3,10 @@ log_progress "ENTERING BUILD SCRIPT: PROCESSOR" # Programs particular to the KL10 processor. # KL10 front end directory tool -respond "*" ":midas sys1;ts klfedr_syseng;klfedr\r" -respond "RP06P=" "0\r" -respond "RP04P=" "1\r" -expect ":KILL" +midas "sys1;ts klfedr" "syseng;klfedr" { + respond "RP06P=" "0\r" + respond "RP04P=" "1\r" +} mkdir ".klfe." respond "*" ":move .temp.; -read- -this-, .klfe.;\r" @@ -14,8 +14,7 @@ copy_to_klfe "kldcp; kldcp hlp" #copy_to_klfe "kldcp; kldcp doc" # KL10 microcode assembler -respond "*" ":midas sysbin;_syseng;micro\r" -expect ":KILL" +midas "sysbin;" "syseng;micro" respond "*" ":job micro\r" respond "*" ":load sysbin; micro bin\r" respond "*" ":start purify\r" @@ -23,8 +22,7 @@ respond "TS MICRO" "sys; ts micro\r" respond "*" ":kill\r" # Microcode ASCIIzer and binarator converter. -respond "*" ":midas sysbin;_syseng;cnvrt\r" -expect ":KILL" +midas "sysbin;" "syseng;cnvrt" respond "*" ":link sys1;ts mcnvrt,sysbin;cnvrt bin\r" respond "*" ":link sys1;ts pcnvrt,sysbin;cnvrt bin\r" respond "*" ":link sys1;ts ucnvrt,sysbin;cnvrt bin\r" @@ -54,8 +52,7 @@ expect ":KILL" move_to_klfe "kldcp; klddt a10" # KL10 front end dumper -respond "*" ":midas dsk0:.;@ fedump_kldcp; fedump\r" -expect ":KILL" +midas "dsk0:.;@ fedump" "kldcp; fedump" # KL10 front end debugger. Put it in the same directory as the # "MC" IOELEV. @@ -64,8 +61,7 @@ palx "sysbin;" "syseng; klrug" respond "*" ":copy sysbin; klrug bin, .;\r" # PDP-11 linker. -respond "*" ":midas sys1;ts 11stnk_kldcp;11stnk\r" -expect ":KILL" +midas "sys1;ts 11stnk" "kldcp;11stnk" respond "*" ":link .; ts boot11, sys1; ts 11stnk\r" # KL10 diagnostics console program. @@ -127,8 +123,7 @@ move_to_klfe ".temp.; ioelev a11" palx "sysbin;" "system;ioelev" { respond "MACHINE NAME =" "MC\r" } # 11BOOT -respond "*" ":midas;324 sys3;ts 11boot_syseng;11boot\r" -expect ":KILL" +midas;"324 sys3;ts 11boot" "syseng;11boot" # Note, must be run with symbols loaded. # Takes IOELEV BIN and KLRUG BIN from the current directory. cwd "sysbin" @@ -137,5 +132,4 @@ expect ":KILL" respond "*" ":move sysbin;@ boot11, .;\r" # LSPEED -respond "*" ":midas sys1;ts lspeed_syseng;lspeed\r" -expect ":KILL" +midas "sys1;ts lspeed" "syseng;lspeed" diff --git a/build/ks10/include.tcl b/build/ks10/include.tcl index 0377ff2b8..bde219266 100644 --- a/build/ks10/include.tcl +++ b/build/ks10/include.tcl @@ -83,8 +83,7 @@ proc prepare_frontend {} { respond "*" ":login db\r" type ":vk\r" - respond "*" ":midas sysbin;_kshack;ksfedr\r" - expect ":KILL" + midas "sysbin;" "kshack;ksfedr" respond "*" ":delete sys;ts ksfedr\r" respond "*" ":link sys;ts ksfedr,sysbin;ksfedr bin\r" @@ -149,27 +148,22 @@ proc its_switches {} { } proc make_ntsddt {} { - respond "*" ":midas dsk0:.;@ ddt_system;ddt\r" - respond "cpusw" "3\r" - respond "dsktp=" "1\r" - respond "New One Proceed" "1\r" - expect ":KILL" + midas "dsk0:.;@ ddt" "system;ddt" { + respond "cpusw" "3\r" + respond "dsktp=" "1\r" + respond "New One Proceed" "1\r" + } } proc make_salv {} { - respond "*" ":midas dsk0:.;_kshack;nsalv\r" - respond "Which machine?" "KSRP06\r" - expect ":KILL" + midas "dsk0:.;" "kshack;nsalv" { + respond "Which machine?" "KSRP06\r" + } } proc make_dskdmp {} { - respond "*" ":midas dsk0:.;_system;dskdmp\r" - dskdmp_switches "no" - expect ":KILL" - - respond "*" ":midas dsk0:.;bt_system;dskdmp\r" - dskdmp_switches "yes" - expect ":KILL" + midas "dsk0:.;" "system;dskdmp" { dskdmp_switches "no" } + midas "dsk0:.;bt" "system;dskdmp" { dskdmp_switches "yes" } } proc dump_switches {} { @@ -256,6 +250,5 @@ proc dqxdev_switches {} { proc processor_basics {} { # Create KS10 bootable tape. - respond "*" ":midas kshack;ts mtboot_kshack;mtboot\r" - expect ":KILL" + midas "kshack;ts mtboot" "kshack;mtboot" } diff --git a/build/ks10/processor.tcl b/build/ks10/processor.tcl index fc5337a64..cda9f6e5b 100644 --- a/build/ks10/processor.tcl +++ b/build/ks10/processor.tcl @@ -11,8 +11,7 @@ respond "*" "\003" type ":kill\r" # KS10 microcode assembler -respond "*" ":midas kshack;ts micro_micro\r" -expect ":KILL" +midas "kshack;ts micro" "micro" # KS10 microcode. # It doesn't seem to work very well when purified. @@ -32,5 +31,4 @@ respond "!" "quit\r" expect ":KILL" # TENTH, toy Forth for KS10. -respond "*" ":midas .; @ tenth_aap; tenth\r" -expect ":KILL" +midas ".; @ tenth" "aap; tenth" diff --git a/build/lisp.tcl b/build/lisp.tcl index 8b02622f0..1893f1052 100644 --- a/build/lisp.tcl +++ b/build/lisp.tcl @@ -8,9 +8,9 @@ respond "*" ":link lisp;grinde fasl,lisp;gfn fasl\r" respond "*" ":link l;loop fasl,liblsp;loop fasl\r" respond "*" ":link lisp;loop fasl,liblsp;loop fasl\r" -respond "*" ":midas .temp.;_l;*lisp\r" -respond "end input with ^C" "\003" -expect ":KILL" +midas ".temp.;" "l;*lisp" { + respond "end input with ^C" "\003" +} respond "*" ":job lisp\r" respond "*" ":load .temp.;*lisp bin\r" respond "*" "\033g" @@ -52,13 +52,12 @@ respond "*" ":link info;complr 1,info;lispc >\r" # lisp;* fasl that that have autoload properties in interpreter respond "*" ":link sys;.fasl defs,lisp;.fasl defs\r" respond "*" ":link sys;fasdfs 1,lisp;.fasl defs\r" -respond "*" ":midas lisp;_l;allfil\r" -respond "*" ":midas lisp;_l;bltarr\r" -respond "*" ":midas lisp;_lspsrc;edit\r" -respond "*" ":midas lisp;_l;getmid\r" -respond "*" ":midas lisp;_l;humble\r" -respond "*" ":midas lisp;_lspsrc;sort\r" -expect ":KILL" +midas "lisp;" "l;allfil" +midas "lisp;" "l;bltarr" +midas "lisp;" "lspsrc;edit" +midas "lisp;" "l;getmid" +midas "lisp;" "l;humble" +midas "lisp;" "lspsrc;sort" respond "*" ":link lisp;subloa lsp,nilcom;subloa >\r" @@ -182,10 +181,8 @@ respond "_" "\032" type ":kill\r" # inquir -respond "*" ":midas inquir;_lsrrtn\r" -expect ":KILL" -respond "*" ":midas inquir;_cstacy;netrtn\r" -expect ":KILL" +midas "inquir;" "lsrrtn" +midas "inquir;" "cstacy;netrtn" respond "*" ":link liblsp;debug fasl,liblsp;dbg fasl\r" respond "*" ":link lisp;debug fasl,liblsp;debug fasl\r" @@ -199,10 +196,8 @@ respond "_" "inquir;inquir\r" respond "_" "\032" type ":kill\r" -respond "*" ":midas inquir;ts inqexm_inqexm\r" -expect ":KILL" -respond "*" ":midas inquir;ts inqrep_inqrep\r" -expect ":KILL" +midas "inquir;ts inqexm" "inqexm" +midas "inquir;ts inqrep" "inqrep" respond "*" ":link inquir;ts inqchk,ts inquir\r" respond "*" "complr\013" @@ -235,16 +230,12 @@ type ":kill\r" respond "*" ":link inquir;lsrtns 1,syseng;lsrtns >\r" -respond "*" ":midas inquir;ts lookup_inquir;lookup\r" -expect ":KILL" - +midas "inquir;ts lookup" "inquir;lookup" respond "*" ":link sys1;ts lookup,inquir;ts lookup\r" -respond "*" ":midas sys3;ts lsrprt_sysen1; lsrprt\r" -expect ":KILL" +midas "sys3;ts lsrprt" "sysen1; lsrprt" -respond "*" ":midas sys3;ts lsrdmp_bawden; lsrdmp\r" -expect ":KILL" +midas "sys3;ts lsrdmp" "bawden; lsrdmp" # more lisp packages respond "*" ":link lisp;tty fasl,liblsp;tty fasl\r" @@ -291,10 +282,8 @@ respond "_" "lisp;_nilcom;thread\r" respond "_" "\032" type ":kill\r" -respond "*" ":midas lisp;_l;lchnsp\r" -expect ":KILL" -respond "*" ":midas lisp;_l;purep\r" -expect ":KILL" +midas "lisp;" "l;lchnsp" +midas "lisp;" "l;purep" # struct @@ -315,8 +304,7 @@ type ":kill\r" respond "*" ":copy alan;nstruc fasl,liblsp;struct fasl\r" respond "*" ":link lisp;struct fasl,liblsp;struct fasl\r" -respond "*" ":midas liblsp;_alan;macits\r" -expect ":KILL" +midas "liblsp;" "alan;macits" respond "*" "complr\013" respond "_" "liblsp;_alan;dprint\r" @@ -514,15 +502,15 @@ respond "_" "lisp;_nilcom;subloa\r" respond "_" "\032" type ":kill\r" -respond "*" ":midas liblsp;_libdoc;bssq\r" -respond "*" ":midas liblsp;_libdoc;aryadr\r" -respond "*" ":midas liblsp;_libdoc;link\r" -respond "*" ":midas liblsp;_libdoc;lscall\r" -respond "*" ":midas liblsp;_libdoc;cpyhnk\r" +midas "liblsp;" "libdoc;bssq" +midas "liblsp;" "libdoc;aryadr" +midas "liblsp;" "libdoc;link" +midas "liblsp;" "libdoc;lscall" +midas "liblsp;" "libdoc;cpyhnk" respond "*" ":link lisp;defns mid,l;defns >\r" -respond "*" ":midas liblsp;_libdoc;fft\r" -respond "*" ":midas liblsp;_libdoc;phase\r" +midas "liblsp;" "libdoc;fft" +midas "liblsp;" "libdoc;phase" # More LIBLSP packages respond "*" "complr\013" @@ -540,8 +528,8 @@ respond "_" "liblsp;_libdoc;stacks\r" respond "_" "\032" type ":kill\r" -respond "*" ":midas liblsp;_libdoc;dirsiz\r" -respond "*" ":midas liblsp;_z;timer\r" +midas "liblsp;" "libdoc;dirsiz" +midas "liblsp;" "z;timer" respond "*" ":link lisp;vsaid lisp,nilcom;vsaid >\r" respond "*" "complr\013" @@ -557,14 +545,12 @@ respond "Delete? (Y or N):" "y" respond "@" "q\r" expect ":KILL" -respond "*" ":midas liblsp;_gsb;ttyvar\r" -respond "Use what filename instead?" "lisp;\r" -expect ":KILL" +midas "liblsp;" "gsb;ttyvar" { + respond "Use what filename instead?" "lisp;\r" +} -respond "*" ":midas liblsp;_libdoc;aryadr\r" -expect ":KILL" -respond "*" ":midas liblsp;_libdoc;bssq\r" -expect ":KILL" +midas "liblsp;" "libdoc;aryadr" +midas "liblsp;" "libdoc;bssq" respond "*" "complr\013" respond "_" "liblsp;_libdoc;lddt\r" @@ -628,10 +614,8 @@ respond "_" "lisp;_lspsrc;vector\r" respond "_" "\032" type ":kill\r" -respond "*" ":midas lisp;_lspsrc;sendi\r" -expect ":KILL" -respond "*" ":midas lisp;_lspsrc;straux\r" -expect ":KILL" +midas "lisp;" "lspsrc;sendi" +midas "lisp;" "lspsrc;straux" # lispt source is in libdoc, therefore fasl should be in liblsp # version in lisp; should be a link to liblsp;lispf fasl @@ -640,14 +624,13 @@ respond "*" ":link lisp;lispt fasl,liblsp;\r" respond "*" ":link sys2;ts lispt,sys2;ts edit\r" # Lisp display library -respond "*" ":midas lisp; slave fasl_l; slave\r" -expect ":KILL" +midas "lisp; slave fasl" "l; slave" # Lisp display slave, PDP-10 and GT40 version. -respond "*" ":midas sys; atsign 10slav_sysen2; ld10\r" -respond " PDP6F = " "0\r" -respond "GT40F=" "1\r" -expect ":KILL" +midas "sys; atsign 10slav" "sysen2; ld10" { + respond " PDP6F = " "0\r" + respond "GT40F=" "1\r" +} # animal respond "*" "complr\013" diff --git a/build/macsyma.tcl b/build/macsyma.tcl index ee20acfab..039fa68c0 100644 --- a/build/macsyma.tcl +++ b/build/macsyma.tcl @@ -52,10 +52,8 @@ type ":kill\r" # the following are required to compile some of the libmax; # FASL files # -respond "*" ":midas rwk;lfsdef fasl_rwk;lfsdef\r" -expect ":KILL" -respond "*" ":midas rat;ratlap fasl_rat;ratlap\r" -expect ":KILL" +midas "rwk;lfsdef fasl" "rwk;lfsdef" +midas "rat;ratlap fasl" "rat;ratlap" mkdir "maxdmp" respond "*" ":link maxdmp;ratlap fasl,rat;ratlap fasl\r" respond "*" ":link libmax;lusets fasl,liblsp;\r" @@ -215,7 +213,7 @@ respond "*" "(dump-mcl 32. t)" respond "File name->" "\002" respond ";BKPT" "(quit)" -respond "*" ":midas maxtul;ts mcl_mcldmp midas\r" +midas "maxtul;ts mcl" "mcldmp midas" respond "*" ":link maxtul;.good. complr,maxtul;mcldmp 32\r" # build UTMCL -- the compiler invoked by compile_lisp_file in Macsyma diff --git a/build/mark.tcl b/build/mark.tcl index 0806d8b49..9bca2eff9 100644 --- a/build/mark.tcl +++ b/build/mark.tcl @@ -31,8 +31,7 @@ expect ":KILL" respond "*" ":listf sys\r" mkdir "sysbin" -respond "*" ":midas sysbin;_midas;midas\r" -expect ":KILL" +midas "sysbin;" "midas;midas" respond "*" ":job midas\r" respond "*" ":load sysbin;midas bin\r" respond "*" "purify\033g" @@ -40,17 +39,14 @@ respond "CR to dump" "\r" sleep 2 respond "*" ":kill\r" -respond "*" ":midas sysbin;_sysen1;ddt\r" -expect ":KILL" +midas "sysbin;" "sysen1;ddt" respond "*" ":job ddt\r" respond "*" ":load sysbin;ddt bin\r" respond "*" "purify\033g" respond "*" ":pdump sys;atsign ddt\r" respond "*" ":kill\r" -respond "*" ":midas dsk0:.;_system;its\r" -its_switches -expect ":KILL" +midas "dsk0:.;" "system;its" its_switches make_ntsddt diff --git a/build/mchn/HX/custom.tcl b/build/mchn/HX/custom.tcl index 40613db85..5829b989d 100644 --- a/build/mchn/HX/custom.tcl +++ b/build/mchn/HX/custom.tcl @@ -2,9 +2,9 @@ respond "*" ":link dragon; hourly gunner, cstacy; gunner bin\r" #Run a weekly unattended incremental dump. -respond "*" ":midas dragon; weekly backup_lars; backup\r" -respond "HOST NAME =" "177001\r" -expect ":KILL" +midas "dragon; weekly backup" "lars; backup" { + respond "HOST NAME =" "177001\r" +} # get rid of links to daemons that don't run correctly respond "*" ":delete dragon;hourly digest\r" diff --git a/build/mchn/PT/custom.tcl b/build/mchn/PT/custom.tcl index 569b13050..d6dca2261 100644 --- a/build/mchn/PT/custom.tcl +++ b/build/mchn/PT/custom.tcl @@ -1,7 +1,7 @@ #Enable the remote shutdown service. -respond "*" ":midas /t device;chaos shutdo_sysnet;shutsr\r" -respond "end input with ^C" "ALLOW==177001\r\003" -expect ":KILL" +midas "/t device;chaos shutdo" "sysnet;shutsr" { + respond "end input with ^C" "ALLOW==177001\r\003" +} #Disable the DM gunner. respond "*" ":delete sys;atsign gunner\r" diff --git a/build/mchn/TT/custom.tcl b/build/mchn/TT/custom.tcl index c1c4207d5..53e1b9237 100644 --- a/build/mchn/TT/custom.tcl +++ b/build/mchn/TT/custom.tcl @@ -1,7 +1,7 @@ #Enable the remote shutdown service. -respond "*" ":midas /t device;chaos shutdo_sysnet;shutsr\r" -respond "end input with ^C" "ALLOW==3036\r\003" -expect ":KILL" +midas "/t device;chaos shutdo" "sysnet;shutsr" { + respond "end input with ^C" "ALLOW==3036\r\003" +} #Disable the DM gunner. respond "*" ":delete sys;atsign gunner\r" @@ -10,9 +10,9 @@ respond "*" ":delete sys;atsign gunner\r" respond "*" ":link dragon; hourly gunner, cstacy; gunner bin\r" #Run a weekly unattended incremental dump. -respond "*" ":midas dragon; weekly backup_lars; backup\r" -respond "HOST NAME =" "3036\r" -expect ":KILL" +midas "dragon; weekly backup" "lars; backup" { + respond "HOST NAME =" "3036\r" +} # get rid of links to daemons that don't run correctly respond "*" ":delete dragon;hourly digest\r" diff --git a/build/misc.tcl b/build/misc.tcl index 2720eef4a..82a4472f5 100644 --- a/build/misc.tcl +++ b/build/misc.tcl @@ -1,12 +1,12 @@ log_progress "ENTERING BUILD SCRIPT: MISC" # MIDAS 324, needed for older programs. -respond "*" ":midas /t sysbin; midas 324bin_midas; midas 324\r" -respond "\n" "itssw==1\r" -respond "\n" "ptr==100\r" -respond "\n" "ldbi=ildb\r" -respond "\n" "dpbi=idpb\003" -expect ":KILL" +midast "sysbin; midas 324bin" "midas; midas 324" { + respond "\n" "itssw==1\r" + respond "\n" "ptr==100\r" + respond "\n" "ldbi=ildb\r" + respond "\n" "dpbi=idpb\003" +} respond "*" ":job midas\r" respond "*" ":load sysbin; midas 324bin\r" respond "*" "purify\033g" @@ -42,8 +42,7 @@ respond "*" ":midas;324 sysbin;_sysen2; mactap\r" expect ":KILL" # TECO6 -respond "*" ":midas sysbin;teco 335bin_.teco.; teco 335\r" -expect ":KILL" +midas "sysbin;teco 335bin" ".teco.; teco 335" respond "*" ":job teco\r" respond "*" ":load sysbin; teco 335bin\r" respond "*" "purify\033g" @@ -58,31 +57,26 @@ expect ":KILL" respond "*" ":link sys2;ts teachemacs,emacs;tstch >\r" # nsalv, timesharing version -respond "*" ":midas sys1;ts nsalv_kshack;nsalv\r" -respond "machine?" "TS\r" -expect "*" +midas "sys1;ts nsalv" "kshack;nsalv" { + respond "machine?" "TS\r" +} # salv, timesharing versions -respond "*" ":midas sys1;ts salv_system;salv\r" -respond "time-sharing?" "y\r" -expect ":KILL" +midas "sys1;ts salv" "system;salv" { + respond "time-sharing?" "y\r" +} -respond "*" ":midas sys3;ts syslod_sysen1;syslod\r" -expect ":KILL" +midas "sys3;ts syslod" "sysen1;syslod" -respond "*" ":midas sys3;ts vv_sysen2;vv\r" -expect ":KILL" +midas "sys3;ts vv" "sysen2;vv" respond "*" ":link sys3;ts vj,sys3;ts vv\r" respond "*" ":link sys3;ts detree,sys3;ts vv\r" -respond "*" ":midas sys3;ts trees_sysen1; trees\r" -expect ":KILL" +midas "sys3;ts trees" "sysen1; trees" -respond "*" ":midas sys2;ts syschk_sysen2;syschk\r" -expect ":KILL" +midas "sys2;ts syschk" "sysen2;syschk" -respond "*" ":midas sysbin;_sysen3;whoj\r" -expect ":KILL" +midas "sysbin;" "sysen3;whoj" respond "*" ":link sys1;ts talk,sysbin;whoj bin\r" respond "*" ":link sys1;ts who,sysbin;whoj bin\r" respond "*" ":link sys1;ts whoj,sysbin;whoj bin\r" @@ -92,49 +86,35 @@ respond "*" ":link sys1;ts w,sys1;ts who\r" respond "*" ":link sys2;ts u,sys2;ts users\r" #Inter-Entity Communication -respond "*" ":midas sysbin;_sysen2; iec\r" -expect ":KILL" +midas "sysbin;" "sysen2; iec" respond "*" ":link sys; atsign iec, sysbin; iec bin\r" arpanet "rfc113" "sys; atsign iec" -respond "*" ":midas sys2;ts untalk_gren;untalk\r" -expect ":KILL" +midas "sys2;ts untalk" "gren;untalk" -respond "*" ":midas sys3;ts ufind_syseng;ufind\r" -expect ":KILL" +midas "sys3;ts ufind" "syseng;ufind" -respond "*" ":midas sys3;ts ddtdoc_syseng;ddtdoc\r" -expect ":KILL" +midas "sys3;ts ddtdoc" "syseng;ddtdoc" -respond "*" ":midas sys1;ts nwatch_sysen1;nwatch\r" -expect ":KILL" +midas "sys1;ts nwatch" "sysen1;nwatch" -respond "*" ":midas sys1;ts crock_sysen1;crock\r" -respond "System?" "ITS\r" -expect ":KILL" +midas "sys1;ts crock" "sysen1;crock" { respond "System?" "ITS\r" } respond "*" ":link sys2;ts c,sys1;ts crock\r" -respond "*" ":midas sys1;ts dcrock_sysen1;dcrock\r" -respond "System?" "ITS\r" -expect ":KILL" +midas "sys1;ts dcrock" "sysen1;dcrock" { respond "System?" "ITS\r" } respond "*" ":link sys2;ts dc,sys1;ts dcrock\r" # Not Zork -respond "*" ":midas sys3;ts zork_sysen3;zork\r" -expect ":KILL" +midas "sys3;ts zork" "sysen3;zork" -respond "*" ":midas sys1;ts instal_sysen2;instal\r" -expect ":KILL" +midas "sys1;ts instal" "sysen2;instal" -respond "*" ":midas sys1;ts dir_bawden;dir^k\r" -expect ":KILL" +midas "sys1;ts dir" "bawden;dir^k" -respond "*" ":midas bawden;_uptime\r" -expect ":KILL" +midas "bawden;" "uptime" # Chaosnet EVACUATE service. -respond "*" ":midas sysbin; evacua_bawden; evacua\r" -expect ":KILL" +midas "sysbin; evacua" "bawden; evacua" respond "*" ":job evacua\r" respond "*" ":load sysbin; evacua bin\r" respond "*" "purify\033g" @@ -142,75 +122,56 @@ respond "CHAOS EVACUA" "\r" respond "*" ":kill\r" # Mini Chaosnet file server. Version 24 is MINI. -respond "*" ":midas sysbin; mini_lmio; minisr 24\r" -expect ":KILL" +midas "sysbin; mini" "lmio; minisr 24" respond "*" ":link device; chaos mini, sysbin; mini bin\r" # Mini Chaosnet file server. This is the 36-bit version. -respond "*" ":midas kshack;_mini36\r" -expect ":KILL" +midas "kshack;" "mini36" respond "*" ":link device; chaos mini36, kshack; mini36 bin\r" -respond "*" ":midas sysbin;_sysnet;echo\r" -expect ":KILL" +midas "sysbin;" "sysnet;echo" respond "*" ":link device; chaos echo, sysbin; echo bin\r" -respond "*" ":midas alan;ts gensym_alan;gensym\r" -expect ":KILL" +midas "alan;ts gensym" "alan;gensym" respond "*" ":link device; chaos gensym, alan; ts gensym\r" -respond "*" ":midas device;chaos load_alan;load\r" -expect ":KILL" +midas "device;chaos load" "alan;load" # Mini Chaosnet file server. Version 5 is MINIC. -respond "*" ":midas sysbin; minic bin_syseng; minisr 5\r" -expect ":KILL" +midas "sysbin; minic bin" "syseng; minisr 5" respond "*" ":link device; chaos minic, sysbin; minic bin\r" -respond "*" ":midas sysbin;_lmio1; door\r" -expect ":KILL" +midas "sysbin;" "lmio1; door" respond "*" ":link device; chaos door, sysbin; door bin\r" -respond "*" ":midas sys3; ts esce_sysen1; esce\r" -expect ":KILL" - -respond "*" ":midas sysbin;chtn_sysnet;chtn\r" -expect ":KILL" +midas "sys3; ts esce" "sysen1; esce" +midas "sysbin;chtn" "sysnet;chtn" respond "*" ":link sys2;ts chtn,sysbin;chtn bin\r" -respond "*" ":midas sys;ts ttloc_sysen1;ttloc\r" -expect ":KILL" +midas "sys;ts ttloc" "sysen1;ttloc" respond "*" ":link sys2;ts styloc,sys;ts ttloc\r" -respond "*" ":midas device;jobdev dp_sysen3;dpdev\r" -expect ":KILL" - -respond "*" ":midas sys1;ts quote_sysen1;limeri\r" -respond "Use what filename instead?" "ecc;quotes >\r" -expect ":KILL" +midas "device;jobdev dp" "sysen3;dpdev" -respond "*" ":midas sys2;ts limeri_sysen1;limeri\r" -respond "Use what filename instead?" "eak; lims >\r" -expect ":KILL" +midas "sys1;ts quote" "sysen1;limeri" { + respond "Use what filename instead?" "ecc;quotes >\r" +} +midas "sys2;ts limeri" "sysen1;limeri" { + respond "Use what filename instead?" "eak; lims >\r" +} respond "*" ":link sys2;ts limmer,sys2;ts limeri\r" -respond "*" ":midas sysbin;_eak;limser\r" -expect ":KILL" +midas "sysbin;" "eak;limser" respond "*" ":link device;chaos limeri,sysbin;limser bin\r" -respond "*" ":midas sys;ts srccom_sysen2;srccom\r" -expect ":KILL" +midas "sys;ts srccom" "sysen2;srccom" respond "*" ":link sys2;ts =,sys;ts srccom\r" -respond "*" ":midas .mail.;comsat_sysnet;comsat\r" -comsat_switches -expect ":KILL" +midas ".mail.;comsat" "sysnet;comsat" comsat_switches -respond "*" ":midas device;jobdev dq_sysnet;dqxdev\r" -dqxdev_switches -expect ":KILL" +midas "device;jobdev dq" "sysnet;dqxdev" dqxdev_switches respond "*" "comsat\033j" respond "*" "\033l.mail.;comsat bin\r" @@ -218,28 +179,23 @@ respond "*" "debug/0\r" type "xvers/0\r" type "purify\033g" respond ":PDUMP DSK:.MAIL.;COMSAT LAUNCH" "\r" - respond "*" ":kill\r" initialize_comsat respond "*" ":link emacs;rmail \021:ej,emacs;\[rmai\] >\r" -respond "*" ":midas sys1;ts rmail_emacs1;rmaill\r" -expect ":KILL" +midas "sys1;ts rmail" "emacs1;rmaill" respond "*" ":link channa;rakash cnavrl,.mail.;comsat launch\r" respond "*" ":link channa;ts cnavrl,channa;rakash cnavrl\r" respond "*" ":link dragon;hourly cnavrl,.mail.;comsat launch\r" -respond "*" ":midas sysbin;_sra; gcmail\r" -expect ":KILL" +midas "sysbin;" "sra; gcmail" respond "*" ":link dragon; hourly gcmail,sysbin; gcmail bin\r" respond "*" ":link dragon; hourly gcbulk,sysbin; gcmail bin\r" -respond "*" ":midas sysbin;qmail_ksc;qmail\r" -respond "PWORD version (Y or N)? " "N\r" -expect ":KILL" +midas "sysbin;qmail" "ksc;qmail" { respond "PWORD version (Y or N)? " "N\r" } respond "*" ":job qmail\r" respond "*" ":load sysbin;\r" respond "*" "purify\033g" @@ -255,76 +211,58 @@ respond "*" ":link sys2;ts featur,sys;ts qmail\r" respond "*" ":link .info.;mail info,.info.;qmail info\r" # Chaosnet MAILServer -respond "*" ":midas sysbin;_sysnet;mails\r" -expect ":KILL" +midas "sysbin;" "sysnet;mails" respond "*" ":link device; chaos mail, sysbin; mails bin\r" # DIGEST -respond "*" ":midas digest; ts digest_digest\r" -expect ":KILL" +midas "digest; ts digest" "digest" respond "*" ":link dragon; hourly digest, digest; ts digest\r" # MBXLOC -respond "*" ":midas digest; ts mbxloc_mbxloc\r" -expect ":KILL" +midas "digest; ts mbxloc" "mbxloc" # TIME -respond "*" ":midas sys1;ts time_sysen2;time\r" -expect ":KILL" +midas "sys1;ts time" "sysen2;time" # DATE -respond "*" ":midas sys1;ts date_sysen3;date\r" -expect ":KILL" +midas "sys1;ts date" "sysen3;date" # SRDATE -respond "*" ":midas sys3;ts srdate_sysen3;srdate\r" -expect ":KILL" +midas "sys3;ts srdate" "sysen3;srdate" # PWMAIL -respond "*" ":midas sys;ts pwmail_ksc;qmail\r" -respond "PWORD version (Y or N)? " "Y\r" -expect ":KILL" +midas "sys;ts pwmail" "ksc;qmail" { respond "PWORD version (Y or N)? " "Y\r" } # FIDO -respond "*" ":midas sys3;ts fido_ksc;fidox\r" -expect ":KILL" +midas "sys3;ts fido" "ksc;fidox" # STTY -respond "*" ":midas sys2;ts stty_archy;stty\r" -expect ":KILL" +midas "sys2;ts stty" "archy;stty" # DOWNLD -respond "*" ":midas sys3;ts downld_sysen1;downld\r" -expect ":KILL" +midas "sys3;ts downld" "sysen1;downld" # OCTPUS -respond "*" ":midas sys2;ts octpus_gren;octpus\r" -expect ":KILL" +midas "sys2;ts octpus" "gren;octpus" # TTYTST -respond "*" ":midas sys3;ts ttytst_sysen2;ttytst\r" -expect ":KILL" +midas "sys3;ts ttytst" "sysen2;ttytst" # GOTO -respond "*" ":midas sys3;ts goto_kmp; goto\r" -expect ":KILL" +midas "sys3;ts goto" "kmp; goto" # binprt -respond "*" ":midas sys3;ts binprt_sysen1;binprt\r" -expect ":KILL" +midas "sys3;ts binprt" "sysen1;binprt" # bitprt -respond "*" ":midas sys3;ts bitprt_sysen2;bitprt\r" -expect ":KILL" +midas "sys3;ts bitprt" "sysen2;bitprt" # bday -respond "*" ":midas sysbin;_sysen1;bday\r" -expect ":KILL" +midas "sysbin;" "sysen1;bday" respond "*" ":link dragon;daily bday,sysbin;bday bin\r" # sender -respond "*" ":midas sysbin;sender_sysen1;sender\r" -expect ":KILL" +midas "sysbin;sender" "sysen1;sender" respond "*" ":link sys;ts freply,sysbin;sender bin\r" respond "*" ":link sys;ts send,sysbin;sender bin\r" respond "*" ":link sys2;ts fr,sysbin;sender bin\r" @@ -335,110 +273,85 @@ respond "*" ":link sys3;ts snd,sys;ts send\r" respond "*" ":link sys3;ts sned,sys;ts send\r" # psend -respond "*" ":midas sys3;ts psend_sysen2;b\r" -expect ":KILL" +midas "sys3;ts psend" "sysen2;b" # whosen -respond "*" ":midas sys2;ts whosen_syseng;wsent\r" -expect ":KILL" +midas "sys2;ts whosen" "syseng;wsent" # sensor -respond "*" ":midas sys3;ts sensor_gren;sensor\r" -expect ":KILL" +midas "sys3;ts sensor" "gren;sensor" # NICNAM -respond "*" ":midas sys2;ts nicnam_sysen3;nicnam\r" -expect ":KILL" +midas "sys2;ts nicnam" "sysen3;nicnam" # NICWHO -respond "*" ":midas sys2;ts nicwho_sysen3;nicwho\r" -expect ":KILL" +midas "sys2;ts nicwho" "sysen3;nicwho" # reatta -respond "*" ":midas sys1;ts reatta_sysen2;reatta\r" -expect ":KILL" +midas "sys1;ts reatta" "sysen2;reatta" # print -respond "*" ":midas sys;ts print_sysen2;print\r" -expect ":KILL" +midas "sys;ts print" "sysen2;print" respond "*" ":link sys;ts copy,sys;ts print\r" respond "*" ":link sys;ts listf,sys;ts print\r" # fdir -respond "*" ":midas sys2;ts fdir_syseng;fdir\r" -expect ":KILL" +midas "sys2;ts fdir" "syseng;fdir" # timoon -respond "*" ":midas sys1;ts timoon_syseng;timoon\r" -expect ":KILL" +midas "sys1;ts timoon" "syseng;timoon" # jedgar -respond "*" ":midas sys2; ts jedgar_sysen3; jedgar\r" -expect ":KILL" -respond "*" ":midas moon; ts jedgar_moon; jedgar\r" -expect ":KILL" +midas "sys2; ts jedgar" "sysen3; jedgar" +midas "moon; ts jedgar" "moon; jedgar" # failsa -respond "*" ":midas moon;_failsa\r" -expect ":KILL" +midas "moon;" "failsa" # ports -respond "*" ":midas sys2;ts ports_sysen2;ports\r" -expect ":KILL" +midas "sys2;ts ports" "sysen2;ports" # sysmsg -respond "*" ":midas sys1;ts sysmsg_sysen1;sysmsg\r" -expect ":KILL" +midas "sys1;ts sysmsg" "sysen1;sysmsg" # meter -respond "*" ":midas sys1;ts meter_syseng;meter\r" -expect ":KILL" +midas "sys1;ts meter" "syseng;meter" respond "*" ":link sys1; ts smeter, sys1; ts meter\r" respond "*" ":link sys1; ts meterd, sys1; ts meter\r" # cross # This is not the microcomputer cross assembler. -#respond "*" ":midas sys1;ts cross_syseng;cross\r" -#expect ":KILL" +#midas "sys1;ts cross" "syseng;cross" # MACN80 -respond "*" ":midas sys3;ts macn80_gz;macn80\r" -expect ":KILL" +midas "sys3;ts macn80" "gz;macn80" # dired -respond "*" ":midas sys;ts dired_sysen2;dired\r" -expect ":KILL" +midas "sys;ts dired" "sysen2;dired" # dircpy -respond "*" ":midas sys3;ts dircpy_sysen3;dircop\r" -expect ":KILL" +midas "sys3;ts dircpy" "sysen3;dircop" # hsname -respond "*" ":midas sys2;ts hsname_sysen1;hsname\r" -expect ":KILL" +midas "sys2;ts hsname" "sysen1;hsname" # arcsal -respond "*" ":midas sys1;ts arcsal_sysen1;arcsal\r" -expect ":KILL" +midas "sys1;ts arcsal" "sysen1;arcsal" # acount -respond "*" ":midas sys;ts acount_sysen3;acount\r" -expect ":KILL" +midas "sys;ts acount" "sysen3;acount" # idents -respond "*" ":midas sysbin;_sysnet;idents\r" -expect ":KILL" +midas "sysbin;" "sysnet;idents" respond "*" ":link device;tcp syn161,sysbin;idents bin\r" # timsrv -respond "*" ":midas sysbin;timsrv bin_sysnet;timsrv\r" -expect ":KILL" +midas "sysbin;timsrv bin" "sysnet;timsrv" respond "*" ":link device;tcp syn045,sysbin;timsrv bin\r" arpanet "rfc045" "sysbin;timsrv bin" # datsrv -respond "*" ":midas sysbin;_sysnet;datsrv\r" -expect ":KILL" +midas "sysbin;" "sysnet;datsrv" respond "*" ":link device;tcp syn015,sysbin;datsrv bin\r" # WEBSER @@ -449,12 +362,10 @@ expect -timeout 300 "*:kill" respond "*" ":link sys;ts mailt,sys2;ts emacs\r" # rmtdev -respond "*" ":midas device;atsign rmtdev_gz;rmtdev\r" -expect ":KILL" +midas "device;atsign rmtdev" "gz;rmtdev" # mmodem -respond "*" ":midas sys3; ts mmodem_gz; mmodem\r" -expect ":KILL" +midas "sys3; ts mmodem" "gz; mmodem" # Compile ADVENT and dump it out with DECUUO. cwd "games" @@ -510,45 +421,35 @@ loader "trek" decuuo "games; ts trek" # Tech II chess: timesharing, using TV display -respond "*" ":midas games;ts chess2_rg;chess2\r" -expect ":KILL" +midas "games;ts chess2" "rg;chess2" # Unknown chess -respond "*" ":midas games;ts chess_as;chess\r" -expect ":KILL" +midas "games;ts chess" "as;chess" # MacHack VI chess: timesharing, using TV display, no CHEOPS processor. -respond "*" ":midas /t games;ts ocm_chprog;ocm\r" -respond "with ^C" "CHEOPS==0\r\003" -expect ":KILL" +midast "games;ts ocm" "chprog;ocm" { respond "with ^C" "CHEOPS==0\r\003" } # MacHack VI: timesharing, using 340 display. -respond "*" ":midas games;ts c_rg;c\r" -expect ":KILL" +midas "games;ts c" "rg;c" # CKR -respond "*" ":midas games;ts ckr_agb;ckr\r" -expect ":KILL" +midas "games;ts ckr" "agb;ckr" # Dazzle Dart, video game for the Logo group PDP-11/45 palx "bs;" "dazzle" # TOSBLK, convert from PALX binary to SBLK. -respond "*" ":midas pdp11;ts tosblk_tosblk\r" -expect ":KILL" +midas "pdp11;ts tosblk" "tosblk" # PI -respond "*" ":midas sys3;ts pi_rwg; ran\r" -expect ":KILL" +midas "sys3;ts pi" "rwg; ran" # Hunt the Wumpus -respond "*" ":midas sys1;ts wumpus_games; wumpus\r" -expect ":KILL" +midas "sys1;ts wumpus" "games; wumpus" # Jotto cwd "games" -respond "*" ":midas jotto\r" -expect ":KILL" +midas "games;" "jotto" respond "*" ":job jotto\r" respond "*" ":load jotto bin\r" # Run initialisation code to open the TTY channels. @@ -564,25 +465,22 @@ respond "words" ":pdump sys1;ts jotto\r" respond "*" ":kill\r" # ngame -respond "*" ":midas games;ts game_ejs;ngame\r" -respond "Star Trek: " "ts,trek,games\r" -respond "Adventure (2): " "ts,adv448,games\r" -respond "Adventure (1.5): " "ts,adv350,games\r" -expect ":KILL" +midas "games;ts game" "ejs;ngame" { + respond "Star Trek: " "ts,trek,games\r" + respond "Adventure (2): " "ts,adv448,games\r" + respond "Adventure (1.5): " "ts,adv350,games\r" +} respond "*" ":link sys3;ts game,games;ts game\r" respond "*" ":link info;o.info,_info_;\r" # guess -respond "*" ":midas games;ts guess_games;guess\r" -expect ":KILL" +midas "games;ts guess" "games;guess" # ten50 -respond "*" ":midas sys3;ts ten50_mrc; ten50\r" -expect ":KILL" +midas "sys3;ts ten50" "mrc; ten50" # who% -respond "*" ":midas sys1;ts who%_sysen3;who%\r" -expect ":KILL" +midas "sys1;ts who%" "sysen3;who%" respond "*" ":link sys1;ts %,sys1;ts who%\r" # MACRO-10 @@ -615,8 +513,7 @@ loader "cross" decuuo "sys1; ts cross" # Old PALX -respond "*" ":midas 11logo;ts palx_rms;palx 143\r" -expect ":KILL" +midas "11logo;ts palx" "rms;palx 143" # Phil Budne's PALX Game of Life. cwd "budd" @@ -629,34 +526,29 @@ loader "macn11" decuuo "sys3; ts macn11" # Cookie Bear -respond "*" ":midas gls; ts check_gls; check\r" -respond "DEBUGP==" "0\r" -respond "ITEM:" "COOKIE\r" -respond "SUBJECT:" "COOKIE\r" -respond "NAME:" "BEAR\r" -expect ":KILL" +midas "gls; ts check" "gls; check" { + respond "DEBUGP==" "0\r" + respond "ITEM:" "COOKIE\r" + respond "SUBJECT:" "COOKIE\r" + respond "NAME:" "BEAR\r" +} # Cookie Bear (this one actually works) -respond "*" ":midas eak;ts bear_eak;bear\r" -expect ":KILL" +midas "eak;ts bear" "eak;bear" # LOGOUT TIMES cleanup program. -respond "*" ":midas sys3;ts lotcln_sysen1; lotcln\r" -expect ":KILL" +midas "sys3;ts lotcln" "sysen1; lotcln" # itsdev -respond "*" ":midas device;chaos itsdev_bawden;itsdev\r" -expect ":KILL" +midas "device;chaos itsdev" "bawden;itsdev" respond "*" ":link device; tcp syn723, device; chaos itsdev\r" # charfc/charfs -respond "*" ":midas sys1;ts charfc_sysen3;charfc\r" -expect ":KILL" +midas "sys1;ts charfc" "sysen3;charfc" respond "*" ":link sys1;ts charfs,sys1;ts charfc\r" # file -respond "*" ":midas sysbin;_syseng;file\r" -expect ":KILL" +midas "sysbin;" "syseng;file" respond "*" ":job file\r" respond "*" ":load sysbin;\r" respond "*" "purify\033g" @@ -664,17 +556,14 @@ respond "CHAOS FILE" "\r" respond "*" ":kill\r" # filei, fileo -respond "*" ":midas device;chaos filei_eak;file\r" -expect ":KILL" +midas "device;chaos filei" "eak;file" respond "*" ":link device;chaos fileo,device;chaos filei\r" # ifile -respond "*" ":midas device;chaos ifile_syseng;ifile\r" -expect ":KILL" +midas "device;chaos ifile" "syseng;ifile" # NFILE -respond "*" ":midas alan;_bawden;nfile\r" -expect ":KILL" +midas "alan;" "bawden;nfile" respond "*" ":job nfile\r" respond "*" ":load alan;nfile bin\r" respond "*" "purify\033g" @@ -682,51 +571,42 @@ respond "CHAOS NFILE" "\r" respond "*" ":kill\r" # 11sim -respond "*" ":midas /t sys1;ts pdp11_syseng;11sim\r" -respond "end input with ^C" "45p==0\r" -respond "\n" "\003" -expect ":KILL" -respond "*" ":midas sys;ts pdp45_syseng;11sim\r" -expect ":KILL" +midas "sys;ts pdp45" "syseng;11sim" +midast "sys1;ts pdp11" "syseng;11sim" { + respond "end input with ^C" "45p==0\r" + respond "\n" "\003" +} # times -respond "*" ":midas sysbin;times bin_sysnet;times\r" -expect ":KILL" +midas "sysbin;times bin" "sysnet;times" respond "*" ":link sys1;ts ctimes,sysbin;times bin\r" respond "*" ":link sys1;ts times,sysbin;times bin\r" # idle -respond "*" ":midas sys1;ts idle_gren;idle\r" -expect ":KILL" +midas "sys1;ts idle" "gren;idle" # spell -respond "*" ":midas sys1;ts spell_syseng;spell\r" -expect ":KILL" +midas "sys1;ts spell" "syseng;spell" respond "*" ":link sys1;ts espell,sys1;ts spell\r" # jobs -respond "*" ":midas sys2;ts jobs_sysen1;jobs\r" -expect ":KILL" +midas "sys2;ts jobs" "sysen1;jobs" # hsndev -respond "*" ":midas device;jobdev hsname_sysen1;hsndev\r" -expect ":KILL" +midas "device;jobdev hsname" "sysen1;hsndev" respond "*" ":link device;jobdev hs,device;jobdev hsname\r" respond "*" ":link device;jobdev hf,device;jobdev hsname\r" # gunner -respond "*" ":midas device; jobdev shoe_rwk; gunner\r" -expect ":KILL" +midas "device; jobdev shoe" "rwk; gunner" # Trivial Gunner # Make a link from e.g. DRAGON; HOURLY GUNNER to use this program. # It will log its actions to SPACY; GUNNER LOG. -respond "*" ":midas cstacy;_gunner >\r" -expect ":KILL" +midas "cstacy;" "gunner" # pr -respond "*" ":midas sys1;ts pr_sysen1;pr\r" -expect ":KILL" +midas "sys1;ts pr" "sysen1;pr" respond "*" ":link sys1;ts call,sys1;ts pr\r" respond "*" ":link sys1;ts .call,sys1;ts pr\r" respond "*" ":link sys1;ts uuo,sys1;ts pr\r" @@ -744,54 +624,42 @@ respond "*" ":link .info.;its %pi,sysdoc;%pi >\r" respond "*" ":link .info.;its ttyvar,sysdoc;ttyvar >\r" # inline -respond "*" ":midas sys2;ts inline_sysen1;inline\r" -expect ":KILL" +midas "sys2;ts inline" "sysen1;inline" # init -respond "*" ":midas sys3;ts init_sysen2;init\r" -expect ":KILL" +midas "sys3;ts init" "sysen2;init" # scandl -respond "*" ":midas sys3;ts scandl_sysen1;scandl\r" -expect ":KILL" +midas "sys3;ts scandl" "sysen1;scandl" # os -respond "*" ":midas sys1;ts os_sysen2;os\r" -expect ":KILL" +midas "sys1;ts os" "sysen2;os" # sn -respond "*" ":midas sys2;ts sn_sysen3;sn\r" -expect ":KILL" +midas "sys2;ts sn" "sysen3;sn" # ttyswp -respond "*" ":midas sys;ts ttyswp_sysen3;ttyswp\r" -expect ":KILL" +midas "sys;ts ttyswp" "sysen3;ttyswp" # argus -respond "*" ":midas sys2;ts argus_sysen2;argus\r" -expect ":KILL" +midas "sys2;ts argus" "sysen2;argus" # fretty -respond "*" ":midas sys3;ts fretty_sysen2;fretty\r" -expect ":KILL" +midas "sys3;ts fretty" "sysen2;fretty" # bye -respond "*" ":midas sys1;ts bye_sysen1;bye\r" -expect ":KILL" +midas "sys1;ts bye" "sysen1;bye" respond "*" ":link device;chaos bye,sys1;ts bye\r" # yow server -respond "*" ":midas sys3;ts yow_maeda; yow\r" -expect ":KILL" +midas "sys3;ts yow" "maeda; yow" respond "*" ":link device;chaos yow, sys3; ts yow\r" # yow client -respond "*" ":midas sysnet;ts yow_sysen2; yow\r" -expect ":KILL" +midas "sysnet;ts yow" "sysen2; yow" # @ -respond "*" ":midas sysbin;_sysen1;@\r" -expect ":KILL" +midas "sysbin;" "sysen1;@" respond "*" ":job @\r" respond "*" ":load sysbin;\r" respond "*" "purify\033g" @@ -802,46 +670,36 @@ respond "*" ":midas;324 dsk0:.;@ pt_syseng;pt\r" expect ":KILL" # PTY -respond "*" ":midas sys1;ts pty_sysen1;pty\r" -expect ":KILL" +midas "sys1;ts pty" "sysen1;pty" # PRUFD -respond "*" ":midas sys1;ts prufd_sysen2;prufd\r" -expect ":KILL" +midas "sys1;ts prufd" "sysen2;prufd" # udir -respond "*" ":midas sys3;ts nudir_sysen3; nudir\r" -expect ":KILL" +midas "sys3;ts nudir" "sysen3; nudir" # STY -respond "*" ":midas sys1;ts sty_sysen2;sty\r" -expect ":KILL" +midas "sys1;ts sty" "sysen2;sty" # luser -respond "*" ":midas sysbin;luser bin_syseng;luser\r" -expect ":KILL" +midas "sysbin;luser bin" "syseng;luser" respond "*" ":link sys1;ts luser,sysbin;luser bin\r" # ARCCPY -respond "*" ":midas sys2;ts arccpy_sysen2;arccpy\r" -expect ":KILL" +midas "sys2;ts arccpy" "sysen2;arccpy" # CALPRT -respond "*" ":midas sys2;ts calprt_sysen2;calprt\r" -expect ":KILL" +midas "sys2;ts calprt" "sysen2;calprt" # HOSTAB -respond "*" ":midas sys2;ts hostab_sysen1;hostab\r" -expect ":KILL" +midas "sys2;ts hostab" "sysen1;hostab" # HOSTAT -respond "*" ":midas sys2;ts hostat_sysen2;hostat\r" -expect ":KILL" +midas "sys2;ts hostat" "sysen2;hostat" # PROBE respond "*" ":link syseng;its defs,sys;itsdfs >\r" -respond "*" ":midas sysbin;probe bin_bawden;probe\r" -expect ":KILL" +midas "sysbin;probe bin" "bawden;probe" # note: setting debug to 0 and running causes it to pdump itself to # sys;ts probe respond "*" ":job probe\r" @@ -851,87 +709,67 @@ type "\033g" respond "*" ":link sys;ts pb,sys;ts probe\r" # TTY -respond "*" ":midas sys1;ts tty_sysen1;tty\r" -expect ":KILL" +midas "sys1;ts tty" "sysen1;tty" # TTYLINK, just a stub. -respond "*" ":midas sysbin;ttylin bin_bawden; u\r" -expect ":KILL" +midas "sysbin;ttylin bin" "bawden; u" respond "*" ":link device; chaos ttylin, sysbin; ttylin bin\r" # IPLJOB -respond "*" ":midas sys;atsign ipl_sysen2; ipljob\r" -expect ":KILL" +midas "sys;atsign ipl" "sysen2; ipljob" # RIPDEV -respond "*" ":midas device;atsign r.i.p._sysen2;ripdev\r" -expect ":KILL" +midas "device;atsign r.i.p." "sysen2;ripdev" # GMSGS -respond "*" ":midas sys2;ts gmsgs_sysen1;gmsgs\r" -expect ":KILL" +midas "sys2;ts gmsgs" "sysen1;gmsgs" respond "*" ":link sys2;ts expire, sys2;ts gmsgs\r" respond "*" ":link dragon;daily expire,sys2;ts gmsgs\r" respond "*" ":link device;chaos gmsgs,sys2;ts gmsgs\r" # X, Y, Z -respond "*" ":midas sys1;ts x_sysen2;x\r" -expect ":KILL" +midas "sys1;ts x" "sysen2;x" respond "*" ":link sys1;ts y,sys1;ts x\r" respond "*" ":link sys1;ts z,sys1;ts x\r" # LOADP -respond "*" ":midas sys2;ts loadp_sysen1;loadp\r" -expect ":KILL" +midas "sys2;ts loadp" "sysen1;loadp" # ACCLNK -respond "*" ":midas sys2;ts acclnk_sysen2;acclnk\r" -expect ":KILL" +midas "sys2;ts acclnk" "sysen2;acclnk" # MSPLIT -respond "*" ":midas sys2;ts msplit_sysen2;msplit\r" -expect ":KILL" +midas "sys2;ts msplit" "sysen2;msplit" # CHATST -respond "*" ":midas sys2;ts chatst_sysen3;chatst\r" -expect ":KILL" +midas "sys2;ts chatst" "sysen3;chatst" # CHASTA -respond "*" ":midas sys3;ts chasta_chsgtv;chasta\r" -expect ":KILL" +midas "sys3;ts chasta" "chsgtv;chasta" # CHATAB -respond "*" ":midas sys3;ts chatab_sysen1;chatab\r" -expect ":KILL" +midas "sys3;ts chatab" "sysen1;chatab" # STYLOG -respond "*" ":midas sys2;ts stylog_sysen1;stylog\r" -expect ":KILL" +midas "sys2;ts stylog" "sysen1;stylog" # COMIFY -respond "*" ":midas sys2;ts comify_sysen3;comify\r" -expect ":KILL" +midas "sys2;ts comify" "sysen3;comify" # CRC -respond "*" ":midas sys3;ts crc_gren; crc\r" -expect ":KILL" +midas "sys3;ts crc" "gren; crc" # TMPKIL -respond "*" ":midas sys2;ts tmpkil_syseng;tmpkil\r" -expect ":KILL" +midas "sys2;ts tmpkil" "syseng;tmpkil" respond "*" ":link dragon;hourly tmpkil,sys2;ts tmpkil\r" # WHAT -respond "*" ":midas sys2;ts what_syseng;what\r" -expect ":KILL" +midas "sys2;ts what" "syseng;what" # Build KCC support programs: EXECVT, GETSYM, and 20XCSV. -respond "*" ":midas sys2;ts execvt_sysen3;execvt\r" -expect ":KILL" -respond "*" ":midas kcc;ts getsym_getsym\r" -expect ":KILL" -respond "*" ":midas kcc;ts 20xcsv_20xcsv\r" -expect ":KILL" +midas "sys2;ts execvt" "sysen3;execvt" +midas "kcc;ts getsym" "getsym" +midas "kcc;ts 20xcsv" "20xcsv" # Run GETSYM to get all monitor symbols. cwd "kcc" @@ -939,52 +777,41 @@ respond "*" ":getsym\r" expect ":KILL" # UP -respond "*" ":midas sys1;ts up_sysen1;up\r" -expect ":KILL" +midas "sys1;ts up" "sysen1;up" respond "*" ":link sys1;ts down, sys1;ts up\r" # UPTIME -respond "*" ":midas sysbin;uptime bin_sysen1;uptime\r" -expect ":KILL" +midas "sysbin;uptime bin" "sysen1;uptime" respond "*" ":link device;chaos uptime,sysbin;uptime bin\r" # SHUTDN -respond "*" ":midas sys3;ts shutdn_bawden;shutdn\r" -expect ":KILL" +midas "sys3;ts shutdn" "bawden;shutdn" # HEXIFY -respond "*" ":midas sys2;ts hexify_sysen3;hexify\r" -expect ":KILL" +midas "sys2;ts hexify" "sysen3;hexify" # PHOTO -respond "*" ":midas sys2;ts photo_sysen2;photo\r" -expect ":KILL" +midas "sys2;ts photo" "sysen2;photo" # TYPE8 -respond "*" ":midas sys;ts type8_sysen3;type8\r" -expect ":KILL" +midas "sys;ts type8" "sysen3;type8" # USQ -respond "*" ":midas sys2;ts usq_sysen3;usq\r" -expect ":KILL" +midas "sys2;ts usq" "sysen3;usq" respond "*" ":link sys2;ts typesq,sys2;ts usq\r" # SCRAM -respond "*" ":midas sys2;ts scram_rwk;scram\r" -expect ":KILL" +midas "sys2;ts scram" "rwk;scram" # HOST -respond "*" ":midas sys3;ts host_sysnet;host\r" -expect ":KILL" +midas "sys3;ts host" "sysnet;host" # EXPN/VRFY -respond "*" ":midas sys3;ts expn_sysnet;expn\r" -expect ":KILL" +midas "sys3;ts expn" "sysnet;expn" respond "*" ":link sys3;ts vrfy,sys3;ts expn\r" # MUSCOM -respond "*" ":midas sysbin;_syseng; muscom\r" -expect ":KILL" +midas "sysbin;" "syseng; muscom" respond "*" ":link sys1;ts muscom, sysbin; muscom bin\r" # BIG @@ -1043,18 +870,16 @@ respond "MUSCOM" "PDP10;MUSIC WINCH_DECUS;WINCH MUS\r" expect "$^X." # WHOLIN -respond "*" ":midas sys2;ts wholin_sysen2;wholin\r" -expect ":KILL" +midas "sys2;ts wholin" "sysen2;wholin" # LINE -respond "*" ":midas sys2;ts line_rab;line\r" -expect ":KILL" +midas "sys2;ts line" "rab;line" # WHOIML -respond "*" ":midas sysbin;_sysen1; whoiml\r" -respond "FILE:" "whoiml\r" -respond "FILE:" "sys2\r" -expect ":KILL" +midas "sysbin;" "sysen1; whoiml" { + respond "FILE:" "whoiml\r" + respond "FILE:" "sys2\r" +} respond "*" ":job whoiml\r" respond "*" ":load sysbin; whoiml bin\r" respond "*" "start1\033b\033g" @@ -1062,71 +887,56 @@ expect ">>" respond " " ":kill\r" # VTTIME -respond "*" ":midas sys1;ts vttime_rvb;vttime\r" -expect ":KILL" +midas "sys1;ts vttime" "rvb;vttime" # APLCLK -respond "*" ":midas sys3;ts aplclk_music1; vtclk\r" -expect ":KILL" +midas "sys3;ts aplclk" "music1; vtclk" # DEVICE; CHAOS TIME -respond "*" ":midas device;chaos time_syseng;ctimsr\r" -expect ":KILL" +midas "device;chaos time" "syseng;ctimsr" # DEVICE; CHAOS SEND -respond "*" ":midas sysbin;_sysnet;senver\r" -expect ":KILL" +midas "sysbin;" "sysnet;senver" respond "*" ":link device;chaos send,sysbin;senver bin\r" # Alternate DEVICE; CHAOS SEND -respond "*" ":midas sysbin;_sysnet;sends\r" -expect ":KILL" +midas "sysbin;" "sysnet;sends" #respond "*" ":link device;chaos send,sysbin;senver bin\r" # Chaosnet BABEL service. -respond "*" ":midas sysbin; babel_dcp2; babel\r" -expect ":KILL" +midas "sysbin; babel" "dcp2; babel" respond "*" ":link device;chaos babel,sysbin; babel bin\r" # Chaosnet HOSTAB service. -respond "*" ":midas sysbin;_eak; chahtb\r" -expect ":KILL" +midas "sysbin;" "eak; chahtb" respond "*" ":link device; chaos hostab, sysbin; chahtb bin\r" arpanet "rfc121" "sysbin; chahtb bin" # Chaosnet 11LOAD service for booting MINITS. -respond "*" ":midas device; chaos 11load_minits; 11load\r" -expect ":KILL" +midas "device; chaos 11load" "minits; 11load" # OBS -respond "*" ":midas sys;ts obs_bawden;obs\r" -expect ":KILL" +midas "sys;ts obs" "bawden;obs" # FED -respond "*" ":midas sys;ts fed_sysen2;fed\r" -expect ":KILL" +midas "sys;ts fed" "sysen2;fed" # XHOST -respond "*" ":midas sys2;ts xhost_sysen3;xhost\r" -expect ":KILL" +midas "sys2;ts xhost" "sysen3;xhost" # FACTOR -respond "*" ":midas sys1;ts factor_rz;factor\r" -expect ":KILL" +midas "sys1;ts factor" "rz;factor" # balanc -respond "*" ":midas sys3;ts balanc_alan;balanc\r" -expect ":KILL" +midas "sys3;ts balanc" "alan;balanc" respond "*" ":link sys3;ts movdir,sys3;ts balanc\r" # scrmbl and unscr -respond "*" ":midas sys3;ts scrmbl_ejs;scrmbl\r" -expect ":KILL" +midas "sys3;ts scrmbl" "ejs;scrmbl" respond "*" ":link sys3;ts unscr,sys3;ts scrmbl\r" # ZOTZ -respond "*" ":midas ksc; ts zotz_zotz\r" -expect ":KILL" +midas "ksc; ts zotz" "zotz" respond "*" ":job maint\r" # KA10 needs the .OLD files. KL10 and KS10 the newer. @@ -1138,15 +948,13 @@ expect -re {>>|\)} type ":kill\r" # Test one-proceed. -respond "*" ":midas maint;ts 1proc_1proc test\r" -expect ":KILL" +midas "maint;ts 1proc" "1proc test" respond "*" ":maint;1proc\r" expect "SUCCESSFUL" expect ":KILL" # XXFILE -respond "*" ":midas sysbin;xxfile bin_sysen1;xxfile\r" -expect ":KILL" +midas "sysbin;xxfile bin" "sysen1;xxfile" respond "*" ":job xxfile\r" respond "*" ":load sysbin;xxfile bin\r" respond "*" "ttyop1\033b\033g" @@ -1155,8 +963,7 @@ expect ">>" respond " " ":kill\r" # MSEND -respond "*" ":midas sysbin;_sysen2;msend\r" -expect ":KILL" +midas "sysbin;" "sysen2;msend" respond "*" ":job msend\r" respond "*" ":load sysbin;msend bin\r" respond "*" "ttyopn\033b\033g" @@ -1164,42 +971,32 @@ expect ">>" respond " " ":kill\r" # IMLOAD and IMTRAN -respond "*" ":midas sys1; ts imload_syseng; imload\r" -expect ":KILL" +midas "sys1; ts imload" "syseng; imload" respond "*" ":link sys1; ts imtran, sys1; ts imload\r" # UNTRAN -respond "*" ":midas imlac; ts untran_untran\r" -expect ":KILL" +midas "imlac; ts untran" "untran" # IMPRNT -respond "*" ":midas sys1; ts imprnt_syseng; imprnt\r" -expect ":KILL" +midas "sys1; ts imprnt" "syseng; imprnt" respond "*" ":link sys1; ts imprin, sys1; ts imprnt\r" respond "*" ":link sys1; ts ardprn, sys1; ts imprnt\r" respond "*" ":link sys1; ts tekprn, sys1; ts imprnt\r" # IMGOUT -respond "*" ":midas sys3; ts imgout_cbf; imgout\r" -expect ":KILL" +midas "sys3; ts imgout" "cbf; imgout" # LINES -respond "*" ":midas bkph; ts lines_lines\r" -expect ":KILL" +midas "bkph; ts lines" "lines" # Random TV experiments. -respond "*" ":midas bkph; ts bull_bull\r" -expect ":KILL" -respond "*" ":midas bkph; ts grade_grade\r" -expect ":KILL" -respond "*" ":midas bkph; ts circle_loops circle\r" -expect ":KILL" -respond "*" ":midas bkph; ts randy_randy\r" -expect ":KILL" +midas "bkph; ts bull" "bull" +midas "bkph; ts grade" "grade" +midas "bkph; ts circle" "loops circle" +midas "bkph; ts randy" "randy" # BLKLDR, Imlac secondary block loader. -respond "*" ":midas sysbin;_imsrc; blkldr\r" -expect ":KILL" +midas "sysbin;" "imsrc; blkldr" # IMTRAN will put the file IMLAC; IMLAC BLKLDR first in its output. # The BLKLDR file should say !blk ldr! on the first line. respond "*" ":create imlac; imlac blkldr\r" @@ -1232,8 +1029,7 @@ expect ":KILL" respond "*" ":link imlac; .prgm. normal, imlac; ssv22 iml\r" # Assemble SSV4. -respond "*" ":midas imlac; ts assv4_assv4\r" -expect ":KILL" +midas "imlac; ts assv4" "assv4" # SSV4, SSV for PDS-4. respond "*" ":imlac;assv4\r" @@ -1244,19 +1040,19 @@ respond "@" "imlac; ssv4 iml_imlac; ssv4b >\r" respond "@" "\021" # Maze War -respond "*" ":midas /t sysbin;_imsrc; maze\r" -respond "with ^C" "MOUSE==1\r\003" -respond "with ^C" "MOUSE==1\r\003" -expect ":KILL" +midast "sysbin;" "imsrc; maze" { + respond "with ^C" "MOUSE==1\r\003" + respond "with ^C" "MOUSE==1\r\003" +} respond "*" ":imtran\r" respond "@" "imlac; m iml_sysbin; maze bin\r" respond "@" "\021" -respond "*" ":midas sysbin;_klh; mazser\r" -respond "NPTCL=" "1\r" -respond "DEBUG=" "1\r" -respond "STATS=" "1\r" -expect ":KILL" +midas "sysbin;" "klh; mazser" { + respond "NPTCL=" "1\r" + respond "DEBUG=" "1\r" + respond "STATS=" "1\r" +} respond "*" ":job maze\r" respond "*" ":load sysbin; mazser bin\r" respond "*" ":start init\r" @@ -1265,31 +1061,29 @@ respond ":PDUMP" "games; ts maze\r" respond "*" ":kill\r" # SWAR -respond "*" ":midas imlac;_imsrc; swar\r" -respond "INFINITE FUEL AND BULLETS VERSION?" "N\r" -expect ":KILL" +midas "imlac;" "imsrc; swar" { + respond "INFINITE FUEL AND BULLETS VERSION?" "N\r" +} respond "*" ":imtran\r" respond "@" "imlac; swar iml_imlac; swar bin\r" respond "@" "\021" # PONG -respond "*" ":midas imlac;_imsrc; pong\r" -expect ":KILL" +midas "imlac;" "imsrc; pong" respond "*" ":imtran\r" respond "@" "imlac; pong iml_imlac; pong bin\r" respond "@" "\021" # CRASH, PDS-4 version -respond "*" ":midas imlac;_imsrc; crash\r" -expect ":KILL" +midas "imlac;" "imsrc; crash" respond "*" ":imtran\r" respond "@" "imlac; crash4 iml_imlac; crash bin\r" respond "@" "\021" # PDS-1 version -respond "*" ":midas /t imlac;_imsrc; crash\r" -respond "with ^C" "PDS4==0\r\003" -respond "with ^C" "PDS4==0\r\003" -expect ":KILL" +midast "imlac;" "imsrc; crash" { + respond "with ^C" "PDS4==0\r\003" + respond "with ^C" "PDS4==0\r\003" +} respond "*" ":imtran\r" respond "@" "imlac; crash iml_imlac; crash bin\r" respond "@" "\021" @@ -1306,20 +1100,18 @@ respond "*" ":kill\r" # CLIB cwd "clib" -respond "*" ":midas c10cor cmid\r" -respond "*" ":midas c10fo cmid\r" -respond "*" ":midas c10int cmid\r" -respond "*" ":midas c10mio cmid\r" -respond "*" ":midas c10sys cmid\r" -respond "*" ":midas alloc cmid\r" -respond "*" ":midas blt cmid\r" -respond "*" ":midas /t cfloat cmid\r" -clib_switches -respond "*" ":midas random cmid\r" -respond "*" ":midas string cmid\r" -respond "*" ":midas uuoh cmid\r" -respond "*" ":midas /t c10run cmid\r" -clib_switches +midas "clib;" "c10cor cmid" +midas "clib;" "c10fo cmid" +midas "clib;" "c10int cmid" +midas "clib;" "c10mio cmid" +midas "clib;" "c10sys cmid" +midas "clib;" "alloc cmid" +midas "clib;" "blt cmid" +midast "clib;" "cfloat cmid" clib_switches +midas "clib;" "random cmid" +midas "clib;" "string cmid" +midas "clib;" "uuoh cmid" +midast "clib;" "c10run cmid" clib_switches respond "*" ":cc c10exp.c\r" respond "*" ":cc c10fd.c\r" respond "*" ":cc c10fil.c\r" @@ -1426,8 +1218,7 @@ respond "*" ":cc tv.>\r" expect ":KILL" # TJ6 -respond "*" ":midas sysbin;_tj6;tj6\r" -expect ":KILL" +midas "sysbin;" "tj6;tj6" respond "*" ":job tj6\r" respond "*" ":load sysbin; tj6 bin\r" respond "*" "purify\033g" @@ -1436,8 +1227,7 @@ respond "*" ":kill\r" respond "*" ":link sys; ts tj6, sys; ts ntj6\r" # Old TJ6. -respond "*" ":midas sys2; ts otj6_tj6; otj6\r" -expect ":KILL" +midas "sys2; ts otj6" "tj6; otj6" # Alan Snyder's R typesetting language. cwd "r" @@ -1499,13 +1289,11 @@ build_c_program "cprog/rstat" "cprog/ts.rstat" # Versatec spooler # This has some harmless unresolved symbols (FOO, XE4). -respond "*" ":midas sys3;ts versa_dcp; versa\r" -expect ":KILL" +midas "sys3;ts versa" "dcp; versa" # respond "*" ":link channa; rakash v80spl,sys3; ts versa\r" # SCAN -respond "*" ":midas sysbin;_sysen1; scan\r" -expect ":KILL" +midas "sysbin;" "sysen1; scan" respond "*" ":job scan\r" respond "*" ":load sysbin; scan bin\r" respond "*" "purify\033g" @@ -1513,20 +1301,16 @@ respond "*" ":pdump sys3; ts scan\r" respond "*" ":kill\r" # DDT subroutines -respond "*" ":midas sys3;ts cmd_dcp; cmd\r" -expect ":KILL" +midas "sys3;ts cmd" "dcp; cmd" # XGP and GLP -respond "*" ":midas sysbin;xgp bin_sysen2;xqueue\r" -expect ":KILL" +midas "sysbin;xgp bin" "sysen2;xqueue" respond "*" ":job xgp\r" respond "*" ":load sysbin;xgp bin\r" respond "*" "debug/0\r" type ":pdump sys;ts xgp\r" respond "*" ":kill\r" -respond "*" ":midas /t sysbin;glp bin_sysen2;xqueue\r" -respond "with ^C" "GLP==1\r\003" -expect ":KILL" +midast "sysbin;glp bin" "sysen2;xqueue" { respond "with ^C" "GLP==1\r\003" } respond "*" ":job glp\r" respond "*" ":load sysbin;glp bin\r" respond "*" "debug/0\r" @@ -1534,15 +1318,13 @@ type ":pdump sys2;ts glp\r" respond "*" ":kill\r" # XGPDEV and GLPDEV -respond "*" ":midas device;jobdev xgp_sysen2;xgpdev\r" -expect ":KILL" -respond "*" ":midas /t device;jobdev glp_sysen2;xgpdev\r" -respond "with ^C" "GLP==1\r\003" -expect ":KILL" +midas "device;jobdev xgp" "sysen2;xgpdev" +midast "device;jobdev glp" "sysen2;xgpdev" { + respond "with ^C" "GLP==1\r\003" +} # GTLOAD, load programs into GT40. -respond "*" ":midas sys1; ts gtload_syseng; gtload\r" -expect ":KILL" +midas "sys1; ts gtload" "syseng; gtload" # RUG, PDP-11 debugger. cwd "pdp11" @@ -1603,12 +1385,10 @@ palx "rug;" "ar" { } # PUNCH, punch out paper tapes in the Logo RUG format. -respond "*" ":midas rug; ts punch_punch\r" -expect ":KILL" +midas "rug; ts punch" "punch" # LODER, PDP-11 file transfer. -respond "*" ":midas rug;_loder\r" -expect ":KILL" +midas "rug;" "loder" respond "*" ":link sys; ts nloder, rug; loder bin\r" respond "*" ":link sys1; ts mloder, rug; loder bin\r" @@ -1664,15 +1444,15 @@ loader "logo" decuuo "bbn; ts logo" # CLOGO -respond "*" ":midas sys; ts clogo_rjl; logo\r" -respond "STANDARD=" "0\r" -respond "TBOX=" "0\r" -respond "TURTLE=" "1\r" -respond "PHYSICS=" "0\r" -respond "LFLAG=" "0\r" -respond "OLDMUSIC=" "0\r" -respond "DFLAG=" "1\r" -expect ":KILL" +midas "sys; ts clogo" "rjl; logo" { + respond "STANDARD=" "0\r" + respond "TBOX=" "0\r" + respond "TURTLE=" "1\r" + respond "PHYSICS=" "0\r" + respond "LFLAG=" "0\r" + respond "OLDMUSIC=" "0\r" + respond "DFLAG=" "1\r" +} # NVMIDS, Nova assembler cwd "nova" @@ -1734,49 +1514,40 @@ respond "*" "\003" respond "*" ":kill\r" # TENTH, toy Forth. -respond "*" ":midas /t aap; ts tenth_tenth\r" -respond "end input with ^C" "TS==1\r" -respond "\n" "KS==0\r" -respond "\n" "\003" -expect ":KILL" +midast "aap; ts tenth" "tenth" { + respond "end input with ^C" "TS==1\r" + respond "\n" "KS==0\r" + respond "\n" "\003" +} # GEORGE -respond "*" ":midas sys3;ts george_syseng;george\r" -expect ":KILL" +midas "sys3;ts george" "syseng;george" # MONIT # The ERROR lines printed during assembly are locations of unlikely # runtime errors (e.g. not being able to open TTY:). -respond "*" ":midas sys;ts monit_dmcg;monit\r" -expect ":KILL" +midas "sys;ts monit" "dmcg;monit" # BANNER -respond "*" ":midas sys3;ts banner_sysen2; banner\r" -expect ":KILL" +midas "sys3;ts banner" "sysen2; banner" # IBMASC -respond "*" ":midas sys3;ts ibmasc_sysen1;ibmasc\r" -expect ":KILL" +midas "sys3;ts ibmasc" "sysen1;ibmasc" # NEWDEC -respond "*" ":midas sys3;ts newdec_sysen1;newdec\r" -expect ":KILL" +midas "sys3;ts newdec" "sysen1;newdec" # TBMOFF -respond "*" ":midas sys; ts tbmoff_cstacy; tbmoff\r" -expect ":KILL" +midas "sys; ts tbmoff" "cstacy; tbmoff" # UPTINI -respond "*" ":midas ejs;ts uptini_uptini\r" -expect ":KILL" +midas "ejs;ts uptini" "uptini" # CHATER -respond "*" ":midas sys1;ts chater_gren;coms\r" -expect ":KILL" +midas "sys1;ts chater" "gren;coms" # STINK 121T, used to build Muddle and some old programs -respond "*" ":midas mudsys;ts stink_sysen2;stink 121t\r" -expect ":KILL" +midas "mudsys;ts stink" "sysen2;stink 121t" # Move hello world xfiles into an archive. cwd "hello" diff --git a/build/muddle.tcl b/build/muddle.tcl index e4482ec6e..ee8b9648f 100644 --- a/build/muddle.tcl +++ b/build/muddle.tcl @@ -20,15 +20,10 @@ build_muddle "muds54" "54" build_muddle "mudsys" "56" # Generate SAV FILE and FIXUP FILE for Muddle pure code library -respond "*" ":midas mudsys; ts mksvfl_mudsys;mksvfl\r" -expect ":KILL" +midas "mudsys; ts mksvfl" "mudsys;mksvfl" # Run mksvfl to create pure library for MDL 54 for the purposes of the 500-point zork -respond "*" ":mudsys;mksvfl\r" -expect ":KILL" - -respond "*" ":midas sys3; ts mudinq_sysen2; mudinq\r" -expect ":KILL" +midas "sys3; ts mudinq" "sysen2; mudinq" respond "*" ":link sys3; ts purge, sys3; ts mudinq\r" respond "*" ":link sys3; ts makscr, sys3; ts mudinq\r" respond "*" ":link sys3; ts status, sys3; ts mudinq\r" @@ -37,51 +32,49 @@ respond "*" ":link sys3; ts whomud, sys3; ts mudinq\r" respond "*" ":link sys3; ts mdl,mudsav; ts mud56\r" respond "*" ":link sys3; ts muddle,mudsav; ts mud56\r" -respond "*" ":midas sys3; ts mudcom_sysen3; mudcom\r" -respond "(Y OR N)" "Y\r" -expect ":KILL" +midas "sys3; ts mudcom" "sysen3; mudcom" { + respond "(Y OR N)" "Y\r" +} respond "*" ":link sys3; ts mudchk, sys3; ts mudcom\r" respond "*" ":link sys3; ts mudlst, sys3; ts mudcom\r" respond "*" ":link sys3; ts mudfnd, sys3; ts mudcom\r" -respond "*" ":midas sys3; ts combat_sysen3; combat\r" -respond "(Y OR N)" "Y\r" -expect ":KILL" +midas "sys3; ts combat" "sysen3; combat" { + respond "(Y OR N)" "Y\r" +} -respond "*" ":midas sys3; ts pick_sysen2; pick\r" -expect ":KILL" +midas "sys3; ts pick" "sysen2; pick" respond "*" ":link sys1;ts mud55,mudsav;ts mud55\r" #Build Muddle PCOMP compiler. -respond "*" ":midas sys1;ts pcomp_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "pcomp\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "55save\r" -respond "Type Sname of Save File:" "mudsav\r" -expect ":KILL" +midas "sys1;ts pcomp" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "pcomp\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "55save\r" + respond "Type Sname of Save File:" "mudsav\r" +} #Build Muddle ASSEM assembler. -respond "*" ":midas sys1;ts assem_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "assem\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "55save\r" -respond "Type Sname of Save File:" "mudsav\r" -expect ":KILL" +midas "sys1;ts assem" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "assem\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "55save\r" + respond "Type Sname of Save File:" "mudsav\r" +} mkdir "mbprog" respond "*" ":assem \"mprog2;lsrtns >\" \"mbprog;lsrtns nbin\"\r" expect ":KILL" -respond "*" ":midas mudsys;ts dem_mudsys;itsdem\r" -expect ":KILL" +midas "mudsys;ts dem" "mudsys;itsdem" # Build Muddle ECOMP compiler (PCOMP isn't good enough) -respond "*" ":midas sys1;ts ecomp_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "ecomp\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "55save\r" -respond "Type Sname of Save File:" "mudsav\r" -expect ":KILL" +midas "sys1;ts ecomp" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "ecomp\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "55save\r" + respond "Type Sname of Save File:" "mudsav\r" +} # Build DM Daemons (COMBAT ZONE, BATCHN). GUNNER is already built in dm.tcl @@ -103,12 +96,12 @@ type "\i\r>\033" respond "#FALSE ()" "\033" expect ":KILL" -respond "*" ":midas sys;atsign zone_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "zone\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "55save\r" -respond "Type Sname of Save File:" "mudsav\r" -expect ":KILL" +midas "sys;atsign zone" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "zone\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "55save\r" + respond "Type Sname of Save File:" "mudsav\r" +} # Build BATCHN daemon @@ -136,12 +129,12 @@ respond "\"DONE\"" "\033" respond "TO CREATE SAVE FILE\"" "\033" expect ":KILL" -respond "*" ":midas sys;atsign batchn_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "batchn\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "save\r" -respond "Type Sname of Save File:" ".batch\r" -expect ":KILL" +midas "sys;atsign batchn" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "batchn\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "save\r" + respond "Type Sname of Save File:" ".batch\r" +} # Now build BATCH user program (interfaces with BATCHN daemon) @@ -161,9 +154,9 @@ respond "\"DONE\"" "\033" respond "\"SAVED\"" "\033" expect ":KILL" -respond "*" ":midas sys3;ts batch_mudsys;subsys maker\r" -respond "Type in Subsystem (Save File) name:" "nbatch\r" -respond "Type Y if you wish to have Save File directly restored:" "y\r" -respond "Type Second Name of Save File:" "55save\r" -respond "Type Sname of Save File:" ".batch\r" -expect ":KILL" +midas "sys3;ts batch" "mudsys;subsys maker" { + respond "Type in Subsystem (Save File) name:" "nbatch\r" + respond "Type Y if you wish to have Save File directly restored:" "y\r" + respond "Type Second Name of Save File:" "55save\r" + respond "Type Sname of Save File:" ".batch\r" +} diff --git a/build/sail.tcl b/build/sail.tcl index 990a22362..3974491bf 100644 --- a/build/sail.tcl +++ b/build/sail.tcl @@ -119,5 +119,4 @@ respond "GO ON." "Y\r" respond "WL BIN" "\r" respond "*" ":kill\r" -respond "*" ":midas datdrw;_draw; scnv\r" -expect ":KILL" +midas "datdrw;" "draw; scnv" diff --git a/build/zork.tcl b/build/zork.tcl index bc26fc391..7440c0319 100644 --- a/build/zork.tcl +++ b/build/zork.tcl @@ -1,12 +1,10 @@ log_progress "ENTERING BUILD SCRIPT: ZORK" # Old Zork startup -respond "*" ":midas sys2; ts ozork_taa; zork\r" -expect ":KILL" +midas "sys2; ts ozork" "taa; zork" # New Zork startup -respond "*" ":midas sys; ts rbye_cfs; zork\r" -expect ":KILL" +midas "sys; ts rbye" "cfs; zork" respond "*" ":link sys1;ts zork, sys; ts rbye\r" mkdir "cfs" From 4d7716d9d0cb6ba21fd431f442d1f21e4bddccee Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Sun, 9 Feb 2025 10:33:37 +0100 Subject: [PATCH 2/3] Add TCL procedures for running MIDAS 73, 77, or 324. --- build/build.tcl | 13 ++++++ build/ka10/processor.tcl | 89 ++++++++++++++-------------------------- build/kl10/processor.tcl | 2 +- build/misc.tcl | 47 ++++++--------------- 4 files changed, 57 insertions(+), 94 deletions(-) diff --git a/build/build.tcl b/build/build.tcl index 60ba00497..0912a2ae6 100644 --- a/build/build.tcl +++ b/build/build.tcl @@ -183,6 +183,19 @@ proc midast {target source {action ""}} { midas "/t $target" $source $action } +proc omidas {target source {action ""}} { + respond "*" ":midas;324 ${target}_$source\r" + eval $action + expect ":KILL" +} + +proc oomidas {version target source {action ""}} { + respond "*" ":midas;$version\r" + respond "MIDAS.$version" "${target}_$source\r" + eval $action + expect ":KILL" +} + proc macro10 {target sources} { respond "*" ":macro\r" respond "*" "$target=$sources\r" diff --git a/build/ka10/processor.tcl b/build/ka10/processor.tcl index 4c24d44c5..83a327d98 100644 --- a/build/ka10/processor.tcl +++ b/build/ka10/processor.tcl @@ -3,21 +3,15 @@ log_progress "ENTERING BUILD SCRIPT: PROCESSOR" # Programs particular to the KA10 processor. # macdmp, PDP-10 hardware read in, with 340 support. -respond "*" ":midas;77\r" -respond "MIDAS.77" ".;MACDMP RIM10_SYSENG; MACDMP MOBY1\r" -expect ":KILL" +oomidas 77 ".;MACDMP RIM10" "SYSENG; MACDMP MOBY1" # macdmp, PDP-6 read in hack. -respond "*" ":midas;77\r" -respond "MIDAS.77" ".;MACDMP RIM2_SYSENG; MACDMP 6U32\r" -expect ":KILL" +oomidas 77 ".;MACDMP RIM2" "SYSENG; MACDMP 6U32" # system gen -respond "*" ":midas;324 dsk0:.;@ sysgen_syseng; system gen\r" -expect ":KILL" +omidas "dsk0:.;@ sysgen" "syseng; system gen" # mark -respond "*" ":midas;324 dsk0:.;@ mark_syseng; mark\r" -expect ":KILL" +omidas "dsk0:.;@ mark" "syseng; mark" # utnam midas "sys3; ts utnam" "lars; utnam" @@ -48,12 +42,9 @@ palx "cons;" "lmcons;ccons" # Old Spacewar cwd "spcwar" -respond "*" ":midas;324 spcwar; war\r" -expect ":KILL" +omidas "spcwar;" "war" midas "spcwar;" "stars" -expect ":KILL" -respond "*" ":midas;324 spcwar; math\r" -expect ":KILL" +omidas "spcwar;" "math" respond "*" ":stink\r" respond "\n" "mspcwar; war\033l\033\033" respond "\n" "mstars\033l\033\033" @@ -64,14 +55,14 @@ respond " " "dsk0:.;@ war\r" respond "*" ":kill\r" # Spacewar, standalone -respond "*" ":midas;324 dsk0:.;@ spcwar_spcwar; spcwar\r" -respond "ITS version" "NO\r" -respond "interrupt" "NO\r" -respond "ships" "\r" -respond "designs" "\r" -respond "suns" "\r" -respond "recording" "\r" -expect ":KILL" +omidas "dsk0:.;@ spcwar" "spcwar; spcwar" { + respond "ITS version" "NO\r" + respond "interrupt" "NO\r" + respond "ships" "\r" + respond "designs" "\r" + respond "suns" "\r" + respond "recording" "\r" +} # Spacewar, timesharing midas "games;ts spcwar" "spcwar; spcwar" { @@ -85,9 +76,9 @@ midas "games;ts spcwar" "spcwar; spcwar" { midas "games;ts dazdrt" "klh; dazdrt" { respond "Run under ITS?" "YES\r" } -respond "*" ":midas;324 dsk0:.;@ dazdrt_klh; dazdrt\r" -respond "Run under ITS?" "NO\r" -expect ":KILL" +omidas "dsk0:.;@ dazdrt" "klh; dazdrt" { + respond "Run under ITS?" "NO\r" +} # Knight TV Spacewar midas "gjd;" "swr data" @@ -140,19 +131,16 @@ midas "sys2;ts munch" "sysen2;munch" midas "dsk0:.;@ titler" "mb; titler" # MLIFE -respond "*" ":midas;324 games;ts mlife_rwg;mlife\r" -expect ":KILL" -respond "*" ":midas;324 /t dsk0:.;@ mlife_rwg;mlife\r" -respond "with ^C" "TS==0\r\003" -expect ":KILL" +omidas "games;ts mlife" "rwg;mlife" +omidas "/t dsk0:.;@ mlife" "rwg;mlife" { + respond "with ^C" "TS==0\r\003" +} # MLIFE -respond "*" ":midas;324 dsk0:.;@ pornis_rwg; pornis\r" -expect ":KILL" +omidas "dsk0:.;@ pornis" "rwg; pornis" # 3406 -respond "*" ":midas;324 dsk0:.;@ 3406_stan.k; 3406\r" -expect ":KILL" +midas "dsk0:.;@ 3406" "stan.k; 3406" # 340D midas "stan.k;mod11 bin" "340d" @@ -176,12 +164,8 @@ respond "*" ":link dsk0: .; @ lorenz, lars; ts lorenz\r" midas "lars; ts tvbrot" "tvbrot" # MUSRUN -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_SYSENG; MUSRUN\r" -expect ":KILL" -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_SYSENG; H10D\r" -expect ":KILL" +oomidas 77 "SYSBIN;" "SYSENG; MUSRUN" +oomidas 77 "SYSBIN;" "SYSENG; H10D" respond "*" ":stink\r" respond "\n" "msysbin; musrun\033l\033\033" respond "\n" "mh10d\033l\033\033" @@ -191,8 +175,7 @@ respond " " "sys1; ts musrun\r" respond "*" ":kill\r" # KA10 maintenance -respond "*" ":midas;324 sys;ts 10run_sysen2; 10run\r" -expect ":KILL" +midas "sys;ts 10run" "sysen2; 10run" # Display all Type 342 characters. midas "dsk0:maint;" "tst342" @@ -239,22 +222,10 @@ expect ":KILL" # NTS TECO-6 cwd ".teco." -respond "*" ":midas;73\r" -expect "MIDAS" -respond "\n" "TECODM REL_TECO DUMMY\r" -expect ":KILL" -respond "*" ":midas;73\r" -expect "MIDAS" -respond "\n" "MACTAP REL_SYSENG;MACTAP F68\r" -expect ":KILL" -respond "*" ":midas;73\r" -expect "MIDAS" -respond "\n" "LPT REL_SYSENG;LPT 11\r" -expect ":KILL" -respond "*" ":midas;73\r" -expect "MIDAS" -respond "\n" "TECO6 REL_.TECO.;TECO6 256K\r" -expect ":KILL" +oomidas 73 "TECODM REL" "TECO DUMMY" +oomidas 73 "MACTAP REL" "SYSENG;MACTAP F68" +oomidas 73 "LPT REL" "SYSENG;LPT 11" +oomidas 73 "TECO6 REL" ".TECO.;TECO6 256K" respond "*" ":mudsys;stink\r" respond "\n" "MTECODM\033L MLPT\033L MMACTAP\033L MTECO6\033L D\033\033" respond "\n" "\033YDSK0:.;@ TECO\r" diff --git a/build/kl10/processor.tcl b/build/kl10/processor.tcl index 61b5610d4..78a7bf12c 100644 --- a/build/kl10/processor.tcl +++ b/build/kl10/processor.tcl @@ -123,7 +123,7 @@ move_to_klfe ".temp.; ioelev a11" palx "sysbin;" "system;ioelev" { respond "MACHINE NAME =" "MC\r" } # 11BOOT -midas;"324 sys3;ts 11boot" "syseng;11boot" +omidas "sys3;ts 11boot" "syseng;11boot" # Note, must be run with symbols loaded. # Takes IOELEV BIN and KLRUG BIN from the current directory. cwd "sysbin" diff --git a/build/misc.tcl b/build/misc.tcl index 82a4472f5..39f70c0eb 100644 --- a/build/misc.tcl +++ b/build/misc.tcl @@ -25,21 +25,16 @@ respond "*" ":pdump midas; ts 77\r" respond "*" ":kill\r" # MIDAS 73, bootstrapped from 77. -respond "*" ":midas;77\r" -respond "MIDAS.77" "MIDAS; TS 73_MIDAS; MIDAS 73\r" -respond "*" ":midas;73\r" -respond "MIDAS.73" "MIDAS; TS 73_MIDAS; MIDAS 73\r" +oomidas 77 "MIDAS; TS 73" "MIDAS; MIDAS 73" +oomidas 73 "MIDAS; TS 73" "MIDAS; MIDAS 73" respond "*" ":xfile midas; patch 73\r" expect ":kill" # ITS 138 -respond "*" ":midas;73\r" -respond "MIDAS.73" ".;ITS 138BIN_SYSENG;ITS 138\r" -expect ":KILL" +oomidas 73 ".;ITS 138BIN" "SYSENG;ITS 138" # MACTAP -respond "*" ":midas;324 sysbin;_sysen2; mactap\r" -expect ":KILL" +omidas "sysbin;" "sysen2; mactap" # TECO6 midas "sysbin;teco 335bin" ".teco.; teco 335" @@ -666,8 +661,7 @@ respond "*" "purify\033g" respond "TS @" "\r" respond "*" ":kill\r" -respond "*" ":midas;324 dsk0:.;@ pt_syseng;pt\r" -expect ":KILL" +omidas "dsk0:.;@ pt" "syseng;pt" # PTY midas "sys1;ts pty" "sysen1;pty" @@ -815,21 +809,11 @@ midas "sysbin;" "syseng; muscom" respond "*" ":link sys1;ts muscom, sysbin; muscom bin\r" # BIG -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_SYSENG; BIG\r" -expect ":KILL" -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_PRS; SUDSUD\r" -expect ":KILL" -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_PRS; PLOT\r" -expect ":KILL" -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_PRS; FIGS\r" -expect ":KILL" -respond "*" ":midas;77\r" -respond "MIDAS.77" "SYSBIN;_PRS; SMOLDM\r" -expect ":KILL" +oomidas 77 "SYSBIN;" "SYSENG; BIG" +oomidas 77 "SYSBIN;" "PRS; SUDSUD" +oomidas 77 "SYSBIN;" "PRS; PLOT" +oomidas 77 "SYSBIN;" "PRS; FIGS" +oomidas 77 "SYSBIN;" "PRS; SMOLDM" respond "*" ":stink\r" respond "\n" "msysbin;sudsud\033l\033\033" respond "\n" "mbig\033l\033\033" @@ -1020,8 +1004,7 @@ respond "@" "\021" expect ":KILL" # SSV 22, Imlac scroll saver -respond "*" ":midas;324 sysbin;_imsrc; ssv22\r" -expect ":KILL" +omidas "sysbin;" "imsrc; ssv22" respond "*" ":imtran\r" respond "@" "imlac; ssv22 iml_sysbin; ssv22 bin\r" respond "@" "\021" @@ -1434,8 +1417,7 @@ cwd "gld" palx "gld;" "its" # TORTIS -respond "*" ":midas;324 radia;_tortis\r" -expect ":KILL" +omidas "radia;" "tortis" # BBN Logo cwd "bbn" @@ -1456,10 +1438,7 @@ midas "sys; ts clogo" "rjl; logo" { # NVMIDS, Nova assembler cwd "nova" -respond "*" ":midas;73\r" -expect "MIDAS" -respond "\n" "TS NVMIDS_NVMIDS >\r" -expect ":KILL" +oomidas 73 "TS NVMIDS" "NVMIDS >" # Nova programs. respond "*" ":nvmids\r" From 5a42d3aa9afc7f96436d64bb3a489e0d7eebce9e Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Tue, 11 Feb 2025 13:42:29 +0100 Subject: [PATCH 3/3] Drop Cirrus CI. --- .cirrus.yml | 19 ------------------- 1 file changed, 19 deletions(-) delete mode 100644 .cirrus.yml diff --git a/.cirrus.yml b/.cirrus.yml deleted file mode 100644 index f2ad56ed9..000000000 --- a/.cirrus.yml +++ /dev/null @@ -1,19 +0,0 @@ -env: - CIRRUS_CLONE_DEPTH: 1 - ARCH: amd64 - BASICS: yes - CONFFLAGS_USR: -DKLH10_CTYIO_INT=0 - -freebsd_instance: - image_family: freebsd-14-0 - -task: - env: - matrix: - # EMULATOR: simh - # EMULATOR: klh10 - - EMULATOR: pdp10-ka - NODUMP: true - # EMULATOR: pdp10-kl - install_script: sh -ex build/dependencies.sh install_freebsd - script: gmake its EMULATOR=$EMULATOR