/PARAMETERS FOR RTS-8 TASKS XLIST 0 /CHANGE 0 TO 1 TO PREVENT LISTING / / / / / / / / / /COPYRIGHT (C) 1974 BY DIGITAL EQUIPMENT CORPORATION / / / / / / / / / / /THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE /AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT /CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY /FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. / /THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER /UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED /(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH /SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL. / /DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY /DIGITAL. / / / / / / / / / / /RTS-8 EXEC PARAMETERS - EDITED BY USER PDP8E=1 /1 IF PDP 8/E EAE=0 /1 IF SYSTEM SHOULD SAVE MQ PWRFAL=0 /1 IF POWER FAIL/RESTART ENABLED IN HARDWARE HGHFLD=30 /HIGHEST FIELD USED (EG 30 FOR A 16K MACHINE) NTASKS=20 /NUMBER OF TASKS IN SYSTEM /COMMON TASK NUMBERS - EDITED BY USER /IT IS ADVISABLE TO DEFINE ALL TASKS HERE. NAMES GIVEN BELOW /ARE USED BY SOME SYSTEM TASKS AND SHOULD BE DELETED FROM THIS /LIST IF THE CORRESPONDING TASK IS NOT INCLUDED IN THE SYSTEM CLOCK=1 /CLOCK HANDLER - SHOULD BE HIGH PRIORITY /PWRF=2 /POWER FAIL HANDLING TASK TTY=7 /TELETYPE DRIVER TASK /LPT=4 /LINE PRINTER DRIVER TASK MCR=5 /MONITOR CONSOLE ROUTINE /DTA= /DECTAPE DRIVER TASK RK8=6 /RK8 OR RK8E DISK DRIVER TASK /RF08= /RF08 DISK DRIVER TASK /DF32= /DF32 DISK DRIVER TASK /CSA=11 /CASSETTE DRIVER TASK /CSAF=12 /CASSETTE FILE SUPPORT TASK UDC=3 /UNIVERSAL DIGITAL CONTROLLER TASK OS8= NTASKS /OS/8 SUPPORT - NORMALLY LOWEST PRIORITY OS8F=13 /OS/8 FILE SUPPORT /SOFTWARE PARAMETERS - EDITED BY USER IFDEF OS8 < OSFLDS=2 /NUMBER OF FIELDS TO ALLOCATE TO OS/8 (EG 2) OSKBDV=32 /OS/8 KEYBOARD DEVICE CODE (EG 03 = CONSOLE) OSTTDV=33 /OS/8 TELEPRINTER DEVICE CODE (EG 04) OSSYSD=RK8 /OS/8 SYSTEM DEVICE DRIVER TASK (E.G. RK8) OSFILL=0 /# FILLS NEEDED AFTER LINE FEED > /(EG 4 FOR 2400 BAUD VT05) IFDEF MCR < MCRSYS=1 /1 IF MCR SYSTAT FACILITY DESIRED > IFDEF CLOCK < CLKTYP=0 /0(DK8EA/DK8EC) OR 1(KW12) OR 2(VT8E) OR 3(DK8EP) CLKQLN=20 /MINIMUM NUMBER OF ENTRIES ON THE CLOCK QUEUE DECIMAL HERTZ=50 /NUMBER OF HARDWARE TICKS PER SECOND SHERTZ=HERTZ /NUMBER OF SYSTEM TICKS PER SECOND OCTAL > /EQUIVALENCES: AC7776= CLL STA RAL AC7775= CLL STA RTL AC4000= CLA STL RAR AC3777= CLL STA RAR AC2000= CLA STL RTR AC0002= CLA STL RTL /MONITOR CALL VALUES: CAL= JMS 20 /CALL THE EXECUTIVE POSTDS= JMP I 24 /DISMISS AN INTERRUPT WAITM= JMS I 25 /WAIT FOR MULTIPLE EVENTS SEND= 0 /SEND MESSAGE RECEIV= 1 /RECEIVE MESSAGE WAITE= 2 /WAIT FOR EVENT FLAG (IN THIS FIELD) RUN= 3 /CONTINUE TASK EXECUTION SUSPND= 4 /SUSPEND TASK EXECUTION (AC=0 SELF) POST= 5 /POST AN EVENT FLAG (ANY FIELD) SKPINS= 6 /INSERT CODE INTO INTERRUPT SKIP CHAIN DERAIL= 7 /INITIATE END-ACTION BLKARG= 10 /BLOCK TASK FOR REASON SPECIFIED IN ARG SENDW= 11 /SEND MESSAGE AND WAIT UNBARG= 12 /UNBLOCK TASK FOR REASON SPECIFIED IN ARG IFDEF UDC /SYSTEM LOCATIONS: MSGTBL= 1200-2 /TASK MESSAGE TABLE TSTABL= NTASKS+2^2+MSGTBL-4 /TASK STATE TABLE - HOLDS /TASK LINK,UM,DF,IF,PC,AC,MQ TFTABL= NTASKS+2^4+TSTABL-1 /TASK FLAGS TABLE - HOLDS /TASK STATUS FLAGS /TASK STATUS FLAGS: MSGWT= 4000 /MESSAGE WAIT EFWT= 2000 /EVENT FLAG WAIT RUNWT= 1000 /SCHEDULE WAIT SWPWT= 0400 /SWAPPER WAIT EORMWT= 0200 /EVENT FLAG OR MESSAGE WAIT USERWT= 0100 /USER SPECIFIED WAIT ENABWT= 0040 /ENABLE WAIT DNEWT= 0001 /DOES NOT EXIST WAIT TSWFLG= 35 /TASK SW INHIBIT FLAG IN FIELD 0 TODL= 36 / LOW ORDER TIME OF DAY IN FIELD 0 TODH= 37 /HIGH ORDER TIME OF DAY IN FIELD 0 DATE= 40 /DATE IN OS8 FORMAT IN FIELD 0 MCREF= 41 /MCR START EVENT FLAG IN FIELD 0 XLIST 1 /FORCE LISTING OFF IFDEF TASK < XLIST /TASK TABLE SETUP - "TASK", "CUR","INIWT", AND "START" /MUST BE DEFINED BY TASK: *TASK^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER INITIALLY CLEAR *TASK^4+TSTABL CUR%10+CUR /INITIAL FLAGS START 0 /INITIAL AC 0 *TASK+TFTABL INIWT XLIST > IFDEF TASK2 < XLIST *TASK2^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER INITIALLY CLEAR *TASK2^4+TSTABL CUR2%10+CUR /INITIAL FLAGS2 START2 0 /INITIAL AC 0 *TASK2+TFTABL INIWT2 XLIST > IFDEF TASK3 < XLIST *TASK3^2+MSGTBL ZBLOCK 2 /MESSAGE BUFFER INITIALLY CLEAR *TASK3^4+TSTABL CUR3%10+CUR /INITIAL FLAGS3 START3 0 /INITIAL AC 0 *TASK3+TFTABL INIWT3 XLIST > XLIST 0 /FORCE LISTING ON