Table of Contents

XTASK

Table Of Contents

  • [00011] EXECUTE NAMED TASK.
  • [00065] EXECUTE NAMED TASK.

Source Code

XTASK.txt
  1. IDENT XTASK
  2. ENTRY XTASK
  3. LCC OVERLAY(XTASK,0,0)
  4. SST BEGN,CMBL
  5. SYSCOM B1
  6. *COMMENT EXECUTE NAMED TASK.
  7. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  8. XTASK TITLE EXECUTE NAMED TASK.
  9.  
  10. XTASK SPACE 4,10
  11. *** XTASK - EXECUTE NAMED TASK.
  12. * E. D. REDIG. 79/10/03.
  13. XTASK SPACE 4,25
  14. *** XTASK IS A SPECIAL TASK SCHEDULER USED TO EXECUTE
  15. * ALMOST ANY NAMED TASK. IT WILL NOT EXECUTE TASKS
  16. * BY THE NAMES - *BTASK*, *CTASK*, *ITASK*, *KDIS*,
  17. * *MSABT*, *OFFTASK*, *RCTASK*, *RTASK*, *SYSMSG*, AND
  18. * *XTASK*. THESE ARE THE NAMES OF SYSTEM TASKS. *XTASK*
  19. * MAY BE USED TO SCHEDULE *LOGT* AS A MEANS OF LOGGING.
  20. * A TERMINAL OUT OF TRANSACTION MODE. *XTASK* CAN BE
  21. * CALLED VIA *ITASK* BY THE FOLLOWING INPUT.
  22. *
  23. * EX.TASK
  24. *
  25. * WHERE:
  26. *
  27. * EX. SPECIAL THREE-CHARACTER CODE WHICH
  28. * CAUSES *ITASK* TO SCHEDULE *XTASK*.
  29. *
  30. * TASK ONE- TO SEVEN-CHARACTER ALPHANUMERIC
  31. * TASK NAME, LEFT-JUSTIFIED WITH A
  32. * NON-ALPHANUMERIC CHARACTER TERMINATOR.
  33. *
  34. * NOTE: SEE *ITASK* FOR CAUTION ON USE OF *XTASK*.
  35.  
  36.  
  37. * COMMON DECKS.
  38.  
  39.  
  40. *CALL COMKTAF
  41. *CALL COMKFLD
  42. *CALL COMKIPR
  43. BEGN BSS 0 SAVE ORIGIN COUNTER
  44. *CALL COMKCBD
  45. ORG BEGN RESTORE ORIGIN COUNTER
  46. *CALL COMKMAC
  47. *CALL COMSPRD
  48. XTASK SPACE 4,15
  49. *** COMMUNICATION BLOCK HEADER WORDS AND MESSAGE.
  50. *
  51. *T TRSQ 12/ DB,24/ UA,24/ SEQ
  52. *T, TNAM 42/ TN,18/
  53. *T, TMSW 18/ EX,42/ TASK
  54. *
  55. * DB DATA BASE FOR TERMINAL.
  56. * UA USER ARGUMENT FIELD FOR TERMINAL.
  57. * SEQ TRANSACTION SEQUENCE NUMBER.
  58. * TN TERMINAL NAME.
  59. * EX EXECUTE CHARACTER CODE *EX.*.
  60. * TASK DESIRED TASK TO BE SCHEDULED.
  61.  
  62.  
  63. BSS CMBL RESERVE SPACE FOR COMMUNICATION BLOCK
  64. XTASK SPACE 4,15
  65. ** XTASK - EXECUTE NAMED TASK.
  66. *
  67. * ENTRY COMMUNICATION BLOCK LOADED.
  68. *
  69. * EXIT DESIRED TASK SCHEDULED.
  70. *
  71. * USES A - 1, 4, 6.
  72. * B - 1, 2, 3.
  73. * X - 1, 2, 3, 4, 5, 6.
  74. *
  75. * CALLS CBT.
  76. *
  77. * MACROS CALLTSK, CEASE, FMSG, SEND.
  78.  
  79.  
  80. XTASK SB1 1
  81. SA1 TMSW READ TERMINAL INPUT
  82. SA4 A1+B1 GET 8TH CHARACTER
  83. MX2 -42
  84. SX5 1R+
  85. LX4 5-59 SHIFT 8TH CHARACTER FOR MASK
  86. MX3 -6 ONE CHARACTER MASK
  87. BX1 -X2*X1 MASK OFF TRANSACTION CODE
  88. BX4 -X3*X4 MASK OFF 8TH CHARACTER
  89. LX1 5-41 SHIFT MESSAGE INTO POSITION
  90. SB2 6
  91. LX4 23-59-5+59 SHIFT 8TH CHARACTER INTO POSITION
  92. BX6 X6-X6
  93. SB3 60
  94. BX1 X1+X4 ADD 8TH CHARACTER INTO MESSAGE
  95. XTA1 BX4 -X3*X1 GET A CHARACTER
  96. ZR X4,XTA2 IF END OF TASK NAME
  97. IX2 X4-X5
  98. PL X2,XTA3 IF NOT ALPHANUMERIC
  99. LX6 6
  100. BX6 X6+X4 TRANSFER A CHARACTER
  101. LX1 6
  102. SB3 B3-B2
  103. EQ XTA1 LOOP FOR NEXT CHARACTER
  104.  
  105. XTA2 SB2 12
  106. EQ B2,B3,XTA5 IF TOO MANY CHARACTERS IN TASK NAME
  107. XTA3 ZR X6,XTA5 IF ZERO LENGTH TASK NAME
  108. SB2 XTAE START OF SYSTEM TASK TABLE
  109. LX6 X6,B3 LEFT JUSTIFY MESSAGE
  110. SB3 XTAE+XTAF END OF SYSTEM TASK TABLE
  111. XTA4 SA1 B2+ GET NEXT TABLE ELEMENT
  112. BX2 X1-X6
  113. SB2 B2+B1 INCREMENT TABLE INDEX
  114. ZR X2,XTA5 IF SYSTEM TASK
  115. LT B2,B3,XTA4 IF NOT END OF TABLE
  116. SA6 XTAD TASK NAME
  117. CALLTSK XTAD,C EXECUTE TASK WITH CEASE
  118.  
  119. XTA5 SEND XTAA SEND ERROR MESSAGE
  120. SA1 TRSQ FIRST WORD OF COMMUNICATIONS BLOCK
  121. RJ CBT CHECK FOR BINARY TERMINAL
  122. ZR X6,XTA6 IF NOT BINARY
  123. SA6 XTAC SET BINARY REQUEST
  124. SEND XTAB SEND BINARY INPUT REQUEST
  125. XTA6 CEASE EXIT TASK WITH CEASE
  126.  
  127. XTAA FMSG (INCORRECT TASK NAME.)
  128. XTAB VFD 12/0,18/XTAC,12/0,18/1 SEND CONTROL WORD
  129. XTAC CON 0 BINARY REQUEST WORD
  130. XTAD BSSZ 2 TASK LIST FOR *CALLTSK*
  131. XTAE BSS 0 SYSTEM TASK TABLE
  132. VFD 42/0LBTASK,18/0
  133. VFD 42/0LCTASK,18/0
  134. VFD 42/0LITASK,18/0
  135. VFD 42/0LKDIS,18/0
  136. VFD 42/0LMSABT,18/0
  137. VFD 42/0LOFFTASK,18/0
  138. VFD 42/0LRCTASK,18/0
  139. VFD 42/0LRTASK,18/0
  140. VFD 42/0LSYSMSG,18/0
  141. VFD 42/0LXTASK,18/0
  142. XTAF EQU *-XTAE LENGTH OF SYSTEM TASK TABLE
  143.  
  144.  
  145. * COMMON DECK.
  146.  
  147.  
  148. *CALL COMKCBT
  149.  
  150.  
  151. END XTASK