cdc:nos2.source:opl871:xtask
Table of Contents
XTASK
Table Of Contents
- [00011] EXECUTE NAMED TASK.
- [00065] EXECUTE NAMED TASK.
Source Code
- XTASK.txt
- IDENT XTASK
- ENTRY XTASK
- LCC OVERLAY(XTASK,0,0)
- SST BEGN,CMBL
- SYSCOM B1
- *COMMENT EXECUTE NAMED TASK.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- XTASK TITLE EXECUTE NAMED TASK.
- XTASK SPACE 4,10
- *** XTASK - EXECUTE NAMED TASK.
- * E. D. REDIG. 79/10/03.
- XTASK SPACE 4,25
- *** XTASK IS A SPECIAL TASK SCHEDULER USED TO EXECUTE
- * ALMOST ANY NAMED TASK. IT WILL NOT EXECUTE TASKS
- * BY THE NAMES - *BTASK*, *CTASK*, *ITASK*, *KDIS*,
- * *MSABT*, *OFFTASK*, *RCTASK*, *RTASK*, *SYSMSG*, AND
- * *XTASK*. THESE ARE THE NAMES OF SYSTEM TASKS. *XTASK*
- * MAY BE USED TO SCHEDULE *LOGT* AS A MEANS OF LOGGING.
- * A TERMINAL OUT OF TRANSACTION MODE. *XTASK* CAN BE
- * CALLED VIA *ITASK* BY THE FOLLOWING INPUT.
- *
- * EX.TASK
- *
- * WHERE:
- *
- * EX. SPECIAL THREE-CHARACTER CODE WHICH
- * CAUSES *ITASK* TO SCHEDULE *XTASK*.
- *
- * TASK ONE- TO SEVEN-CHARACTER ALPHANUMERIC
- * TASK NAME, LEFT-JUSTIFIED WITH A
- * NON-ALPHANUMERIC CHARACTER TERMINATOR.
- *
- * NOTE: SEE *ITASK* FOR CAUTION ON USE OF *XTASK*.
- * COMMON DECKS.
- *CALL COMKTAF
- *CALL COMKFLD
- *CALL COMKIPR
- BEGN BSS 0 SAVE ORIGIN COUNTER
- *CALL COMKCBD
- ORG BEGN RESTORE ORIGIN COUNTER
- *CALL COMKMAC
- *CALL COMSPRD
- XTASK SPACE 4,15
- *** COMMUNICATION BLOCK HEADER WORDS AND MESSAGE.
- *
- *T TRSQ 12/ DB,24/ UA,24/ SEQ
- *T, TNAM 42/ TN,18/
- *T, TMSW 18/ EX,42/ TASK
- *
- * DB DATA BASE FOR TERMINAL.
- * UA USER ARGUMENT FIELD FOR TERMINAL.
- * SEQ TRANSACTION SEQUENCE NUMBER.
- * TN TERMINAL NAME.
- * EX EXECUTE CHARACTER CODE *EX.*.
- * TASK DESIRED TASK TO BE SCHEDULED.
- BSS CMBL RESERVE SPACE FOR COMMUNICATION BLOCK
- XTASK SPACE 4,15
- ** XTASK - EXECUTE NAMED TASK.
- *
- * ENTRY COMMUNICATION BLOCK LOADED.
- *
- * EXIT DESIRED TASK SCHEDULED.
- *
- * USES A - 1, 4, 6.
- * B - 1, 2, 3.
- * X - 1, 2, 3, 4, 5, 6.
- *
- * CALLS CBT.
- *
- * MACROS CALLTSK, CEASE, FMSG, SEND.
- XTASK SB1 1
- SA1 TMSW READ TERMINAL INPUT
- SA4 A1+B1 GET 8TH CHARACTER
- MX2 -42
- SX5 1R+
- LX4 5-59 SHIFT 8TH CHARACTER FOR MASK
- MX3 -6 ONE CHARACTER MASK
- BX1 -X2*X1 MASK OFF TRANSACTION CODE
- BX4 -X3*X4 MASK OFF 8TH CHARACTER
- LX1 5-41 SHIFT MESSAGE INTO POSITION
- SB2 6
- LX4 23-59-5+59 SHIFT 8TH CHARACTER INTO POSITION
- BX6 X6-X6
- SB3 60
- BX1 X1+X4 ADD 8TH CHARACTER INTO MESSAGE
- XTA1 BX4 -X3*X1 GET A CHARACTER
- ZR X4,XTA2 IF END OF TASK NAME
- IX2 X4-X5
- PL X2,XTA3 IF NOT ALPHANUMERIC
- LX6 6
- BX6 X6+X4 TRANSFER A CHARACTER
- LX1 6
- SB3 B3-B2
- EQ XTA1 LOOP FOR NEXT CHARACTER
- XTA2 SB2 12
- EQ B2,B3,XTA5 IF TOO MANY CHARACTERS IN TASK NAME
- XTA3 ZR X6,XTA5 IF ZERO LENGTH TASK NAME
- SB2 XTAE START OF SYSTEM TASK TABLE
- LX6 X6,B3 LEFT JUSTIFY MESSAGE
- SB3 XTAE+XTAF END OF SYSTEM TASK TABLE
- XTA4 SA1 B2+ GET NEXT TABLE ELEMENT
- BX2 X1-X6
- SB2 B2+B1 INCREMENT TABLE INDEX
- ZR X2,XTA5 IF SYSTEM TASK
- LT B2,B3,XTA4 IF NOT END OF TABLE
- SA6 XTAD TASK NAME
- CALLTSK XTAD,C EXECUTE TASK WITH CEASE
- XTA5 SEND XTAA SEND ERROR MESSAGE
- SA1 TRSQ FIRST WORD OF COMMUNICATIONS BLOCK
- RJ CBT CHECK FOR BINARY TERMINAL
- ZR X6,XTA6 IF NOT BINARY
- SA6 XTAC SET BINARY REQUEST
- SEND XTAB SEND BINARY INPUT REQUEST
- XTA6 CEASE EXIT TASK WITH CEASE
- XTAA FMSG (INCORRECT TASK NAME.)
- XTAB VFD 12/0,18/XTAC,12/0,18/1 SEND CONTROL WORD
- XTAC CON 0 BINARY REQUEST WORD
- XTAD BSSZ 2 TASK LIST FOR *CALLTSK*
- XTAE BSS 0 SYSTEM TASK TABLE
- VFD 42/0LBTASK,18/0
- VFD 42/0LCTASK,18/0
- VFD 42/0LITASK,18/0
- VFD 42/0LKDIS,18/0
- VFD 42/0LMSABT,18/0
- VFD 42/0LOFFTASK,18/0
- VFD 42/0LRCTASK,18/0
- VFD 42/0LRTASK,18/0
- VFD 42/0LSYSMSG,18/0
- VFD 42/0LXTASK,18/0
- XTAF EQU *-XTAE LENGTH OF SYSTEM TASK TABLE
- * COMMON DECK.
- *CALL COMKCBT
- END XTASK
cdc/nos2.source/opl871/xtask.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator