IDENT STASK
ENTRY STASK
LCC OVERLAY(STASK,0,0)
SST BEGN,CMBL
SYSCOM B1
TITLE STASK - SEND MESSAGE THEN CEASE.
*COMMENT STASK - SEND MESSAGE THEN CEASE.
COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
SPACE 4,10
*** STASK - SEND MESSAGE THEN CEASE.
*
* M. S. PESCHMAN. 84/07/25.
STASK SPACE 4,10
*** STASK SENDS A MESSAGE TO THE TERMINAL AND THEN USING THE
* *CEASE* MACRO CEASES. STASK WILL ONLY BE CALLED FROM
* *ITASK* WHEN *ITASK* WOULD SEND A MESSAGE TO THE TERMINAL
* AND CEASE. THIS WILL PREVENT *ITASK* FROM HANGING DUE TO
* LACK OF OPERATOR RESPONSE.
* COMMON DECKS.
*CALL COMKFLD
*CALL COMKIPR
BEGN BSS 0 SAVE ORIGIN COUNTER
*CALL COMKCBD
ORG BEGN RESTORE ORIGIN COUNTER
*CALL COMKMAC
SPACE 4,15
*** COMMUNICATION BLOCK DATA ITEM.
*
*T, TMSW 54/ 0, 6/ MN
*
* DB = DATA BASE FOR TERMINAL.
* UA = USER ARGUMENT FIELD FOR TERMINAL.
* SEQ = TRANSACTION SEQUENCE NUMBER.
* TN = TERMINAL NAME.
* MN = MESSAGE NUMBER.
BSS CMBL RESERVE SPACE FOR COMMUNICATION BLOCK
STASK SPACE 4,15
** STASK - SEND A MESSAGE TO A TERMINAL THEN CEASE.
*
* ENTRY (TMSW) = MESSAGE NUMBER.
* 0 = *INPUT TOO LARGE*.
* 1 = *BREAK RECIEVED*.
* 2 = *UNKNOWN NAMED TRANSACTION*.
*
* EXIT MESSAGE SENT TO TERMINAL.
*
* USES X - 1, 7.
* A - 1.
* B - 1.
*
* MACROS CEASE, SEND.
STASK SB1 1 ENTRY
SA1 TMSW MESSAGE NUMBER
SX1 X1-1
ZR X1,STA1 IF *BREAK RECIEVED* MESSAGE
NG X1,STA2 IF *INPUT TOO LARGE*
SX7 STAC UNKNOWN NAMED TRANSACTION
EQ STA3 SEND MESSAGE
STA1 SX7 STAA *BREAK RECIEVED.* MESSAGE
EQ STA3 SEND MESSAGE
STA2 SX7 STAB *INPUT TOO LARGE.* MESSAGE
STA3 SEND X7 SEND MESSAGE
CEASE EXIT WITHOUT SCHEDULING TRANSACTION UNIT
STAA FMSG (BREAK RECEIVED.)
STAB FMSG (INPUT TOO LARGE.)
STAC FMSG (UNKNOWN NAMED TRANSACTION REQUESTED FOR SCHEDULING.)
END STASK