9 22FL #LIS K0DISPCOM 15 22R2 ... SEG DISPCOM,867,SECTION CENT,,G400 4 234B ...[ 15 23*Q ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 4 23M6 ...[ 11 23YG SEGENTRY K1DISPCOM,XENTRY 10 24D6 # PARAMETERS OF THE SEGMENT 6 24K# ...#UNS G400 13 24QG ...# THIS CHAPTER IS FOR G3PLUS-IH MK2 18 24XQ #DEF VLENGTH=11 [LENGTH OF 'DISPLAY'BLOCK 17 25CB #DEF VCHARS=A1 [POSN OF CHAR COUNT 19 25X2 #DEF VMESS=A1+1 [& MESSAGE IN'DISPLAY'BLOCK 19 26BL RTPAR +0 [TEMP STORE FOR ROUTING PARAM 8 26W= Q1 +1 8 27*W Q4 +4 9 27TG ZJ1 +JZDISPM 9 28*6 ZJ2 +JZDISPC 10 28JY ... SEGENTRY K50DISPCOM 20 28SQ Q41 +41 [MAX LENGTH OF 'DISPLAY' MESSAGE 8 29#B QAST #32 9 29S2 QMINUS1 #77777777 9 2=?L QMASK #77000000 6 2=*8 ...#UNS G400 4 2=BQ ...( 10 2=D# ...ZDSK1 +G400MESSAGE 10 2=FW ...ZDSK5 +G400MESSGE5 9 2=HD ...ZDSK2 4HCR00 9 2=K2 ...ZDSK3 4HCE00 9 2=LJ ...ZDSK6 4HOP00 8 2=N6 ...ZDSK4 +2 4 2=PN ...) 20 2=R= # DISPLAY COMMAND.THE FIRST PARAMETER MAY BE 0,1,2 OR 3,WHICH 15 2?=W # INDICATES WHERE OUTPUT IS TO TAKE PLACE: 4 2?QG # 11 2#=6 # 0 -MONITORING FILE ONLY 14 2#PQ # 1 -MONITORING FILE & CLUSTER CONSOLE 15 2*9B # 2 -MONITORING FILE & OPERATORS CONSOLE 19 2*P2 # 3 -MONITORING FILE & CLUSTER CONSOLE & OPERATORS CONSOLE 4 2B8L # 20 2BN= # ALTERNATIVELY,AN ONLINE PERIPHERAL MAY BE SPECIFIED WHICH IS 21 2C7W # INTENDED TO CATER FOR THOSE CASES WHERE DIFFERENT CONSOLES MAY BE 21 2CMG # MONITORING DIFFERENT PERIPHERALS.AT PRESENT,HOWEVER,THIS USE WILL 15 2D76 # BE LIMITED TO MEAN CENTRAL CONSOLE ONLY. 4 2DLQ # 21 2F6B # THE SECOND PARAMETER IS PASSED TO A CPB/CUNI BLOCK,THE FIRST 40 21 2FL2 # CHARACTERS ARE STORED IN THE 'DISPLAY' BLOCK AND THE PARAMETER IS 15 2G5L # SENT AS PART OF A MONITORING FILE MESSAGE 4 2GK= # 5 2H4W XENTRY 11 2HJG #SKIP K6DISPCOM>99-99 9 2J46 TRACE 1,DISPLAY 4 2JHQ # 21 2K3B # ANALYSES ROUTING PARAMETER,STORING IT AS 0,1,2 OR 3 (WITH 4 ADDED 21 2KH2 # AS PART OF THE INTERNAL MECHANISM),WHICHEVER WAS SPECIFIED,OR AS 14 2L2L # 2 IN THE CASE OF AN ONLINE PERIPHERAL. 4 2LG= # 16 2L_W PARAPASS [PASS FIRST PARAM 15 2MFG HUNT 2,CPB,CUNI [FIND PARAM 6 2MLN ...#UNS G400 8 2MRW ... BRUSEN XDSK1 9 2M_6 LDX 6 ANUM(2) 17 2NDQ TXU 6 QMINUS1(1) [NON EXISTANT PARAM 8 2NYB BCC ZA1 8 2PD2 ANDN 6 #7777 15 2PXL BZE 6 ZA1 [NULL PARAM 9 2QC= LDCH 4 APARA(2) 16 2QWW BNZ 4 ZA16 [JUMP IF NOT ZERO 8 2RBG TXU 6 Q1(1) 8 2RW6 BCC ZA17 20 2S*Q BRN ZA1 [ERROR IF MORE THAN 1 CHARACTER 8 2STB ZA16 TXL 4 Q4(1) 19 2T*2 BCC ZA13 [JUMP UNLESS ONE,TWO OR THREE 8 2TSL ZA12 TXU 6 Q1(1) 8 2W#= BCC ZA7 20 2WRW BRN ZA1 [ERROR IF MORE THAN 1 CHARACTER 4 2X?G ZA13 9 2XR6 TXU 4 QAST(1) 6 2XW= ...#UNS G400 8 2X_B ... BCS XDSK1 6 2Y4G ...#UNS G400 4 2Y7L ...#SKI 17 2Y=Q BCS ZA1 [JUMP UNLESS ASTERISK 21 2YQB PERCON [CONVERT PERIPH NAME TO TYPE,UNIT NO 18 2_=2 HUNTW 2,CPAR,GPERCON [FIND CONVERTED PARAMETER 20 2_PL BNG 2 ZA10 [FINISH-ERROR REPORTED BY PERCON 9 3CWQ #SKI K6DISPCOM<99-99 10 3DBB TRACE A1(2),DISTYUN 8 3DW2 SMO FX2 9 3F*L LDX 4 CONTEXT 8 3FT= ANDN 4 #1000 18 3G#W BZE 4 ZA17 [JUMP IF NO CORE IMAGE 8 3GSG FPCACA 3,FX2 11 3H#6 HUNT2 3,APERI,APERIRES 10 3HRQ FPERENTA 3,A1(2),ZA15 8 3J?B LDX 4 1(3) 8 3JR2 ANDX 4 GSIGN 8 3K=L ERX 4 GSIGN 8 3KQ= BZE 4 ZA17 17 3L9W LDN 4 2 [CENTRAL CONSOLE ONLY 8 3LPG BRN ZA7 7 3MNQ ZA17 LDN 7 1 19 3N8B TESTRACE 7,NOOUT [ERROR IF NO OUTPUT ANYWHERE 4 3NN2 ZA7 11 3P7L #SKIP K6DISPCOM>99-99 9 3PM= TRACE 4,DISUNUM 20 3Q6W ADN 4 4 [ADD 4 TO ROUTING PARAMETER FOR 14 3QLG [CLUSTERS 17 3R66 # HUNTS FOR DISPLAY BLOCK-IF NOT FOUND,MAKES A NEW ONE 17 3RKQ SPARAPASS [PASS SECOND PARAM 14 3S5B HUNT 2,CPB,CUNI [FIND IT 15 3SK2 LDX 6 ANUM(2) [NO OF CHARS 15 3T4L TXU 6 QMINUS1(1) [NON EXISTANT 8 3TJ= BCS ZA5 7 3W3W LDN 6 0 8 3WHG ZA5 ANDN 6 #7777 18 3X36 LDX 5 6 [NO OF CHARS TO BE MOVED 16 3XGQ TXL 5 Q41(1) [IF LESS THAN 41 8 3Y2B BCS ZA3 10 3Y=8 ... SEGENTRY K51DISPCOM 8 3YG2 LDN 5 40 7 3Y_L LDX 6 5 7 3_F= ZA3 LDX 7 5 7 3_YW ADN 7 3 18 42DG SRL 7 2 [NO OF WORDS IN MESSAGE 17 42Y6 ADN 7 1 [PLUS ONE FOR COUNT 19 43CQ HUNTW 3,APED,ADISPLAY [FIND PREVIOUS DISPLAY BLOCK 8 43XB BPZ 3 ZA11 19 44C2 SETUPCORE 7,3,APED,ADISPLAY [IF NOT FOUND,MAKE A NEW ONE 8 44WL BRN ZA2 10 45B= ZA11 LDX 0 ALOGLEN(3) 7 45TW SBX 0 7 20 46*G BPZ 0 ZA2 [J IF OLD BLOCK IS LONG ENOUGH 11 46T6 ALTLEN 3,7,APED,ADISPLAY 16 47#Q HUNTW 3,APED,ADISPLAY [AND RELOCATE IT 15 47SB # TRANSFERS MESSAGE PARAM INTO BLOCK GIVEN BY X3 4 48#2 ZA2 15 48RL HUNT 2,CPB,CUNI [FIND PARAM 19 49?= STO 5 VCHARS(3) [CHAR COUNT TO DISPLAY BLOCK 17 49QW BZE 5 ZA4 [JUMP IF NULL MESSAGE 15 4==G ADN 2 APARA [MOVE MESSAGE 8 4=Q6 ADN 3 VMESS 7 4?9Q ADN 5 3 7 4?PB SRL 5 2 7 4#92 SMO 5 7 4#NL MOVE 2 0 11 4*8= ZA4 OUTPARAM 6,APARA,CPB,CUNI 6 4*=T ...#UNS G400 4 4**D ...( 7 4*D3 ... DOLPMON 7 14 4*GL ... DOSPMON [ENSURE OK IF HOOK 4 4*K9 ...) 19 4*MW MONOUTX ZJ1(1) [MESSAGE TO MONITORING FILE 6 4*T4 ...#UNS G400 14 4B2= ... DORPMON 7 [RESET FOR HOOK 10 4B7G # SENDS MESSAGE TO OPERATORS 8 4BM6 TXU 4 Q4(1) 17 4C6Q BCC ZA10 [NO CONSOLE OUTPUT 10 4CBJ ... SEGENTRY K52DISPCOM 8 4CLB LDN 7 19 7 4D62 OUTBLOCK 7 19 4DKL OUTPARAM 6,APARA,CPB,CUNI [FIRST PARAM FOR CONSOLE O/P 21 4F5= SETNCORE 8,7,ADATA,JLN [BLOCK FOR O/P OF JOB & USER NAMES 9 4FJW ADN 7 VCHARS 16 4G4G CJOBLOCK 2 [FIND JOB BLOCK 7 4GJ6 LDX 3 7 8 4H3Q SMO FX2 19 4HHB STO 4 AWORK1 [PRESERVE ROUTRG PARAMETER 21 4J32 FLENME JUSER,JNAME [JOB & USER NAMES TO ADATA/JLN BLOCK 7 4JGL LDX 2 3 17 4K2= ZA14 BCHX 2 / [STEP CHARACTER PTR 20 4KFW LDCH 0 1(2) [LOAD CHARACTER FROM DATA BLOCK 8 4K_G SBN 0 #36 16 4LF6 BNZ 0 ZA14 [JUMP UNLESS '.' 8 4LYQ LDN 0 #34 17 4MDB DCH 0 1(2) [CHANGE '.' TO ',' 8 4MY2 SMO FX2 18 4NCL LDX 4 AWORK1 [PICK UP ROUTING PARAM 20 4NX= OUTPARAM 0(3),VMESS,ADATA,JLN [SECOND PARAM FOR CONSOLE O/P 10 4PBW INFORMX 4,ZJ2(1),1 4 4PWG ZA10 11 4QB6 #SKIP K6DISPCOM>99-99 9 4QTQ TRACE 1,DISPEND 6 4R*B ENDCOM 9 4RT2 ZA1 COMERR JZRTPAR 4 4S#L ZA15 18 4SS= COMERR ERUNALLOC [UNALLOCATED PERIPHERAL 9 4T?W NOOUT MONOUT JMTRACE1 8 4TRG BRN ZA7 5 4W?6 NOCORE 7 4WQQ LDN 4 0 8 4X=B BRN ZA7 6 4X=K ...#UNS G400 4 4X=S ...( 15 4X?3 ...XDSK1 TESTHKN XDSK9 [ERROR IF NOT HOOK 9 4X?= ... LDX 6 ANUM(2) 8 4X?F ... ANDN 6 #7777 9 4X?N ... TXU 6 ZDSK4(1) 8 4X?X ... BCS ZA1 9 4X#6 ... LDX 4 APARA(2) 17 4X#* ... ANDX 4 HALFTOP [ GET FIRST PARAMETER 9 4X#J ... TXU 4 ZDSK2(1) 14 4X#R ... BCC XDSK2 [ J IF CR 9 4X*2 ... TXU 4 ZDSK6(1) 15 4X*9 ... BCC XDSK12 [J IF OP 9 4X*D ... TXU 4 ZDSK3(1) 15 4X*M ... BCS ZA1 [J IF NOT CE 7 4X*W ...# CE CASE 18 4XB5 ... DOUTHIER [GET COMMAND HIERARCHY 7 4XB# ... LDN 4 1 8 4XBH ... BRN XDSK3 5 4XBQ ...XDSK12 7 4XB_ ... NGN 4 1 8 4XC8 ... BRN XDSK3 12 4XCC ...# CR CASE (AND CE,OP CONTINUED) 7 4XCL ...XDSK2 LDN 4 0 7 4XCT ...XDSK3 SPARAPAS 10 4XD4 ... HUNT 2,CPB,CUNI 9 4XD? ... LDX 6 ANUM(2) 11 4XDG ... BXU 6 QMINUS1(1),XDSK4 7 4XDP ... LDN 6 0 8 4XDY ...XDSK4 ANDN 6 #777 11 4XF7 ... OUTPARAM 6,APARA,CPB,CUNI 14 4XFB ... BNG 4 XDSK8 [J IF OP 10 4XFK ... LDX 0 CONTEXT(2) 8 4XFS ... ANDN 0 #11 18 4XG3 ... BZE 0 XDSK7 [J IF NOUSER AND NOT MOP 7 4XG= ... DOLPMON 7 7 4XGF ... DOSPMON 14 4XGN ... BNZ 4 XDSK5 [J IF CE 16 4XGX ... MONOUTX ZDSK1(1) [ CR TO MON FILE 8 4XH6 ... BRN XDSK6 16 4XH* ...XDSK5 MONOUTX ZDSK5(1) [ CE TO MON FILE 7 4XHJ ...XDSK6 DORPMON 7 6 4XHR ... ENDCOM 15 4XJ2 ...XDSK7 BNZ 4 XDSK13 [ J IF CE 10 4XJ9 ... LDX 0 JSOURCE(2) 8 4XJD ... BZE 0 XDSK8 18 4XJM ... INFORM 0,G400MESSGE2,1 [ CR TO CLUSTER CONSOLE 6 4XJW ... ENDCOM 18 4XK5 ...XDSK8 INFORM 1,G400MESSGE1,1 [ CR TO CENTRAL CONSOLE 6 4XK# ... ENDCOM 8 4XKH ...XDSK9 BRUSEN XDSK10 8 4XKQ ... BRN ZA1 10 4XK_ ...XDSK10 COMERR JCONTINC,JDIR 6 4XL8 ... ENDCOM 5 4XLC ...XDSK13 10 4XLL ... LDX 0 JSOURCE(2) 9 4XLT ... BZE 0 XDSK14 19 4XM4 ... INFORM 0,G400MESSGE4,1 [ CE TO CLUSTER CONSOLE 6 4XM? ... ENDCOM 5 4XMG ...XDSK14 19 4XMP ... INFORM 1,G400MESSGE3,1 [ CE TO CENTRAL CONSOLE 6 4XMY ... ENDCOM 4 4XN7 ...) 10 4XQ2 MENDAREA 20,GAPDISPCOM 4 4Y9L #END 8 ____ ...24365514000300000000