PCTBEGIN863

(George Source)

Macros used: ACROSS, CHAIN, COOR1, DO, DX, EMPTY, ENRINGD, FI, FPUT, FREECORE, FSHACTPR, FSHCODE, GETACT, HUNT2, IF, LINKSET, MENDAREA, MHUNTW, PAIR, PHOTO, REPEAT, RINGTWO, SEGENTRY, SETNCORE, SETUPCORE, TESTMOVE, TESTPAIR, THEN, WHILE

PCTBEGIN863.txt
22FL    #LIS  K0PCTBEGIN>K0PCT>K0ALLGEO>K0COMMAND   
22^=    #SEG  PCTBEGIN8                    [G CONSTANTINIDES
23DW                   8HPCTBEGIN   
23YG    # ENTRY POINTS  
24D6          SEGENTRY K1PCTBEGIN,Z1PCTBEGIN
24XQ          MENDAREA APCTGAP,K99PCTBEGIN  
25CB    [   
25X2    [THIS SEGMENT IS THE INITIALISATION SEGMENT FOR THE 7020 SEGMENTS USING 
26BL    [A MULTIPLEXOR/UNIPLEXOR.THE CURRENT ACTIVITY IS'AMOP,APCT'.THE SEGMENT 
26W=    [IS ENTERED FROM THE SEGMENT'SCAN'WHICH AT'EMS'OR'MOP ON'TIME SETS UP AN
27*W    [AMOP,APCT AND FPUT'S WITH A LINK TO .PCTBEGIN. 
27TG    [THE'AMOP,APCT'HAS AN'IDF,B7020'BLOCK CHAINED AFTER IT CONTAINING AN
28*6    [ENTRY FOR EACH HARDWARE COMMAND DEFINING A 7020 ON A PARTICULAR LINE   
28SQ    [THIS SEGMENT SETS UP AN'A7020,ALCB'BLOCK AND RINGS IT TO THE   
29#B    ['AMXOR,ALINES'BLOCK OF THE'AMOP'ACTIVITY(WHICH NOTICES FLAGS). 
29S2    [ALSO AN'A7020,INFORM'BLOCK IS SET UP AND INFORMATION ABOUT THE 
2=?L    [INTERFACES PASSED ACROSS.  
2=R=    [IF A CONCEPTUAL IS CANCELLED FOR A 7020 THEN AN AMOP,APCT ENTERS   
2?=W    [PCTBEGIN BY AN ACROSS FROM 'SCAN'  
2?QG    [IN THIS SEGMENT
2#=6    [ ON ENTRY                     DURING                  ON EXIT  
2#PQ    [   
2*9B    [AWORK1 
2*P2    [AWORK2                       'B7020',ADD.  
2B8L    [AWORK3                       'INFORM' ADD. 
2BN=    [X7      LINE # 
2C7W    [   
2CCN ...ZMSK1 #00770000 
2CMG    XGEN  #76240000 
2D76          #76250000 
2DLQ          +0
2DWJ ...XLINK PAIR     PCTSTART,1   
2F6B    [   
2FL2    #OPT  ASLICETIME=1000/K9*60 
2G5L    [   
2GK=    TSLICE         +ASLICETIME  
2H4W    PAIR  PAIR     MORNING,5
2HJG    [   
2J46    [THIS S/R CALLED'XENTRY'SETS UP 2 WORD INTERFACE ENTRIES IN THE INFORM  
2JHQ    [BLOCK.X0 IS THE CALLING ACCUMULATOR
2K3B    [      X1 =1 FOR SOURCE INTERFACE I.E. TR,CR,TW(CONSOLE INPUT)  
2KH2    [      X1 =2 FOR ACCEPTOR INTERFACE I.E. LP,TP,TW(CONSOLE OUTPUT)   
2L2L    [      X2 POINTS TO IDF B7020   
2LG=    [      X3 POINTS TO INFORM BLOCK
2L^W    [      X4 CONTAINS INTERFACE TYPE I.E.LP=1  FOR 7021
2MFG    [                                     CR=2  FOR 7022
2M^6    [                                     TW=3  FOR 7023
2NDQ    [                                     TR=4  FOR 7024
2NYB    [                                     TP=5  FOR 7025
2PD2    [     X6 CONTAINS RELATIVE POINTER TO LAST ENTRY INSERTED IN TABLE  
2PXL    [     X7 HAS B0 UNSET ON ENTRY  
2QC=    [THE S/R IS ALSO CALLED'XCONS' IN THE CASE OF CONSOLE OUTPUT ENTRIES.   
2QWW    [IN THIS CASE 'V' IS SET.   
2RBG    [   
2RW6    XENT2 BNG   4  XENT3               [J. IF SOURCE INTERFACE, OTHERWISE SE
2S*Q          ORS   5  APCTX(3)            [BIT POSN. IN "LISTFILE DEVICES" MASK
2STB ...XENT3   
2W*7 ...#SKI JSKI17 
2WB4 ...(   
2WB^ ...      ANDX  5  BITS22LS 
2WCW ...      SMO      1
2WDR ...      ERX   6  APCTNO+1(2)  
2WFN ...      BPZ   6  NSPL 
2WGK ...      ORS   5  APCTSTAT(3)  
2WHG ...      SLC   6  1
2WJC ...      BPZ   6  NUNA 
2WK# ...      SRL   5  6
2WL9 ...      ORS   5  APCTSTAT(3)  
2WM6 ...      SLC   5  6
2WN3 ...NUNA  SRC   6  1
2WNY ...NSPL  SMO      1
2WPT ...      ERX   6  APCTNO+1(2)  
2WQ4 ...      BVC      NCSPL
2WQ? ...       ORX   5  GSIGN   
2WQG ...NCSPL   
2WQQ ...)   
2WQ^ ...      ORX   5  APCTHADD(3)  
2WR8 ...      ORX   5  1
2WRC ...      SMO      6
2WRL ...      STO   5  APCTDEV(3)          [INTERFACE BIT POSN./HARDWARE ADDRESS
2WRW          SBN   6  2                   [STEP THE INSERTION POINTER DOWN ONE.
2X?G    XENT4 SBN   1  5                   [EXIT IF X1 > 4 BEFORE UPDATE.   
2XR6          BPZ   1  (0)  
2Y=Q          ADN   1  7                   [ADD 2 TO ENTRY MODIFIER.
2YQB    XENTRY                             [ON ENTRY X1 IS ODD (=1) FOR SOURCE  
2^=2          SMO      1                   [AND EVEN (=2) FOR ACCEPTOR INTERFACE
2^PL          LDX   5  APCTNO+1(2)         [J. IF THIS ENTRY NOT CORRECT TYPE.  
2^^D ...      ANDX  5  BITS22LS 
329=          SBXC  5  4
32NW          BNZ   5  XENT4
338G          SMO      6                   [INSERT TYPE (B0 SET INDICATES SOURCE
33N6          STO   4  APCTDEV+1(3)        [INTERFACE). 
347Q          LDN   5  #4000               [GET INTERFACE BIT POSN. TO B6-B11.  
34MB          SBN   1  5                   [N. B. FLAGS ARE SET IN  
3572          BNG   1  XENT1               [INTERFACE ORDER : 4,3,2,1,6,5.  
35LL          LDN   5  #40  
366=    XENT1 ADN   1  5
36KW          SLL   5  2(1) 
375G          SMO      6                   [INSERT UNIT NO. OF THIS INTERFACE.  
37K6          DCH   1  APCTDEV+1(3) 
384Q          BVC      XENT2               [J. IF NOT CONSOLE OUTPUT.   
38JB          SRL   5  6                   [UNSET THE "NO ACTIVITY" BIT FOR 
3942          ERS   5  APCTD(3)            [THIS INTERFACE. 
39HL          SLL   5  6
3=3=          ORX   7  GSIGN               [SET SWITCH TO SHOW CONSOLE EXISTS.  
3=GW          ORX   5  GSIGN               [SET B0 TO INDICATE CONSOLE OUTPUT.  
3?2G          BRN      XENT3               [J. BACK IN. 
3?G6    [   
3?^Q    XCONS BVCI     XENTRY              [SET V FOR CONSOLE OUTPUT ENTRIES.   
3#FB    [   
3#^2    [   
3*DL    Z1PCTBEGIN  
3*GT ...      FSHCODE  B,SNOPRA1
3*K4 ...(   
3*M? ...      TESTPAIR SNOPRA1             [MAY BE PAIRED ALREADY IF ACROSS FROM
3*PG ...      FSHACTPR                     ['SCAN' - ELSE GET US A PAIR 
3*RP ...SNOPRA1 
3*TY ...)   
3*Y=          SETNCORE GENQ3+4-A1,3,A7020,ALCB,1,1,2
3BCW          STO   6  IDENTM(3)
3BXG          STOZ     GWAIT(3) 
3CC6          STO   7  GUNITNO(3)          [LINE NO.
3CWQ          LDN   0  XGEN(1)  
3DBB          LDN   1  GENQ1(3) 
3DW2          MOVE  0  3
3F*L          HUNT2    2,AMXOR,ALINES,6 
3FT=          LDX   5  7
3G#W          SLL   5  2
3GSG          ADX   2  5
3H#6          RINGTWO  A1(2),A1(3)         [RING THE LCB INTO THE ROUTING BLOCK.
3HRQ          LDX   0  GSIGN               [UNSET THE "IGNORE FLAGS" MARKER.
3J?B          ERS   0  A1+FOURTHWD(2)   
3JR2          MHUNTW   2,IDF,B7020  
3K=L          LDN   3  APCTRLEN 
3KQ=          LDN   4  APCTSTAT+1-A1       [1WD. EXTRA FOR ZERO AT END OF GLOCK.
3L9W          MPA   3  APCTNO(2)
3LPG          SETUPCORE 4,3,A7020,INFORM,,1,2   
3M96          EMPTY    FPTPCT(3)
3MNQ          STO   3  AWORK3(2)           [REMEMBER ITS ADDRESS.   
3N8B          LDX   0  GSIGN
3NN2          STO   0  APCTID(3)
3P7L          LDX   4  JTIME
3PM=          STO   4  APCTCLNCT(3) 
3Q6W          STOZ     APCTINOP(3)  
3QLG          STOZ     ALINESTAT(3) 
3R66          STOZ     APCTACT(3)   
3RKQ          STOZ     APCTP(3) 
3S5B          MHUNTW   2,IDF,B7020  
3SK2          LDX   7  APCTNO(2)           [NO. OF PCTS ON THIS LINE.   
3T4L          LDX   0  7
3TJ=          SBN   0  1                   [J. IF ONE ONLY. 
3W3W          SMO      FX2  
3WHG          STO   2  AWORK2   
3X36          BZE   0  ONLY1
3XGQ          LDX   0  TSLICE(1)           [SET SLICE TIME FOR EACH PCT.
3Y2B          NULL                         [FREE FOR MENDING INTO IF NOT OK.
3YG2    ONLY1 STO   0  ATSLICE(3)          [ZERO IF ONLY ONE TERMINAL ON LINE.  
3Y^L          STO   7  APCTNUM(3)   
3^F=          STO   7  APCTACT(3)   
3^YW          LDX   4  A1(2)
42DG          SRL   4  12                  [LINE NO IN B12-23   
42Y6          SMO      FX2                 [REMEMBER FOR POSTERITY. 
43CQ          STO   4  AWORK4   
43XB          BCHX  3  £                   [SET CHARACTER POINTER FOR LATER USE.
44C2    XOOP
44WL          LDX   5  APCTNO+1(2)  
45B=          LDN   6  0
45TW          DSA   5  6                   [HARDWARE ADDRESS OF TERMINAL.   
46*G          ANDX  5  HALFTOP             [TWO CHARACTER TERMINAL IDENTIFIER.  
46T6          SMO      FX2  
47#Q          ORX   5  AWORK4              [IDENTIFIER WORD FOR THIS TERMINAL.  
47SB          STO   5  IDUNIQUE(3)  
48#2          STO   6  APCTHADD(3)  
48RL          ANDN  6  1                   [B23=1 IF 1901A  
49?=          ERS   6  APCTHADD(3)         [UNSET IT IF SET IN HW ADDRESS   
49QW          STO   6  APCTSTAT(3)         [0 IF NOT 1901A  
4==G          NGN   4  #100                [#77777700.  
4=Q6          STO   4  APCTD(3) 
4?9Q          STOZ     APCTX(3) 
4?PB          LDN   6  10                  [POINTER TO LAST ENTRY IN INFORM TABL
4#92          LDN   4  3                   [TW TYPE.
4#NL          LDN   1  1                   [FIRST SOURCE ENTRY IN B7020 BLOCK.  
4*8=          ORX   4  GSIGN               [SET "SOURCE INTERFACE" MARKER.  
4*MW          CALL  0  XENTRY              [SET UP ANY CONSOLE INPUT ENTRIES.   
4B7G          LDN   1  2                   [FIRST ACCEPTOR ENTRY IN B7020 BLOCK.
4BM6          LDN   4  3                   [TW TYPE 
4C6Q          CALL  0  XCONS               [SET UP ANY CONSOLE OUTPUT ENTRIES.  
4CLB          BVSR     £                   [CLEAR CONSOLE OUTPUT SWITCH.
4D62          LDN   1  2
4DKL          LDN   4  1                   [LP TYPE.
4F5=          CALL  0  XENTRY              [SET UP PRINTER ENTRIES. 
4FJW          LDN   1  2
4G4G          LDN   4  5                   [TP TYPE.
4GJ6          CALL  0  XENTRY              [SET UP PUNCH ENTRIES.   
4H3Q          LDN   4  2                   [CR TYPE.
4HHB          LDN   1  1
4J32          ORX   4  GSIGN               ["SOURCE INTERFACE" MARKER.  
4JGL          CALL  0  XENTRY              [SET UP ANY CARD READER ENTRIES. 
4K2=          ADN   4  2                   [TR TYPE.
4KFW          LDN   1  1
4K^G          CALL  0  XENTRY              [SET UP ANY TAPE READER ENTRIES. 
4LF6          BNG   6  XALL                [J. IF ALL INTERFACES DEFINED.   
4LYQ          LDX   5  APCTHADD(3)  
4MDB    XNXT1 SMO      6                   [CLEAR UNUSED INTERFACE WORDS.   
4MY2          STO   5  APCTDEV(3)   
4NCL          SMO      6
4NX=          STOZ     APCTDEV+1(3) 
4PBW          SBN   6  2
4PWG          BPZ   6  XNXT1
4QB6          LDN   6  10   
4QTQ    XNXT2 SMO      6                   [SET UP MASK FOR ALL DEFINED INTERFAC
4R*B          ORX   4  APCTDEV(3)   
4RT2          SBN   6  2
4S#L          BPZ   6  XNXT2
4SS=          ORN   4  -1                  [AND IT INTO THE "RIGHT" MASK
4T?W          SLL   4  6                   [I. E. MARK ALL UNDEFINED
4TRG          ANDS  4  APCTD(3)            [INTERFACE AS "WRONGED". 
4W?6    XALL  LDX   5  2
4WQQ          LDX   6  3
4X=B          LDX   0  APCTX(3)            [UNSET LF INTERFACE BITS IN OPERABILI
4XQ2          LDX   2  FX2  
4Y9L          SBX   5  AWORK2(2)           [SAVE PLACE IN BLOCKS.   
4YP=          SBX   6  AWORK3(2)
4^8W          ERS   0  APCTD(3)            [(THIS GIVES FORM-FEED AFTER START UP
4^NG          LDXC  7  7                   [J. IF NO CONSOLE OUTPUT ON THIS PCT.
5286          BCC      NOCON
52MQ          LDX   2  3                   [FIND THE (FIRST) CONSOLE OUTPUT ENTR
537B    XNXT3 ADN   2  2
53M2          LDXC  0  APCTDEV(2)   
546L          BCC      XNXT3
54L=          ANDX  0  HALFTOP             [REMEMBER ITS INTERFACE BIT POSN.
555W          SLL   0  6
55KG          PHOTO    4
5656          ORS   0  APCTX(3) 
56JQ          GETACT   CONSA,APCTMESS      [ACTIVITY TO OUTPUT "GEORGE READY".  
574B          SETNCORE APCTID+1-A1,1,A7020,CONSIN,,1,2 [DUMMY INPUT BUFFER BLOCK
57J2          LDX   3  AWORK3(2)
583L          TESTMOVE 4,NMV1   
58H=          MHUNTW   3,IDF,B7020         [RESET POINTERS IN CASE  
592W          STO   3  AWORK2(2)           [OF CORE MOVEMENT.   
59GG          MHUNTW   3,A7020,INFORM   
5=26          STO   3  AWORK3(2)
5=FQ    NMV1  ENRINGD  FPTPCT(1),FPTPCT(3) [RING IN TO THE BUFFER BLOCK RING.   
5=^B          SMO      6                   [GET THE TWO LETTER IDENTIFIER FOR   
5?F2          LDX   0  IDUNIQUE(3)         [THIS TERMINAL.  
5?YL          LDX   1  FPTR(2)  
5#D=          STO   6  APCTID(1)           [SET THE POINTER (B1 SET DON'T MATTER
5#XW          SRL   0  12   
5*CG          LDX   3  BPTR(2)  
5*X6          STO   0  AWORK1(3)           [STORE THE IDENTIFIER.   
5BBQ          CHAIN    1,3                 [CHAIN BUFFER TO OUTPUT ACTIVITY.
5BWB          LDX   2  3
5CB2          LINKSET  3,PAIR(1)           [LINK TO K5MORNING   
5CTL          FPUT  
5D*=    NOCON LDX   3  AWORK3(2)           [INFORM BLOCK POINTER.   
5DSW          LDX   1  AWORK2(2)           [IDF BLOCK POINTER.  
5F#G          SBN   7  1                   [J. IF NO MORE TO DO.
5FS6          BZE   7  NMV2 
5G?Q          LDX   2  1
5GRB          ADX   3  6                   [STEP POINTERS DOWN TO NEXT ENTRIES. 
5H?2          ADX   2  5
5HQL          ADN   3  APCTRLEN 
5J==          ADN   2  7
5JPW          BRN      XOOP                [ROUND WE GO AGAIN.  
5K9G    #   
5KP6    WAIT  LDX   0  GSIGN               [MARK AS "ASLEEP".   
5L8Q          ORS   0  AWORK1(2)
5LNB          PHOTO    4
5M82          COOR1 
5MML          LDX   3  AWORK3(2)           [RESET POINTERS AFTER COORDINATION.  
5N7=          LDX   1  AWORK2(2)
5NLW          TESTMOVE 4,NMV2   
5P6G          MHUNTW   3,A7020,INFORM   
5PL6          MHUNTW   1,IDF,B7020  
5Q5Q          STO   3  AWORK3(2)
5QKB          STO   1  AWORK2(2)
5R52    NMV2  LDX   0  BPTPCT(3)           [J. IF BUFFER BLOCK RING EMPTY AGAIN.
5RJL          SBN   0  FPTPCT(3)
5S4=          BNZ   0  WAIT 
5SHW          ADX   3  6
5T3G          NGN   0  1                   [SET MARKER TO INDICATE END OF BLOCK.
5TH6          STO   0  APCTSTAT+APCTRLEN(3) 
5W2Q          FREECORE 1                   [FREE THE IDF BLOCK. 
5WGB          MHUNTW   3,A7020,ALCB 
5X22          LDCT  0  #20  
5XFL          SMO      A1+FPTR(3)          [UNSET THE "SETTING UP" MARKER.  
5XG6 ...      ERS   0  FOURTHWD 
5XGL ...      LDX   7  6
5XH6 ...      MHUNTW   2,A7020,INFORM   
5XHB ...      ANDX  6  BITS22LS 
5XHL ...[   
5XJ6 ... DO 
5XJL ...[   
5XK6 ...      ADX   2  7
5XKL ...      LDX   3  IDUNIQUE(2)  
5XL6 ...      LDCT  4  #770 
5XLL ...      ANDX  4  APCTD(2)            [RIGHTED INTERFACES  
5XM6 ...      SRL   4  12   
5XML ...      ANDX  4  APCTD(2)            [WITH NO ACTIVITY
5XN6 ...      SLL   4  6
5XNL ...      ANDX  4  APCTX(2)            [WHICH ARE LP OR TP  
5XP6 ...[                                    INT BITS IN CHAR 1 
5XPL ...      LDX   0  4
5XQ6 ...      SRL   0  6
5XQL ...      ERS   0  APCTD(2)            [UNSET NO ACTY BITS  
5XR6 ...[   
5XRL ...      WHILE    4,NZ 
5XS6 ...      DO
5XSL ...[   
5XT6 ...            LDX   0  APCTDEV(2) 
5XTD ...            SMO      FX1
5XTQ ...            ANDX  0  ZMSK1  
5XW6 ...            ORX   6  0  
5XWL ...            ANDX  0  4                   [DO WE WANT THIS IDENT 
5XX6 ...[   
5XXL ...            IF       0,NZ                [IF SO 
5XY6 ...            THEN
5XYL ...                  ERX   4  0                   [SHOW INT FOUND  
5X^6 ...                  LDX   5  APCTDEV+1(2) 
5X^L ...                  GETACT   ACTLF,GREMOTE       [AND GET ACTY
5Y26 ...                  LDX   1  BPTR(2)  
5Y2L ...                  ENRINGD  JOBRING(1),JOBRING(2)
5Y36 ...                  LDX   2  BPTR(2)  
5Y3L ...                  STO   3  JSOURCE1(2)         [STORE IDUNIQUE  
5Y46 ...                  STO   5  ACC4(2)             [2ND DEVICE WORD 
5Y4L ...                  STO   6  ACC5(2)             [INT BIT + PCT DISP  
5Y56 ...                  LINKSET  2,XLINK(1)   
5Y5L ...                  FPUT  
5Y66 ...                  MHUNTW   2,A7020,INFORM   
5Y6L ...                  ADX   2  7
5Y76 ...[   
5Y7L ...            FI  
5Y86 ...[   
5Y8L ...            ANDN  6  #7777  
5Y96 ...[                                   REMOVE INTERFACE BITS   
5Y9L ...            ADN   2  2  
5Y=6 ...[   
5Y=L ...      REPEAT   DX   7   
5Y?6 ...[   
5Y?L ...      SBN   6  APCTRLEN            [POINT AT NEXT PCT RECORD
5Y#6 ...      SBX   2  7
5Y#L ...[                                   POINT AT START OF INFORM BLOCK  
5Y*6 ...      LDX   7  6
5Y*L ...[   
5YB6 ... REPEAT   UNTIL,6,NG
5YBL ...[   
5YDW          ACROSS   PCTCON,1 
5YYG    #   
5^D6    #END
^^^^ ...30300337000400000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1