1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-11 23:53:12 +00:00

Build ITS with KL10 simulator.

This commit is contained in:
Eric Swenson 2019-09-19 01:30:26 +00:00 committed by Lars Brinkhoff
parent ed41d2fce8
commit 50b95c1241
20 changed files with 106 additions and 117 deletions

View File

@ -57,7 +57,7 @@ DSKDMP = bin/ks10/boot/dskdmp.rp06
KLH10=tools/klh10/tmp/bld-ks-its/kn10-ks-its
SIMH=tools/simh/BIN/pdp10
KA10=tools/sims/BIN/pdp10-ka
KL10=tools/sims/BIN/pdp10-ka
KL10=tools/sims/BIN/pdp10-kl
ITSTAR=tools/itstar/itstar
WRITETAPE=tools/tapeutils/tapewrite
MAGFRM=tools/dasm/magfrm
@ -240,7 +240,7 @@ $(KA10):
$(MAKE) -C tools/sims pdp10-ka
$(KL10):
$(MAKE) -C tools/sims pdp10-ka
$(MAKE) -C tools/sims pdp10-kl
$(ITSTAR):
$(MAKE) -C tools/itstar

View File

@ -53,16 +53,19 @@ we'd be delighted to test this on a real KS10.
To build ITS with this repository, you need some tools installed:
make, C compiler, and expect. For KA10, you also need SDL or SDL2 for
the Type 340 display. Ensure all submodules are checked out, and then
type `make EMULATOR=simh`, `make EMULATOR=pdp10-ka`, or `make
EMULATOR=klh10`. This will leave built files in the `out` directory,
one of which is a disk image with ITS installed.
type `make EMULATOR=simh`, `make EMULATOR=pdp10-ka`, `make
EMULATOR=pdp10-kl`, or `make EMULATOR=klh10`. This will leave built
files in the `out` directory, one of which is a disk image with ITS
installed.
To start ITS, type `./start`. If you see `KLH10#`, type `go` and
Enter. When you see the `DSKDMP` prompt, type `its`, press Enter, and
then `ESC g`. Eventually, you will see `SYSTEM JOB USING THIS
CONSOLE`. You are now ready to log in, so type Control-Z. See
[doc/DDT.md](doc/DDT.md) for a list of useful commands. When done,
shut down orderly by typing `:lock` and then `5down`.
Enter. If you see the `DSKDMP` prompt, type `its`, press Enter, and
then `ESC g`. If you use the `pdp10-kl` emulator there is no prompt
and you need to type `Esc L ITS`, press Enter, and then `ESC g`.
Eventually, you will see `SYSTEM JOB USING THIS CONSOLE`. You are now
ready to log in, so type Control-Z. See [doc/DDT.md](doc/DDT.md) for
a list of useful commands. When done, shut down orderly by typing
`:lock` and then `5down`.
ITS can optionally use some additional peripheral devices. To attach
a simulated GT40 graphics terminal, type `./start gt40` when booting
@ -132,9 +135,9 @@ There is a [detailed list of all installed programs](doc/programs.md).
### Network Support
Currently, networking is only supported under the KLH10 and SIMH KA10
emulators. The SIMH KS10 does not have the necessary support. As of
this release, only the ITS monitor, host table tools, and binary host
table are installed.
and KL10 emulators. The SIMH KS10 does not have the necessary
support. As of this release, only the ITS monitor, host table tools,
and binary host table are installed.
Currently, basic TCP network support is in the build, in addition to
both a TELNET/SUPDUP server, and both TELNET and SUPDUP clients.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -21,7 +21,7 @@ proc mark_packs {} {
respond "UNIT #" "0"
respond "#0?" "y"
respond "NO =" "0\r"
expect -timeout 300 "VERIFY"
expect -timeout 300 "VERIFICATION BEGINS"
respond "ALLOC =" "3000\r"
respond "PACK ID =" "0\r"
@ -29,7 +29,7 @@ proc mark_packs {} {
respond "UNIT #" "1"
respond "#1?" "y"
respond "NO =" "1\r"
expect -timeout 300 "VERIFY"
expect -timeout 300 "VERIFICATION BEGINS"
respond "ALLOC =" "3000\r"
respond "PACK ID =" "1\r"
@ -37,7 +37,7 @@ proc mark_packs {} {
respond "UNIT #" "2"
respond "#2?" "y"
respond "NO =" "2\r"
expect -timeout 300 "VERIFY"
expect -timeout 300 "VERIFICATION BEGINS"
respond "ALLOC =" "3000\r"
respond "PACK ID =" "2\r"
}
@ -55,8 +55,8 @@ proc its_switches {} {
proc make_ntsddt {} {
# KL10 NTSDDT.
respond "*" ":midas dsk0:.;@ ddt_system;ddt\r"
respond "cpusw=" "0\r"
respond "ndsk=" "1\r"
respond "cpusw=" "2\r"
respond "ndsk=" "3\r"
respond "dsksw=" "3\r"
respond "dsktp=" "0\r"
respond "1PRSW=" "0\r"
@ -84,7 +84,7 @@ proc make_dskdmp {} {
respond "R10R6P=" "N\r"
respond "NUDSL=" "500.\r"
respond "KS10P=" "N\r"
respond "KL10P=" "N\r"
respond "KL10P=" "Y\r"
expect ":KILL"
}
@ -129,7 +129,7 @@ proc dump_nits {} {
}
proc magdmp_switches {} {
respond "KL10P=" "n\r"
respond "KL10P=" "y\r"
respond "TM10BP=" "y\r"
respond "340P=" "n\r"
}
@ -175,12 +175,7 @@ proc patch_lisp {} {
}
proc translate_diagnostics {} {
respond "*" "\033\024"
respond " " "dsk: maint; part f, part f.old\r"
respond "*" "\033\024"
respond " " "dsk: maint; part g, part g.old\r"
respond "*" "\033\024"
respond " " "dsk: maint; part k, part k.old\r"
# KL10 doesn't need any translations.
}
proc patch_clib_16 {} {
@ -205,9 +200,9 @@ proc copy_to_klfe {file} {
}
proc comsat_switches {} {
respond "Limit to KA-10 instructions" "y\r"
respond "Limit to KA-10 instructions" "n\r"
}
proc dqxdev_switches {} {
respond "Limit to KA-10 instructions" "y\r"
respond "Limit to KA-10 instructions" "n\r"
}

View File

@ -1135,7 +1135,7 @@ respond "*" ":midas;324 sys;ts 10run_sysen2; 10run\r"
expect ":KILL"
respond "*" ":job maint\r"
# KA10 needs the .OLD files.
# KA10 needs the .OLD files. KL10 and KS10 the newer.
translate_diagnostics
respond "*" ":load maint; part a\r"
respond "*" ":start\r"

View File

@ -1,19 +1,19 @@
set console wru=034
set cpu its
set cpu 512k
set dpa dis
set dpb dis
set cpu 2048k
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 off
set pd ena
set pd on
set mta type=b
at mta0 out/pdp10-kl/minsrc.tape
set rpa0 rp04
set rpa1 rp04
set rpa2 rp04
at rpa0 out/pdp10-kl/rp04.0
at rpa1 out/pdp10-kl/rp04.1
at rpa2 out/pdp10-kl/rp04.2
load -i bin/kl10/boot/@.ddt
go

View File

@ -1,22 +1,17 @@
set console wru=034
set cpu its
set cpu 512k
set dpa dis
set dpb dis
set cpu 2048k
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 mta mpx=7
set mta type=b
at mta0 out/pdp10-kl/sources.tape
set rpa0 rp04
set rpa1 rp04
set rpa2 rp04
at rpa0 out/pdp10-kl/rp04.0
at rpa1 out/pdp10-kl/rp04.1
at rpa2 out/pdp10-kl/rp04.2

View File

@ -3,7 +3,7 @@ set out "out/$env(EMULATOR)"
set emulator_escape "\034"
proc start_salv {} {
uplevel #0 {spawn ./tools/sims/BIN/pdp10-ka build/pdp10-kl/init}
uplevel #0 {spawn ./tools/sims/BIN/pdp10-kl build/pdp10-kl/init}
setup_timeout
respond "MAGDMP\r\n" "l\033ddt\r"
respond "\n" "t\033salv bin\r"
@ -17,7 +17,7 @@ proc start_dskdmp args {
} {
set ini "build/pdp10-kl/boot2"
}
set foo "spawn ./tools/sims/BIN/pdp10-ka $ini"
set foo "spawn ./tools/sims/BIN/pdp10-kl $ini"
uplevel #0 $foo
setup_timeout
}

View File

@ -480,21 +480,19 @@ TERMIN
] ;MC
IFE MCOND KL,[
DEFOPT KA10P==1
DEFOPT KL10P==1 ;KL IS NOW A KL10
DEFOPT MAXJ==120. ;MAX NUMBER OF JOBS ALLOWED
DEFOPT SWBLK==1 ;1 => SWAP BLOCKING, 0 => PRIVILEGED USER
DEFOPT SWPWSP==0 ;NO WORKING-SET SWAP SCHEDULER
DEFOPT PAGPRE==1 ;PAGE-IN PREEMPTION
DEFOPT SCHBLN==20. ;NUMBER OF RUNNABLE JOBS TO REMEMBER
DEFOPT NQS==3 ;# OF DISK UNITS
DEFOPT NQCHN==50. ;NUMBER 2314 CHNLS
DEFOPT RP04P==1
DEFOPT RP06P==0
DEFOPT NQS==3 ;# OF DISK UNITS (3 RP04'S)
DEFOPT NTUTBL==2 ;TUTS ARE TWO BLOCKS LONG
DEFSYM NUDSL==500. ;# USER DIRECTORIES ON DISK
DEFOPT NQCHN==50. ;NUMBER 2314 CHNLS
DEFOPT RH10P==1 ;HAS DEC RH10 DISK CONTROL (RP04)
;DEFOPT T300P==3 ;TRIDENT T-300S VIA PDP-11 START AT DRIVE 3
DEFOPT RP04P==1 ; WITH RP04 DISKS
DEFOPT QRDCMP==0 ;SOFTWARE READ-COMPARE, HARDWARE IS PINING FOR THE
; FJORDS (But this isn't debugged yet.)
DEFOPT DMDSK==1 ;USES DM DISK FORMAT
@ -502,44 +500,40 @@ DEFOPT QRSRVP==1 ;HAS RESERVED DISK PACKS
DEFOPT QAUTHP==1 ;KEEPS TRACK OF FILE AUTHORS
DEFOPT NMTCS==1 ;NUMBER MAG TAPE UNITS
DEFOPT TM10A==0 ;IO-BUS MAG TAPE
DEFOPT TM10B==1 ;IO-BUS MAG TAPE
DEFOPT TM10B==1 ;DF10-BASED TAPE CONTROLLER
;DEFOPT DL10P==1 ;HAS DL10/DC76 TTY CONTROLLER
DEFOPT DL10P==0 ;HAS NO DL10/DC76 TTY CONTROLLER
DEFOPT PDCLKP==1 ;HAS "DeCoriolis" CLOCK
;DEFOPT NETP==1 ; Has net connection
;DEFOPT INETP==1 ; Include Internet IP code
;DEFOPT TCPP==1 ; Include Internet TCP code
;DEFOPT XBL==25. ; # TCP connections
;DEFOPT IMPP==1 ; Has IMP interface
;DEFOPT KAIMP==1
;DEFOPT IMPUS==106 ; ARPA net host number
;DEFOPT IMPUS3==<IPADDR 10,1,0,6> ; Internet host number
;DEFOPT NCPP==0 ; Flush NCP code
;DEFOPT NNETCH==30. ; # NCP network channels
;DEFOPT CHAOSP==1 ;HAS CHAOS NET
;DEFOPT MYCHAD==1440 ;CHAOS NET ADDRESS
;DEFOPT NINDX==50. ;NUMBER OF INDICES
;DEFOPT DLCP==1 ;CHAOS NET GOES THROUGH DL10
DEFOPT NETP==1 ; Has net connection
DEFOPT INETP==1 ; Include Internet IP code
DEFOPT TCPP==1 ; Include Internet TCP code
DEFOPT XBL==25. ; # TCP connections
DEFOPT IMPP==1 ; Has IMP interface
DEFOPT KAIMP==1
DEFOPT IMPUS==106 ; ARPA net host number
DEFOPT IMPUS3==<IPADDR 192,168,1,100> ; Internet host number
DEFOPT NCPP==0 ; Flush NCP code
DEFOPT NNETCH==30. ; # NCP network channels
DEFOPT CHAOSP==0 ;NO CHAOS NET
DEFOPT MYCHAD==1440 ;CHAOS NET ADDRESS
DEFOPT NINDX==50. ;NUMBER OF INDICES
DEFOPT NOTYS==1 ;# KA-10 CONSOLE 0 TTYS
;DEFOPT NETYS==33. ;# KL-10 DTE20 TTYS
;NEWDTE==1 ;TEMPORARY CONDITIONAL TO ENABLE NEW DTE20 PROTOCOL
;DEFOPT NDLTYS==4. ;# TTYS ON DL10/DC76
;Note: 3d TTY on DL10 is VT52 by console.
DEFOPT NOTYS==0 ;# KA-10 CONSOLE 0 TTYS
DEFOPT NETYS==16. ;# KL-10 DTE20 TTYS
NEWDTE==1 ;TEMPORARY CONDITIONAL TO ENABLE NEW DTE20 PROTOCOL
DEFOPT NSTTYS==25. ;# OF STY'S (PSEUDO-TTY'S)
DEFOPT TSYSM==512. ;TOTAL PDP10 1K MEM BLOCKS
DEFOPT NMMP==4 ;# EXEC PAGES FOR MMP TABLE (# VIR PGS/512.)
DEFOPT TSYSM==2048. ;TOTAL PDP10 1K MEM BLOCKS
DEFOPT NMMP==7 ;# 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
DEFSYM PMRCM==7777 ;12 BIT REAL CORE ADDR
DEFSYM PMCSHM==10000 ;CACHE ENABLE BIT
DEFSYM PMAGEM==160000 ;3 BIT AGE
DEFSYM PMUNSD==0 ;NO UNUSED BITS
DEFINE ITSIRP BODY
IRPS ITS,,[MX]
IRPS ITS,,[MC]
BODY
TERMIN
TERMIN

View File

@ -1,20 +1,16 @@
set console wru=034
set cpu its
set cpu 512k
set dpa dis
set dpb 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 mta type=a
at mta0 out/pdp10-kl/kl-magdmp.tap
at mta5 out/pdp10-kl/kl-minsys.tape
set rpa rp04
set rpa0 rp04
set rpa1 rp04
set rpa2 rp04
at rpa0 out/pdp10-kl/rp04.0
at rpa1 out/pdp10-kl/rp04.1
at rpa2 out/pdp10-kl/rp04.2

View File

@ -1,25 +1,22 @@
set console wru=034
set cpu its
set cpu idle
set cpu 512k
set dpa dis
set dpb dis
set cpu 2048k
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 tty enabled
set tty 8b lines=16
at tty 10007
set pd ena
set pd on
set mta mpx=7
set mta type=b
set rpa rp04
set rpa0 rp04
set rpa1 rp04
set rpa2 rp04
at rpa0 out/pdp10-kl/rp04.0
at rpa1 out/pdp10-kl/rp04.1
at rpa2 out/pdp10-kl/rp04.2
load -i @.ddt
load -i bin/kl10/boot/@.ddt
go

View File

@ -17,15 +17,10 @@ stop() {
echo "OK"
}
gt40() {
(sleep 3; tools/simh/BIN/pdp11 build/pdp10-ka/gt40 >gt40.log 2>&1) &
started GT40 "$!"
}
while test -n "$1"; do
"$1"
shift
done
tools/sims/BIN/pdp10-ka build/pdp10-kl/run
tools/sims/BIN/pdp10-kl build/pdp10-kl/run
exit 0

View File

@ -163,23 +163,23 @@ PRINTX /Which machine? /
NUNITS==6
];MC
IFCE MCHN,KL,[
;SA==105*2000 ; MC system is big, need to push SALV higher.
SA==105*2000 ; KL system is big, need to push SALV higher.
FIRSPK==0
LASTPK==2
NUDSL==500.
DC10P==0
RP10P==0
RP04P==1
RP06P==0
RP06P==0
RH10P==1
T300P==0 ;UNIT 3 IS FIRST T-300 UNIT
KL10P==0
T300P==0
KL10P==1
OLPTP==0
NLPTP==0
TTLPTP==0 ;NO LPT AT ALL
TCMXH==100. ;LA36
LIGHTS==4 ;KL-UDGE
NDRIVE==3 ;8 DOESN'T FIT IN 128K
LIGHTS==500 ;KL-UDGE
NDRIVE==3
NUNITS==3
];KL
IFCE MCHN,EX,[

View File

@ -327,8 +327,22 @@ MCONDX MC,{ ;;; MC
.ENDC ;}
MCONDX KL,{ ;;; KL
TTDLA36 0,TT=%TTLCL,HOR=80.,SPEED=110 ;T00 System Console
TTDLA36 0,TT=%TTLCL,HOR=110. ;T00 System Console
TTDAAA 1,SPEED=9600 ;T01
TTDAAA 2,SPEED=9600 ;T02
TTDAAA 3,SPEED=9600 ;T03
TTDAAA 4,SPEED=9600 ;T04
TTDAAA 5,SPEED=9600 ;T05
TTDAAA 6,SPEED=9600 ;T06
TTDAAA 7,SPEED=9600 ;T07
TTDAAA 10,SPEED=9600 ;T10
TTDAAA 11,SPEED=9600 ;T11
TTDAAA 12,SPEED=9600 ;T12
TTDAAA 13,SPEED=9600 ;T13
TTDAAA 14,SPEED=9600 ;T14
TTDAAA 15,SPEED=9600 ;T15
TTDAAA 16,SPEED=9600 ;T16
TTDAAA 17,SPEED=9600 ;T17
.ENDC ;}
REPEAT NSTTYS,[

@ -1 +1 @@
Subproject commit 8e10ec9d1ef337f29ed8954af1533ae6df854a04
Subproject commit eeae1be5f11cd430da68a4f08b8c1380777bb7db