16 227M ... SEG COMPRO,,CENT(COMMAND PROCESSOR),,G286,G400 4 22*# ...[ 15 22G_ ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 13 22NL ...[ THIS EXCLUDES CODE UNDER #SKI G286 4 22W? ...[ 7 233Y ...#OPT G286 = 0 6 239K ...#SKI G286&1 14 23C= ...# WITH UGUG EDIT M286 (MULTI-COMMAND LINES) 18 23JX ...# PLUS GENERALISED CODE CLEARING CPAT BITS IN CPATUWORD 18 23QJ ...# USED BY VARIOUS MENDS FOR THE DURATION OF A COMMAND 8 23YG [ THE ENTRY POINTS 19 24D6 [ THESE ENTRY POINTS MUST BE KEPT FIXED WITHIN THE SEGMENT 6 24K# ...#UNS G400 16 24QG ...# THIS CHAPTER IS MODIFIED FOR G3PLUS-IH MK 2 11 24XQ ... SEGENTRY K1COMPRO,(GEOERR) 11 25CB SEGENTRY K2COMPRO,QENTRY2 11 25X2 ... SEGENTRY K3COMPRO,(GEOERR) 11 26BL SEGENTRY K4COMPRO,QENTRY4 11 26W= SEGENTRY K5COMPRO,QENTRY5 11 27*W ... SEGENTRY K7COMPRO,(GEOERR) 11 27TG ... SEGENTRY K9COMPRO,(GEOERR) 12 28*6 SEGENTRY K10COMPRO,QENTRY10 12 28SQ SEGENTRY K11COMPRO,QENTRY11 12 29#B SEGENTRY K12COMPRO,QENTRY12 12 29S2 SEGENTRY K13COMPRO,QENTRY13 12 2=?L SEGENTRY K14COMPRO,QENTRY14 12 2=R= SEGENTRY K15COMPRO,QENTRY15 12 2?=W SEGENTRY K16COMPRO,QENTRY16 4 2?QG [ 4 2#=6 [ 18 2#PQ [ THIS IS THE CENTRAL SEGMENT OF THE COMMAND PROCESSOR. 16 2*9B ...[ THE SEGMENT CAN BE DIVIDED INTO FOUR SECTIONS. 19 2*P2 ...[ 1 LOCATION. FINDS THE NEXT COMMAND THEN ENTERS ALAS. 20 2C7W [ IF BREAK-IN DETECTED THEN ENTERS COMPROB. 18 2CMG ...[ 2 RE-ENTRY. VARIOUS ENTRY POINTS FROM COMMANDS. 18 2D76 ...[ 3 ERROR. ONLY ENTERED AFTER A COMMAND ERROR. 20 2DLQ ...[ 4 CLEAN-UP. ENTERED ON SUCCESSFUL COMPLETION OF COMMAND. 4 2F6B ...[ 8 2L_W MINUS1 -1 10 2MFG TIM +JABANDTIME 20 2M_6 [ FOLLOWING IDENTIFIER LABELS THE MESSAGE 'JOB ABANDONED : MAXIMUM 13 2NDQ [ COMMAND PROCESSOR LEVEL EXCEEDED' 10 2NYB MAX +JABANDMAX 20 2PD2 MASKPI #10000 [ISOLATES THE PROGRAM ISSUED BIT 9 2PXL MASKJR #47777777 9 2QWW MASKSSI #37777700 8 2STB TEN +10 8 2T*2 THOUSAND +1000 4 2W#= [ 10 2WRW [ SUBROUTINES * * * * 4 2X?G [ 5 2XD8 TELLHLS 8 2XFQ SBX 7 FX1 12 2XH# HLSINFORM XTELLB,HALT,JOBNO(2) 5 2XJW XTELLB 8 2XLD ADX 7 FX1 7 2XN2 EXIT 7 0 16 2XR6 RTP SBX 7 FX1 [FORM REL LINK 17 2Y=Q FJOCA 3,2 [GET PTR TO JOBBLOCK 16 2YQB TESTRCTP 3,NOTR [J IF NOT RCTP 4 2_=2 TEND 16 2_PL FPCACA 3,2 [GET PTR TO PCA 8 329= ADX 7 FX1 7 32NW EXIT 7 0 7 338G NOTR FPCAJO 3 14 33N6 TESTTP 3,TEND [J IF TP 7 347Q RINGTP 3 8 34MB BRN TEND 17 3572 [ S/R TO FIND A WHENEVER LEVEL OR AN INT-ISSUED LEVEL 13 35LL [ ON ENTERING S/R X4 IS 0,1 OR -VE 21 366= [ IF X4=0 ,ON FINDING MACRO LEVEL WITH NO WHENEVER SET BRK-IN CHAR IN 21 36KW [ EXT+10 IS SET TO 3 I.E. BRK-IN BEFORE. THIS IS FOR CASE OF 18 375G [ BRK-ING IN ON PROG.ISSUED MACRO. - W/BRK CASE 21 37K6 [ IF X4=1 ,THIS MEANS ABOVE SEARCH IS OMITTED , AND ALSO ONLY SPEC. 21 384Q [ INT.ISSUED LEVELS CAUSE EXIT I.E. THOSE WITH BRK-IN LABEL- 21 38JB [ THIS IS BECAUSE FINISH CAUSES BRK-IN AND SO MUST RETURN TO 21 3942 [ THE BRK-IN LABEL BEFORE TAKING W/FINISH ACTION AT A HIGHER 16 39HL [ LEVEL - W/FINISH CASE 21 3=3= [ IF X4 IS -VE THIS IS COMERR CASE SO EXIT AT WHENEVER OR ANY INT ISS 8 3=GW [ LEVEL. 5 3?2G SEEKLEV 9 3?G6 LDX 2 FPTR(2) 9 3?_Q LDX 0 ATYPE(2) 17 3#FB SRL 0 12 [ FIND NEXT CPB/CALAS 14 3#_2 ERN 0 CPB+CALAS [ BLOCK 9 3*DL BNZ 0 SEEKLEV 16 3*Y= LDEX 6 CPBCPLEV(2) [ISOLATE CP LEVEL 8 3BCW LDCT 5 #600 17 3BXG ANDX 5 CPBCPLEV(2) [ISOLATE INT ISS BITS 18 3CC6 BZE 6 SEEK1 [J IF ZERO LEVEL REACHED 17 3CWQ BPZ 5 SEEK2 [J IF NOT INT ISSUED 21 3DBB BNG 4 SEEK3 [J IF WANT TO EXIT FOR ANY I.I. LEV. 7 3DW2 SLL 5 1 21 3F*L BPZ 5 SEEKLEV [J IF II.LEVEL HAS NO BRK-IN LABEL 15 3FT= SEEK3 EXIT 7 1 [I.ISS. EXIT 5 3G#W SEEK2 9 3GSG LDX 0 CPBFSD(2) 16 3H#6 BPZ 0 SEEK4 [J IF MACRO LEVEL 18 3HRQ SEEK1 EXIT 7 0 [NO WHEN/INT ISS LEVEL 5 3J?B SEEK4 17 3JR2 CALL 5 WHENEVER [SEARCH FOR WHENEVER 16 3K=L EXIT 7 2 [WHENEVER FOUND 17 3KQ= BNZ 4 SEEKLEV [J IF NOT W/BRK CASE 8 3L9W SMO FX2 9 3LPG LDX 0 CONTEXT 8 3M96 SMO FX1 9 3MNQ ANDX 0 MASKPI 9 3N8B BZE 0 SEEKLEV 7 3NN2 LDN 0 3 16 3P7L LDX 3 FX2 [ RESET TO BROKEN 15 3PM= DCH 0 EXT+10(3) [ IN BEFORE 17 3Q6W BRN SEEKLEV [PROG. ISSUED MACRO 4 3QLG # 20 3R66 [ S/R TO SEARCH FOR A WHENEVER BLOCK OF THE SAME TYPE AS HELD IN 6 3RKQ [ AWORK1 19 3S5B [ ON ENTRY TO S/R X2 POINTS TO A CPB/CALAS AT A MACRO LEVEL 4 3SK2 # 5 3T4L WHENEVER 9 3TJ= LDX 3 FPTR(2) 19 3W3W LDN 1 JWHEN [POSS NO. OF WHENEVER BLOCKS 5 3WHG WHEN1 9 3X36 LDX 3 FPTR(3) 9 3XGQ LDX 0 ATYPE(3) 8 3Y2B SRL 0 12 8 3YG2 SMO FX2 9 3Y_L TXU 0 AWORK1 17 3_F= BCS WHEN2 [J IF NOT REQ. TYPE 16 3_YW EXIT 5 0 [WHENEVER FOUND 5 42DG WHEN2 9 42Y6 ERN 0 CPB+CALAS 18 43CQ BZE 0 WHEN3 [J IF NEXT /CALAS REACHED 17 43XB BCT 1 WHEN1 [-SO SEARCH MUST STOP 5 44C2 WHEN3 17 44WL EXIT 5 1 [NO WHENEVER FOUND 4 45B= # 19 45TW [ S/R TO FIND WHENEVER BLOCK (TYPE IN AWORK1) AND RENAME IT 13 46*G [ AN ADATA/CREADL BLOCK. X2 MUST = FX2 4 46T6 # 6 47#Q SETCREADL 9 47SB LDX 0 AWORK1(2) 8 48#2 SLL 0 12 8 48RL MHUNTX 3,0 11 49?= NAME 3,ADATA,CREADL 8 49QW CHAIN 3,FX2 7 4==G EXIT 7 0 4 4=Q6 # 21 4?9Q [ S/R FOR CLEANING UP TO CPLEVEL GIVEN IN X6 AND RESETTING CPLEV 20 4?PB [ IN MOST S/R MUST ALSO CHECK FOR I.I LEVELS CLEARED OUT & OBEY A 9 4#92 [ FREELINK FOR EACH ONE 4 4#NL # 5 4B7G TCLEAN 8 4BM6 SBX 4 FX1 17 4C6Q CLEANX 6,1 [CLEANUP CPAT CHAIN 9 4CLB STO 6 CPLEV(2) 7 4D62 ...#UNS CPATUMASK 4 4DKL ...( 9 4F5= ... LDN 0 CPATUMASK 10 4FJW ... ANDS 0 CPATUWORD(2) 4 4G4G ...) 8 4JGL ADX 4 FX1 7 4K2= EXIT 4 0 4 4KFW # 20 4K_G [ S/R FOR REDUCING CPLEV AND RESETTING AMFMSK FOR THE HIGHER LEVEL 20 4LF6 [ IN MOST CASES S/R ALSO FREES CPB/CALAS AND CLB PAIR - ON ENTRY 13 4LYQ [ X2 POINTS TO /CALAS AND X3 TO CLB 4 4MDB # 15 4MY2 UPLEV FREECORE 2 [FREE /CALAS 14 4NCL FREECORE 3 [FREE CLB 5 4NX= UPLEV1 7 4PBW LDN 6 1 17 4PWG SBS 6 CPLEV(2) [REDUCE CPLEV BY 1 10 4QB6 MHUNTW 3,CPB,CALAS 9 4QJR SEGENTRY K70COMPRO 20 4QM2 BRN XK71 [MENDED TO NULL IF REPORTNEST ON 8 4QP9 LDN 6 #10 10 4QRD ANDX 6 CONTEXT(2) 8 4QTM BZE 6 XK71 20 4QXW LDX 6 CMXMSK(3) [RESET REPORTING MAK TO THAT AT 20 4R25 STO 6 AMXMSK(2) [NEW LEVEL FOR MOP CONTEXT ONLY 4 4R4# XK71 9 4R6H SEGENTRY K71COMPRO 6 4R82 ...#UNS G400 7 4R9F ... RVHOOK 3 21 4R=_ LDX 6 CMFMSK(3) [ RESET AMFMSK TO CMFMSK AT CURRENT 15 4R*B STO 6 AMFMSK(2) [ NEW LEVEL 7 4RT2 EXIT 5 0 4 4S#L [ 10 4SS= [ MAIN ROUTINE * * * * 4 4T?W [ 7 64*W PBM FREECORE 3 15 64TG QENTRY12 [ ENDREC 7 65*6 NGN 0 2 20 65SQ ANDS 0 EXT+9(2) [UNSET B23 - ANALYSIS FINISHED 7 66#B LDN 0 2 9 66S2 DCH 0 EXT+10(2) 9 67?L BRN READLQ 4 67R= [ 4 68=W [ 15 68QG QENTRY5 [ PROGBRKIN 21 69=6 MHUNTW 1,CPB,CALAS [ CLEAR THE 'VERB WITHIN DELIMITERS 20 69PQ NGN 4 3 [ HAS ALREADY BEEN SET' BIT IN 19 6=9B ANDS 4 CPBPROGLEV(1) [ CALAS BLOCK IF IT IS SET 8 6=P2 CALL 7 RTP 16 6?8L LDX 0 AMON(3) [LOAD AMON OF PCA 20 6?N= BPZ 0 NOTM [J IF NOT MONRESUM IN PROGRESS 9 6#7W LDX 0 BITS22LS 17 6#MG ANDS 0 AMON(3) [ERASE MONRESUM BITS 21 6*76 LDN 4 8 [NOW SET O/P ONR TO WORD AFTER MNTRD 21 6*LQ LDN 5 2 [ EXTRACODE-V. INEFFICIENT,BUT RARE! 10 6B6B GETWORD 4,3,WRITE,6,5 8 6BL2 LDCT 0 #100 8 6C5L ANDX 0 1(3) 20 6CK= SLC 0 3 [X0=1 IF XCOD IS SMO-ED ELSE 0 7 6D4W ADN 0 1 19 6DJG ADS 0 0(3) [STEP FORWARD O/P ONR AGAIN 7 6F46 WORDFIN 7 6F9# #SKI JWPHASE4 9 6FBG CALL 7 TELLHLS 4 6FHQ [ 21 6G3B QENTRY13 [ COMBRKIN - BREAKIN AND ABANDON 4 6GH2 TBEF 9 6H2L STOZ EXT+8(2) 7 6HG= LDN 0 3 8 6H_W BRN SCRAP 4 6JFG [ 4 6J_6 [ 15 6KDQ QENTRY14 [ ABANDCOM 7 6KYB LDN 0 4 5 6LD2 SCRAP 9 6LXL DCH 0 EXT+10(2) 6 6M7D CCOFF 9 6MC= LDX 6 CPLEV(2) 7 6MWW LDN 1 3 21 6NBG CALL 4 TCLEAN [ CLEAN UP ON ABANDONING THE COMMAND 9 6NW6 BRN READLQ 4 6P*Q [ 4 6PTB [ 20 6Q*2 QENTRY16 [ ENDIFREC - A SPECIAL ENDREC FOR 20 6QSL NGN 0 2 [ THE 'IF' COMMAND WHICH ALSO 17 6R#= ANDS 0 EXT+9(2) [ CLEARS UP BLOCKS 7 6RRW LDN 0 2 8 6S?G BRN SCRAP 4 6SR6 [ 7 6T=Q NOTM LDN 0 5 9 6TQB DCH 0 EXT+10(2) 8 6W=2 BRN READL 4 6WPL [ 15 6X9= [ PROGEND ENTRY POINT PROGEND 5 6XNW QENTRY15 8 6Y8G CALL 7 RTP 9 6YN6 LDX 0 BITS22LS 17 6_7Q ANDS 0 AMON(3) [LOSE B0 & B1 OF AMON 9 73Y= CALL 7 TELLHLS 4 745G [ 11 74K6 [ MAIN PATH BEGINS * * * * 4 754Q [ 15 75JB QENTRY11 [ ENDCOM 13 7642 CCOFF [CLEAR CC AND OP BITS 6 767K ...#UNS G400 4 76?8 ...( 18 76BR ... HUNTW 2,IUSER,G400BLK [SEARCH FOR EXIT BLOCK 16 76GB ... BNG 2 XDSK1 [J IF NOT FOUND 8 76K_ ... LDX 0 A1(2) 17 76PJ ... BNZ 0 XDSK1 [OR NOT EXIT,BA OR BB 9 76T7 ... LDX 4 A1+1(2) 7 76YQ ... FREECORE 2 9 774* ... DCH 4 EXT+10(2) 8 777Y ... BRN XDSK2 8 77?H ...XDSK1 LDX 2 FX2 4 77C6 ...) 7 77GW LDN 0 1 9 782G DCH 0 EXT+10(2) 6 787N ...#UNS G400 5 78#W ...XDSK2 9 78G6 LDXC 4 EXT+8(2) 7 78_Q LDN 5 0 9 79FB STOZ EXT+8(2) 8 79_2 BNZ 5 TERR 9 7=DL LDX 6 CPLEV(2) 7 7=Y= LDN 1 3 18 7?CW CALL 4 TCLEAN [ CLEAN UP AFTER COMMAND 5 7?XG NOTAXES 18 7#C6 MHUNTW 2,CPB,CALAS [FIND 1ST CALAS BLOCK 10 7#H3 ... LDX 1 ALOGLEN(2) 20 7#LY ... SBN 1 APARAFIR-A1 [X1 - NO. OF CHARS AVAILABLE IN 20 7#QT ... SLL 1 2 [CPB/CALAS FOR MESSAGE ASSEMBLY 16 7#WQ LDN 4 0 [NO OF PARAMETER 9 7*BB ADN 2 APARAFIR 18 7*W2 LDX 3 2 [1ST CONVERSION POSITION 8 7B*L SMO FX2 20 7BT= STOZ EXT+2 [ZEROISE COUNT OF CHARS CONVERTED 18 7C#W WAD LDX 7 0(2) [LOAD 1ST WORD OF PARAM 17 7CSG ADN 4 1 [ADD 1 TO NO OF PARAM 17 7D#6 LDX 6 7 [LOAD 1ST WORD IN X6 17 7DRQ ANDN 7 #7777 [ISOLATE NO OF CHARS 7 7F?B ADN 7 7 19 7FR2 SRL 7 2 [ISOLATE NO OF WORDS IN PARAM 19 7G=L ADX 2 7 [UPDATE POINTER TO NEXT PARAM 16 7GQ= BPZ 6 UNACCESS [J IF UNACCESSED 8 7H5_ ... SMO FX1 9 7HFN ... ERX 6 MINUS1 18 7HTC ... BNZ 6 WAD [JUMP IF NOT LAST PARAM 8 7J96 SMO FX2 18 7JNQ LDX 4 EXT+2 [COUNT OF CHARS TO PRINT 15 7K8B BZE 4 UNACFIN [JUMP IF NONE 20 7KN2 SBN 4 1 [ONE LESS BECAUSE OF SEPARATOR 12 7L7L OUTPARAM 4,APARAFIR,CPB,CALAS 18 7LM= MONOUT APAC [MONITORING FILE TRANSFER 10 7LR7 MHUNTW 2,CPB,CALAS 9 7LX4 LDX 6 MINUS1(1) 10 7M2_ STO 6 APARAFIR(2) 5 7M6W UNACFIN 5 7MLG READLQ 8 7N66 LDX 2 FX2 11 7N?# HUNTW 3,ADATA,CREADL 8 7NDG BPZ 3 READL 9 7NKQ LDX 7 CPLEV(2) 20 7P5B BNZ 7 READL [ CONTINUE IF NOT AT TOP LEVEL 10 7PK2 LDX 7 CONTEXT(2) 7 7Q4L ANDN 7 1 18 7QJ= BNZ 7 READL [ OR IF IN USER CONTEXT 8 7R3W LDCT 7 #600 10 7RHG ANDX 7 CONTEXT(2) 20 7S36 BNZ 7 VSOP [ ABANDON JOB IF SYSTEM ISSUED 10 7SGQ LDX 7 CONTEXT(2) 8 7T2B ANDN 7 #20 19 7TG2 BNZ 7 VSOP [ OR IF FROM OPS CONSOLE 5 7TPS QENTRY10 5 7T_L READL 8 7WF= LDX 2 FX2 16 7WYW LDCH 4 EXT+10(2) [LOAD TYPE OF UP 10 7XDG LDX 5 JOBEVENTS(2) 8 7XY6 BPZ 5 READA 18 7YCQ ACROSS COMPROB,1 [J IF BREAKIN DETECTED 4 7YXB [ 4 7_C2 [ 5 82B= READA 11 82HD HUNTW 3,ADATA,CREADL 8 82NL BPZ 3 READ 10 82TW LDX 0 CONTEXT(2) 7 83*G ANDN 0 4 8 83T6 BZE 0 READ 9 84#Q LDX 4 CPLEV(2) 8 84SB BNZ 4 READ 6 84WK ...#UNS G400 4 84YS ...( 9 8533 ... CALL 7 XDSKFREE 8 855= ... BRN WAIT 7 857F ... ISSUFINB 4 859N ...) 17 85#2 WAIT ACROSS COMPROB,4 [J TO WAIT ROUTINE 4 85RL [ 4 86?= [ 5 86QW QENTRY2 4 87=G READ 8 87Q6 #SKI K6ALLGEO>99-99 12 889Q TRACE ACTCHCH(2),ACTCHCH 19 88PB LDX 6 ACTCHCH(2) [LOAD CHAPTER CHANGE COUNT 14 8992 STOZ ACTCHCH(2) [CLEAR IT 17 89NL MPY 6 CHAPTIME [CONVERT TO 'BEATS' 17 8=8= DVR 6 BEATTIME [CONVERT TO MILLISECS 10 8=MW LDX 6 CONTEXT(2) 7 8?7G SRC 6 2 18 8?M6 BNG 6 NUSER [J IF AT NO USER CONTEXT 7 8#6Q CJOBLOCK 3 8 8#LB ANDN 6 #2000 17 8*62 BZE 6 NPISSUE [J NOT PROGRAM ISSUED 7 8*KL LDN 6 0 11 8B5= SBSC 7 APROGTIME+1(3) 18 8BJW SBS 6 APROGTIME(3) [STEP DOWN PROGRAM TIME 5 8C4G NPISSUE 10 8CJ6 ADSC 7 HTIMEJ+1(3) 17 8D3Q ADS 6 HTIMEJ(3) [STEP JOB TIME USED 10 8DHB LDXC 7 HTIMEJ+1(3) 9 8F32 LDX 6 HTIMEJ(3) 17 8FGL TXL 7 ATIMEJ+1(3) [TEST IF JOBTIME UP 9 8G2= TXL 6 ATIMEJ(3) 14 8GFW BCS NOTUP [J IF NOT 19 8G_G TESTINBRK NOTUP [J. IF INHIBITBRK BIT IS SET 9 8H2D LDCH 0 EXT+10(2) 7 8H3B SBN 0 2 18 8H4# BZE 0 NOTUP [IGNORE IF IN ^IF^ ETC. 10 8H5= LDN 0 COMDAT+CJTEX 9 8H92 STO 0 AWORK1(2) 8 8H#Q LDX 4 GSIGN 15 8HDG CALL 7 SEEKLEV [LOOK FOR WE JTEX 8 8HJ= BRN NOWJT 16 8HN2 BRN XINTISS [J IF I/I LEVEL FOUND 5 8HRQ NOWJT 7 8HXG LDN 5 0 9 8J3= LDX 6 JOBTIME 8 8J72 LDX 1 FX1 8 8J=Q LDX 2 FX2 10 8JBG LDX 0 CONTEXT(2) 15 8JG= BNG 0 TIMINC [J IF SYS ISSUED 8 8JL2 ANDN 0 #10 13 8JPQ BNZ 0 TIMINC [J IF MOP 7 8JTG LDN 5 1 8 8J_= LDN 6 10 5 8K52 TIMINC 10 8K8Q MPY 6 THOUSAND(1) 8 8K#G FJOCA 3,2 20 8K*6 LDX 4 HTIMEJ+1(3) [BEFORE UPDATING ALLOWED TIME FOR 21 8K*Q STO 4 ATIMEJ+1(3) [WE JTEX ACTION SET ALLOWED TIME TO 20 8KBB LDX 4 HTIMEJ(3) [TIME USED - EDITOR MAY TAKE A 21 8KC2 STO 4 ATIMEJ(3) [LONG TIME TO TIDY UP AFTER DETECTING 17 8KCL [JT EXCEEDED - B1319 10 8KD= ADSC 7 ATIMEJ+1(3) 9 8KJ2 ADS 6 ATIMEJ(3) 13 8KMQ HLSINFORM XJTBR,JOBTIME,JOBNO(2) 5 8KRG XJTBR 16 8KX= BZE 5 NCHJTEX [J IF SYS ISSUED OR MOP 19 8L32 JBS TABAN,2,EXJTEX [J IF JTEX HAS ALREADY HAPPENED 5 8L6Q NCHJTEX 9 8L=G BZE 5 NSETJT 9 8LB= BS 2,EXJTEX 5 8LG2 NSETJT 16 8LKQ CALL 7 SEEKLEV [LOOK FOR WE JTEX AGAIN 9 8LPG BRN NOWJT1 15 8LT= BRN NOWJT1 [I/I LEVEL FOUND 9 8L_2 MONOUT JOBTEX 7 8M4Q LDN 5 0 17 8M8G BRN NOWFIN [GO TO OBEY WE COMMAND 5 8M#= XINTISS 8 8MD2 LDX 2 FX2 19 8MDY LDX 0 CONTEXT(2) [IF MOP ALLOCATE MORE TIME 8 8MFW ANDN 0 #10 8 8MGS BNZ 0 NOWJT 7 8MHQ LDN 0 0 16 8MMG BRN X24PLUS [ISSUER AT I/I LEVEL 5 8MR= NOWJT1 8 8MX2 LDX 1 FX1 8 8N2Q LDX 2 FX2 10 8N6G LDX 0 CONTEXT(2) 15 8N== BNG 0 XSYSJT [ J IF SYS ISSUED 8 8NB2 ANDN 0 #10 14 8NFQ BZE 0 TABAN [J IF NOT MOP 5 8NKG XSYSJT 9 8NP= MONOUT JOBTEX 5 8NT2 NOTUP 5 8P#L NUSER 8 8PS= LDX 2 FX2 4 8Q?W # 21 8QRG [ THIS SECTION CHECKS THAT THE MAXIMUM COMMAND PROCESSOR LEVEL HAS 9 8R?6 [ NOT BEEN EXCEEDED 4 8RQQ # 9 8S=B LDX 4 CPLEV(2) 10 8SQ2 SBN 4 COMLEVMAX+1 19 8T9L BNG 4 WX [J IF MAX. LEVEL NOT REACHED 6 8T?J ...#UNS G400 4 8T*G ...( 9 8TCD ... TESTHKN XDSK10 7 8TFB ... SBN 4 3 8 8TH# ... BNG 4 WX 5 8TK= ...XDSK10 4 8TM8 ...) 9 8TP= LDX 7 MAX(1) 17 8W8W RABAND [ TO ABANDON THE JOB 9 8WNG ACROSS COMPROB,3 5 8X86 TABAN 9 8XMQ LDX 7 TIM(1) 9 8Y7B BRN RABAND 4 8YM2 WX 8 8_6L LDX 7 GSIGN 9 8_L= ORS 7 EXT+9(2) 17 925W ERS 7 EXT+9(2) [SET TO PAPER TAPE 11 92KG HUNTW 3,ADATA,CREADL 8 95H= BPZ 3 PTOPA 10 95MN LDX 5 CONTEXT(2) 8 95S6 ANDN 5 #20 17 95YJ BZE 5 T [J IF NOT OP CONSOLE 14 9652 LDX 4 CPLEV(2) [LOAD CPL 16 969D BZE 4 SWAP [J IF AT LEVEL 0 10 96*W T MHUNTW 3,CPB,CALAS 10 96GG LDX 4 CPBCPLEV(3) 20 9726 BNG 4 PCOM [BRANCH IF COMMAND WITHIN COMMAND 6 9739 ...#SKI G286&1 4 974# ...( 14 975C ... LDX 2 FPTR(3) [ => CLB 19 976G ... LDX 2 FPTR(2) [ SEE IF CLB POINTS TO IUSER 9 977K ... LDX 0 ATYPE(2) 8 978N ... SRL 0 12 10 979R ... SBN 0 IUSER+HULL 19 97=W ... BNZ 0 XCCS [ BRN IF IUSER DOESN'T EXIST 17 97?_ ... LDEX 7 A1(2) [ SIZE OF IUSER BLOCK 19 97*4 ... ACROSS MULTCOMM,2 [ NOT ENOUGH ROOM IN COMPRO 4 97B7 ...XCCS 8 97C= ... LDX 2 FX2 4 97D* ...) 9 97FQ LDX 4 CPBFSD(3) 16 97_B BPZ 4 MACREC [J IF MACRO FILE 10 98F2 LDX 7 CONTEXT(2) 8 98YL ANDN 7 #10 9 99D= BZE 7 READLZ 10 99N4 TESTINBRK XINBRKSET 8 99XW LDCT 3 #100 9 9=CG ANDX 3 EXT+11(2) 16 9=X6 BNZ 3 NOTIME [J IF MULTILINERY 9 9?BQ OUTPAR TIMENOW 4 9?WB MAT 8 9#B2 COMREADY READL 4 9#TL SWAP 8 9**= LDX 7 GSIGN 8 9*SW BRN T2 5 9B#G NOTIME 7 9BS6 OUTNULL 8 9C6H READY READL 8 9CDY LDX 7 GSIGN 8 9CR* BRN T2 6 9D5Q XINBRKSET 10 9DD7 GEOERR 0,INBRKSET 5 9DQL MACREC 7 9F== LDN 7 2 10 9FPW ANDX 7 CPBPROGLEV(3) 19 9G9G BZE 7 NODEL [J IF NOT WITHIN DELIMITERS 18 9GP6 PHOTO 7 [ PREPARE TO COORDINATE 18 9H8Q DOWN GOTO,2 [TO SEARCH FOR STOPPER 9 9HNB TESTMOVE 7,NODEL 10 9J82 MHUNTW 3,CPB,CALAS 5 9JML NODEL 8 9K7= LDX 7 GSIGN 18 9KLW ANDX 7 CPBPROGLEV(3) [LOAD CARD/PT INDICATOR 17 9L6G ADDREC 3,4 [UPDATE RECORD PTR. 6 9LL6 READ 4 9M5Q T2 17 9MKB MHUNTW 2,FILE,FRB [FIND FILE READ BLOCK 17 9N52 LDX 5 A1(2) [LOAD RECORD HEADER 19 9NJL BNZ 5 RENAME [J IF NOT TERMINATION OF FILE 18 9P4= ACROSS GOTO,3 [ ELSE EXIT FROM MACRO 5 9PHW RENAME 17 9Q3G SBN 5 2 [TWO WORD RECORD HDR 21 9QH6 [NOT ALL CHARS IN LAST WORD ARE SIG. 7 9R2Q SLL 5 2 9 9RGB LDX 4 A1+1(2) 8 9S22 SRL 4 22 8 9SFL BZE 4 N1 20 9S_= SBN 5 4 [TAKE OFF 4 CHARS FOR LAST WORD 21 9TDW ADX 5 4 [ADD IN NO. SIG CHARS IN LAST WORD 8 9TYG N1 STO 5 A1(2) 11 9WD6 NAME 2,ADATA,CREADL 8 9WXQ LDX 2 FX2 17 9XCB BNG 7 PTOPB [J IF GRAPHIC FILE 8 9XX2 LDX 7 GSIGN 9 9YBL ORS 7 EXT+9(2) 17 9YW= ERS 7 EXT+9(2) [DENOTES SHIFT FILE 8 9_*W BRN PTOP 5 9_TG READLZ 7 =2*6 RDLCHECK 11 =2SQ MHUNTW 3,ADATA,CREADL 8 =3#B LDX 4 A1(3) 7 =3S2 LDN 7 1 4 =4?L WOP 19 =4R= BNG 4 PERIDIS [J IF PERIPHERAL DISENGAGED 10 =5=W LDCH 5 JSOURCE1(2) 7 =5QG ERN 5 3 16 =6=6 BNZ 5 PTOP [J IF NOT CARDS 5 =6PQ QENTRY4 8 =79B PTOPA LDX 7 GSIGN 9 =7P2 PTOPB ORS 7 EXT+9(2) 4 =88L PTOP 11 =8N= MHUNTW 3,ADATA,CREADL 8 =97W LDX 4 A1(3) 8 ==76 BNG 4 PBM 8 ==8T BNZ 4 PTOPF 8 ===J LDCT 0 #100 9 ==#? ANDX 0 EXT+11(2) 16 ==B2 BZE 0 PBM [J IF NOT MULTI-LINE 8 ==CP LDN 0 #20 9 ==FD DCH 0 CPDATA(3) 7 ==H7 LDN 0 1 8 ==JW STO 0 A1(3) 5 ==LQ PTOPF 6 ==M# ...#SKI G286&1 4 ==MW ...( 9 ==ND ... LDCH 0 CPDATA(3) 13 ==P2 ... SBN 0 #30 [ '(' 13 ==PJ ... BNZ 0 XCCS1 [ NO 8 ==Q6 ... LDCT 0 #100 9 ==QN ... ANDX 0 EXT+11(2) 17 ==R= ... BNZ 0 XCCS1 [ J IF MULTILINERY 8 ==RS ... LDX 0 A1(3) 7 ==SB ... SBN 0 4 21 ==SY ... BNG 0 XCCS13 [ IF < 4 CHARS THEN NOT ST/STOPPER 10 ==TG ... HUNTW 2,CPB,CALAS 14 ==W4 ... BNG 2 XCCS13 [ NONE 10 ==WL ... LDX 0 CPBSTART(2) 9 ==X8 ... SBX 0 CPDATA(3) 16 ==XQ ... BZE 0 XCCS1 [ BRN IF STARTER 10 ==Y# ... LDX 0 CPBSTOP(2) 9 ==YW ... SBX 0 CPDATA(3) 16 ==_D ... BZE 0 XCCS1 [ BRN IF STOPPER 5 =?22 ...XCCS13 8 =?2J ... LDX 7 A1(3) 7 =?36 ... SRL 7 2 20 =?3N ... ADN 7 4 [ NO OF WORDS IN CREADL + 3 OR 4 19 =?4= ... ACROSS MULTCOMM,1 [ NEW CHAPTER FOR MAIN CODE 5 =?4S ...XCCS1 4 =?5B ...) 9 =?6B ACROSS ALAS,1 4 =?L2 [ 11 =#5L [ MAIN PATH ENDS * * * * 4 =#K= [ 4 =*4W NOW 8 =*JG SMO FX2 8 =B46 LDX 6 CPLEV 20 =BHQ LDN 5 1 [SET MKR - RETURN TO LOWEST LEVEL 9 =C3B BRN NOWFIN 4 =CH2 TERR 10 =D2L MHUNTW 3,CPB,CALAS 9 =DG= LDX 4 CPBFSD(3) 16 =D_W BNG 4 X24 [J IF NOT M.D.F. 10 =FFG LDX 4 CPBPROGLEV(3) 17 =F_6 ANDN 4 1 [ISOLATE DELIM BIT 8 =GDQ BZE 4 X24 9 =GYB DOWN GOTO,2 4 =HD2 X24 10 =HXL LDN 0 COMDAT+CWHEN 5 =J7D X24PLUS 17 =JC= STO 0 AWORK1(2) [THE WHENEVER SEARCH 21 =JWW LDX 4 GSIGN [SET MKR TO OMIT SEARCH FOR SPEC I.IS 9 =KBG CALL 7 SEEKLEV 20 =KW6 BRN NOW [NO WHEN.LEV./INT.ISS LEVEL FOUND 9 =L*Q BRN NOWFIN 17 =LTB LDN 5 0 [SET WHENEVER MARKER 5 =M*2 NOWFIN 19 =MSL LDN 1 3 [STORE PARAM FOR CLEANX MACRO 9 =N#= CALL 4 TCLEAN 10 =NRW MHUNTW 2,CPB,CALAS 10 =P?G LDX 4 CPBCPLEV(2) 9 =PR6 X281 LDX 0 MASKJR(1) 9 =Q=Q ANDS 0 CPBFSD(2) 18 =QQB BNZ 5 X285 [J IF NOT WHENEVER LEVEL 8 =R=2 LDX 2 FX2 9 =RPL WN CALL 7 SETCREADL 8 =S9= BRN PTOPA 19 =SNW X285 BPZ 5 MOPT [J IF REMAIN AT LOWEST LEVEL 9 =T8G BPZ 4 READLQ 8 =TN6 SMO FX2 8 =W7Q LDX 4 CPLEV 6 =W97 ...#UNS G400 4 =W=J ...( 8 =W?_ ... BNZ 4 XDSKW 9 =W*B ... CALL 7 XDSKFREE 8 =WBR ... BRN WAIT 7 =WD8 ... ISSUERR 5 =WFK ...XDSKW 4 =WH2 ...) 6 =WJC ...#UNS G400 4 =WKS ...#SKI 8 =WMB BZE 4 WAIT 10 =WX8 LDX 4 CPBCPLEV(2) 15 =X72 LDX 3 FPTR(2) [ CLEAN UP 18 =XLL CALL 5 UPLEV [S/R TO GO UP 1 C.P.LEVEL 9 =XRS LDX 0 AWORK1(2) 15 =X_2 BZE 0 PCOMJT [J IF JT EX 7 =Y6= ISSUERR 8 =YKW MOPT SMO FX2 9 =_5G LDX 4 CONTEXT 16 =_K6 BNG 4 READLQ [J IF SYS ISS JOB 17 ?24Q LDX 5 4 [KEEP COPY OF CONTEXT 8 ?2JB ANDN 4 12 17 ?342 BZE 4 POSPTCR [J IF NOT MOP/OFFLINE 7 ?3HL ERN 4 4 15 ?43= BZE 4 READLQ [J IF OFFLINE 17 ?4GW LDX 4 CPBFSD(2) [LOAD MACRO INDICATOR 16 ?52G BNG 4 READLQ [J IF NOT MACRO 8 ?5G6 LDX 4 GSIGN 8 ?5_Q SMO FX2 9 ?6FB ORS 4 JOBEVENTS 9 ?6_2 BRN READLQ 5 ?7DL POSPTCR 17 ?7Y= BZE 6 TERM [J IF CPLEV IS ZERO 7 ?8CW LDN 7 1 7 ?8XG ANDX 7 5 17 ?9C6 BNZ 7 READL [J IF IN USER CONTEXT 20 ?9WQ ACROSS COMPROB,5 [ TO AB MDF IN NO-USER CONTEXT 8 ?=BB TERM LDN 4 32 7 ?=W2 ANDX 4 5 16 ??*L BZE 4 VSOP [J IF OP CONSOLE 9 ??T= ACROSS ENGAGE,30 17 ?##W [ THIS SECTION DEALS WITH ANY UNACCESSED PARAMETERS 4 ?#SG [ 17 ?*#6 [ CONVERSION OF UNACCESSED PARAMETER NOS TO CHARACTERS 18 ?*RQ [ AND PUTTIMG THEM IN CALAS BLOCK STARTING AT APARAFIR.0 12 ?B3J ...[ ****CAUTION**** X1 DOES NOT = FX1 5 ?B?B UNACCESS 7 ?BR2 LDN 0 2 7 ?C=L LDX 6 4 8 ?CD? ... SMO FX1 8 ?CKY ... DVS 5 TEN 8 ?CRK ... BZE 6 UNAC1 7 ?C_= ... ADN 0 1 5 ?D6X ...UNAC1 7 ?D#J ... SBX 1 0 8 ?DG9 ... BPZ 1 UNAC2 21 ?DMW ... GEOERR 0,UNACMESS [MESSAGE GOING BEYOND END OF BLOCK 5 ?DTH ...UNAC2 8 ?F38 ... BZE 6 UNAC3 8 ?F96 DCH 6 0(3) 7 ?FNQ BCHX 3 / 5 ?G8B ...UNAC3 8 ?GN2 DCH 5 0(3) 7 ?H7L BCHX 3 / 8 ?HM= LDN 5 #34 8 ?J6W DCH 5 0(3) 7 ?JLG BCHX 3 / 8 ?K66 SMO FX2 21 ?KKQ ADS 0 EXT+2 [ KEEP TOTAL NO OF CHARS TO BE OUTPUT 8 ?L5B BRN WAD 5 ?LK2 PERIDIS 8 ?LLJ LDCT 0 #100 9 ?LN6 ANDX 0 EXT+11(2) 17 ?LPN BZE 0 NMLENDP [J IF NOT MULTILINEARY 8 ?LR= LDCT 0 #100 9 ?LSS ERS 0 EXT+11(2) 7 ?LWB LDN 0 1 15 ?LXY ORS 0 EXT+9(2) [SET ^VERB^ BIT 9 ?L_G COMERR ERMLENDP 5 ?M34 NMLENDP 10 ?M4L LDCH 5 JSOURCE1(2) 14 ?MJ= BZE 5 PTORCR [J IF PTR 7 ?N3W SBN 5 3 8 ?NHG BNZ 5 PFIN 5 ?P36 PTORCR 7 ?PGQ FREEPER 4 ?Q2B PFIN 10 ?QG2 VFREEW ADATA,CREADL 9 ?Q_L VSOP ACROSS LOGOUT,7 16 ?RF= PCOM LDX 2 FPTR(3) [GET PTR TO CLB 17 ?RYW CALL 5 UPLEV [GO UP A C.P.LEVEL 5 ?S8N PCOMJT 9 ?SDG LDX 5 EXT+11(2) 17 ?SY6 BPZ 5 PCOM1 [J IF NOT SYS.ISSUED 8 ?TCQ ANDN 5 #77 9 ?TXB TXU 5 CPLEV(2) 20 ?WC2 BCS PCOM1 [J IF SYS.ISS MACRO NOT FINISHED 14 ?WWL LDX 5 MASKSSI(1) [LOSE BIT 9 ?XB= ANDS 5 EXT+11(2) 5 ?XTW PCOM1 7 ?Y*G SLL 4 1 19 ?YT6 BPZ 4 PCOM2 [J IF ISSUCOM,NOT ISSUCOMB 7 ?_#Q ISSUFINB 5 ?_SB PCOM2 7 #2#2 ISSUFIN 4 #2RL # 6 #3?= ...#UNS G400 4 #3QW ...( 14 #4=G ...# SUBROUTINE USED BY INSTALLATION HOOKS 12 #4Q6 ...# CLEARS HOOK LEVEL IF NEED BE 5 #59Q ...XDSKFREE 10 #5PB ... MHUNT 2,CPB,CALAS 10 #692 ... LDX 4 CPBCPLEV(2) 7 #6NL ... SLL 4 1 17 #78= ... BPZ 4 XDSKWAIT [J FOLLOW NORMAL PATH 16 #7MW ... SBX 7 FX1 [CLEAR HOOK LEVEL 9 #87G ... LDX 3 FPTR(2) 7 #8M6 ... FREECORE 2 7 #96Q ... FREECORE 3 7 #9LB ... LDN 0 1 9 #=62 ... SBS 0 CPLEV(2) 7 #=KL ... UNSETHK 8 #?5= ... ADX 7 FX1 7 #?JW ... EXIT 7 1 5 ##4G ...XDSKWAIT 7 ##J6 ... EXIT 7 0 4 #*3Q ...# 4 #*HB ...) 4 #GCL #END 8 ____ ...46130750000300000000