// (C) Copyright 1979 Tripos Research Group // University of Cambridge // Computer Laboratory SECTION "CLI-INIT" GET "LIBHDR" GET "CLIHDR" GET "manhdr" GLOBAL $( maxglob : ug+200 $) LET cli.init(parm.pkt) = VALOF $( LET pkt = VEC pkt.arg6 LET prompt = "%n %i2:%i2> " LET initialseg = tcb!tcb.seglist!3 LET dummy = maxglob LET disc.envec = TABLE 10, || length of table 256, || block size 0, || sector origin 1, || number of surfaces 1, || sectors per block 13, || blocks per track 1, || number of reserved blocks 8, || pre-allocation factor 1, || interleave factor 15, || lower cylinder 76 || upper cylinder pkt!pkt.link := notinuse pkt!pkt.id := task.consolehandler pkt!pkt.arg1 := -3 pkt!pkt.arg2 := -4 qpkt(pkt); taskwait() initio() selectinput(findinput("**")) selectoutput(findoutput("**")) writes("*n*niAPX86 TRIPOS starting (V3.5)*n") pkt!pkt.id := task.debug UNLESS qpkt(pkt)=0 DO taskwait() pkt!pkt.id := task.filehandler pkt!pkt.type := 0 pkt!pkt.arg1 := 1 // action.startup pkt!pkt.arg2 := -2 // device number pkt!pkt.arg3 := 0 // unit number pkt!pkt.arg4 := 4 // number of cache slots pkt!pkt.arg5 := disc.envec pkt!pkt.arg6 := FALSE UNLESS qpkt(pkt)=0 DO taskwait() cli.background := FALSE cli.standardinput := input() cli.currentinput := findinput("SYS:S.INITIAL-COMMANDS") IF cli.currentinput=0 DO cli.currentinput := cli.standardinput cli.standardoutput := output() cli.currentoutput := cli.standardoutput cli.commanddir := locatedir("SYS:C") returncode := 0 cli.returncode := 0 cli.faillevel := cli.initialfaillevel cli.result2 := 0 cli.commandfile%0 := 0 cli.defaultstack := cli.initialstack cli.module := 0 FOR i = 0 TO prompt%0 DO cli.prompt%i := prompt%i tcb!tcb.seglist!3 := 0 start := cli.undefglobval result2 := initialseg RESULTIS unloadseg $)