File: ST.TK of Tape: Sources/Multi8/m8-tk-etc-20-10-80
(Source file text)
/ST.TK 1-MAY-80 /THIS TASK IS CALLED THROUGH CD, THE FOREGROUND COMMAND DECODER /IT WILL DISPLAY ON THE USERS TERMINAL THE STATUS OF THE /BACKGROUNDS IN THE SYSTEM AND THE ALLOCATION OF BACKGROUND MEMORY /EG. / /CORE BG1 BG2 BG3 BG4 BG5 BG6 BG7 /56631 IOL SWL F3S IOS RUS RUL / /MEANING: /THERE ARE 5 MEMORY FIELDS FOR THE BACKGROUNDS, /SAY FIELD 3, 4, 5, 6 AND 7. /THE ALLOCATION IS NOW: /FIELD 3 OCCUPIED BY BG 5 /FIELD 4 OCCUPIED BY BG 6 /FIELD 5 OCCUPIED BY BG 6 /FIELD 6 OCCUPIED BY BG 3 /FIELD 7 OCCUPIED BY BG 1 / /THE REST OF THE DISPLAY GIVES THE STATUS OF EACH BG, WHERE: /IOL = WAITONG FOR IO, LOW PRIORITY /SWL = SWAPPED, LOW PRIORITY /F3H = WAITING FOR VIRTUAL FIELD 3, HIGH PRIORITY /KB = WAITING FOR KEYBOARD INPUT /TTY = WAITING FOR TERMINAL OUTPUT /RUH = RUNNING, WITH HIGH PRIORITY /RUL = RUNNING, WITH LOW PRIORITY /^B = WAITING IN CONTROL/B MODE /HLT = PROCESSING AN EMULATION OR SWAP ERROR. *200 PNT, "S^100+"T&3777 /TASK NAME IS ST 400 /A TWO PAGE TASK (?) XTYPE, TYPE XTEXT, TXT XOUTNA, OUTNAM XCRLF, CRLF XSPACE, SPACE XKBTXT, KBTXT COUNT, 0 ST, CDTOIF TAD I XOUTNAM /COMPUTE NAME OF OUTPUT HANDLER DCA I XOUTNAM /INITIALISE OUTPUT ROUTINE JMS I XTEXT /PRINT HEADING LINE HEAD-. JMS I XCRLF /AND GO TO NEW LINE ST1, TAD (-BGFLDS /PRINT OCCUPANDS OF BG CORE DCA COUNT /FOR ALL REAL FIELDS TAD (BSTAB+1 DCA PNT TAD C215 /FOR SUBSEQUENT OVERPRINT JMS I XTYPE L1, TAD I PNT IAC /NO TEST FOR EMPTY FIELD SNA JMP L4 /LOCKED OR BAD FIELD AND (0777 TAD (BGDATA-1+UNUMB-1 JMS DEFER AND C7 L3, TAD ("0-"X L4, TAD ("X JMS I XTYPE ISZ PNT ISZ COUNT JMP L1 /DISPLAY STATUS OF EACH BG TAD (-BGMAX DCA COUNT TAD (BGDATA DCA PNT IFNZRO BGFLDS-2&4000 <JMS I XSPACE> IFNZRO BGFLDS-3&4000 <JMS I XSPACE> IFNZRO BGFLDS-4&4000 <JMS I XSPACE> IFNZRO BGFLDS-5&4000 <JMS I XSPACE> IFNZRO BGFLDS-6&4000 <JMS I XSPACE> L2, JMS I XSPACE AC0100 AND I PNT /GET INCORE BIT SNA CLA JMP A1 /NOT WAITING FOR MEMORY TAD ("F JMS I XTYPE TAD I PNT RTR RAR AND C7 TAD ("0 JMS I XTYPE /FIELD HE'S WAITING FOR JMP B1 /GO FOR THIRD CHAR A1, AC6000 AND I PNT /GET INACTIVE AND EMULATE SNA CLA JMP A2 /NOT WAITING FOR IO TAD PNT TAD (UINST /GET LAST TRAPPED INSTRUCTION JMS DEFER TAD (-KSF SZA CLA /WAITING FOR KB ? JMP A11 /NO JMS I XKBTXT /SEE WHAT TYPE OF INPUT JMP NEXT A11, JMS I XTEXT IO-. JMP B1 A2, AC0003 AND I PNT /GET BGERR AND SWPERR SNA CLA JMP A3 JMS I XTEXT XHLT-. JMP NEXT A3, TAD I PNT AND (BGSTOP SNA CLA JMP A4 JMS I XTEXT CB-. JMP NEXT A4, JMS I XTEXT RU-. B1, TAD I PNT AND (LONG SNA CLA TAD ("H-"L TAD ("L JMS I XTYPE NEXT, TAD PNT TAD (UNEXT JMS DEFER DCA PNT ISZ COUNT JMP L2 AC4000 JMS I XTYPE /RELEASE TTY JMS MONITOR STALL 1 CLA CLL JMS MONITOR BREAK 0 /SELF SKP JMP ST1 OUT, JMS MONITOR EXIT SWPOUT PAGE YOUT, OUT KBTXT, 0 TAD X TAD (UPC-UINST JMS DEFER /GET USER PC TAD (-1210 /INPUT POINT IN OS8 KBM SZA JMP A5 JMS TXT KBM-. JMP I KBTXT /RETURN A5, IFZERO OS8-3 < TAD (1210-1230 > IFZERO OS8-40 < TAD (1210-1643 > SZA JMP A6 /NO EDIT JMS TXT EDT-. JMP I KBTXT A6, IFZERO OS8-3 < TAD (1230-2727 > IFZERO OS8-40 < TAD (1643-2731 > SZA /TECO ? JMP A7 JMS TXT TEC-. JMP I KBTXT A7, IFZERO OS8-3 < TAD (2727-1440 SZA CLA /PASSWORD ? JMP A8 / > IFZERO OS8-40 < TAD (2731-1440 SZA CLA JMP A8 / > JMS TXT BYE-. JMP I KBTXT A8, JMS TXT KB-. JMP I KBTXT TYPE, 0 TAD (4000 TYPE1, ISZ C4096 SKP JMP I YOUT JMS MONITOR CALL OUTNAM, "T-"K^100 JMP TYPE1 CDF 10 CLA CLL DCA C4096 JMP I TYPE CRLF, 0 TAD C215 JMS TYPE TAD C212 JMS TYPE JMP I CRLF SPACE, 0 TAD C240 JMS TYPE JMP I SPACE TXT, 0 CDTOIF TAD I TXT TAD TXT DCA CRLF ISZ TXT TXT1, TAD I CRLF BSW JMS BYTE TAD I CRLF JMS BYTE ISZ CRLF JMP TXT1 BYTE, 0 CDF 10 AND C77 SNA JMP I TXT /DONE TAD C240 AND C77 TAD C240 JMS TYPE CDTOIF JMP I BYTE HEAD, IFZERO BGMAX-1 <TEXT /CORE BG1/ > IFZERO BGMAX-2 <TEXT /CORE BG1 BG2/ > IFZERO BGMAX-3 <TEXT /CORE BG1 BG2 BG3/ > IFZERO BGMAX-4 <TEXT /CORE BG1 BG2 BG3 BG4/ > IFZERO BGMAX-5 <TEXT /CORE BG1 BG2 BG3 BG4 BG5/ > IFZERO BGMAX-6 <TEXT /CORE BG1 BG2 BG3 BG4 BG5 BG6/ > IFZERO BGMAX-7 <TEXT /CORE BG1 BG2 BG3 BG4 BG5 BG6 BG7/ > KBM, TEXT /OS8/ EDT, TEXT /EDT/ TEC, TEXT /TEC/ BYE, TEXT /BYE/ KB, TEXT /KB / IO, TEXT /IO/ RU, TEXT /RU/ CB, TEXT /^B / SW, TEXT /SW/ XHLT, TEXT /HLT/ C4096, 0 PAGE $-$-$