From 42b47a73d4980376b8db6d13dc0e4a2b35072ead Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Fri, 27 Oct 2023 14:01:48 +0200 Subject: [PATCH] PT ITS for the PiDP-10. KA10 with six DC10 disks. --- build/mchn/PT/boot | 30 ++++++++++++++++ build/mchn/PT/custom.tcl | 4 +++ build/mchn/PT/init | 23 ++++++++++++ build/mchn/PT/mchn.tcl | 28 +++++++++++++++ build/mchn/PT/run | 75 +++++++++++++++++++++++++++++++++++++++ build/pdp10-ka/config.202 | 74 ++++++++++++++++++++++++++++++++++++++ src/l/struct.659 | 2 +- src/sysen1/pword.2664 | 1 + src/syseng/dump.448 | 1 + src/sysnet/telser.174 | 2 ++ src/system/salv.317 | 15 ++++++++ src/system/ttytyp.322 | 45 +++++++++++++++++++++++ 12 files changed, 299 insertions(+), 1 deletion(-) create mode 100644 build/mchn/PT/boot create mode 100644 build/mchn/PT/custom.tcl create mode 100644 build/mchn/PT/init create mode 100644 build/mchn/PT/mchn.tcl create mode 100644 build/mchn/PT/run diff --git a/build/mchn/PT/boot b/build/mchn/PT/boot new file mode 100644 index 00000000..d6c56402 --- /dev/null +++ b/build/mchn/PT/boot @@ -0,0 +1,30 @@ +set console wru=034 +set cpu its +set cpu 1024k +set cpu mpx +set rpa dis +set rpb dis +set tua dis +set fha dis +set dpb dis +set lpt dis +set cr dis +set dc disable +set dtc dis +set dk dis +set pd ena +set pd on +set ch enabled +set ch node=177002 +at ptr out/pdp10-ka/dskdmp.rim +at mta0 out/pdp10-ka/sources.tape +set mta mpx=7 +set mta type=b +set ai enabled +at ai0 out/pdp10-ka/dc10.0 +at ai1 out/pdp10-ka/dc10.1 +at ai2 out/pdp10-ka/dc10.2 +at ai3 out/pdp10-ka/dc10.3 +at ai4 out/pdp10-ka/dc10.4 +at ai5 out/pdp10-ka/dc10.5 +b ptr diff --git a/build/mchn/PT/custom.tcl b/build/mchn/PT/custom.tcl new file mode 100644 index 00000000..c56d15aa --- /dev/null +++ b/build/mchn/PT/custom.tcl @@ -0,0 +1,4 @@ +#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" diff --git a/build/mchn/PT/init b/build/mchn/PT/init new file mode 100644 index 00000000..569a7831 --- /dev/null +++ b/build/mchn/PT/init @@ -0,0 +1,23 @@ +set console wru=034 +set cpu its +set cpu 512k +set rpa dis +set rpb dis +set tua dis +set fha dis +set dpb dis +set lpt dis +set cr dis +set dc disable +set dtc dis +set dk dis +at mta0 out/pdp10-ka/magdmp2.tap +at mta5 out/pdp10-ka/reboot.tape +set ai enabled +at ai0 out/pdp10-ka/dc10.0 +at ai1 out/pdp10-ka/dc10.1 +at ai2 out/pdp10-ka/dc10.2 +at ai3 out/pdp10-ka/dc10.3 +at ai4 out/pdp10-ka/dc10.4 +at ai5 out/pdp10-ka/dc10.5 +b mta0 diff --git a/build/mchn/PT/mchn.tcl b/build/mchn/PT/mchn.tcl new file mode 100644 index 00000000..e95e335c --- /dev/null +++ b/build/mchn/PT/mchn.tcl @@ -0,0 +1,28 @@ +proc dskdmp_switches {hriflg} { + expect "Configuration" + respond "?" "ASK\r" + respond "HRIFLG=" "$hriflg\r" + respond "BOOTSW=" "N\r" + respond "R11R6P=" "N\r" + respond "R11R7P=" "N\r" + respond "RM03P=" "N\r" + respond "RM80P=" "N\r" + respond "RH10P=" "N\r" + respond "DC10P=" "Y\r" + respond "NUDSL=" "500.\r" + respond "KS10P=" "N\r" + respond "KL10P=" "N\r" +} + +proc peek_switches {} { + respond "with ^C" "340P==1\r\003" +} + +proc mark_packs {} { + mark_pack "0" "0" "0" + mark_pack "1" "1" "1" + mark_pack "2" "2" "2" + mark_pack "3" "3" "3" + mark_pack "4" "4" "4" + mark_pack "5" "5" "5" +} diff --git a/build/mchn/PT/run b/build/mchn/PT/run new file mode 100644 index 00000000..77a59785 --- /dev/null +++ b/build/mchn/PT/run @@ -0,0 +1,75 @@ +set console wru=034 +set cpu its +set cpu 1024k +set cpu idle +set cpu mpx +set rpa dis +set rpb dis +set tua dis +set fha dis +set dpb dis +set lpt dis +set cr dis +set dc disable +set dtc dis +set dk dis +set pd enabled +set pd on +set dpy enabled +set dk disabled +set stk enabled +set tk enabled +at -u tk 10000 speed=300 +# 10001 reserved for GE bagbiters, hah. +set dpk enabled +at -u dpk 10002 speed=4800 +at -u dpk line=11,10019 speed=4800 +at -u dpk line=15,10020 speed=4800 +set mty enabled +at -u mty 10003 speed=50000 +at -u mty line=9,10018 speed=9600 +at -u mty line=8,10017 speed=9600 +at -u mty line=7,10016;notelnet speed=50000 +at -u mty line=6,10015 speed=9600 +set ten11 enabled +at ten11 10011 +set auxcpu enabled +at auxcpu 10006 +set ch enabled +set ch node=177002 +set ch peer=localhost:44041 +att ch 44042 +set imp enabled +set imp mac=e2:6c:84:1d:34:a3 +set imp ip=192.168.2.101/24 +set imp gw=172.31.1.100 +set imp host=10.3.0.6 +at imp tap:tap0 +at ptr out/pdp10-ka/dskdmp.rim +set ai enabled +at ai0 out/pdp10-ka/dc10.0 +at ai1 out/pdp10-ka/dc10.1 +at ai2 out/pdp10-ka/dc10.2 +at ai3 out/pdp10-ka/dc10.3 +at ai4 out/pdp10-ka/dc10.4 +at ai5 out/pdp10-ka/dc10.5 +set mta mpx=7 +set mta type=b +set dt mpx=6 +set imp mpx=4 +set wcnsls enabled joystick cscope +set ocnsls enabled +set imx enabled mpx=3 +set imx channel=2;unit0;axis0;negate +set imx channel=3;unit0;axis1 +set imx channel=10;unit0;axis3;negate +set imx channel=5;unit1;axis0;negate +set imx channel=6;unit1;axis1 +set imx channel=30;unit1;axis3;negate +set imx channel=70;unit2;axis0 +set imx channel=71;unit2;axis1;negate +set imx channel=73;unit2;axis3 +set imx channel=77;unit3;axis0 +set imx channel=76;unit3;axis1;negate +set imx channel=74;unit3;axis3 +b ptr diff --git a/build/pdp10-ka/config.202 b/build/pdp10-ka/config.202 index e57a1ba9..93e021bd 100644 --- a/build/pdp10-ka/config.202 +++ b/build/pdp10-ka/config.202 @@ -514,6 +514,80 @@ TERMIN TERMIN ] ;TT +IFE MCOND PT,[ ;PiDP-10 KA10 +DEFOPT KA10P==1 ;HAS KA PROCESSOR +DEFOPT MAXJ==60. ;MAX NUMBER OF JOBS ALLOWED +DEFOPT SWBLK==1 ;1 => SWAP BLOCKING, 0 => PRIV USER +DEFOPT SWPWSP==0 ;NO WORKING-SET SWAP SCHEDULER +DEFOPT PAGPRE==1 ; Page-in preemption +DEFOPT SCHBLN==10. ;NUMBER OF RUNNABLE JOBS TO REMEMBER + +DEFOPT NQCHN==30. ;NUMBER 2314 CHNLS +DEFOPT NQS==6 ;# DISK UNITS +DEFOPT NTUTBL==1 ;TUTS ARE ONE BLOCK LONG +DEFSYM NUDSL==500. ;# USER DIRECTORIES ON DISK +DEFOPT DC10P==1 ;HAS SYSTEMS CONCEPTS DISK CONTROL +DEFOPT QRDCMP==1 ;SOFTWARE READ-COMPARE +DEFOPT DMDSK==1 ;USES DM DISK FORMAT +DEFOPT QRSRVP==1 ;HAS RESERVED DISK PACKS (SECONDARY PACK) +DEFOPT QAUTHP==1 ;KEEPS TRACK OF FILE AUTHORS + +DEFOPT C1MXP==1 ;CHANNEL 1 MPX FEATURE +DEFOPT NEWDTP==1 ;HAS NEW DECTAPE CONTROLLER +DEFOPT NUNITS==2 ; Number of utape units (R.I.P.) +DEFOPT NMTCS==1 ;NUMBER OF MAG TAPE UNITS +DEFOPT TM10B==1 ;DF10-BASED CONTROLLER +DEFOPT NLPTP==1 ;HAS NEW LPT (ODEC) +DEFOPT TPLP==1 ;PSEUDO LPT +DEFOPT PTRP==1 ;HAS PAPER TAPE +DEFOPT PTPP==1 ; And punch works. +DEFOPT MTYP==1 ;HAS MORTON MULTIPLEX BOX +DEFOPT PDCLKP==1 ;"DeCoriolis" CLOCK + +DEFOPT NETP==1 ; Has net connection +DEFOPT IMPP==1 ; Has IMP interface +DEFOPT KAIMP==1 +DEFOPT IMPUS==306 ; ARPA net host number +DEFOPT IMPUS3== ; Internet host number +DEFOPT NCPP==0 ; Flush NCP code +DEFOPT NNETCH==20. ; # NCP net channels +DEFOPT INETP==1 ; Include Internet code +DEFOPT TCPP==1 ; Include TCP code +DEFOPT XBL==20. ; # TCP network channels +DEFOPT CHAOSP==1 ;CHAOS NET +DEFOPT MYCHAD==177002 ;CHAOS NET ADDRESS +DEFOPT NINDX==50. ;NUMBER OF INDICES +DEFOPT CH10P==1 ;CHAOS NET VIA PDP-10 I/O BUS, NOT FRONT-END + +DEFOPT NOTYS==1 ;# KA-10 CONSOLE 0 TTYS +DEFOPT TK10P==1 ;HAS TK10 TTY SCANNER +DEFOPT NNTYS==16. ;# TTYS ON KNIGHT KLUDGE +;DEFOPT NNVTTS==0 ;# NOVA TTYS (used to have?) +DEFOPT NMTYS==16. ;# TTYS ON MORTON BOX +DEFOPT NSTTYS==8 ;# STY'S (PSEUDO-TTY'S) +DEFOPT MSPP==1 ;HAS MESSAGE SLURPER + +DEFOPT TEN11P==1 ;Rubin 10-11 interface +IFDEF TEN11P,IFN TEN11P,DEFSYM T11CPA==3776000 ;ADRS OF TEN-11 CONTROL PAGE +DEFOPT TT11NM==0 ; # of 10-11 PDP11 that handles TV TTYs. +DEFOPT N11TYS==10. ; # PDP11 TV TTYS +DEFOPT MXVBN==40 ; Max video bfr # for assignment purposes. + +DEFOPT TSYSM==768. ;TOTAL PDP10 1K MEM BLOCKS +DEFOPT NMMP==4 ;# EXEC PAGES FOR MMP TABLE (# VIR PGS/512.) + +DEFSYM PMRCM==1777 ;10 BIT REAL CORE ADR +DEFSYM PMAGEM==16000 ;3 BIT AGE +DEFSYM PMCSHM==0 ;NO CACHE BIT +DEFSYM PMUNSD==160000 ;UNUSED BITS + +DEFINE ITSIRP BODY +IRPS ITS,,[DB] +BODY +TERMIN +TERMIN +] ;PT + IFE MCOND DM,[ DEFOPT KA10P==1 ;DM HAS KA10 PROCESSOR DEFOPT MAXJ==63. ;MAX NUMBER OF JOBS ALLOWED diff --git a/src/l/struct.659 b/src/l/struct.659 index 9e307870..b0fef218 100644 --- a/src/l/struct.659 +++ b/src/l/struct.659 @@ -715,7 +715,7 @@ PG$ MRA PAGING MRA PPN 20$ MRA PS IFN ITS,[ - MRA [ITS,AI,ML,MC,MD,MX,DB,KA,KL,HX,TT] + MRA [ITS,AI,ML,MC,MD,MX,DB,KA,KL,HX,TT,PT] MRA EXPERIMENTAL MRA .LISP. ] ;END OF IFN ITS diff --git a/src/sysen1/pword.2664 b/src/sysen1/pword.2664 index 56d06003..1ca6ff3b 100644 --- a/src/sysen1/pword.2664 +++ b/src/sysen1/pword.2664 @@ -9850,6 +9850,7 @@ bltspc: syscal sstatu,[val x ? val x ? val x ? val x ? val x blt x,spcend-1 ; all of them to the bitter end setom dm.flg ret ] + came x,[sixbit /PT/] ;is it PT? camn x,[sixbit /TT/] ;is it TT? jrst [move x,[mdspec,,tsspec] ;yes, so use MD's specs blt x,spcend-1 ; all of them, to the end diff --git a/src/syseng/dump.448 b/src/syseng/dump.448 index 663308c2..6c434b9f 100644 --- a/src/syseng/dump.448 +++ b/src/syseng/dump.448 @@ -49,6 +49,7 @@ IFE MCOND KA, NEWCOD==0 ;Use old code on KA and KL too IFE MCOND KL, NEWCOD==0 IFE MCOND HX, NEWCOD==0 IFE MCOND TT, NEWCOD==0 +IFE MCOND PT, NEWCOD==0 DEFINE SYSCAL OP,ARGS .CALL [SETZ ? SIXBIT/OP/ ? ARGS ((SETZ))] diff --git a/src/sysnet/telser.174 b/src/sysnet/telser.174 index ccefb599..6affafa8 100644 --- a/src/sysnet/telser.174 +++ b/src/sysnet/telser.174 @@ -901,6 +901,8 @@ CHTELE: SETOM NEWTEL ;NEW TELNET IS DEFAULT MOVEI A,[ASCIZ/MIT Mailinglist Central PDP-10/] CAIN C,(SIXBIT/DB/) MOVEI A,[ASCIZ/DB-ITS/] + CAIN C,(SIXBIT/PT/) + MOVEI A,[ASCIZ/PiDP-10 ITS/] HRLI A,440700 MOVEM A,GREET .SUSET [.SMASK,,[%PIIOC]] diff --git a/src/system/salv.317 b/src/system/salv.317 index bfeb107e..7323e727 100644 --- a/src/system/salv.317 +++ b/src/system/salv.317 @@ -158,6 +158,21 @@ PRINTX /Which machine? / TCMXH==55. LIGHTS==4 ;PI ];TT + IFCE MCHN,PT,[ + FIRSPK==0 + LASTPK==5 + NUDSL==500. + DC10P==1 + RP10P==0 + RH10P==0 + T300P==0 + KL10P==0 + OLPTP==0 + NLPTP==0 + TTLPTP==0 + TCMXH==55. + LIGHTS==4 ;PI + ];TT IFCE MCHN,DM,[ FIRSPK==17. LASTPK==21. diff --git a/src/system/ttytyp.322 b/src/system/ttytyp.322 index bdf470cd..54f2ae85 100644 --- a/src/system/ttytyp.322 +++ b/src/system/ttytyp.322 @@ -285,6 +285,51 @@ MCONDX TT,{ ;;; TT TTDVT 37,SPEED=9600 ;T37 VT52, port 15 TTDDPT 40,SPEED=4800 ;T40 Datapoint port 16 .ENDC ;} +MCONDX PT,{ ;;; PiDP-10 ITS + TTDLA36 0,TT=%TTLCL+%TT340,HOR=80.,SPEED=110 ;T00 System Console + TTDAAA 1,SPEED=300,TT=%TT340 ;T01 TK10 port 1 + TTDAAA 2,SPEED=300 ;T02 TK10 port 2 + TTDAAA 3,SPEED=300 ;T03 TK10 port 3 + TTDAAA 4,SPEED=300 ;T04 TK10 port 4 + TTDAAA 5,SPEED=300 ;T05 TK10 port 5 + TTDAAA 6,SPEED=300 ;T06 TK10 port 6 + TTDAAA 7,SPEED=300 ;T07 TK10 port 7 + TTDAAA 10,SPEED=300 ;T10 TK10 port 8 + TTDAAA 11,SPEED=300 ;T11 TK10 port 9 + TTDAAA 12,SPEED=300 ;T12 TK10 port 10 + TTDAAA 13,SPEED=300 ;T13 TK10 port 11 + TTDAAA 14,SPEED=300 ;T14 TK10 port 12 + TTDAAA 15,SPEED=300 ;T15 TK10 port 13 + TTDAAA 16,SPEED=300 ;T16 TK10 port 14 + TTDAAA 17,SPEED=300 ;T17 TK10 port 15 + TTDAAA 20,SPEED=300 ;T20 TK10 port 16 + TTDAAA 21,SPEED=4800 ;T21 Datapoint port 1 + TTDAAA 22,SPEED=4800 ;T22 Datapoint port 2 + TTDAAA 23,SPEED=4800 ;T23 Datapoint port 3 + TTDAAA 24,SPEED=4800 ;T24 Datapoint port 4 + TTDAAA 25,SPEED=4800 ;T25 Datapoint port 5 + TTDAAA 26,SPEED=4800 ;T26 Datapoint port 6 + TTDAAA 27,SPEED=4800 ;T27 Datapoint port 7 + TTDAAA 30,SPEED=4800 ;T30 Datapoint port 8 + TTDAAA 31,SPEED=4800 ;T31 Datapoint port 9 + TTDAAA 32,SPEED=4800 ;T32 Datapoint port 10 + TTDAAA 33,SPEED=4800 ;T33 Datapoint port 11 + TTDGT40 34,SPEED=4800 ;T34 GT40, port 12 + TTDAAA 35,SPEED=4800 ;T35 Datapoint port 13 + TTDAAA 36,SPEED=4800 ;T36 Datapoint port 14 + TTDAAA 37,SPEED=4800 ;T37 Datapoint port 15 + TTDDPT 40,SPEED=4800 ;T40 Datapoint port 16 + TTDAAA 41,SPEED=50000 ;T41 Morton port 1 + TTDAAA 42,SPEED=50000 ;T42 Morton port 2 + TTDAAA 43,SPEED=50000 ;T43 Morton port 3 + TTDAAA 44,SPEED=50000 ;T44 Morton port 4 + TTDAAA 45,SPEED=50000 ;T45 Morton port 5 + TTDAAA 46,SPEED=50000 ;T46 Morton port 6 + TTDAAA 47,SPEED=9600,TY=%TYDIL ;T47 Dial-up, port 7 + TTDOIM 50,SPEED=50000 ;T50 Imlac, port 8 + TTDTEK 51,SPEED=9600 ;T51 Tektronix, port 9 + TTDVT 52,SPEED=9600 ;T52 VT52, port 10 +.ENDC ;} ;NOTE: SEE COMMENT AT FRONT OF FILE FOR CONSTRAINTS ON THE COMMENTS ;THAT APPEAR ON THE FOLLOWING LINES. ALSO NOTE THAT LOWER CASE