mirror of
https://github.com/PDP-10/its.git
synced 2026-01-24 11:22:36 +00:00
162 lines
3.4 KiB
Tcl
162 lines
3.4 KiB
Tcl
proc start_dskdmp_its {} {
|
|
start_dskdmp build/pdp10-kl/boot
|
|
|
|
respond "DSKDMP" "ddt\r"
|
|
respond "\n" "\033l"
|
|
respond " " "its bin\r"
|
|
respond "\n" "\033\033l"
|
|
respond " " "salv bin\r"
|
|
respond "\n" "\033y"
|
|
respond " " "its\r"
|
|
patch_its_and_go
|
|
}
|
|
|
|
proc mark_packs {} {
|
|
respond "\n" "mark\033g"
|
|
respond "UNIT #" "0"
|
|
respond "#0?" "y"
|
|
respond "NO =" "0\r"
|
|
respond "ALLOC =" "3000\r"
|
|
respond "PACK ID =" "0\r"
|
|
}
|
|
|
|
proc prepare_frontend {} {
|
|
}
|
|
|
|
proc frontend_bootstrap {} {
|
|
}
|
|
|
|
proc its_switches {} {
|
|
respond "MACHINE NAME =" "KL\r"
|
|
}
|
|
|
|
proc make_ntsddt {} {
|
|
# KL10 NTSDDT.
|
|
respond "*" ":midas dsk0:.;@ ddt_system;ddt\r"
|
|
respond "cpusw=" "0\r"
|
|
respond "ndsk=" "1\r"
|
|
respond "dsksw=" "3\r"
|
|
respond "1PRSW=" "0\r"
|
|
expect ":KILL"
|
|
}
|
|
|
|
proc make_salv {} {
|
|
respond "*" ":midas dsk0:.;_system;salv\r"
|
|
respond "time-sharing?" "n\r"
|
|
respond "machine?" "KL\r"
|
|
expect ":KILL"
|
|
}
|
|
|
|
proc make_dskdmp {} {
|
|
respond "*" ":midas dsk0:.;@ dskdmp_system;dskdmp\r"
|
|
expect "Configuration"
|
|
respond "?" "ASK\r"
|
|
respond "HRIFLG=" "N\r"
|
|
respond "BOOTSW=" "N\r"
|
|
respond "RP06P=" "N\r"
|
|
respond "RP07P=" "N\r"
|
|
respond "RM03P=" "N\r"
|
|
respond "RM80P=" "N\r"
|
|
respond "RH10P=" "Y\r"
|
|
respond "NUDSL=" "500.\r"
|
|
respond "KS10P=" "N\r"
|
|
respond "KL10P=" "N\r"
|
|
expect ":KILL"
|
|
}
|
|
|
|
proc dump_switches {} {
|
|
respond "WHICH MACHINE?" "KL\r"
|
|
}
|
|
|
|
proc peek_switches {} {
|
|
respond "with ^C" "\003"
|
|
}
|
|
|
|
proc dump_nits {} {
|
|
# Run the new DSKDMP from disk here, to check that it works.
|
|
respond "DSKDMP" "dskdmp\r"
|
|
|
|
respond "DSKDMP" "l\033ddt\r"
|
|
|
|
# Dump an executable @ SALV.
|
|
respond "\n" "t\033salv bin\r"
|
|
respond "\n" "\033y"
|
|
respond " " "salv\r"
|
|
|
|
# Now dump the new ITS.
|
|
respond "\n" "\033l"
|
|
respond " " "its bin\r"
|
|
respond "\n" "\033\033l"
|
|
respond " " "salv bin\r"
|
|
respond "\n" "\033y"
|
|
respond " " "nits\r"
|
|
}
|
|
|
|
proc magdmp_switches {} {
|
|
respond "KL10P=" "n\r"
|
|
respond "TM10BP=" "y\r"
|
|
respond "340P=" "n\r"
|
|
}
|
|
|
|
proc bootable_tapes {} {
|
|
global emulator_escape
|
|
global out
|
|
|
|
respond "*" ":midas .;magdmp bin.kl_syseng;magdmp\r"
|
|
respond "PTRHRI=" "n\r"
|
|
magdmp_switches
|
|
expect ":KILL"
|
|
|
|
respond "*" $emulator_escape
|
|
create_tape "$out/magdmp.tape"
|
|
|
|
type ":magfrm\r"
|
|
respond "?" "KL\r"
|
|
respond "?" "Y"
|
|
respond "_" "W"
|
|
respond "FROM" ".; @ DDT\r"
|
|
respond "FILE" "@ DDT\r"
|
|
respond "_" "W"
|
|
respond "FROM" ".; @ SALV\r"
|
|
respond "FILE" "@ SALV\r"
|
|
respond "_" "W"
|
|
respond "FROM" ".; @ DSKDMP\r"
|
|
respond "FILE" "@ DSKDMP\r"
|
|
respond "_" "Q"
|
|
expect ":KILL"
|
|
}
|
|
|
|
proc update_microcode {} {
|
|
}
|
|
|
|
proc clib_switches {} {
|
|
### UFA or FIX?!? Probably the latter.
|
|
respond "with ^C" "\003"
|
|
}
|
|
|
|
proc patch_lisp {} {
|
|
respond "*" ":job lisp\r"
|
|
respond "*" ":load .; @ lisp\r"
|
|
respond "*" "33777//\031"
|
|
respond "*" "\033q\033,777777\033\033z"
|
|
respond "*" "pitele+13/"
|
|
respond "FSC" "push p,b\n"
|
|
respond "FSC" "jrst patch\r"
|
|
respond "\n" "patch/"
|
|
respond "0" "move b,echocc\n"
|
|
respond "0" "add b,ticc\n"
|
|
respond "0" "dpb b,.+3\n"
|
|
respond "0" "pop p,b\n"
|
|
respond "0" "jrst pitele+15\n"
|
|
respond "0" "331000,,a\r"
|
|
respond "\n" "\033y"
|
|
respond " " "dsk0:.;@ lisp\r"
|
|
respond "*" ":kill\r"
|
|
}
|
|
|
|
proc translate_diagnostics {} {
|
|
}
|
|
|
|
proc patch_clib_16 {} {
|
|
}
|