|
|
DataMuseum.dkPresents historical artifacts from the history of: IBM System/3 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about IBM System/3 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 32004 (0x7d04)
Types: s3xseg
Names: »S$E070«
└─⟦4498c64f7⟧ Bits:30009191 5704-sc2.V05.ccp
└─⟦95ee7795b⟧
└─⟦this⟧ »S$E070«
MACRO 00010000
.********************************************************************** 00020000
.* * 00030000
.* NAME: $E070 * 00040000
.* * 00050000
.* MODIFICATION LEVEL: MODEL 15D VERSION 4, MOD LEVEL 0 * 00060000
.* * 00070000
.* FUNCTION: * 00080000
.* * 00090000
.* . CCP GENERATION SECOND PASS MACRO-INSTRUCTION -- GENERATE THE * 00100000
.* COMMUNICATION MANAGEMENT TASK. (01 0F 12). * 00110000
.* * 00120000
.* INPUT OPERANDS: NONE. * 00130000
.* * 00140000
.* SYSTEM GLOBALS: * 00150000
.* * 00160000
.* &ONE - MIXTURE OF MLTA AND BSCA. 1=ONLY ONE / 2=BOTH. * 00170000
.* &NDME- DATA MODE ESCAPE. 1=NOT SUPPORTED / 0=SUPPORTED. * 00180000
.* &MIN - MINIMUN SYSTEM. 1=MINIMUN / 0=NOT MINIMUN. * 00190000
.* &NPBY- BUSY PRINTER SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00195000
.* BSCA: * 00200000
.* &NOB - BSCA SUPPORTED. 1=NOT SUPPORTED / 0=SUPPORTED. * 00210000
.* &BSC - NUMBER OF BSCA LINES. NUMBER OF BSCA LINES (DTFS). * 00220000
.* &NPP - BSCA PT-TO-PT SUPPORTED. 1=NOT SUPPORTED / 0=SUPPORTED. * 00230000
.* &NMP - BSCA MULTI-PT TRIBUTARY. 1=NOT SUPPORTED / 0=SUPPORTED. * 00240000
.* &NSWL- BSCA SWITCHED SUPPORTED. 1=NOT SUPPORTED / 0=SUPPORTED. * 00250000
.* &NCS - BSCA CONTROL STATION. 1=NOT SUPPORTED / 0=SUPPORTED. * 00260000
.* &NITB- BSCA ITB SUPPORTED. 1=NOT SUPPORTED / 0=SUPPORTED. * 00270000
.* &NTSP- BSCA TRANSPARENCY. 1=NOT SUPPORTED / 0=SUPPORTED. * 00280000
.* &NAS - BSCA ASCII SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00290000
.* &N32 - BSCA 3270 SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00300000
.* &NRUF- 3270 PGM REQUEST UNDER FMT.1=NOT SUPPORTED / 0=SUPPORTED. * 00305000
.* &NDF - BSCA 3270 DFF SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00310000
.* &N37 - BSCA 3735 SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00320000
.* &N41 - BSCA 3741 SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00325000
.* &NCPU- BSCA CPU SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00330000
.* &NMSG- BSCA GET MSG SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00340000
.* &NINT- BSCA INTERVAL POLLING. 1=NOT SUPPORTED / 0=SUPPORTED. * 00350000
.* &NBDA- DISPLAY ADAPTER SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00355000
.* &NAPOR - BSCA PORTLINE SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00356000
.* &NTTSK - TASK-TO-TASK SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00357000
.* MLTA: * 00360000
.* &NOM - MLTA SUPPORTED. 1=NOT SUPPORTED / 0=SUPPORTED. * 00370000
.* &MLA - NUMBER OF MLTA LINES. NUMBER OF MLTA LINES (DTFS). * 00380000
.* &NSW - MLTA SWITCHED LINES. 1=NOT SUPPORTED / 0=SUPPORTED. * 00390000
.* &NSCTL-MLTA STATION CONTROL. 1=NOT SUPPORTED / 0=SUPPORTED. * 00400000
.* &NBFR -MLTA BUFFERED RECEIVE. 1=NOT SUPPORTED / 0=SUPPORTED. * 00410000
.* &N1050-MLTA 1050 SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00420000
.* &N2741-MLTA 2741 SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00430000
.* &NMOVE-MLTA MOVE ONLY SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00440000
.* * 00450000
.* MODULE LOCALS: * 00460000
.* * 00470000
.* &MIX - WORK AREA TO DETERMINE THINGS IN COMBINATION. * 00480000
.* &YK - WORK AREA TO DETERMINE IF BSCC ONLY GEN * 00490000
.* &C#NL- NUMBER OF BSCC LINES, VALUE OF 1 OR 2 * 00493000
.* &CSIO- SIOC SUPPORT. 1=NOT SUPPORTED / 0=SUPPORTED. * 00496000
.* &CMMP- MULTIPORT SUPPORT FOR BSCA.1=NOT SUPPORTED / 0=SUPPORTED. * 00497000
.* &CMTT- TASK-TO-TASK SUPPORT 1=NOT SUPPORTED / 0=SUPPORTED. * 00498000
.********************************************************************** 00500000
$E070 00510000
GBLB &ONE,&NOB,&NOM,&NDF,&NCS,&NSWL,&NINT,&N32,&CSIO,&NPBY 00530000
GBLB &NAPOR,&NTTSK 00550000
GBLA &BSC,&MLA,&YK,&C#NL 00570000
LCLA &MIX 00590000
TEXT 00600000
* R-04,C-00 CHANGE LEVEL 00610000
CMBEG EQU * 00613000
ENTRY CMBEG 00616000
CMEYE DC CL3'$CM' EYE CATCHER 00620000
DC CL2'05' MOD LEVEL 00630000
&MIX SETA &NOB+&NOM 00640000
&YK SETA &NOB+&NOM 00645000
AIF (&MIX EQ '0').START 00650000
&ONE SETB 1 00660000
.START ANOP 00670000
SPACE 2 00680000
ENTRY $CC4CM ENTRY POINT FOR CM 00690000
ENTRY $CC4FR COMMON PL/RECA FREEMAIN ENTRY 00700000
* * POINT FOR TRANSIENT AND CM. 00710000
SPACE 1 00720000
AIF (&YK EQ '2').YK002 00725000
* ENTRY POINTS IN CCP $$BMCH USED FOR INITIALIZATION BY MLTA AND MLMP 00730000
SPACE 1 00740000
ENTRY $$BMCH ENTRY FOR CCP VERSION OF COMMON 00750000
* * MLMP/MLTA CHECK ROUTINE. 00760000
ENTRY CHBMHL LOCATION FOR MLMP/MLTA STORE 00770000
* * BRACKET HALT (NOT ISSUED) 00780000
AIF (&NOM).M0001 00790000
ENTRY CHBMML ENTRY WHERE MLTA STORES ADDR M 00800000
* * OF MLTA CHECK ROUTINE M 00810000
ENTRY CHBMPC ENTRY WHERE MLTA STORES ADDR M 00820000
* * FOR PCI INTERRUPTS (NOT M 00830000
* * EXITED TO UNDER CCP) M 00840000
.M0001 ANOP 00850000
AIF (&NOB).C0001 00860000
ENTRY CHBMBS ENTRY WHERE MLMP STORES ADDR B 00870000
ENTRY SAVCAT SAVE AREA FOR CAR AND TAR 00875000
* * OF BSCA WAIT ROUTINE. B 00880000
SPACE 1 00890000
AIF (&NSWL).C0000 00900000
ENTRY CMCLOZ ADDR WHERE STARTUP PLUGS MLMP.SB 00910000
* * CLOSE AND OPEN C/S ADDRS. SB 00920000
.C0000 ANOP 00930000
SPACE 00940000
* BSCA ONLY EXTRNS: 00950000
EXTRN $$BSMS SIO ENTRY FOR MLMP B 00960000
EXTRN $CC4BT(3) EXTRN SO ENTRY TO TRACE WILL B 00970000
EXTRN $CC4M1(3) EXTRN FOR MINI-MLMP 00975000
EXTRN $CC4M2(3) EXTRN FOR PRIVILEGED MINI-MLMP B 00977000
* * NOT CAUSE LKED HALT B 00980000
.C0001 ANOP 00990000
AIF (&NOM).C0002 01000000
SPACE 1 01010000
* MLTA ONLY EXTRNS: M 01020000
EXTRN MLTIO1 MLTA ENTRY POINT M 01030000
.C0002 ANOP 01040000
.YK002 ANOP 01045000
TITLE '$E070/$CC4CM/CONTROL LOGIC ' 01050000
*********************************************************************** 01060000
* C O M M U N I C A T I O N S M A N A G E R * 01070000
*********************************************************************** 01080000
SPACE 2 01090000
*********************************************************************** 01100000
* * 01110000
* MODULE - $CC4CM * 01120000
* * 01130000
* FUNCTION - SCHEDULE AND CONTROL ALL TELEPROCESSING COMMUNICATION * 01140000
* TO AND FROM MLTA AND BSCA TERMINALS ATTACHED TO CCP. * 01150000
* SCHEDULE AND CONTROL ALL I/O TO THE SYSTEM CONSOLE. * 01160000
* * 01170000
* ENTRY POINTS : * 01180000
* $CC4CM - MAIN ENTRY POINT. * 01190000
* DISPATCHED BY STARTUP AT THIS POINT. AFTER INITIAL* 01200000
* DISPATCH $CC4CM WILL WAIT FOR MORE WORK JUST * 01210000
* FOLLOWING THIS POINT AND WILL RECEIVE CONTROL * 01220000
* AT THIS WAIT POINT AFTER OP END OR NEW REQUEST * 01230000
* CAUSES $CMECB TO BE POSTED. * 01240000
* * 01250000
* $CC4FR - FREEMAIN PL AND HOLD BUFFER ENTRY POINT. * 01260000
* BRANCHED TO BY $CC4CM AND CM TRANSIENTS. * 01270000
* * 01280000
* GENERATION - THIS MODULE IS ASSEMBLED AT CCP GENERATION. * 01290000
* $CC4CM IS CREATED BY MACROS WHICH ARE NAMED $E0NN WHERE * 01300000
* NN IS A NUMERIC IDENTIFIER OF THE MACRO. * 01310000
* * 01320000
* CODE IN EACH MACRO IS EITHER INCLUDED OR EXCLUDED BASED * 01330000
* ON THE GLOBALS SET BY THE FIRST PASS OF GENERATION. THE * 01340000
* CODE IS IDENTIFIED IN COLUMNS 69-71 BY ALPHABETICS WHICH * 01350000
* IDENTIFIES THE GENERATION OPTION THAT CAUSES ITS INCLUSION * 01360000
* * 01370000
* THE ALPHABETIC IDENTIFIERS ARE AS FOLLOWS: * 01380000
* * 01390000
* COLUMN 71 : * 01400000
* B - BSCA * 01410000
* M - MLTA * 01420000
* 2 - TEST FOR MLTA OR BSCA * 01430000
* * 01440000
* COLUMN 68-70 MAY INCLUDE IN ANY ORDER OR COMBINATION: * 01450000
* C - BSCA OR MLTA CONTROL STATION OR STATION CONTROL * 01470000
* D - BSCA OR MLTA DATA MODE ESCAPE * 01480000
* L - CODE NECESSARY FOR COMBINATION OF LINE TYPES * 01500000
* MIN - CODE PRESENT ON MINRES SYSTEM ONLY. * 01505000
* R - RESIDENT CODE MADE TRANSIENT FOR MINRES-YES. * 01510000
* S - BSCA OR MLTA SWITCHED LINE SUPPORT. * 01520000
* Y - CODE TO HANDLE MULTIPLE DTFS. EXCLUDED IN 1 LINE SYS. * 01530000
* / - OR (FOR COMBINATION OF 2 OTHER IDENTIFIERS * 01535000
* * 01540000
* A - BSCA ASCII SUPPORT * 01590000
* F - BSCA 3270 DFF SUPPORT * 01610000
* G - BSCA GET MESSAGE SUPPORT * 01640000
* I - BSCA ITB (INTERMEDIATE TEXT BLOCK) SUPPORT * 01645000
* N - BSCA INTERVAL POLLING * 01650000
* P - BSCA POINT TO POINT SUPPORT * 01651000
* T - BSCA MULTI POINT TRIBUTARY SUPPORT * 01652000
* U - BSCA CPU TO CPU SUPPORT * 01653000
* W - BSCA 3270 PROGRAM REQUEST UNDER FORMAT (PRUF) * 01654000
* X - BSCA TRANSPARENCY SUPPORT * 01655000
* 0 - BSCA 3270 SUPPORT * 01656000
* 5 - BSCA 3735 SUPPORT * 01657000
* 7 - BSCA 3741 SUPPORT * 01658000
* * 01660000
* B - MLTA BUFFERED RECEIVE SUPPORT * 01670000
* V - MLTA MOVE SUPPORT (NO TRANSLATE) * 01675000
* 1 - MLTA 1050 SUPPORT * 01680000
* 4 - MLTA 2741 SUPPORT * 01690000
* * 01710000
* EXTERNAL REFERENCES: * 01720000
* $CCCOM: * 01730000
* FIELDS IN $CMWK * 01740000
* @CMTCB,@CPTCB * 01750000
* @CKLST * 01760000
* @LCB#1 * 01770000
* @PRLQ 01780000
* #CMERP * 01790000
* #GMS * 01800000
* #OPEND * 01810000
* * 01820000
* CHANGE ACTIVITY - $CC4CM. * 01820500
* RELEASE 1 : * 01821400
* @01/S309284/CORRECTS A -09 (WAIT TIME EXCEEDED) ERROR. * 01822300
* @02/S309280/ENSURES A RVI IS SENT ON GET/RVI OPERATION. * 01823200
* @03/S309527/ENSURES THE CORRECT TERMINAL IS POLLED ON CPU-TO-CPU. * 01824100
* @04/ /CORRECTS DATA TRUNCATED INDICATOR SETTING. * 01825000
* @05/S309470/CORRECTS TERMINALS DROPPING FROM POLL LIST. * 01825900
* @06/S309822/CORRECTS CONTINUOUS -14 RETURN CODE FROM 3270X PRINTER.* 01826800
* @07/S309525/CANCELS A 2 SECOND TIME OUT WITH NO P.L.'S ON DA. * 01827700
* @08/ /CORRECTS A LOOP IN $CC4NQ. * 01828600
* RELEASE 3 : * 01829800
* @09/OS0309 /SUPPORT FOR BUSY 328X PRINTERS. * 01829820
* @10/OS0330 /SUPPORT FOR LOWER CASE INPUT WITH THE PF1 KEY. * 01829840
* @11/OS0311 /SUPPORT FOR AUTOMATIC ERP BYPASS. * 01829860
* @12/S311275/GIVES USER AN OPTION TO SET OFF TUBRUF AT ACCEPT INPUT.* 01829880
* @13/S311871/CORRECTS A -10 ON A BSCC ONLY GEN. * 01829900
* @14/S3 /CORRECTS PROCCHK IF STOP INVITE AND CLEAR KEY. * 01829920
* @15/S310611/CORRECTS A SYSTEM HANG CONDITION AFTER PUT OPERATION. * 01829940
* @16/OS0364 /TERMINATES THE SYSTEM IF A POLL FOR STATUS FAILS. * 01829960
* @17/S312525/CORRECTS TRANSPARENCY HANDLING. * 01829980
* RELEASE 4 : * 01829985
* @18/OS4102 /PORTLINE AND MULTIPORT ENHANCEMENT FOR RELEASE 4. * 01829990
* @19/INCR/OS4301 - TP BUFFER IMPROVEMENTS FOR RELEASE 4 * 01829995
* RELEASE 5 @20 01829996
* @20/INCR/OS5107 - U-NS ERROR RECOVERY IMPROVEMENT $E072 @20 01829997
* @21/APAR/S315205- LOOP IN CM $E092 @21 01829998
* @22/APAR/S315705- U-GE ON TASK TO TASK $E093 @22 01830000
* @23/APAR/S315837- U-FE ON TASK TO TASK $E093 @23 01831000
* @24/APAR/S315721- U-GE ON TASK TO TASK $E080 @24 01832000
* @25/APAR/S316069- PREVENT RED LIGHT WITH EXTRA OPEND $E093 @25 01833000
* @26/APAR/S316097- SPANNING RECORDS $E093 @26 01834000
* @27/APAR/S316347- LOSE RECORD NON-DFF PRINT $E085 @27 01835000
* @28/APAR/S315667- ICF CHANGES (SYSTEM/3 TO SYSTEM/34) $E092 @30 01836000
* @29/APAR/S316540- DA STOPS POLLING $E080 @29 01837000
* @30/APAR/S316650- U-GE HALT $E092 @30 01838000
*********************************************************************** 01839000
EJECT 01840000
*********************************************************************** 01850000
* $CC4CM ENTRY POINT * 01860000
*********************************************************************** 01870000
SPACE 2 01880000
$CC4CM EQU * 'CM' ENTRY POINT. 01890000
AIF (&YK EQ '2').YK003 01895000
SBF CMSWIT,CMSPSI+CMFMPS RESET STOP II AND FM POST FLAGS 01900000
SBN #CMSWT,#CMFMD RESET $CC4GR TO 1ST LCB. 01910000
CLI CORCNT,NOBIT CM WAITING FOR CORE ? 01911000
JE CMNWAT NO - EXECUTE WAIT. 01912000
SBF $CMFM,SKIP SET TO EXECUTE FREE MAIN POST. 01913000
CMNWAT EQU * * LOCAL 01914000
.YK003 ANOP 01915000
LA ECBLST,XR1 ADDRESS OF ECB WAIT LIST 01920000
SVC 0 WAIT FOR WORK - RECEIVE CONTROL 01930000
DC AL1(WAITRB) * WHEN: 01940000
* * NEW TP REQUEST ($CC4II/IS) 01950000
AIF (&NDF).D0030 01960000
* * ($CC4DF) FB 01970000
.D0030 ANOP 01980000
* * TP OP END ($CC4IB/IM) 01990000
* * FREEMAIN DONE AND 02000000
* * REQUEST WAITING 02010000
* * FOR SPACE. ($CC4FM) 02020000
* SET OFF WAIT BITS TO PREVENT TASK FROM BEING DISPATCHED AT 02030000
* ANOTHER WAIT POINT BECAUSE OF A POST TO ONE OF THESE ECBS. 02040000
SPACE 1 02050000
AIF (&YK EQ '2').YK004 02055000
TBN $CMFM,POST IF FREEMAIN HAS OCCURRED AND 02060000
CLI CORCNT,NOBIT * CM IS WAITING FOR ONE, 02070000
JC CMCKCN,FLSOEQ NO-GO CHECK COUNT 02080000
SBN CMSWIT,CMFMPS YES- SET INTERNAL FREEMAIN BIT. 02090000
CMCKCN EQU * * LOCAL 02110000
SBF $CMFM,WAIT+POST RESET FREEMAIN ECB WAIT/POST. 02120000
.YK004 ANOP 02125000
SBF $CMECB,WAIT+POST RESET GENERAL ECB WAIT/POST. 02130000
AIF (&YK EQ '2').YK005 02135000
AIF (&NINT).C0008 02140000
MVI TIMIOB+7,SKIP SET TO SKIP TIMER POSTING NB 02150000
.C0008 ANOP 02160000
JNE CMNOZ0 IF CORE COUNT > 0 - JUMP 02162000
MVI $CMFM,SKIP SET TO SKIP FREE MAIN POST 02164000
CMNOZ0 EQU * * 02166000
* BEGIN BY CHECKING FOR OP ENDS 02170000
TITLE '$E070/CMOPND/CONTROL LOGIC - CHECK OP ENDS ' 02180000
*********************************************************************** 02190000
* TITLE-- CONTROL LOGIC FOR $CC4CM. * 02230000
* * 02240000
* FUNCTION--DISPATCH WORK TO SECTIONS OF RESIDENT $CC4CM. * 02250000
* * 02260000
* OPERATION-- * 02270000
* . IF OPERATION HAS COMPLETED: * 02280000
* . SET UP BSCA DTF * 02290000
* . CALL IOCS CHECK ROUTINE TO GET DATA. * 02300000
* . IF '56' RETURN CODE (NOT COMPLETE), ADJUST OP END * 02310000
* COUNT AND CHECK FOR OTHER OP ENDS. * 02320000
* . IF DATA RECEIVED, EXIT TO CMBOPE (BSCA) OR CMMOPE (MLTA) 02330000
* . IF NEW PUT REQUEST ON QUEUED, * 02340000
* . DEQUEUE PL. * 02350000
* . EXIT TO CMBREQ (BSCA) OR CMMREQ (MLTA). * 02360000
* . IF REQUEST WAITING FOR GETMAIN CAN BE RETRIED: * 02370000
* . IF GETMAIN FAILED AT QUEUE TIME, EXIT TO * 02380000
* CMBSOX (BSCA) OR CMPNWX (MLTA). * 02390000
* . IF GETMAIN FAILED AT SCHEDULE TIME, EXIT TO * 02400000
* CMBTBY (BSCA), OR CMMTBY (MLTA). * 02410000
* . IF NEW READ REQUEST IS ON QUEUE: * 02420000
* . DEQUEUE PL. * 02430000
* . IF ACCEPT, GO TO CMACI. * 02440000
* . EXIT TO CMBREQ (BSCA) OR CMMREQ (MLTA). * 02450000
* . IF LINE WAS IN ERP AND NOW CAN BE RESCHEDULED, DO IT. * 02460000
* . IF INTERVAL POLLING, SET INTERVAL AS NECESSARY. * 02470000
* * 02480000
* ENTRY POINTS-- * 02490000
* CMOPND - CHECK FOR OP ENDS. * 02500000
* CMFRMN,CMREQ - CHECK FOR REQUESTS TO HANDLE. * 02505000
* * 02510000
* INPUT-- * 02520000
* #OPEND - OP END PENDING COUNT. * 02530000
* @CKLST - ADDRESS IF CCP CHECK LIST. * 02540000
* @PRLQ - QUEUE OF NEW REQUESTS FROM $CC4II OR $CC4DF. * 02545000
* * 02550000
* OUTPUT-- * 02560000
* #OPEND - ADJUSTED FOR OP ENDS HANDLED. * 02570000
* CMSDTF - DTF TO BE HANDLED. * 02580000
* CMSPL - PL TO BE HANDLED. * 02585000
* * 02590000
* EXTERNAL REFERENCES-- * 02600000
* CMDTFS - SETUP BSCA DTFS FOR CHECK ROUTINE * 02610000
* CMBMCH - CHECK ROUTINE * 02620000
* CMBSKP - BSCA SKIP BIT ON/OFF ROUTINE. * 02630000
* $CC4GR - GETMAIN FAIL RECOVERY TRANSINET. * 02632000
* CMPRLS - SEARCH @PRLQ FOR NEW PL. * 02634000
* $@TMIH - START/STOP INTERVAL TIMER. * 02636000
* $TRACE - SYSTEM TRACE ROUTINE. * 02638000
* * 02640000
* EXIT, NORMAL-- * 02650000
* TO CMBOPE OR CMMOPE TO HANDLE OP END * 02660000
* TO CMACI IF NEW ACCEPT REQUEST. * 02670000
* TO CMBREQ OR CMMREQ TO HANDLE NEW REQUESTS. * 02672000
* TO CMBSOX OR CMPNWX IF GETMAIN RETRY AT QUEUE TIME. * 02674000
* TO CMBTBY OR CMMTBY IF GETMAIN RETRY AT SCHED TIME. * 02676000
* * 02680000
*********************************************************************** 02690000
SPACE 5 02692000
******************************************************************** 02694000
* CHECK FOR IOCS OP ENDS. * 02696000
******************************************************************** 02698000
SPACE 1 02700000
CMOPND EQU * TEST OP END COUNT 02710000
CLI #OPEND,NOBIT CHECK OP END COUNT FOR ZERO 02720000
BE CMFRMN IF ZERO, BR TO FREEMAIN ANALYSIS 02730000
SPACE 1 02740000
AIF (&NOB).C0010 02750000
******************************************************************** B 02760000
* SETUP ANY BSCA DTF WITH OP END * B 02770000
******************************************************************** B 02780000
SPACE 1 02790000
CMOPNT EQU * ENTRY POINT USED BY TTASK @18 02795000
B CMDTFS DTF SETUP FOR BSCA LINES B 02800000
AIF (&NTTSK).TT010 02800800
SPACE 1 02801600
******************************************************************* @18 02802400
************* 02803200
************* 02804000
TBN PLSWIT,CMSOPE IS THIS TASK-TO-TASK ? 02804800
SBF PLSWIT,CMSOPE TURN THE TTASK INDICATOR OFF 02805200
JT CMTTSK YES - SET UP THE SAVE AREA 02805600
************* 02806400
************* 02807200
******************************************************************* @18 02808000
.TT010 ANOP 02808800
SPACE 1 02810000
.C0010 ANOP 02820000
******************************************************************** 02830000
* CALL CHECK ROUTINE (CCP VERSION OF $$BMCH) * 02840000
******************************************************************** 02850000
SPACE 1 02860000
B CMBMCH CALL OP END CHECK ROUTINE 02870000
SPACE 02880000
SLC #OPEND,X$0001(1) SUBTRACT 1 FROM OP END COUNT 02890000
AIF (&ONE).H4450 02900000
TBF CMSWIT,CMBSCK IS IT MLTA OR BSCA 02910000
CLI $BDCMP(,DTF),$BCACD CHECK FOR NOTHING COMPLETE 02920000
BC CMOPND,NONE+HI+LO+FALSE BRANCH IF MLTA NOT COMPLETE 02930000
.H4450 ANOP 02940000
AIF (&NOB).C0015 02950000
CLI $BDCMP(,DTF),$BCCMP '56' COMPLETION CODE ? B 02960000
JNE CMNT56 NO-NOT 56, CHECK OTHERS. B 02970000
SPACE 02980000
&MIX SETA (&BSC+&MLA) 02990000
AIF (&MIX LE '1').Y0100 03000000
*---------------------------------------------------------------* YB 03010000
* NO OP ENDS TO HANDLE - '56' CODE FROM CHECK ROUTINE * YB 03020000
*---------------------------------------------------------------* YB 03030000
SPACE 1 03040000
* SEARCH CHECKLIST FOR BSC DTF AND DECREMENT ITS OP END COUNT YB 03050000
SPACE 1 03060000
L @CKLST,XR1 POINT TO THE CHECK LIST. YB 03070000
CMEXSK EQU * * LOCAL YB 03080000
TBF CKLSTS(,XR1),CKLSKP SKIP BIT OFF, AND YB 03090000
L CKLDTF(,XR1),DTF POINT TO THE DTF. YB 03100000
AIF (&ONE).C0007 03110000
TBN $BDDEV(,DTF),BSCA * BSCA DTF, AND Y2 03120000
.C0007 ANOP 03130000
JF CMEXNX NO-GO EXAMINE NEXT ENTRY. YB 03140000
.Y0100 ANOP 03150000
SLC LCBOPE(1,DTF),X$0001 DECREMENT OP END BY ONE. B 03160000
L LCBPL@(,DTF),PL POINT TO THE PARM LIST. B 03170000
B CMTRCE CALL TRACE TO LOG THISOP END. B 03180000
DC AL1(CCPRIB) CCP RIB 03190000
DC AL1(TRRIB) TRACE SUB RIB 03200000
DC AL1(TTMOPN) TRACE OP END ID. B 03210000
SPACE 1 03220000
&MIX SETA (&BSC+&MLA) 03230000
AIF (&MIX LE '1').Y0250 03240000
J CMEXOP GO CHECK FOR MORE OP ENDS. YB 03250000
SPACE 1 03260000
CMEXNX EQU * * LOCAL YB 03270000
TBN CKLSTS(,XR1),CKLAST LAST ENTRY IN THE LIST ? YB 03280000
LA CKLEN(,XR1),XR1 POINT TO THE NEXT ENTRY. YB 03290000
BF CMEXSK NO-GO CHECK THE NEXT YB 03300000
.Y0250 ANOP 03310000
CMEXOP EQU * * LOCAL B 03320000
B CMOPND GO CHECK FOR MORE OP ENDS. B 03330000
SPACE 1 03340000
CMNT56 EQU * * LOCAL B 03350000
*------------------------------------------------------------------* 03480000
* OP END TO HANDLE (NOT '56') - GO TO BSCA OR MLTA OP END ROUT.* 03490000
*------------------------------------------------------------------* 03500000
SPACE 1 03510000
ST CMSDTF,XR2 SAVE DTF ADDR B 03520000
AIF (&ONE).C0012 03530000
TBN $BDDEV(,DTF),BSCA BSCA DTF ? 2 03540000
BF CMMOPE NO-GO TO CHECK MLTA ABORT. 2 03550000
.C0012 ANOP 03560000
SLC LCBOPE(1,DTF),X$0001 DECREMENT LINE OP END COUNT. B 03580000
L LCBPL@(,DTF),PL POINT TO THE PARM LIST. B 03590000
&MIX SETA &NCS+&NSWL+&NTTSK+&NAPOR 03600000
AIF (&MIX EQ '4').S0150 03610000
TBN LCBAT2(,DTF),LCBRCI RECEIVE INITIAL ? B 03620000
BF CMBOPE NO-GO CHECK BSCA ABORT. B 03630000
&MIX SETA &NCS+&NSWL 03633000
AIF (&MIX EQ '2').S0150 03636000
MVI CMB#SB,SBN1 SET FOR POLL SKIP BIT ON. B 03640000
SPACE 03650000
B CMBSKP SKIP TO POLL SKIP BIT RTN. B 03660000
.S0150 ANOP 03670000
AIF (&NTTSK).TT030 03670500
AGO .TT040 03671000
.TT030 ANOP 03671500
AIF (&NAPOR).PT010 03672000
.TT040 ANOP 03672500
SPACE 1 03673000
******************************************************************* @18 03673500
************* 03674000
************* 03674500
CMTTSK EQU * 03675000
TBN LCBAT3(,DTF),LCBPOR IS THIS A PORTLINE OPERATION ? 03675500
BT CMZSSA YES - SET UP THE SAVE AREA 03676000
************* 03676500
************* 03677000
******************************************************************* @18 03677500
SPACE 1 03678000
.PT010 ANOP 03678500
B CMBOPE GO HANDLE BSCA OP END B 03680000
AGO .C0025 03680900
.C0015 ANOP 03681800
SPACE 1 03682700
* XR2 NOW POINTS AT DTF FOR WHICH OP END OCCURRED M 03683600
* ANALYZE THE COMPLETION CODE AND ACT ACCORDINGLY M 03684500
SPACE 03685400
CLI $MDCMP(,XR2),$MCRET EVENT NOT COMPLETE M 03686300
BNL CMOPND RETEST OP END COUNT. M 03687200
ST CMSDTF,XR2 SAVE DTF ADDR 03688100
B CMMOPE GO HANDLE THE OP END. M 03689000
.C0025 ANOP 03690000
$CC4CM TITLE '$E070/CMFRMN/ CONTROL LOGIC - GETMAIN FAIL RECOVERY' 03700000
******************************************************************** 03710000
* CHECK FOR NEW PUT REQUEST. * 03720000
******************************************************************** 03730000
SPACE 1 03770000
CMFRMN EQU * FREEMAIN ANALYSIS ROUTINE 04140000
CLI @PRLQ-1,NOBIT ANY NEW TP REQUESTS ? 04150000
JE CMFRPS NO - CHECK FOR FREEMAINS 04160000
SPACE 04170000
* HAVE TP REQUEST -IF PUT REQUEST HANDLE IT BEFORE CHECKING TO SEE 04180000
* IF REQUESTS WAITING FOR FREEMAIN CAN BE SATISFIED NOW. 04190000
SPACE 04200000
B CMPRLS SEARCH PRLQ FOR PUT 04210000
* * XR1 - PL FOUND 04220000
* * XR2 - LEFT BYTE OF CHAIN 04230000
* * ADDR POINTING TO PL FOUND. 04240000
TBN PLOPC(,PL),OPPUT DOES IT INVOLVE PUT 04250000
JT CMRDEQ YES - JUMP TO HANDLE NOW 04260000
SPACE 04261000
******************************************************************** 04262000
* CHECK FOR REQUEST WAITING GETMAIN THAT CAN BE RETRIED. * 04263000
******************************************************************** 04264000
SPACE 1 04265000
CMFRPS EQU * * LOCAL 04270000
TBN CMSWIT,CMFMPS HAS FREEMAIN BEEN POSTED 04280000
JF CMREQ IF NOT, JUMP TO HANDLE TP REQST 04290000
SPACE 04292000
* HAVE HAD FREEMAIN - FIND REQUEST AWAITING TPBUF SPACE. 04294000
SPACE 04296000
SVC 0 ***** TRANSIENT CALL ****** 04350000
DC AL1(CCPRIB) CCP RIB 04360000
DC AL1(CC4GR) GETMAIN RECOVERY TRANSIENT 04370000
SPACE 1 04380000
* ---> RETURN HERE IF NO REQUEST NEEDING GETMAIN WAS FOUND 04390000
J CMFMGG 04400000
SPACE 1 04410000
* ---> RETURN HERE IF REQUEST NEEDS TO BE RETRIED (XR1 POINTS TO IT) 04420000
* XR1-PL ADDRESS, XR2-DTF TO BE RESCHEDULED. 04430000
ST CMSDTF,DTF SAVE THIS DTF @ 04440000
ST CMSPL,PL SAVE THIS PL @ 04450000
TBN PL$OPM(,PL),OPGETQ DOES REQ NEED GM AT QUEUE TIME 04460000
SBF PL$OPM(,PL),OPGETM+OPGETQ RESET GETMAIN NEEDED BITS 04470000
AIF (&ONE).E0403 04480000
JF CMGMBF NO- NEED BUFFER AT SCHED TIME 04490000
AGO .C0175 04500000
.E0403 ANOP 04510000
AIF (&NOM).M0780 04520000
BF CMMTBY NO- NEED BUF AT SCHED TIME. M 04530000
AGO .C0175 04540000
.M0780 ANOP 04550000
BF CMBTBY NO- NEED BUF AT SCHED TIME. B 04560000
.C0175 ANOP 04570000
SPACE 1 04580000
* GETMAIN NEEDED AT REQUEST QUEUE TIME 04590000
ST CMNWPL,PL SAVE ORIG PL @ FOR NO WAIT POST 04600000
B CMDEQ DEQUEUE PL IN TCB 04610000
SBN CMSWIT,CMTPRQ NEW REQUEST 04620000
AIF (&ONE).E0405 04630000
TBN $BDDEV(,DTF),BSCA IS REQUEST FOR BSCA 2 04640000
BT CMBSOX YES - GO HANDLE 2 04650000
.E0405 ANOP 04660000
AIF (&NOM).M0790 04670000
B CMPNWX NO - MLTA NEW REQUEST M 04680000
AGO .C0200 04690000
.M0790 ANOP 04700000
AIF (&NOB).C0200 04710000
B CMBSOX BSCA NEW REQUEST ONLY B 04720000
.C0200 ANOP 04730000
AIF (&ONE).E0410 04740000
SPACE 1 04750000
* GETMAIN NEEDED AT NEW REQUEST SCHEDULE TIME 04760000
CMGMBF EQU * * LOCAL 04770000
TBN $BDDEV(,DTF),BSCA BSCA DTF ? 2 04780000
BT CMBTBY YES - GO SEE IF LINE IS BUSY 2 04790000
B CMMTBY JUMP IF NOT BUSY OR NON-READ M 04800000
.E0410 ANOP 04810000
SPACE 1 04820000
CMFMGG EQU * * LOCAL 04830000
SBF CMSWIT,CMFMPS TURN OFF FREEMAIN POSTED FLAG 04840000
SPACE 2 04850000
******************************************************************** 04860000
* CHECK FOR NEW READ REQUEST ON @PRLQ. * 04870000
******************************************************************** 04880000
SPACE 1 04890000
.YK005 ANOP 04900000
CMREQ EQU * HANDLE TP REQUESTS 04920000
CLI @PRLQ-1,NOBIT ANY NEW TP REQUESTS TO HANDLE ? 04930000
JE CMNWRK NO - CHECK FOR TERMINAL IN 04940000
* ERROR RECOVERY 04950000
SPACE 1 04960000
* CM HAS BEEN POSTED WITH A TP REQUEST, FIND THE NEW REQ AND HANDLE IT. 04970000
SPACE 04980000
B CMPRLS SEARCH PRLQ FOR PUT 04990000
* * XR1 - PL FOUND 05000000
* * XR2 - LEFT BYTE OF CHAIN 05010000
* * ADDR POINTING TO PL FOUND. 05020000
CMRDEQ EQU * * LOCAL 05030000
ST CMSPL,PL SAVE THE PARM LIST ADDRESS 05030500
ST CMNWPL,PL SAVE PL TO POST FOR NO WAIT OP 05031000
AIF (&NAPOR).PT030 05031500
SPACE 1 05032000
******************************************************************* @18 05032500
************* 05033000
************* 05033500
L PLTUBA(,PL),XR1 XR1 --> PORT TUB 05034000
TBN TUBAT2(,XR1),TUBOWN DOES THIS PORT OWN THE LINE ? 05034500
TBN TUBPHY(,XR1),TUBAPT AND - IS THIS A PORTLINE OP ? 05035000
L CMSPL,PL RESTORE XR1 TO THE PARM LIST 05035500
TBF PLOPM(,PL),OPSTOP AND - IS THIS NOT STOP PARM ? 05036000
BT CMOPND YES - THE NEW REQUEST CANNOT 05036500
* BE HANDLED YET - RETURN 05037000
************* 05037500
************* 05038000
******************************************************************* @18 05038500
SPACE 1 05039000
.PT030 ANOP 05039500
MVC 1(2,XR2),PLCHN(,PL) DEQUEUE PL OFF PRLQ 05040000
SLC PLCHN(2,PL),PLCHN(,PL) ZERO CHAIN FIELD 05050000
L PLTUBA(,PL),XR2 POINT XR2 AT THE TUB 05090000
AIF (&YK EQ '2').YK006 05090100
AIF (&N32).C0305 05090200
AIF (&ONE).C0303 05090300
TBN TUBCHR(,XR2),TUBLNE BSCA LINE AND - B 05090400
.C0303 ANOP 05090500
AIF (&NOB).C0305 05091000
TBN PLOPC(,PL),OPGET INVITE/GET OP ? B 05092000
* -START-----------------------@14 05092200
TBF PLOPM(,PL),OPSTOP AND NOT STOP? B 05092400
* --END------------------------@14 05092600
JF CMRSCL NO - CONTINUE B 05093000
SPACE 1 05094000
* SET OFF THE CLEAR INDICATOR IN THE TUB FOR ANY GET TYPE OP B 05095000
* THAT IS NOT A STOP INVITE. 05095500
SPACE 1 05096000
SBF TUBSCS(,XR2),TUBCLR SET OFF CLEAR INDICATOR B 05097000
AIF (&NPBY).NBY01 BUSY PRINTER SUPPORTED? 05097040
* --------------------------START------------------------@09 05097080
SPACE 1 05097120
* SET POLL LOOP COUNT TO PROPER VALUE FOR BUSY PRINTER STATUS OPS. 05097160
SPACE 1 05097200
TBN TUBAT4(,XR2),TUBBSY IS THIS A PRINTER TUB? 05097240
JF CMNDA NO - JUMP 05097280
L TUBDTF(,XR2),DTF XR2 --> DTF. 05097320
TBN $BDDEV(,DTF),BSCA THIS BSCA DTF? 05097360
JF CMNDA NO - LEAVE COUNT ALONE. 05097400
SBN LCBAT3(,DTF),LCBBYP INDICATE POLLING BUSY PRINTER. 05097440
CLI $BDCNT(,DTF),ALLBIT LOOP COUNT = CONTINUOUS? 05097480
JNE CMNDA NO - LEAVE THIS COUNT. 05097560
MVC $BDCNT-1(1,DTF),$BDCNT(,DTF) SAVE LOOP COUNT. 05097580
MVI $BDCNT(,DTF),X'02' ELSE -- SET LOOP COUNT = 2. 05097600
L $BDWKA(,DTF),XR2 XR2 --> WORKAREA. 05097640
TBN $BWKMC(,XR2),$BDAON DA RUNNING ? 05097680
JF CMNDA NO LEAVE $BDCNT = 2. 05097720
L WKDTFD(,XR2),DTF XR2 --> DTF. 05097760
MVI $BDCNT(,DTF),X'FF' ELSE - SET CONTINUOUS POLL. 05097800
CMNDA EQU * * LOCAL 05097840
L PLTUBA(,PL),XR2 AND FIND THE TUB AGAIN. 05097880
* --------------------------END--------------------------@09 05097920
.NBY01 ANOP * 05097960
CMRSCL EQU * * B 05098000
.C0305 ANOP 05099000
TBF TUBAT1(,XR2),TUBKNM THIS A CONSOLE TUB OR 05099300
AIF (&CSIO EQ '0').YKA10 05099330
AIF (&C#NL EQ '0').YKA05 05099370
.YKA10 ANOP 05099400
TBF TUBAT4(,XR2),TUBYUK A BSCC TUB OR 05099440
.YKA05 ANOP 05099510
TBF TUBAT4(,XR2),TUBCHN * A DUMMY TASKCHAIN TUB ? 05099600
L TUBDTF(,XR2),DTF SAVE DTF ADDRESS 05100000
ST CMSDTF,DTF * FOR THIS REQUEST. 05110000
JF CMRNDQ YES-DON'T DECREMENT REQ COUNT 05115000
SPACE 1 05120000
SLC LCBNW#(,DTF),X$0001 DECREMENT NEW REQ COUNT FOR LINE 05130000
SPACE 1 05140000
.YK006 ANOP 05145000
*---------------------------------------------------------------------* 05150000
* SET INTERNAL OP CODE AND ROUTE NEW REQUEST. * 05160000
*---------------------------------------------------------------------* 05170000
SPACE 1 05180000
CMRNDQ EQU * * LOCAL 05185000
SBF PL$OPM(,PL),ALLBIT SET ALL OP MOD BITS OFF 05190000
MNN PL$OPM(,PL),PLOPC(,PL) MOVE LAST 4 BITS OF OP CODE 05200000
SPACE 1 05210000
CLI PLOPC(,PL),OPACI IS OP IS ACCEPT INPUT ? 05220000
TBF PLOPM(,PL),OPOLT AND NOT OLT ? 05230000
BC CMACI,TRUAEQ YES - GO HANDLE. 05240000
AIF (&YK EQ '2').YK007 05245000
SPACE 1 05250000
SBN CMSWIT,CMTPRQ SET SWITCH TO INDICATE TP 05260000
* REQUEST IS NOW BEING HANDLED 05270000
AIF (&NTTSK).TT020 05270400
SPACE 1 05270800
******************************************************************* @18 05271200
************* 05271600
************* 05272000
CLI $BDDEV(,DTF),X'60' IS THIS A TTASK OPERATION ? 05272400
JNE CMRNTS NO - CONTINUE 05272800
TBN PLOPM(,PL),OPSTOP IS THIS A STOP INVITE ? 05273200
BT CMZNWR YES - GO DIRECTLY TO NEW REQUEST 05273600
TBN PLOPC(,PL),OPPUT IS THIS AN OUTPUT OPERATION ? 05274000
JF CMTT01 NO - DO NOT MAKE IT A NO-WAIT 05274400
SBN PL$OPM(,PL),OPNOW MAKE THIS A NO-WAIT OPERATION 05274800
CMTT01 EQU * 05275200
B CMQIT GO TO QUEUE THE TTASK DATA 05275600
CMRNTS EQU * 05276000
************* 05276400
************* 05276800
******************************************************************* @18 05277200
SPACE 1 05277600
.TT020 ANOP 05278000
AIF (&NOB).C0310 05280000
AIF (&ONE).C0300 05290000
TBN $BDDEV(,DTF),BSCA BSCA LINE ? 2 05300000
BF CMMREQ NO-GO PROCESS MLTA REQUEST 2 05310000
.C0300 ANOP 05320000
B CMBREQ PROCESS THE BSCA REQUEST. ONLY B 05330000
AGO .C0320 05340000
.C0310 ANOP 05350000
B CMMREQ PROCESS THE MLTA REQUEST. ONLY M 05360000
.C0320 ANOP 05370000
EJECT 05380000
******************************************************************* 05382000
* RESCHEDULE DTF THAT WAS IN ERP. * 05384000
******************************************************************* 05386000
SPACE 1 05388000
.YK007 ANOP 05389000
CMNWRK EQU * * LOCAL 05390000
AIF (&YK EQ '2').YK008 05400000
CLI #CMERP-1,NOBIT IS THERE A DTF THAT WAS IN ERP 05410000
* * TO RESCHEDULE ? 05420000
JE CMWTST NO- CHECK FOR TIMER RESCHED. 05430000
L #CMERP,DTF XR2--> ERP DTF ADDRESS 05460000
MVI #CMERP-1,NOBIT CLEAR ERP DTF ADDRESS 05490000
ST CMSDTF,DTF SAVE DTF ADDRESS 05510000
AIF (&NOB).C0440 05520000
AIF (&ONE).C0600 05530000
TBN $BDDEV(,DTF),BSCA MLTA DTF 2 05540000
BF CMMTBY YES - GO CHECK FOR MLTA BUSY 2 05550000
.C0600 ANOP 05560000
B CMBTBY GO TEST LINE FOR BUSY B 05570000
AGO .C0480 05580000
.C0440 ANOP 05590000
B CMMTBY GO SEE IF MLTA LINE BUSY. ONLY M 05600000
.C0480 ANOP 05610000
SPACE 1 05620000
******************************************************************** 05630000
* NO WORK * 05640000
******************************************************************** 05650000
SPACE 1 05660000
CMWTST EQU * * LOCAL 05670000
SPACE 1 05690000
* RESTART POLLING IF NECESSARY NB 05700000
SPACE 1 05710000
AIF (&C#NL EQ '0').YK011 05712000
CLI @LCB#1-1,NOBIT ANY BSCA OR MLTA LCB'S ? 05714000
JE CMWAIT NO - JUMP 05716000
.YK011 ANOP 05718000
L @LCB#1,DTF XR2-->FIRST LCB NB 05720000
CMWTS1 EQU * * NB 05730000
TBN LCBATR(,DTF),LCBTIM RESCHEDULE NEEDED? 05740000
AIF (&ONE).C0483 05743000
JF CMWOTR NO-CONTINUE 05746000
TBN $BDDEV(,XR2),BSCA BSC DTF AND - 2NB 05750000
.C0483 AIF (&NOB).C0486 05750700
TBF LCBAT2(,DTF),LCBACT LINE ACTIVE ? 05751400
JT CMTMRS YES-GO RESCHEDULE THIS LINE 05752100
.C0486 ANOP 05752800
AIF (&ONE).C0489 05753500
TBF $MDDEV(,DTF),BSCA MLTA DEVICE? 05754200
.C0489 ANOP 05754900
AIF (&NOM).C0492 05755600
JT CMTMRS YES-GO RESCHEDULE 05756300
.C0492 ANOP 05757000
CMWOTR EQU * * 05757700
SPACE 1 05800000
&MIX SETA (&BSC+&MLA) 05810000
AIF (&MIX LE '1').Y0800 05820000
CLI LCBCHN-1(,XR2),NOBIT ANY MORE DTF'S YNB 05830000
JE CMWAIT NO-GO WAIT YNB 05840000
SPACE 1 05850000
L LCBCHN(,XR2),XR2 XR2--->NEXT DTF YNB 05860000
B CMWTS1 GO CHECK AGAIN YNB 05870000
AGO .Y0810 05880000
.Y0800 ANOP 05890000
J CMWAIT GO WAIT NB 05900000
.Y0810 ANOP 05910000
SPACE 1 05920000
CMTMRS EQU * * NB 05930000
ST CMSDTF,XR2 SAVE DTF ADDRESS FOR CM 05940000
AIF (&ONE).Y0820 05940200
TBF $MDDEV(,XR2),BSCA MLTA DTF? 2 05940400
BT CMMSCH YES-GO RESCHEDULE MLTA 2 05940600
.Y0820 ANOP 05940800
AIF (&NINT).Y0830 05941000
SBN TIMOPE,POL1MN INDICATE POLL 1 MINUTE NB 05941100
SBN $FLGC,#NTRAC INDICATE NO TRACE NB 05941200
* PUT TWO SECONDS IN TIMER IOB BEFORE RESCHEDULE(RESCHEDULE WILL NB 05941400
* ACTUALLY START THE TIMER RUNNIG) NB 05941600
SPACE 1 05941800
LA TIMIOB,XR2 XR2-->TIMER IOB NB 05942000
MVC TITIME(4,XR2),PLTIME SET TIME INTERVAL AS SPEC'ED NB 05942200
.Y0830 ANOP 05942400
AIF (&NOB).Y0840 05942600
B CMBSCH GO RESCHEDULE BSCA LINE 2/B 05942800
AGO .Y0850 05943000
.Y0840 ANOP 05943200
B CMMSCH GO RESCHEDULE MLTA 2/M 05943400
.Y0850 ANOP 05943600
CMWAIT EQU * * 05943800
AIF (&NINT).Y0860 05944000
MVI TIMIOB+7,NOBIT SET TO WAIT ON TIMER ALSO NB 05944200
.Y0860 ANOP 05944400
.YK008 ANOP 05944600
B $CC4CM 05944800
MEND 06070000