(George Source)
Macros used: ALTLEND, AMXTRACE, CJOBLOCK, COMBRKIN, COMERR, DEMANDX, ENDCOM, FLENME, FPCACA, FPERENTA, FREECORE, GEOERR, HUNT, HUNT2, HUNTW, LONGOFF, LONGSET, LONGSTOP, MARKAXES, MENDAREA, MONOUTX, NAME, OUTBLOCK, OUTPARAM, PARAPASS, PERCON, SEG, SEGENTRY, SETNCORE, TRACE
22FL #LIS K0QUESCOM 22KW ... SEG QUESCOM,867,SECTION CENT,,G374 22Q6 ...[ 22WB ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 232L ...[ THIS EXCLUDES CODE UNDER #SKI G374 236W ...[ 23?6 ...#OPT G374 = 0 23CB ...#SKI G374&1 23HL ...# WITH G3UG EDIT M374 (QUESTION AND ANSWER BY JOB NUMBER) 23MW ...[ 23S6 ...[ 23YG SEGENTRY K1QUESCOM,SENTRY1 24D6 # PARAMETERS OF THE SEGMENT 24XQ #DEF VLENGTH=11 [LENGTH OF 'DISPLAY'BLOCK 25CB #DEF VCHARS=A1 [POSN OF CHAR COUNT 25X2 #DEF VMESS=A1+1 [& MESSAGE IN'DISPLAY'BLOCK 26BL Q1 +1 26W= Q4 +4 27*W ZJ1 +JZQUMOP 27TG ZJ2 +JZQUESM 28*6 ZJ3 +JZQUESC 28SQ ZJ4 +JZANSM 29#B Q41 +41 [MAX LENGTH OF 'DISPLAY' MESSAGE 29S2 QAST #32 2=?L QMINUS1 #77777777 2=R= QMASK #77000000 2?34 ...[ 2?=W # QUESTION COMMAND.A TEST IS FIRST MADE TO DETERMINE WHETHER THE 2?QG # QUESTION HAS BEEN ALREADY ASKED,SINCE BREAKIN CAUSES'QUESTION'TO BE 2#=6 # REOBEYED.IF NOT,A QUESTION BLOCK IS CREATED TO SAY THAT THE 2#PQ # QUESTION HAS BEEN ASKED.AFTER OUTPUTTING THE QUESTION LOCALLY AND, 2*9B # WHERE APPROPRIATE,TO THE OPERATOR AS ROUTED,THE ACTIVITY IS 2*P2 # LEFT IN A WAITING STYLE.WHEN WOKEN UP BY'ANSWER',THIS ANSWER IS SET 2B8L # AS THE CURRENT DISPLAY.THE MONITORING FILE IS ALSO GIVEN A COPY OF 2BN= # QUESTION AND ANSWER 2BTD ...[ 2C2L ...[ 2C7W SENTRY1 2CMG #SKIP K6QUESCOM>99-99 2D76 TRACE 1,QUESTION 2DLQ LONGSET FORANS,ZA13 2F6B HUNTW 3,APED,AQUESTION 2FL2 BNG 3 ZB7 [JUMP IF NO QUESTION BLOCK 2G5L LDX 6 VCHARS(3) 2GK= TXU 6 QMINUS1(1) 2H4W BCC ZB12 [JUMP UNLESS ANSWER GIVEN 2HJG MARKAXES 2J46 HUNTW 3,APED,AQUESTION 2JHQ BRN ZB8 2JRJ ...[ 2K3B ZB12 LDX 4 VMESS(3) [ROUTING PARAM 2KH2 PARAPASS [TO AVOID'PARAM UNACCESSED'MESSAGE 2L2L BRN ZB1 2L=D ...[ 2LG= ZB7 CALL 3 XDEST [ANALYSE ROUTING PARAM 2L^W TXU 4 Q4(1) 2MFG BCC ZA14 [IF WAS ZERO,SEE IF MOP JOB 2MJL ...[ 2MMQ ...#SKI G374&1 2MQW ...ZB13 SETNCORE 22,3,APED,AQUESTION 2MW2 ...#SKI G374&1$1 2M^6 ZB13 SETNCORE 19,3,APED,AQUESTION [MAKE QUESTION BLOCK 2NDQ LDX 7 QMINUS1(1) 2NYB STO 7 VCHARS(3) [SET INDICATOR IN BLOCK 2PD2 STO 4 VMESS(3) [ROUTING PARAM TO QUESTION BLOCK 2PXL TXU 4 Q4(1) 2QC= BCC ZB1 [IF WAS ZERO,JOB AND USER NOT REQD. 2QWW LDN 7 A1+11(3) 2RBG CJOBLOCK 2 [JOB & USER NAMES FROM JOB BLOCK 2RW6 FLENME JUSER,JNAME [TO APED/AQUESTION BLOCK 2S*Q LDX 4 VMESS(3) 2STB ZB15 BCHX 3 £ [STEP CHARACTER PTR 2T*2 LDCH 0 A1+12(3) 2TSL SBN 0 #36 2W#= BNZ 0 ZB15 [JUMP UNLESS '.' 2WRW LDN 0 #34 2X?G DCH 0 A1+12(3) [CHANGE '.' TO ',' 2X?S ...[ 2X#6 ...[ 2X#D ...#SKI G374&1 2X#Q ...( 2X*4 ...# MEND EXCHANGE SCHEME CODE 2X*B ...# 2X*N ...# 2XB2 ...# NOW WE ADD (JOBNO) TO THE APED/AQUESTION BLOCK 2XB# ...# 2XBL ... HUNTW 3,APED,AQUESTION 2XBY ... SMO FX2 2XC= ... LDX 4 JOBNO 2XCJ ... SMO FX1 2XCW ... MPY 4 XMAGIC 2XD8 ...# 2XDG ... LDX 1 A1+11(3) 2XDS ... SRC 1 2 2XF6 ... ADN 1 A1+12(3) 2XFD ... LDN 0 1 2XFQ ...# 2XG4 ... LDN 7 #20 2XGB ... DCH 7 0(1) 2XGN ... BCHX 1 £ 2XH2 ... ADS 0 A1+11(3) 2XH# ... LDN 7 #30 2XHL ... DCH 7 0(1) 2XHY ... BCHX 1 £ 2XJ= ... ADS 0 A1+11(3) 2XJJ ... MODE 0 2XJW ... LDN 6 0 2XK8 ... LDN 7 7 2XKG ...OPCSA CBD 4 6 2XKS ... BZE 6 OPCSB 2XL6 ... ORN 6 #100 2XLD ... DCH 6 0(1) 2XLQ ... BCHX 1 £ 2XM4 ... ADS 0 A1+11(3) 2XMB ...OPCSB BCT 7 OPCSA 2XMN ...# 2XN2 ... LDN 7 #31 2XN# ... DCH 7 0(1) 2XNL ... ADS 0 A1+11(3) 2XNY ... LDX 4 VMESS(3) 2XP= ... BRN ZB1 2XPJ ...XMAGIC +7036875 2XPW ...) 2XQ8 ...[ 2XQG ...[ 2XR6 ZB1 SPARAPASS 2Y=Q HUNT 2,CPB,CUNI [FIND SECOND PARAM 2YQB LDX 5 ANUM(2) 2^=2 TXU 5 QMINUS1(1) [NON EXISTANT 2^PL BCS ZB2 329= LDN 5 0 32NW ZB2 ANDN 5 #7777 338G TXL 5 Q41(1) 33N6 BCS ZB14 [JUMP IF LESS THAN 40 CHARS 347Q LDN 5 40 34MB ZB14 OUTPARAM 5,APARA,CPB,CUNI 3572 TXU 4 Q4(1) 35LL BCS ZB4 366= MONOUTX ZJ1(1) [QUESTION NOT SENT TO OPERATORS 36KW BRN ZB3 375G ZB4 MONOUTX ZJ2(1) [QUESTION TO MONITORING FILE 37K6 ZB3 TXU 4 Q4(1) [JUMP IF OPERATOR O/P REQUIRED 384Q BCS ZA11 38JB ZA10 LONGSTOP ZB6,ZA10 [WAIT FOR ANSWER 3942 BRN ZA12 394P ...[ 395D ...[ 3969 ZA11 39#W ...#SKI G374&1 39HH ... LDN 7 22 39Q8 ...#SKI G374&1$1 39YT LDN 7 19 3=3= OUTBLOCK 7 3=GW OUTPARAM 5,APARA,CPB,CUNI 3?2G HUNTW 3,APED,AQUESTION 3?G6 OUTPARAM A1+11(3),A1+12,APED,AQUESTION [QUESTION TO OPS REP TILL 3?^Q DEMANDX 4,ZJ3(1),,ZB6,ZB10,1 [ANSWER IS GIVEN 3#FB ZA12 LONGSET FORANS,ZA13 3#^2 HUNTW 3,APED,AQUESTION [FIND QUESTION BLOCK 3*DL LDX 6 VCHARS(3) 3*Y= TXU 6 QMINUS1(1) 3BCW BCS ZB8 [JUMP IF ANSWER GIVEN 3BXG TXU 4 Q4(1) [ANSWER NOT GIVEN 3CC6 BCS ZB10 3CWQ BRN ZA10 3D6J ...[ 3DBB ZA13 GEOERR 1,LWSET [LONGWAIT FIELD ALREADY SET 3DL8 ...[ 3DW2 ZB8 3F*L HUNTW 2,APED,ADISPLAY 3FT= NAME 3,APED,ADISPLAY [RENAME QUESTION BLOCK 3G#W BNG 2 ZB5 3GSG FREECORE 2 [REMOVE ANY OTHER DISPLAY BLOCK 3H#6 ZB5 ALTLEND 3,11 [FREE WORKING SPACE 3HRQ OUTPARAM 6,VMESS,APED,ADISPLAY 3J?B MONOUTX ZJ4(1) [ANSWER TO MONITORING FILE 3JR2 #SKIP K6QUESCOM>99-99 3K=L TRACE 1,QUESEND 3KK3 ZB9 3KXD LONGOFF 3KYP ZB9A 3L9W ENDCOM 3L?7 ...[ 3L#D ...[ 3L*R ZB6 3M59 COMBRKIN 3M5D ...[ 3M8S ...[ 3M96 ZA14 SMO FX2 3MNQ LDX 7 CONTEXT 3MTY ...[ 3N36 ...[ 3N8B ANDN 7 #10 3NN2 BNZ 7 ZB13 [JUMP IF MOP JOB 3P7L ZA15 LONGOFF 3PM= COMERR JZRTPAR 3Q6W ZA1 LONGOFF 3QLG COMERR ERUNALLOC [UNALLOCATED PERIPHERAL 3R66 # ANALYSES ROUTING PARAM,STORING IT AS 0,1 OR,FOR AN ONLINE PERIPHERAL, 3RKQ # GEOG UNIT NO IN X4. 3S5B XDEST 3SK2 SBX 3 FX1 3T4L SMO FX2 3TJ= STO 3 AWORK3 3W3W PARAPASS [PASS FIRST PARAM 3WHG HUNT 2,CPB,CUNI [FIND PARAM 3X36 LDX 6 ANUM(2) 3XGQ TXU 6 QMINUS1(1) [NON EXISTANT PARAM 3Y2B BCC ZA15 3YG2 ANDN 6 #7777 3Y^L BZE 6 ZA15 [NULL PARAM 3^F= LDCH 4 APARA(2) 3^YW BNZ 4 ZA18 [JUMP IF NOT ZERO 42DG TXU 6 Q1(1) 42Y6 BCC ZA9 43CQ BRN ZA15 [ERROR IF MORE THAN 1 CHARACTER 43MJ ...[ 43XB ZA18 TXL 4 Q4(1) 44C2 BCC ZA17 [JUMP UNLESS ONE,TWO OR THREE 44WL ZA16 TXU 6 Q1(1) 45B= BCC ZA7 45TW BRN ZA15 [ERROR IF MORE THAN 1 CHARACTER 465N ...[ 46*G ZA17 46T6 TXU 4 QAST(1) 47#Q BCS ZA15 [JUMP UNLESS ASTERISK 47SB PERCON [CONVERT PERIPH NAME TO TYPE,UNIT NO 48#2 HUNTW 2,CPAR,GPERCON [FIND CONVERTED PARAMETER 48RL BNG 2 ZB9 [FINISH-ERROR REPORTED BY PERCON 4LYQ #SKI K6QUESCOM<99-99 4MDB TRACE A1(2),QUESTYUN 4MY2 SMO FX2 4NCL LDX 4 CONTEXT 4NX= ANDN 4 #1000 4PBW BZE 4 ZA9 [JUMP IF NO CORE IMAGE 4PWG FPCACA 3,FX2 4QB6 HUNT2 3,APERI,APERIRES 4QTQ FPERENTA 3,A1(2),ZA1 4R*B LDX 4 1(3) 4RT2 ANDX 4 GSIGN 4S#L ERX 4 GSIGN 4SS= BZE 4 ZA9 4T?W LDN 4 2 [CENTRAL CONSOLE ONLY 4TRG BRN ZA7 4WGY ...[ 4WQQ ZA9 LDN 7 1 4X=B AMXTRACE 7,NOOUT [ERROR IF NO MOP CONSOLE OUTPUT 4XQ2 ZA7 4Y9L #SKIP K6QUESCOM>99-99 4YP= TRACE 4,QUESUNUM 4^8W ADN 4 4 [ADD 4 TO ROUTING PARAMETER FOR 4^NG [CLUSTERS 5286 SMO FX2 52MQ LDX 3 AWORK3 537B ADX 3 FX1 53M2 EXIT 3 0 53WS ...[ 546L NOOUT LONGOFF 54L= COMERR JMTRACE 555W MENDAREA 20,GAPQUESCOM 55KG #END ^^^^ ...41376221000300000000