/ KL8 CONSOLE OVERLAY CUSTOMIZER / LAST EDIT: 08-APR-1987 23:00:00 CJL / MAY BE ASSEMBLED WITH '/J' SWITCH SET. / THIS IS A SECONDARY CONSOLE OVERLAY FILE FOR CUSTOMIZING SEVERAL / PARAMETERS OF THE KL8 PRIMARY CONSOLE OVERLAY FILE. IT IS INTENDED TO BE / USED AS FOLLOWS: / .CONSOLE KL8,KL8PCH UPDATE CONSOLE IMAGE / SEVERAL OVERALL VERSIONS ARE AVAILABLE: / OVTYPE= 1 /GENERATES A STANDARD OVERLAY (DEVICE 03, 04 AND /DEVICE 65, 66 LPT: / OVTYPE= 2 /GENERATES A NON-STANDARD OVERLAY (DEVICE 03, 04 /AND DEVICE 40, 41 LPT: / OVTYPE= 10 /GENERATES A DECMATE OVERLAY (DEVICE 03, 04 AND /DEVICE 32, 33 LPT: / OVTYPE= 60 /GENERATES A NON-STANDARD OVERLAY (DEVICE 40, 41 /AND DEVICE 65, 66 LPT: / OVTYPE= 61 /GENERATES A NON-STANDARD OVERLAY (DEVICE 40, 41 /AND DEVICE 03, 04 LPT: / OTHER TYPES ARE USER-DEFINABLE BY SPECIFYING EXPLICIT PARAMETERS. / SOME PARAMETERS ARE NECESSARY TO CUSTOMIZE HARDWARE-SPECIFIC FEATURES OF / THE STANDARD CONFIGURATIONS: / KEY= XX /KEYBOARD DEVICE CODE (NORMALLY 03) / OUT= XX /CONSOLE OUTPUT DEVICE CODE (NORMALLY 04) / LIN= XX /IF NEEDED: LINE-PRINTER INPUT DEVICE CODE (NORMALLY 65) / LPT= XX /LINE-PRINTER OUTPUT DEVICE CODE (NORMALLY 66) / DKEY= XX /IF NEEDED: VT-8/E KEYBOARD DEVICE CODE (NORMALLY 43) / IRATE= XX /IF NEEDED: DECMATE LPT: BAUD RATE (NORMALLY 14) / NAMCH1= XXYY /FIRST OVERLAY ID NAME PAIR / NAMCH2= XXYY /SECOND OVERLAY ID NAME PAIR / NAMCH3= XXYY /THIRD OVERLAY ID NAME PAIR / NMCH1= XXYY /FIRST FILE ID NAME PAIR / NMCH2= XXYY /SECOND FILE ID NAME PAIR / NMCH3= XXYY /THIRD FILE ID NAME PAIR / LCASE= 1 /LOWER-CASE CHARACTERS PASSED THROUGH / LCASE= 0 /LOWER-CASE CHARACTERS FOLDED TO UPPER-CASE / LPBUFF= 1 /GENERATES AN OVERLAY WITH LPT: BUFFERING / LPBUFF= 0 /GENERATES AN OVERLAY WITH NO LPT: BUFFERING / VT8LPT= 1 /GENERATES INTERRUPT ENABLE FOR LPT: WITH SHARED /INTERRUPT CONTROL FOR THE VT-8/E KEYBOARD / VT8LPT= 0 /GENERATES INTERRUPT ENABLE FOR LPT: ALONE / ONEWAY= 1 /LPT: HAS HARDWARE-ONLY HANDSHAKING /DEVICE CODE LIN INPUT IGNORED / ONEWAY= 0 /LPT: HAS <^S>/<^Q> INPUT FLOW CONTROL /ON DEVICE CODE LIN INPUT / NOLIE= 0 /LPT: INPUT INTERRUPT ENABLE EXISTS / NOLIE= 1 /LPT: INPUT INTERRUPT ENABLE DOES NOT EXIST / NOLOE= 0 /LPT: OUTPUT INTERRUPT ENABLE EXISTS / NOLOE= 1 /LPT: OUTPUT INTERRUPT ENABLE DOES NOT EXIST / SET CUSTOM PARAMETERS HERE. / DKEY= 43 /VT-8/E KEYBOARD IOT CODE / IRATE= 14 /4800 BAUD SERIAL PRINTER ON DECMATE, ETC. / KEY= 03 /CONSOLE INPUT IOT CODE / LCASE= 1 /ALLOW LOWER-CASE WITHOUT FOLDING / LIN= 65 /LPT: INPUT IOT CODE / LPBUFF= 1 /ENABLE LPT: BUFFERING / LPT= 66 /LPT: OUTPUT IOT CODE / NAMCH1= "K^100+"L-300 /FIRST FILE ID NAME PAIR ("KL8E") / NAMCH2= "8^100+"E-300 /SECOND FILE ID NAME PAIR ("KL8E") / NAMCH3= 0000 /THIRD FILE ID NAME PAIR ("KL8E") / NMCH1= "K^100+"L-300 /FIRST FILE NAME PAIR ("KL8") / NMCH2= "8^100 /SECOND FILE NAME PAIR ("KL8") / NMCH3= 0000 /THIRD FILE NAME PAIR ("KL8") / NOLIE= 1 /LIEIOT DOES NOT EXIST (USUALLY LPT: IS OUTPUT ONLY) / NOLOE= 1 /LPEIOT DOES NOT EXIST (INTERRUPTS ENABLED WITH /DKIEIOT SHARED WITH VT-8/E KEYBOARD) / ONEWAY= 1 /LPT: OUTPUT ONLY / OUT= 04 /CONSOLE OUTPUT IOT CODE / OVTYPE= 01 /GENERATE STANDARD TYPE 01 OVERLAY / VT8LPT= 1 /LPT: OUTPUT AND VT-8/E INPUT SHARE INTERRUPT ENABLE / CONDITIONAL ASSEMBLY PARAMETERS. / THESE CONDITIONALS GENERATE THE STANDARD VALUES FOR EACH OF THE DEFINED / OVERLAY TYPES. IF THE USER CHOOSES AN ALTERNATE OVERLAY TYPE, ALL SUCH / PARAMETERS MUST BE SPECIFIED (OR WILL BE DEFAULTED TO "CATCH-ALL" VALUES). / N. B., SOME PARAMETERS ARE DEFAULTED IN THE "CATCH-ALL" SECTION BELOW EVEN / IF A STANDARD OVERLAY TYPE IS CHOSEN, AS THEY ARE STILL CUSTOM PARAMETERS / WITHIN A STANDARD OVERLAY TYPE. IFNDEF OVTYPE /GENERATE TYPE 01 OVERLAY / "KL8E" OVERLAY CONDITIONALS. IFZERO OVTYPE-01 < IFNDEF DKEY /VT-8/E KEYBOARD IOT CODE IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF ONEWAY /LPT: OUTPUT ONLY IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /SHARED VT-8/E, LPT INTERRUPTS / LPT: INTERRUPT ENABLE DEFINITIONS. IFNDEF NOLIE /LIEIOT DOES/DOES NOT EXIST IFNDEF NOLOE /LPEIOT DOES/DOES NOT EXIST > / "KL8ESP" OVERLAY CONDITIONALS. IFZERO OVTYPE-02 < IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF ONEWAY /LPT: WITH INPUT FLOW CONTROL IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /NO VT-8/E, LPT: SHARED ENABLE / LPT: INTERRUPT ENABLE DEFINITIONS. IFNDEF NOLIE /LIEIOT DOES/DOES NOT EXIST IFNDEF NOLOE /LPEIOT DOES/DOES NOT EXIST > / DECMATE "KLMATE" OVERLAY CONDITIONALS. IFZERO OVTYPE-10 < IFNDEF IRATE /4800 BAUD SERIAL LPT: RATE IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF LSBIOT /SET BAUD RATE IOT IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF ONEWAY /LPT: WITH INPUT FLOW CONTROL IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /NO VT-8/E, LPT: SHARED ENABLE / LPT: INTERRUPT ENABLE DEFINITIONS. IFNDEF NOLIE /LIEIOT EXISTS IFNDEF NOLOE /LPEIOT EXISTS > / "KL40" OVERLAY CONDITIONALS. IFZERO OVTYPE-60 < IFNDEF DKEY /VT-8/E KEYBOARD IOT CODE IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF ONEWAY /LPT: OUTPUT ONLY IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /VT-8/E LPT: INTERRUPTS / LPT: INTERRUPT ENABLE DEFINITIONS. IFNDEF NOLIE /LIEIOT DOES/DOES NOT EXIST IFNDEF NOLOE /LPEIOT DOES/DOES NOT EXIST > / "KL40SP" OVERLAY CONDITIONALS. IFZERO OVTYPE-61 < IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF ONEWAY /LPT: WITH INPUT FLOW CONTROL IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /NO VT-8/E, LPT: SHARED ENABLE / LPT: INTERRUPT ENABLE DEFINITIONS. IFNDEF NOLIE /LIEIOT DOES/DOES NOT EXIST IFNDEF NOLOE /LPEIOT DOES/DOES NOT EXIST > / DEFAULT ("CATCH-ALL") PARAMETERS. IFNDEF DKEY /VT-8/E KEYBOARD IOT CODE IFNDEF IRATE /4800 BAUD LPT: ON DECMATE, ETC. IFNDEF KEY /CONSOLE INPUT IOT CODE IFNDEF LCASE /LOWER-CASE WITHOUT FOLDING IFNDEF LIN /LPT: INPUT IOT CODE IFNDEF LPBUFF /LPT: BUFFERING ENABLED IFNDEF LPT /LPT: OUTPUT IOT CODE IFNDEF LSBIOT /NO BAUD RATE SETTING IFNDEF NAMCH1 /FIRST OVERLAY ID NAME PAIR IFNDEF NAMCH2 /SECOND OVERLAY ID NAME PAIR IFNDEF NAMCH3 /THIRD OVERLAY ID NAME PAIR IFNDEF NMCH1 /FIRST FILE NAME PAIR IFNDEF NMCH2 /SECOND FILE NAME PAIR IFNDEF NMCH3 /THIRD FILE NAME PAIR IFNDEF NOLIE /LIEIOT ENABLES LPT: INPUT INTERRUPTS IFNDEF NOLOE /LPEIOT ENABLES LPT: OUTPUT INTERRUPTS IFNDEF ONEWAY /LPT: WITH INPUT FLOW CONTROL IFNDEF OUT /CONSOLE OUTPUT IOT CODE IFNDEF VT8LPT /VT-8/E IN, LPT: OUT INTERRUPT ENABLE // DEFINITIONS FROM KL8. BAUDRAT=0064 /DECMATE, ETC. PRINTER BAUD RATE DKILOCA=1567 /VT-8/E KEYBOARD INTERRUPT ENABLE LOCATION INCIF2= 1637 /KEYBOARD INPUT INTERRUPT PROTECTION INITNOR=0247 /INITIALIZING LOCATION INTCON= 0600 /INTERRUPT HANDLER INTDEV= 0665 /INTERRUPT DEVICE LIST KINLOCA=1553 /KEYBOARD INTERRUPT ENABLE LOCATION KTILOCA=4026 /KEYBOARD TEST INSTRUCTION LOCATION LCMODE= 0006 /LOWER-CASE MODE LICIF2= 1531 /LPT: INPUT INTERRUPT PROTECTION LINLOCA=1561 /LPT: INPUT INTERRUPT ENABLE LOCATION LOTLOCA=1564 /LPT: OUTPUT INTERRUPT ENABLE LOCATION LPMODE= 0004 /LPT: BUFFERING MODE SWITCH LPOCIF= 1427 /LPT: OUTPUT INTERRUPT PROTECTION LPRINT= 0625 /LPT: INPUT INTERRUPT HANDLER LPTINT= 0645 /LPT: OUTPUT INTERRUPT HANDLER OUTCIF= 1657 /CONSOLE OUTPUT INTERRUPT PROTECTION OUTIME= 0264 /CONSOLE OUTPUT TIME-OUT TEST OUTINT= 0636 /CONSOLE OUTPUT INTERRUPT HANDLER OUTTST= 0260 /CONSOLE OUTPUT FLAG TEST OVID= 0106 /OVERLAY ID NAME FIELD OVRWRD= 0111 /OVERLAY TYPE WORD TIMOUT= 4056 /HARDWARE FLAG TIME-OUT TIMTST= 4045 /HARDWARE TIME-OUT TEST TINLOCA=1556 /TERMINAL OUTPUT INTERRUPT ENABLE LOCATION VTINT= 0655 /VT-8/E KEYBOARD INTERRUPT HANDLER // END OF KL8 DEFINITIONS. / IOT DEFINITIONS. / CONSOLE KEYBOARD DEFINITIONS. KIEIOT= KEY^10+6005 /KEYBOARD INTERRUPT ENABLE PER AC[11] KRBIOT= KEY^10+6006 /READ KEYBOARD BUFFER, CLEAR THE FLAG KSFIOT= KEY^10+6001 /SKIP ON (AND CLEAR IF 6120) KEYBOARD FLAG KTIIOT= KEY^10+6003 /KEYBOARD TEST INSTRUCTION / CONSOLE OUTPUT DEFINITIONS. TCFIOT= OUT^10+6002 /CLEAR TTY: FLAG TFLIOT= OUT^10+6000 /SET TTY: FLAG TIEIOT= OUT^10+6005 /OUTPUT INTERRUPT ENABLE PER AC[11] (FOR 6120) TLSIOT= OUT^10+6006 /OUTPUT CHARACTER, CLEAR FLAG TSFIOT= OUT^10+6001 /SKIP ON (CLEAR IF 6120) OUTPUT FLAG / LPT: INPUT DEFINITIONS. ISLI= ONEWAY-1 /7777 IF LPT: INPUT, ELSE 0000 ISLIE= NOLIE-1&ISLI /7777 IF LIEIOT EXISTS, ELSE 0000 LINNOP= ONEWAY^NOP /0000 IF LPT: INPUT, ELSE 7000 LIEIOT= LIN^10+6005&ISLIE /LPT: INPUT INTERRUPT ENALE PER AC[11] LIRBIOT=LIN^10+6006&ISLI /READ LPT: INPUT, CLEAR FLAG (IF NOT 6120) LISFIOT=LIN^10+6001&ISLI!LINNOP /SKIP ON (CLEAR FLAG IF 6120) LPT: INPUT FLAG / LPT: OUTPUT DEFINITIONS. ISLOE= NOLOE-1 /7777 IF LPEIOT EXISTS, ELSE 0000 LCFIOT= LPT^10+6002 /CLEAR LPT: OUTPUT FLAG LLSIOT= LPT^10+6006 /OUTPUT LPT: CHARACTER, CLEAR FLAG (IF NOT 6120) LPEIOT= LPT^10+6005&ISLOE /LPT: OUTPUT INTERRUPT ENABLE PER AC[11] LSFIOT= LPT^10+6001 /SKIP ON (CLEAR FLAG IF 6120) LPT: OUTPUT FLAG / VT-8/E KEYBOARD DEFINITIONS. DKCFIOT=DKEY^10+6000 /CLEAR VT-8/E KEYBOARD FLAG DKIEIOT=DKEY^10+6005 /INTERRUPT ENABLE PER AC[11] ON VT-8/E, LPT: DKSFIOT=DKEY^10+6001 /SKIP ON VT-8/E KEYBOARD FLAG / OVERLAY TO PRIMARY FILE CODE. / THIS SECONDARY OVERLAY FILE MUST START WITH THE THREE ORIGIN SETTINGS / MATCHING THE PRIMARY FILE. *NMCH1 /FIRST FILE NAME PAIR ORIGIN *NMCH2 /SECOND FILE NAME PAIR ORIGIN *NMCH3 /THIRD FILE NAME PAIR ORIGIN / THE NEXT ORIGIN MUST BE BETWEEN 0000-0077. SINCE THIS IS A SECONDARY FILE, / IT MAY NOT BE ZERO. *LPMODE /LPT: BUFFERING MODE 1-LPBUFF /LPT: BUFFERING MODE; 1=NO BUFFERING *LCMODE /LOWER-CASE MODE 1-LCASE^7740 /7740=FOLD LOWER-CASE TO UPPER-CASE *BAUDRATE /DECMATE, ETC. PRINTER BAUD RATE IRATE /14=4800 ON DECMATE, ETC. / THE FOLLOWING THREE WORDS OVERLAY THE OVERLAY ID NAME FIELD DIRECTLY. IF / NO DIRECT LOADING OCCURS HERE, THE ACTUAL NAME WILL BE TAKEN FROM THE THREE / ORIGIN SETTINGS THAT START THIS FILE (THEY MUST MATCH THE PRIMARY FILE, / THUS LIMITING THE NAME TO THE PRIMARY FILE'S NAME SUCH AS "KL8"). THE SIX / CHARACTERS LOADED HERE ARE UNRELATED TO THE PRIMARY FILE, THUS MORE / INFORMATIVE OVERLAY NAMES ARE POSSIBLE. *OVID /OVERLAY ID NAME FIELD NAMCH1 /FIRST OVERLAY ID NAME PAIR NAMCH2 /SECOND OVERLAY ID NAME PAIR NAMCH3 /THIRD OVERLAY ID NAME PAIR *OVRWRD /OVERLAY TYPE WORD OVTYPE^100 /INDICATE OUR OVERLAY TYPE *INITNOR+4 /OVER BAUD RATE SETUP LSBIOT /SET BAUD RATE ON DECMATE, ETC. *OUTTST /OVER OUTPUT TEST TSFIOT /SKIP ON OUTPUT READY *OUTTST+2 /OVER FLAG SET TFLIOT /RESET FLAG FOR DECMATE *OUTIME+4 /OVER OUTPUT FLAG SET TLSIOT /SET THE FLAG NOW *INTCON+5 /OVER KEYBOARD INTERRUPT HANDLER KSFIOT /KEYBOARD FLAG UP? *INTCON+13 /OVER KEYBOARD READ KRBIOT /GET THE CHARACTER, CLEARING THE FLAG *LPRINT /OVER LPT: INPUT INTERRUPT HANDLER LISFIOT /LPT: INPUT FLAG UP? *LPRINT+2 /OVER LPT: INPUT READ LIRBIOT /READ THE LPT: INPUT CHARACTER, CLEARING THE FLAG *OUTINT /OVER CONSOLE OUTPUT INTERRUPT HANDLER TSFIOT /CONSOLE OUTPUT FLAG UP? *OUTINT+2 /OVER CONSOLE OUTPUT FLAG CLEAR TCFIOT /CLEAR CONSOLE OUTPUT FLAG *LPTINT /OVER LPT: OUTPUT INTERRUPT HANDLER LSFIOT /LPT: OUTPUT FLAG UP? *LPTINT+2 /OVER LPT: OUTPUT FLAG CLEAR LCFIOT /CLEAR LPT: OUTPUT FLAG *VTINT /OVER VT-8/E KEYBOARD INTERRUPT HANDLER DKSFIOT /VT-8/E KEYBOARD FLAG UP? *VTINT+2 /OVER VT-8/E KEYBOARD FLAG CLEAR DKCFIOT /CLEAR VT-8/E KEYBOARD FLAG *INTDEV /OVER INTERRUPT DEVICE LIST KSFIOT /KEYBOARD SKIP TSFIOT /CONSOLE OUTPUT SKIP -ONEWAY!LISFIOT /LPT: INPUT SKIP LSFIOT /LPT: OUTPUT SKIP -VT8LPT&DKSFIOT /VT-8/E KEYBOARD SKIP ZBLOCK 7 /ROOM FOR ADDITIONAL FLAG SKIPS 0 /THIS ENDS THE LIST *LPOCIF+2 /OVER LPT: OUTPUT ROUTINE LSFIOT /LPT: OUTPUT FLAG UP? *LPOCIF+10 /OVER LPT: OUTPUT ROUTINE LLSIOT /OUTPUT CHARACTER TO LPT: NOW *LICIF2+1 /OVER LPT: INPUT ROUTINE LISFIOT /LPT: INPUT FLAG UP? *LICIF2+3 /OVER LPT: INPUT ROUTINE LIRBIOT /READ THE CHARACTER IN, CLEARING THE FLAG *KINLOCATION /OVER KEYBOARD INTERRUPT ENABLE KIEIOT /KEYBOARD INTERRUPT ENABLE *TINLOCATION /OVER OUTPUT INTERRUPT ENABLE TIEIOT /OUTPUT INTERRUPT ENABLE *LINLOCATION /OVER LPT: INPUT INTERRUPT ENABLE LIEIOT /LPT: INPUT INTERRUPT ENABLE *LOTLOCATION /OVER LPT: OUTPUT INTERRUPT ENABLE LPEIOT /LPT: OUTPUT INTERRUPT ENABLE *DKILOCATION /OVER VT-8/E KEYBOARD INTERRUPT ENABLE DKIEIOT /VT-8/E KEYBOARD INTERRUPT ENABLE *INCIF2+1 /OVER KEYBOARD INPUT ROUTINE KSFIOT /KEYBOARD FLAG UP? *INCIF2+3 /OVER KEYBOARD INPUT ROUTINE KRBIOT /READ THE CHARACTER AND CLEAR THE FLAG *OUTCIF+2 /OVER CONSOLE OUTPUT ROUTINE TSFIOT /CONSOLE OUTPUT FLAG UP? *OUTCIF+10 /OVER CONSOLE OUTPUT ROUTINE TLSIOT /OUTPUT THE CHARACTER NOW *KTILOCATION /OVER TEST IOT KTIIOT /TEST FOR PRE-OMNIBUS CONSOLE *TIMTST /OVER HARDWARE TIME-OUT TEST TSFIOT /FLAG UP? *TIMOUT+4 /OVER FLAG TIME-OUT ROUTINE TLSIOT /SET THE FLAG NOW $ /THAT'S ALL FOLK!