IPCONC8

(George Source)

Macros used: ACROSS, BXE, BXL, BXU, CCBB, CLEAR, DCA, DECLINK, DESUSPEND, EMPTY, FINDACTFB, FINMOVE, FREECORE, GPERIIPC, HUNT2, HUNT2OPT, MENDAREA, MFREE, MHUNT, SEG, SEGENTRY, SIPCM, SREP, TICKLE, TIPCREP, TRACE, UP

IPCONC8.txt
22FL          SEG      IPCONC,,JOHN BAILEY  
22^=    #     THIS SEGMENT DEALS WITH CLOSING IPC LINKS 
23DW    #     ENTRY POINT 1 IS FOR CLOSE TASKS  
23YG          SEGENTRY K1IPCONC,X1IPCONC
24D6    #     ENTRY POINT 2 IS FOR CLOSE REQUEST MESSAGES   
24XQ          SEGENTRY K2IPCONC,X2IPCONC
25CB          SEGENTRY K20IPCONC,X20IPCONC  
25X2    #   
26BL    #   
2=YW ...SFREE   
2?2? ...      LDX   1  FPTR(3)  
2?3N ...      EMPTY    FPTR(1)  
2?55 ...      EMPTY    FPTR(3)  
2?6G ...      LDN   0  #40  
2?7X ...      ORS   0  ASTATUS2(3)  
2?=W          EXIT  4  0
2?QG    X1IPCONC
2#=6          TRACE    IPREB+1(2),IPCONC1   
2#PQ    #     CLOSE LINK TASK : THE RING ELEMENT ETC WILL HAVE ALREADY  
2*9B    #     BEEN FREED. THE ACTION REQUIRED IS SIMPLY TO INFORM THE   
2*P2    #     OTHER END.
2B8L    #     THIS TYPE OF TASK IS USED ALSO WHEN AN OPEN LINK ATTEMPT  
2BN=    #     IS ANTICIPATED BY ANOTHER SOURCE. 
2C7W    TCLOS MHUNT    3,IPCD,ATASK 
2CMG          LDX   0  A1(3)
2D76          STO   0  IPWRB+1(2)          [LINK IDENTIFIER 
2DLQ          LDX   0  TMESSCODES+9(1)  
2F6B          STO   0  IPWRB(2)            [HEADER  
2FL2          LDN   7  IPWRB(2) 
2G5L          SUM   6  2
2GK=          NGS   6  IPWRB+2(2)          [STORE   
2H4W          LDN   0  #11  
2HJG          DCA      ,DLA,0,MODE         [COUNT   
2J46          LDN   0  IPWRB(2) 
2JHQ          DCA      ,STO,0,CTSA         [CORE ADDRESS
2K3B          LDN   0  3
2KH2          DCA      ,DLA,0,COUNT 
2L2L          GPERIIPC ,2,CT
2LG=          TIPCREP  CT,TIME,RESETA,NOP,NPUT  
2L^W          STOZ     AWORK1(2)
2MFG    TC3   MHUNT    3,IPCD,ATASK 
2M^6 ...      LDX   0  A1+1(3)  
2NDQ          SBN   0  7
2NYB          BZE   0  TC1  
2PD2 ...      LDX   6  A1(3)
2PXL          STO   6  ACOMMUNE1(2) 
2QC=          ANDN  6  #7777
2QWW          BZE   6  TC1  
2RBG          CALL  7  SREL 
2RL# ...      BNG   3  TC1         [ALREADY CLOSED OR REMOVED   
2RW6          LDX   0  ASTATUS2(3)  
2S*Q          SLL   0  5
2STB          BPZ   0  TC2  
2T*2 ...      STOZ     BPTR(3)  
2TSL          BRN      TC1  
2W#=    TC2   CALL  4  SFREE
2WRW    TC1   LDX   0  AWORK1(2)
2X?G          BZE   0  PCNXT
2XR6          MFREE    IPCD,ATASK   
2Y=Q          UP
2YQB    TFREP          #3200000 
2^=2    TIREP          #2000000 
2^PL    NPUT           ACROSS  IPCONA,2 
329=    NOPS  SIPCM    SI   
32NW    NOP   ACROSS   IPCONE,2            [DEAL WITH INOPERABLE IPB
338G    WHOOPS  
33N6          ACROSS   IPCONE,1            [DEAL WITH ERROR 
347Q    RESETA  
34MB          ACROSS   IPCONE,3            [DEAL WITH ERROR DETECTED
3572    TIME
35LL          ACROSS   IPCONE,5 
366=    X20IPCONC   
36KW          LDN   0  1
375G          STO   0  AWORK1(2)
37K6          BRN      TC3  
384Q    #     STORED WORDS  
38JB    RESBITS        #777700  
3942    TMESSCODES     #04000040
39HL                   #04000041
3=3=                   #04000042
3=GW                   #04000043
3?2G                   #04000046
3?G6                   #03000047
3?^Q                   #07000060
3#FB                   #07000061
3#^2                   #04000066
3*DL                   #03000067
3*Y=                   #02000070
3BCW                   #02000071
3BXG                   #03000077
3CC6    TBIT1          #20000000
3CWQ    TBIT2          #10000000
3DBB    TBIT3          #4000000 
3DW2    TBIT11         #10000   
3F*L    RNE            #02400000
3FT=    #     SUBROUTINE USED TO SET OBJECT PROGRAM REPLIES 
3G#W    #   
3GSG    SREP
3H#6          LDX   3  ACOMMUNE1(2) 
3HRQ          STO   4  ACC4(2)  
3J?B          STO   5  ACC5(2)  
3JR2          STO   7  ACC7(2)  
3K=L          LDX   5  AREPPTR(3)   
3KQ=          LDX   3  FPTR(3)  
3L9W          SBN   3  ARINGEL             [ADDRESS OF AOLPT
3LPG    #SKI  G3
3M96          FINDACTFB 3,,APET,,,BPTR     [ADDRESS OF AOLPTS PCA   
3MNQ    #SKI  IPCG4 
3N8B          HUNT2    2,ADATA,HLOCKDOWN,3  
3NN2          SMO      FX2  
3P7L          LDN   4  ACOMMUNE2
3PM=          LDN   7  1
3Q6W          FINMOVE  3,5,4,7,HLOCKB1,2,1  
3QLG          LDX   2  FX2  
3R66          LDX   4  ACC4(2)  
3RKQ          LDX   5  ACC5(2)  
3S5B          LDX   7  ACC7(2)  
3SK2          LDX   3  ACOMMUNE1(2) 
3T4L          NGNC  0  2
3TJ=          ANDS  0  ASTATUS1(3)         [UNSET TR STORED & IN PROGRESS BITS  
3W3W          STOZ     ATIMCT(3)
3WHG          STOZ     ASTR(3)  
3X36          STOZ  ALENTR(3)   
3XGQ          STOZ     AREPPTR(3)   
3Y2B          LDX   0  ASTMEL(3)
3YG2          STO   0  AWORK4(2)
3Y^L          STOZ     ASTMEL(3)
3^F=          LDX   3  FPTR(3)  
3^YW          SBN   3  ARINGEL  
42DG    #SKI  IPCG4 
42Y6    (   
43CQ          HUNT2    2,ADATA,HLOCKDOWN,3  
43XB          CLEAR    APETADDR(3),0,HLOCKB1,2,2
44C2          LDX   2  FX2  
44WL    )   
45B=          CCBB     3
45JG ...      STO   5  ACC5(2)  
45QQ ...      LDX   5  AWORK4(2)
45^2 ...      TICKLE   JOBNO(3),5   
467= ...      LDX   5  ACC5(2)  
46*G          LDX   3  ARINGEL(3)   
46T6          EXIT  6  0
47#Q    #     SUBROUTPNE TO LOCATE LINK ELEMENTS IN STACK   
47SB    #     GIVEN THE LINK IDENTIFIER IN ACOMMUNE1(2)  [X2 MUDT = FX2 
48#2    #     ADDRESS IS LEFT IN X3. LINK IS X7. ON EXIT X1=FX1 
48RL    #   
49?=    SREL
49QW          LDX 3 IPCPTR(2)              [FIND IPC ACTIVITY   
4==G          HUNT2    3,IPCD,IPSTACK      [FIND STACK BLOCK
4=Q6          LDX   1  ARINGNO(3)   
4?9Q          ANDN  1  #7777
4?PB          BZE   1  SRE1                [STACK EMPTY 
4#92          ADN   3  A1   
4#NL    SRE3  LDX   0  ALINUM(3)
4*8=          BXE   0  ACOMMUNE1(2),SRE2
4*MW          ADN   3  ARECLEN  
4B7G          BCT   1  SRE3 
4BM6    SRE1  NGN   3  #7777
4C6Q    SRE2  LDX   1  FX1  
4CLB          EXIT  7  0
4D62    #     S/R TO LOCATE ACTIVITY OWNING GEORGE THREE IPC LINK   
4DKL    SLACT LDX   2  FPTR(3)             [CONTROL BLOCK   
4F5=          SBN   2  IPCRNG              [BEGINNING OF CONTROL BLOCK  
4FJW    SLACT1  
4G4G          LDX   2  BPTR(2)  
4GJ6          LDX   0  ATYPE(2) 
4H3Q          BXL   0  CACT,SLACT1         [J IF NOT ACTIVITY   
4HHB          EXIT  7  0
4J32    #     S/R TO SET REPLY TO GEORGE TRANSFER   
4JGL    SGSR
4K2=          CALL  7  SREL 
4KFW    SGSR1 LDX   2  FPTR(3)  
4K^G          STO   6  IPCGREP-IPCRNG(2)   [STORE REPLY 
4LF6          NGNC  0  2
4LYQ          ANDS  0  ASTATUS1(3)         [UNSET T.IP. 
4MDB          STOZ     ATIMCT(3)
4MY2          STOZ  ASTR(3) 
4NCL          STOZ     ALENTR(3)
4PBW          STOZ     ASTMEL(3)
4PWG          CALL  7  SLACT               [LOCATE ACTIVITY 
4QB6          DESUSPEND                    [KICK IT 
4QTQ          EXIT  4  0
4R*B    X2IPCONC
4RT2    PCLOSREQ
4S#L          TRACE    IPREB+1(2),IPCONC2   
4SS=          LDX   0  IPREB+1(2)   
4T?W          SRC   0  12   
4TRG          STO   0  ACOMMUNE1(2)        [LINK IDENTIFIER 
4W?6          LDX   3  IPCPTR(2)
4WQQ          HUNT2    3,IPCD,IPSTACK   
4X=B          LDX   1  ARINGNO(3)   
4XQ2          ANDN  1  #7777
4Y9L          BZE   1  NEXTASK             [NO ELS  
4YP=          ADN   3  A1   
4^8W    PCL3  LDX   0  ALINUM(3)
4^NG          ERX   0  ACOMMUNE1(2) 
5286          BNZ   0  PCL7                [NOT THIS ONE
52MQ          LDX   0  BPTR(3)  
537B          BZE   0  PCL7 
53#J ...      LDN   0  FPTR(3)  
53FQ ...      BXE   0  FPTR(3),PCL7 
53M2          LDX   0  APTRIPB(3)   
546L          BXE   0  FX2,PCL4 
54L=    PCL7  ADN   3  ARECLEN  
555W          BCT   1  PCL3 
55KG          BRN      NEXTASK  
5656    PCL4
56JQ          LDN   0  #7777
574B          ANDS  0  ALINUM(3)
57J2          LDX   1  FX1  
583L          LDX   6  TBIT2(1)            ["JUST DISESTABLISHED" MARKER
58H=          LDX   0  ASTATUS1(3)  
592W          ANDN  0  1
59GG          BZE   0  PCL2                [J NO TRANSFER STORED
5=26          LDCT  0  #200 
5=FQ          ANDX  0  ASTATUS1(3)  
5=^B          BZE   0  PCL5                [NOT GEORGE LINK 
5?F2          LDX   6  RNE(1)   
5?YL          CALL  4  SGSR1
5#D=          BRN      PCL6 
5#XW    PCL5
5*CG          LDX   0  RNE(1)   
5*X6          STO   0  ACOMMUNE2(2) 
5BBQ          STO   3  ACOMMUNE1(2) 
5BWB          CALL  6  SREP                [SET REPLY   
5CB2    PCL6
5CTL          LDX   6  TBIT3(1)            ["REPLY GIVEN" MARKER
5D*=    PCL2  ORS   6  ASTATUS2(3)  
5DSW          LDX   0  ASTATUS1(3)  
5F#G          SLL   0  1
5FS6          BNG   0  PCLB 
5G?Q          STOZ     APTRIPB(3)   
5GRB    PCLB  LDX   6  TBIT1(1) 
5H?2          ERS   6  ASTATUS2(3)         [MARK DISESTABLISHED 
5HQL          BNG   0  PCLC 
5J==          SMO      FPTR(3)  
5JPW          STOZ     IPPROPS-ARINGEL  
5K9G    PCLC  DECLINK   
5KP6    PCL1  HUNT2OPT 2,IPCD,ATASK        [LOOK FOR TASK BLOCKS
5L8Q          BNG   2  NEXTASK             [NO MORE 
5LNB          LDX   0  A1(2)
5M82          ANDN  0  #7777
5MML          BXU   0  ALINUM(3),PCL1      [TRY NEXT
5N7=          LDX   0  A1+1(2)  
5NLW          ANDN  0  1
5P6G          BNZ   0  PCL1 
5PL6          LDX   6  BPTR(2)  
5Q5Q          FREECORE 2                   [FREE TASK BLOCK 
5QKB          LDX   2  6
5R52          BRN      PCL1                [CONTINUE SCAN   
5RJL    PCNXT MFREE    IPCD,ATASK   
5S4=    NEXTASK        ACROSS   IPCON,1 
5SHW    #   
5T3G    #   
5TH6          MENDAREA 100,K9IPCONC 
5W2Q    #   
5WGB    #   
5X22    #END
^^^^ ...41530262000800000000