{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: IPBERROR867)}} ====== IPBERROR867 ====== (George Source) **Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:BXE|BXE]], [[george:macro:COOR1|COOR1]], [[george:macro:COOR4|COOR4]], [[george:macro:DCA|DCA]], [[george:macro:DEMAND|DEMAND]], [[george:macro:DISENGPER|DISENGPER]], [[george:macro:DSCA|DSCA]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GEOERR|GEOERR]], [[george:macro:GEOPACK|GEOPACK]], [[george:macro:GPERI|GPERI]], [[george:macro:GSPERI|GSPERI]], [[george:macro:HUNT2|HUNT2]], [[george:macro:HUNT2J|HUNT2J]], [[george:macro:HUNTW|HUNTW]], [[george:macro:INFORMX|INFORMX]], [[george:macro:ISSUJOB|ISSUJOB]], [[george:macro:JSBUSY|JSBUSY]], [[george:macro:LAMOP|LAMOP]], [[george:macro:LGEOG|LGEOG]], [[george:macro:LOCK|LOCK]], [[george:macro:LONGOFF|LONGOFF]], [[george:macro:LONGSET|LONGSET]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MOPOFF|MOPOFF]], [[george:macro:OUTBLOCK|OUTBLOCK]], [[george:macro:OUTNULL|OUTNULL]], [[george:macro:OUTPACK|OUTPACK]], [[george:macro:OUTPACKX|OUTPACKX]], [[george:macro:PERCHARS|PERCHARS]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:UNLOCK|UNLOCK]], [[george:macro:UP|UP]], [[george:macro:UPPLUS|UPPLUS]], [[george:macro:VFREEW|VFREEW]], [[george:macro:WRONG|WRONG]] 22FL #SEG IPBERROR [COMM - IPB 22^= [ (C) INTERNATIONAL COMPUTERS LTD. 1982 23DW #LIS K0IPBERROR>K0IPB>K0ALLGEO>K0GREATGEO 23YG 8HIPBERROR 24D6 SEGENTRY K1IPBERROR,X1IPBERROR 24XQ [ 25CB [ THIS SEGMENT IS ENTERED AFTER A CALL OF THE MACRO CCERROR 25X2 [ VARIOUS ACTIONS ARE TAKEN DEPENDENT UPON THE PARAMETERS OF 26BL [ THE MACRO 26W= [ 27*W XIN +IPBIN+AMOP 27TG ZIPBERR +JIPBERR 28*6 ZIPBPOST +IPBPOST 28SQ ZIPBTAKEPM +IPBTAKEPM 29#B ZIPBRECV +IPBRECOVER 29S2 XJWRONG +JWRONG 2=?L REOPENBLK 0,#40000000,#1130000,#1120000 2=R= TABLE 8HNULLENT 2?=W 8HINV IDEN [1 2?QG 8HTRANSFER [2 2#=6 8HUNTERMRD [3 2#PQ 8HINV SUP [4 2*9B 8HBIGREPRT [5 2*P2 8HNOCONTCR [6 2B8L 8HSSSWRONG [7 2BN= 8HREJECTOT [8 2C7W 8HREJECTIN [9 2CMG 8HWRONGSUP [10 2D76 8HWRONGILL [11 2DLQ 8HNOTCLOSE [12 2F6B 8HSS WRONG [13 2FL2 8HDATANOW? [14 2G5L 8HNOT80CHS [15 2GK= POSTSEG 0,#40000000,#00500000 2H4W ZIPBMOPOFF +IPBMOPOFF 2HJG SEGENTRY K52IPBERROR 2J46 MOPOFF +14 2JHQ +0 2K3B 14HMOP OFF, ,PM 2KH2 SEGENTRY K51IPBERROR 2L2L 4H 2LG= SPACE 4H000 2PD2 [ 2PXL [ SUBROUTINES 2QC= [ 2QWW SOUTP 2RBG SBX 7 FX1 2RW6 ZOUTC 2S*Q OUTPACKX 6,5,4,ZOUTC 2STB ADX 7 FX1 2T*2 EXIT 7 0 2TSL [ 2W#= SGEOG 2WRW SBX 7 FX1 2X?G LDX 3 AWORK4(2) 2XR6 LGEOG CPPTR(3),6 2Y=Q GEOPACK 3,6,C 2YQB LDN 5 1 2^=2 LDN 6 3 2^PL LDN 4 29 329= BRN ZOUTC 32NW [ 338G SINF 33N6 SBX 7 FX1 347Q LDN 1 1 34MB INFORMX 1,6,1 3572 ADX 7 FX1 35LL EXIT 7 0 366= [ 36KW [ 375G [ 37K6 [ K1 IPBERROR 384Q [ 38JB [ 3942 X1IPBERROR 39HL LDN 6 ACOMMUNE1(2) [SAVE CCERROR MACRO PARAMS. 3=3= LDN 7 AWORK1(2) 3=GW MOVE 6 2 3?2G HUNTW 3,AMXOR,ADCB [HUNT IDENT. BLK. 3?G6 BPZ 3 ZIDENT [J. ONE EXISTS = IDENT LEVEL ERROR 3?^Q LAMOP ,3 [GET ADDRESS OF AMOP/IPBIN IN X3 3#FB LDCT 0 #400 3#^2 ORS 0 AWORK3(2) [SET INDICATOR AWORK3 NEG = LINK LEVE 3*DL BRN ZJOIN [J. TO CONTINUE 3*Y= ZIDENT [IDENT ERROR 3BCW LONGSET CCERRWAIT,ZLNSE [J. IF ALREADY LONG SET 3BXG LDX 0 IDENTNO(3) 3CC6 STO 0 AWORK3(2) [ST. IDENT NO. IN AWORK3. 3CWQ LDX 3 IADIN(3) [LD. PTR. TO AMOP/IPBIN 3DBB ZJOIN 3DW2 STO 3 AWORK4(2) [ST. PTR. TO AMOP/IPBIN IN AWORK4 3F*L SETNCORE GSCANSIZE+2,3,AMXOR,GSCAN 3FT= LDX 0 GSCANPNTR [NEXT GSCAN ENTRY 3G#W LDX 7 GSCANBUFF 3GSG SBX 0 7 [REL START OF GSCAN BUFFER 3H#6 STO 0 A1(3) [LAST ENTRY 3HRQ LDX 0 GSCANVAL [LAST ENTRY 3J?B SBX 0 7 [RELATIVISE 3JR2 STO 0 A1+1(3) 3K=L LDN 0 A1+2(3) 3KQ= MOVE 7 GSCANSIZE [COPY GSCAN BUFFER 3L9W [ 3LPG LDN 7 #4000 3M96 ANDX 7 AWORK1(2) [EXTRA 4 WDS FOR %B FOR CLERROR. 3MNQ SRL 7 9 3N8B ADN 7 12 [4 WDS. PER PARAM 3NN2 OUTBLOCK 7 [SET UP BLOCK FOR PARAMS TO MESSAGE 3P7L CALL 7 SGEOG 3PM= LDXC 6 AWORK3(2) 3Q6W BCC ZIDENT1 [J. IDENT LEVEL 3QLG OUTNULL [NULL IDENT. NO. PARAM 3R66 BRN ZJOIN1 3RKQ ZIDENT1 3S5B LDX 3 AWORK4(2) 3SK2 LGEOG CPPTR(3),7 3T4L ORX 7 CACT 3TJ= GEOPACK 3,6 3W3W LDN 6 3 3WHG CALL 7 SOUTP [X5 & X4 ARE STILL OK 3X36 ZJOIN1 3XGQ SMO 2 3Y2B LDCH 6 AWORK1 3YG2 SLL 6 1 3Y^L SMO 6 3^F= LDN 6 TABLE(1) [FIND SUBMESSAGE FROM A TABLE 3^YW LDN 4 37 [VARCHC PDC 42DG LDN 5 2 42Y6 CALL 7 SOUTP 43CQ LDN 0 #4000 43XB ANDX 0 AWORK1(2) [B12 OF AWORK1=1 IF ADD. INFO. 44C2 BZE 0 NADINF [J. NO OCTAL ADD. INFO. 44WL LDN 6 AWORK2(2) [ADDR. OF ADD. INFO 45B= LDN 5 1 [1 WD OF OCTAL 45TW LDN 4 44 [OCTA PDC 46*G CALL 7 SOUTP 46T6 NADINF 47#Q LDX 6 ZIPBERR(1) [UNIT UN ERROR:IN FAILED STRG #OCTAL 47SB CALL 7 SINF 48#2 [ 48RL LDXC 6 AWORK3(2) 49?= BCS ZLINK [J. LINK LEVEL ERROR. 49QW [ 4==G [ IDENTIFIER LEVEL 4=Q6 [ 4?9Q HUNT2J 3,AMXOR,ADEVS,AWORK4(2),ZERR1 4?PB LDX 0 AWORK3(2) [IDENT NO. 4#92 SBX 0 A1+FOURTHWD(3) [SBN LOWEST IDENT NO 4#NL SLL 0 2 [FOURWD ENTRIES 4*8= ADX 3 0 [X3 PTR TO ADEVS ENTRY FOR IDENT 4*MW LDCT 0 #100 4B7G ANDX 0 A1+FOURTHWD(3) 4BM6 ORX 0 FINISH 4C6Q BNZ 0 ZMPFN [J. MOPPING OFF OR FINISHING 4NCL OUTEX 4NX= CALL 7 SGEOG 4PBW ZBRKI 4PWG DEMAND 1,IPBTAKEPM,ZJCD,ZBRKI,ZREN,1 [DEMAND A PM 4QB6 ZJCD [OPERATORS RESPONDED CANTDO. 4QTQ MHUNTW 3,AMXOR,ADCB 4R*B LDX 0 IADIN(3) 4RT2 STO 0 AWORK4(2) 4S#L LDX 0 IDENTNO(3) 4SS= STO 0 AWORK3(2) 4T?W LDX 3 AWORK4(2) [OUTPUT MESSAGE 4TRG LGEOG CPPTR(3),7 [SAYING IDENT WRONG 4W?6 ORX 7 CACT 4WQQ LDX 6 AWORK3(2) [X7 GEOEG NO. X6 = IDENT NO 4X=B GEOPACK 4,6 4XQ2 OUTPACK 4,1,GEOPER 4Y9L LDN 5 0 4YP= LDX 7 XJWRONG(1) [LD. WRONG MESS 4^8W INFORMX 5,7,1 4^NG HUNT2J 3,AMXOR,ADEVS,AWORK4(2),ZERR1 5286 LDN 6 #2000 [BIT 13 - CANTDO LABEL 52MQ LDX 0 AWORK3(2) [IDENT NO. 537B SBX 0 A1+FOURTHWD(3) [SBN LOWEST IDENT. NO. 53M2 SLL 0 2 [FOUR WD. ENTRIES. 546L ADX 3 0 [X3 PTR. TO ADEV'S ENTRY FOR IDENT. 54L= LDX 0 A1+FOURTHWD(3) 555W ANDN 0 #17 [MASK OUT DEVICE TYPE 55KG SBN 0 4 5656 BZE 0 ZCRTR [J. DEVICE TYPE = 04 IE CARD READER 56JQ SBN 0 2 574B BZE 0 ZCRTR [J. DEVICE TYPE = 06 IE TAPE READER 57J2 LDCT 0 #002 [LD. BIT 7 583L ERS 0 A1+FOURTHWD(3) [SET BIT 7 = WRONGED 58H= [ 592W ZCRTR 59GG LONGOFF 2 5=26 VFREEW AMXOR,GSCAN [SUB TO FREE GSCAN BLOCK 5=FQ ANDX 6 AWORK1(2) [LABELS SUPPLIED 5=^B BNG 6 ZUPP2 5?F2 BNZ 6 ZUPP1 5?YL UP [FOLLOW ON 5#D= ZUPP1 5#XW UPPLUS 1 [LABEL GIVEN 5*CG ZUPP2 UPPLUS 2 5*X6 [ 5BBQ ZMPFN 5BWB LDN 6 #1000 [BIT 14 - MOP OFF LABEL 5CB2 BRN ZCRTR 5CTL [ 5D*= [ 5DSW [ LINK LEVEL 5F#G [ 5FS6 ZLINK 5G?Q SMO 2 5GRB LDCH 6 AWORK1 [LD. MESSAGE SUB TYPE 5H?2 SBN 6 8 5HQL BNZ 6 ZLER1 [J. NOT REJECTOT 5J== [ REJECTOT 5JPW LDX 3 AWORK4(2) [LD. PTR TO AMOP/IPBIN 5K9G LDCT 0 #400 [B0 5KP6 ORS 0 IPBSW(3) [MARK IPBIN ACT. INOP. 5L8Q LDCT 0 #404 [B0 + B6 5LNB SMO IPBRING(3) 5M82 ORS 0 IPBSW-IPBRING [MARK OUTPUT ACT. 5MML ZRET 5N7= LDX 6 GSIGN [RETURN TO CALL SEG 5NLW BRN ZCRTR [FREE AND EXIT 5P6G [ 5PL6 ZLER1 5Q5Q SMO 2 5QKB LDCH 6 AWORK1 5R52 SBN 6 5 5RJL BZE 6 ZRET [J. BIG REPT = 5 5S4= SBN 6 1 5SHW BZE 6 ZRET [J. NOCONTCR = 6 5T3G SBN 6 1 5TH6 BZE 6 ZRET [J. SSSWRONG = 7 5W2Q SBN 6 2 5WGB BZE 6 ZRET [J. REJECTIN = 9 5X22 [ 5XFL SMO 2 5X^= LDCH 6 AWORK1 [LD. SUB MESS. 5YDW SBN 6 2 5YYG BZE 6 ZTERM [J. TRANSFER 5^D6 SBN 6 1 5^XQ BNZ 6 SPOST [J.NOT UNTERMRD GO TO OUTPUT POST 62CB ZTERM 62X2 LDX 3 AWORK4(2) [LD. PTR. TO AMOP 63BL LDX 0 IPBSW(3) 63W= BNG 0 ZRET [J. UNIT ALREADY INOP 64*W LDCT 0 #400 64TG ORS 0 IPBSW(3) [SET INOP BIT IN IPBIN 65*6 SMO IPBRING(3) 65SQ ORS 0 IPBSW-IPBRING [SET INOP BIT IN IPBOUT 66#B LDCT 0 #020 66S2 ANDX 0 IPBSW(3) 67?L BNZ 0 ZMPFN [J. MOP OFF IN PROGRESS 67R= CALL 7 SGEOG 68=W LDX 6 ZIPBRECV(1) [MESSAGE - ATTEMPTING RECOVERY 68QG CALL 7 SINF 69=6 [ SENT OUT RESET/REOPEN 69PQ SETNCORE 4,1,AMXOR,IOUT,1 [SET UP SUP SEG BLOCK 6=9B SMO FX1 6=P2 LDN 3 REOPENBLK 6?8L LDN 4 IMOPTY(1) 6?N= MOVE 3 4 6#7W ZRESREO 6#MG LOCK 1 6*76 LDN 0 #15 [END WRITE CANCEL READ MODE 6*LQ DCA ,STO,0,MODE [ST. MODE 6B6B STOZ CPRW1(2) [CLEAR REPLY WD. 6BL2 MHUNTW 3,AMXOR,IOUT 6C5L LDX 0 ALOGLEN(3) 6CK= SBN 0 IPBIDE-A1-1 [SIZE OF DATA SEG +1 FOR BSW 6D4W DCA ,STO,0,COUNT [ST. COUNT 6DJG LDN 0 IBSW(3) 6F46 DCA ,STO,0,CTSA [ST. START OF BLOCK TO BE OUTPUT 6FHQ GPERI ,2 [OUTPUT SUP SEGS -RESET REOPEN 6G3B LDX 6 CPRW1(2) 6GH2 BPZ 6 WAIT2 [J. TRANSFER COMPLETE 6H2L SLC 6 5 6HG= BNG 6 TINOP [BR. IF REJECTED INOP 6H^W SRC 6 1 6JFG BNG 6 TINOP [J. RECTECTED OPERABLE 6J^6 WAIT2 6KDQ COOR1 [WAIT FOR END OF TRANSFER CHAINING 6KYB LDX 0 CPRW1(2) 6LD2 SLC 0 5 6LXL BPZ 0 TINOP [J. INOP 6MC= SRC 0 2 6MWW BNG 0 TERR [J. ERROR 6NBG LDCT 0 #220 [BIT PATTER X1XX1 BITS 1 AND 4 SET 6NW6 ANDX 0 CPRW1(2) 6P*Q BNZ 0 TINOP [J. NOT IMPL 6PTB LDX 0 CPRW1(2) 6Q*2 ANDN 0 #7777 6QSL BNZ 0 TINOP [J. ONLY ONE WD. READ BY DCP 6R#= UNLOCK 3 [UNLOCK AMXOR IOUT BLK 6RRW VFREEW AMXOR,IOUT [FREE BLOCK 6S?G [ ATTEMPT TO RECOVER BY SENDING RESET REOPEN HAS WORKED. 6SR6 LDCT 0 #004 [B6 OF OUTPUT ACT SET 6T=Q SMO IPBRING(2) 6TQB ORS 0 IPBSW-IPBRING 6W=2 LDCT 0 #400 6WPL SMO IPBRING(2) 6X9= ANDX 0 IPBSW-IPBRING 6XNW SMO IPBRING(2) 6Y8G ERS 0 IPBSW-IPBRING [CLEAR INOP BIT 0 IN OUT ACTIVITY 6YN6 LDCT 0 #400 6^7Q ANDX 0 IPBSW(2) 6^MB ERS 0 IPBSW(2) [CLEAR INOP BIT 0 IN IN ACTIVITY 7272 BRN ZRET [RETURN TO CALLING SEG 72LL TERR [WRITE REJECTED OPERABLE OR ENDED. 736= [WAIT FOR READ TO FINISH 73KW UNLOCK 3 745G LDX 0 XIN(1) 74K6 SLL 0 12 754Q SBX 0 ATYPE(2) [TEST IF IN ACT 75JB BZE 0 TIN [J. YES 7642 LDX 2 IPBRING(2) [LD. PTR TO IN 76HL SBN 2 IPBRING 773= TIN HUNT2 3,AMXOR,INBF,2 77GW SEGENTRY K50IPBERROR [NPUSIZE MACRO 782G LDN 5 INPUSIZE+5 78G6 LOCK 3 78^Q ADN 3 A1 79FB LDX 2 FX2 79^2 LDN 7 2 7=DL JSBUSY ,ZERR1 7=Y= DSCA ,STO,3,CTSA [SET UP CONTROL AREA FOR READ 7?CW DSCA ,STO,5,COUNT 7?XG DSCA ,DLA,7,MODE 7#C6 GSPERI ,2 [DO PERI 7#WQ LDX 0 CPRW1(2) [CHECK REPLY 7*BB BPZ 0 SPOS [FINISHED ALREADY 7*W2 SLC 0 5 7B*L BNG 0 TINOP [J. INOP 7BT= SPOS COOR1 [WAIT 7C#W LDX 0 CPRW1(2) 7CSG SLC 0 5 7D#6 BPZ 0 TINOP [J. IF INOP. 7DRQ SRC 0 2 7F?B BNG 0 TINOP [B3 SET - ERROR 7FR2 SRC 0 1 7G=L BNG 0 TINOP [B2 SET - UNTERM READ 7GQ= MHUNTW 1,AMXOR,IOUT 7H9W BRN ZRESREO [ATTEMPT RESET/REOPEN AGAIN. 7HPG TINOP UNLOCK 3 7J96 VFREEW AMXOR,IOUT [FREE RESET-REOPEN SUP SEG BLK 7JNQ XINFOMESS 7K8B CALL 7 SGEOG 7KN2 LDX 6 ZIPBTAKEPM(1) [PLEASE TAKE PM MESSAGE 7L7L CALL 7 SINF 7LM= LDX 6 XIN(1) 7M6W SLL 6 12 7MLG SBX 6 ATYPE(2) 7N66 LDCT 0 #20 7NKQ BZE 6 XTIN [J. AMOP-IPBIN 7P5B SMO IPBRING(2) 7PK2 ANDX 0 IPBSW-IPBRING [MASK MOP OFF BIT 7Q4L BRN XOUT [J. CONTINUE 7QJ= XTIN ANDX 0 IPBSW(2) [MASK MOP OFF BIT 7R3W XOUT 7RHG SLL 0 2 7S36 ORX 0 FINISH [AND FINISH BIT 7SGQ BNZ 0 ZMPFN [J FINISH 7T2B LDX 4 ASYSTEMMESS [LD. MESSAGETIME 7TG2 XREPT BZE 4 XINFOMESS 7T^L COOR4 CCERRWAIT [WAIT 4 SECS 7WF= SBN 4 4 7WYW BNG 4 XINFOMESS [RE-OUTPUT MESSAGE. 7XDG BRN XREPT [REPEAT WAIT 7XY6 [ SEND POSTMORTEM TO DCP AND MOP OFF THE UNIT 7YCQ SPOST 7YXB LDCT 0 #400 7^C2 ORS 0 IPBSW(2) [SET INOP BIT IN INPUT ACT 7^WL SMO IPBRING(2) 82B= ORS 0 IPBSW-IPBRING [SET INOP BIT IN OUTPUT ACT. 82TW CALL 7 SGEOG 83*G LDX 6 ZIPBPOST(1) [IS BEING PUT INTO POSTMORTEM STATE 83T6 CALL 7 SINF 84#Q [ SEND OUT POSTMORTEM SUPSEG TO DCP 84SB SETNCORE 3,1,AMXOR,IOUT,1 [SET UP AN OUTPUT BLOCK. 85#2 SMO FX1 85RL LDN 3 POSTSEG [MOVE IN POSTMORTEM SUP.SEG 86?= LDN 4 IMOPTY(1) 86QW MOVE 3 3 87=G LOCK 1 87Q6 LDN 0 #15 [END WRITE CANCEL READ MODE 889Q DCA ,STO,0,MODE [ST. MODE 88PB STOZ CPRW1(2) [CLEAR REPLY WD. 8992 MHUNTW 3,AMXOR,IOUT 89NL LDX 0 ALOGLEN(3) 8=8= SBN 0 IPBIDE-A1-1 [SIZE OF DATA SEG+1 FOR BSW 8=MW DCA ,STO,0,COUNT [ST. COUNT 8?7G LDN 0 IBSW(3) 8?M6 DCA ,STO,0,CTSA [ST. START OF BLOCK TO BE OUTPUT. 8#6Q GPERI ,2 [OUTPUT SUP.SEG - POSTMORTEM 8#LB COOR1 [WAIT FOR END OF TRANSFER. 8*62 [DONT SEE ANY POINT IN CHECKING 8*KL [THE REPLY WORD AS THERE WILL BE 8B5= UNLOCK 1 [VERY LITTLE FOR US TO DO. 8BJW VFREEW AMXOR,IOUT 8C4G SEGENTRY K55IPBERROR 8CJ6 NULL [GEOERR IPBERR IF THE IPBPM MACRO 8D3Q NULL [IS ON 8DHB LONGOFF 2 [REMOVE LONGSET 8F32 VFREEW AMXOR,GSCAN [FREE GSCAN BLCK. 8FGL [ SEND OUT A MESSAGE TO THE OPERATOR INFORMING THEM UNIT WILL APPEAR 8G2= [ MOPPED OFF 8GFW XMOP 8G^G CALL 7 SGEOG 8HF6 LDX 6 ZIPBMOPOFF(1) [UNIT IS BEING MOPPED OFF. 8HYQ CALL 7 SINF 8JDB LDX 2 FX2 8JY2 LDX 3 AWORK4(2) 8KCL LGEOG CPPTR(3),6 8KX= GEOPACK 3,6,C [PACKED GEOPER PARAMETER 8LBW PERCHARS 3 [CONVERT TO ENGLISH FORM IN AC2 &AC3 8LWG SETNCORE 7,3,ADATA,CREADL [CREATE CREADL WITH MOP OFF COMMAND 8MB6 LDN 5 MOPOFF(1) 8MTQ LDN 6 A1(3) 8N*B MOVE 5 7 8NT2 XLD LDCH 0 ACOMMUNE2(2) 8P#L BXE 0 SPACE(1),XSP [J. WHEN = SPACE 8PS= DCH 0 A1+4(3) [PUT UNIT NO INTO COMMAND 8Q?W BCHX 3 XA 8QRG XA BCHX 2 XLD 8R?6 XSP 8RQQ [ 8S=B ISSUJOB 0 [INITIAGLISE A JOB TO MOP OFF 8SQ2 [ 8T9L XWAITMP 8TP= COOR4 #62 [GET WOKEN UP EVERY FONINTP SECS. 8W8W LDCT 0 #20 8WNG ANDX 0 IPBSW(2) [TEST TO SEE IF MOPPING OFF 8X86 BNZ 0 XMPOFF [J. MOPPING OFF 8XMQ LDCT 0 #400 [MOP OFF COMMAND FAILED 8Y7B ANDX 0 IPBSW(2) 8YM2 BNZ 0 XMOP [IF INOP REISSUE MOP OFF,PM COMMAND 8^6L GEOERR 1,FUNNYIPB [GEOERR - FUNNYIPB - STATE OF'IPB ODD 8^L= XMPOFF 925W LDCT 0 #040 [TEST READ INHIBIT 92KG ANDX 0 IPBSW(2) 9356 BZE 0 XWAITMP [J. TO WAIT FOR MOP OFF TO COMPLETE 93JQ ERS 0 IPBSW(2) [CLEAR B3 TO SHOW READ FINISHED 944B MHUNTW 3,AMXOR,ADEVS 94J2 LDX 2 A1+BPTR(3) [ZERO OR RINGED - MOP OFF' DUMMY ADCB 953L BZE 2 SFPA [J. FINISHED 95H= STOZ A1+BPTR(3) [CLEAR ADEVS 962W STOZ BPTR(2) [CLEAR ADCB 96GG SBN 2 A1+BPTR 9726 SFRED LDX 2 BPTR(2) 97FQ LDX 0 ATYPE(2) 97^B TXL 0 CACT 98F2 BCS SFRED 98YL FPUT [PUT MOPPING OFF ON LIST 99D= SFPA [FREEING ADEV'S 99XW LDX 2 3 9=CG LDX 4 ALOGLEN(3) 9=X6 SRL 4 2 9?BQ SBN 4 1 9?WB SFALOOP 9#B2 LDX 1 A1+BPTR+4(3) 9#TL BZE 1 SFALPA [NEXT ENTRY 9**= GEOERR 1,ADEVSRIN [A RING STILL EXISTS 9*SW SFALPA 9B#G ADN 3 4 9BS6 BCT 4 SFALOOP 9C?Q LDX 3 2 9CRB FREECORE 3 9D?2 MFREEW AMXOR,INBF 9DQL LDX 0 GSIGN 9F== STO 5 CHAINADD(2) [SET CHAINADD -VE TO AWAIT RESTART 9FPW STOZ IPBSW(2) [CLEAR IPBSW 9G9G DISENGPER [WAIT UNTIL OPERABLE 9GP6 COOR1 9H8Q ACROSS IPBSTART,5 [GO RESTART 9HNB ZERR1 GEOERR 1,NOADEVS 9J82 ZLNSE GEOERR 1,LONGSET 9JML #END ^^^^ ...074153530001