SETUPB867

(George Source)

Macros used: ACROSS, BXGE, CHAIN, DOWN, EMSACTX, EMSCORE, FINDCORE, FINDPEREC, FIXEMSACTX, FIXEMSCR, FLONGWAIT, FON, FREECORE, FSHTEST, FWAIT, GEOERR, GEOPACK, JENVNOT, JNCMESH, LGEOG, LINKSET, LONGSET, MENDAREA, MHUNTW, MONOUT, NAME, OUTBLOCN, OUTPACK, OUTPACKX, PAIR, SEGENTRY

SETUPB867.txt
22FL    #SEG  SETUPB                       [GENERAL EMS - COMM  
22PD ...[      (C) INTERNATIONAL COMPUTERS LIMITED 1982 
22^=    #OPT  K0SETUPB=0
23DW    #LIS  K0SETUP>K0EMS>K0ALLGEO>K0SETUPB   
23YG                   8HSETUPB 
24D6    # E.M.S. SEGMENT
24XQ    # ENTRY POINTS  
25CB          SEGENTRY K1SETUPB,Z1SETUPB
25X2          MENDAREA 10,K100SETUPBSLINK3  
26BL    [   
26W=    SLINK3  
27*W          PAIR     MOPSTART,3   
28SQ    SLINK6  
29#B          PAIR     SJLOOP,1 
29S2    SLINK7  
2=?L          PAIR     LISTPROC,1   
2=R=    SLINK8  
2?=W          PAIR      SCHEDMTX,1  
2#=6    #UNS  FSHTEST   
2#PQ    #SKI
2C97 ...SLINK10 
2C=D ...      PAIR     PERFLOGS,1   
2C?R ...[   
2CCN ...[      SUBROUTINES  
2CHK ...[   
2CMG    #SKI  G3
2D76    (   
2DLQ    SCORAG4        [IN GEORGE 3 THIS ENTRY POINT IS EQUIVALENT TO SCORA 
2F6B    SCORA   
2FL2          SLL   6  12   
2G5L          EMSACTX  6,2                 [GET PERMANENT ACTIVITY FROM 
2GK=    #                                  [TOP OF STORE AND LOCATE IT  
2H4W          LDX   2  BPTR(2)  
2HJG          EXIT  4  0
2J46    SCOREG4        [IN G3 THIS ENTRY POINT IS EQUIVALENT TO SCORE   
2JHQ    SCOREG4A
2K3B    SCORE   
2KH2          STOZ     0
2L2L    SCOREG4F
2LG=          EMSCORE  2,0                 [EMSCORE WITH A DIFFERENCE   
2L^W          EXIT  4  0
2MFG    )   
2M^6    #SKI  G4
2NDQ    (   
2NYB    # NO ROUNDING IF X0 0   
2PD2    SCOREG4F
2PXL          EMSCORE  2,0  
2QC=          EXIT  4  0
2QWW    SCORA SLL   6  12      [THIS ENTRY IS USED IF CORE MUST BE GOT AT TOP   
2RBG          BRN      SCORAM  [OF STORE SO WE JUMP INTO FIXEMSACTX TO DO   
2RW6                           [A STRAIGHT FORWARD EMSACTX  
2S*Q    SCORAG4                [THIS ENTRY IS USED IFCORE CAN BE OBTAINED FROM  
2STB          SLL   6  12      [SPARE SPACE AT END OF FIXED CORE
2T*2          FIXEMSACTX 6,2,SCORAM 
2TSL          LDX   2  BPTR(2)  
2W#=          EXIT  4  0
2WRW    SCORE BRN      SCOREM  [THIS ENTRY IS USED IF CORE MUST BE GOT AT TOP   
2X?G                           [OF STORE-J INTO FIXEMSCR TO DO A STRAIGHT   
2XR6                           [FORWARD EMSCORE 
2Y=Q    SCOREG4                [THIS ENTRY IS USED IF CORE CAN BE OBTAINED FROM 
2YQB                                       [SUT PAGE OR AT END OF FIXED CORE
2^=2          LDX   0  2                   [ATTEMPT TO GET CORE FROM SUT PAGE   
2^PL          ADN   0  A1   
329=          LDN   1  1024 
32NW          SBX   1  FSUTPAGE 
338G          SBX   1  0
33N6    #   
347Q    # AFTER THE INTRODUCTION OF THE 'VOPA IN G4' ENHANCEMENT, A DUMMY   
34MB    # BLOCK IS PLACED AT THE END OF THE SUT PAGE (JUST RED TAPE WORDS)  
3572    # - SO WE MAKE SURE WE DONT TRY TO USE THESE WORDS. 
35LL    #   
366=    #SKI  G4VOPA
36KW    (   
375G    #UNS  CA1D  
37K6    #SKI
384Q          SBN   1  A1D  
38JB    #UNS  CA1D  
3942          SBX   1  CA1D 
39HL    )   
3=3=    #   
3=GW          BNG   1  SCOREG4A 
3?2G          LDX   1  FSUTPAGE 
3?G6          ADX   1  BSUT 
3?^Q          ADS   0  FSUTPAGE 
3#FB          STO   0  ASIZE(1) 
3#^2          STO   2  ALOGLEN(1)   
3*DL          LDX   2  FX2  
3*Y=          STO   2  BPTR(1)  
3BCW          LDX   0  FPTR(2)  
3BXG          STO   0  FPTR(1)  
3CC6          SMO      0
3CWQ          STO   1  BPTR 
3DBB          STO   1  FPTR(2)  
3DW2          LDX   1  FX1  
3F*L          EXIT  4  0
3FT=    SCOREG4A    [THIS ENTRY IS USED IF CORE MUST NOT BE IN SUT PAGE 
3G#W          FIXEMSCR 2,SCOREM 
3GSG          EXIT  4  0
3H#6    )   
3H*N ...[   
3HC= ...[     SUBROUTINE PARAMETER  
3HDS ...[   
3HGB ...PARAMETER   
3HHY ...      SBX   6  FX1  
3HKG ...      OUTPACKX 3,4,5,PARM   
3HLD ...      ADN   6  1
3HMB ...PARM
3HN# ...      MHUNTW   2,ADATA,EMS  
3HP= ...      ADX   6  FX1  
3HQ8 ...      EXIT  6  0
3HRQ    [*  
3J?B    [*  
3JR2    [*        K1 ENTRY POINT
3K=L    [*  
3KQ=    [*  
3L9W    Z1SETUPB
3LPG    [   CURRENT ACTIVITY IS BLANKET 
3M96    [   
3MNQ          LDX   3  ADMULTACT           [J. IF NO MOP ACTIVITIES 
3N8B          BZE   3  NOMOP
3NN2          LDN   2  BMOPLEN+IMOPQLEN    [OTHERWISE GET AMOP/IMOPQ ACTIVITY   
3P7L          LDN   6  AMOP+IMOPQ          [TO QUEUE MOP ACTIVITIES' CORE REQUE 
3PM=          CALL  4  SCORAG4             [STS.
3Q6W          LINKSET  2,SLINK3(1)         [LINK TO K3MOPSTART  
3QLG    NWMOP   
3R66          STO   2  IMOPADDR(3)         [STORE ADDRESS OF QUEUING
3RKQ          LDX   3  ADMP(3)             [ACTIVITY IN EACH AMOP.  
3S5B          BNZ   3  NWMOP
3SK2          FWAIT    #54                 [WAIT FOR END OF E.M.S.  
3T4L    NOMOP   
3WHG    # SYSTEM.JOURNAL ACTIVITY   
3X36          LDN   2  BSALEN+JOUROPENLEN  [LENGTH  
3XGQ          LDN   6  BSA+JOUROPEN        [TYPE
3Y2B          CALL  4  SCORAG4             [FROM TOP OF CORE
3YG2          LINKSET  2,SLINK6(1)         [LINK TO K1SJLOOP
3Y^L          LDCT  0  #400 
3^F= ...      ADS   0  2
3^YW          STO   2  JSJPTR              [PTR TO ACTIVITY 
42DG    XFSHNJRNL   
43CQ    # LISTFILE ACTIVITY 
43XB          LDN   2  ACTLFLEN+BSCHEDLEN  [LENGTH  
44C2          LDN   6  ACTLF+BSCHED        [TYPE
44WL          CALL  4  SCORAG4  
46*G          LINKSET  2,SLINK7(1)         [LINK TO K1LISTPROC  
46T6    XFSHNBLKSET 
4==G          LDCT  0  #400 
4=Q6          ADX   0  2
4?9Q          STO   0  BOUTACT             [PTR TO ACTIVITY 
4#NL          FWAIT    #54                 [WAIT FOR END OF EMS 
4*8=    XFSHNBSCHED 
4C6Q    # MT ACTIVITY   
4CLB          LDN   2  ACTDOCLEN+ASCHEDELEN 
4D62          LDN   6  ACTDOC+ASCHEDE      [TYPE
4DKL          CALL  4  SCORAG4  
4F5=          LINKSET  2,SLINK8(1)         [LINK TO K1SCHEDMT   
4FJW          STO   2  BRETACT  
4G4G    #UNS FIRSTR 
4GJ6    (   
4H3Q          LDX   6  2                   [LONGSET CORRUPTS X2 
4HHB          LONGSET #170,XMTGER,,2       [LONGSET DTS ACTIVITY
4J32          LDX   2  6                   [RESET X2
4JGL          FLONGWAIT #170               [PUT DTSA ON QUEUE WITH WAITING STYLE
4K2=    )   
4KFW    XFSHNBDCHED 
4LF6          LDN   2  ASWINTLEN           [SET UP ACTIVITY TO CONTROL  
4LYQ          LDN   6  ASWINT              [OBJECT PROGRAM SWAPPING.
4MDB          CALL  4  SCORAG4  
4MY2          STO   2  BSWINT              [POINTER TO SWAP ACTIVITY.   
4QTQ    #UNS  CAFSINT   
4R*B    (   
4RT2    #     FOR THE CAFS INTERFACE, WE SET UP A BSA/CAFS ACTIVITY 
4S#L    #     AT THIS POINT IN THE PROCEEDINGS.   THIS IS DONE IN A 
4SS=    #     'CAFS' SEGMENT
4T?W    #   
4TRG          DOWN     CAFSCTRL,1   
4W?6    )   
575M ...[   
576Y ...[     ERROR LOGGING ACTIVITY
5789 ...[   
578T ...      JENVNOT  NOELOGACT,DME
579G ...      LDN   2  BSALEN+ELOGLEN   
57=R ...      LDN   6  BSA+ELOG 
57#4 ...      CALL  4  SCORAG4            [SET UP ERROR LOGGING ACTIVITY
57** ...      LINKSET  2,SLINK10(1) 
57BL ...      LDCT  0  #400 
57CX ...      ADX   0  2
57F8 ...      STO   0  BELOGACT             [ST PTR. TO BASE PTR
57GF ...      FWAIT    #54  
5825 ...NOELOGACT   
58H=    #                       THE EMSCORE BELOW MUST BE THE LAST ONE ISSUED.  
58H^ ...      LDX   2  GLENFCHAP           [GET CORE FOR FIXED CHAPTER SPACE.   
58JN ...      LDN   0  1
58KC ...      CALL  4  SCOREG4F 
58L6 ...      FINDCORE 2
58LT ...      NAME     2,BSTB,CHAPTER      [SET NORMAL CHAPTER TYPE 
58MJ ...      LDN   0  1
58N? ...      STO   0  BACK1(2) 
58P2 ...      STOZ     BACK2(2) 
58PP ...      STOZ     A1(2)
58QD ...      STO   0  ALOGLEN(2)          [INITIALISE AT 1 FOR P1M CHECKSUM
58R7 ...      STO   2  GFIXCHAP            [PTR. TO FIXCHAP 
58RW ...#SKI  CAMK7>5-5 
58SK ...(   
58T# ...      STO   2  CTOP                [ INITIALISE LONGLOCK AREA BOUNDARY  
58W3 ...      LDN   1  #210                [ MARK GFIXCHAP A CHAPTER BLOCK  
58WQ ...      STO   1  AFLAG(2)            [   AND  
58XF ...)   
58Y8 ...      CHAIN    2,BCHAP+1           [CHAIN INTO CHAPTER CHAIN
58YX ...#SKI  CAMK7<6-6 
58^L ...(   
592W          LDX   2  AFREE               [TOTAL MOVEABLE CORE.
59GG          LDX   5  2                   [SAVE CURRENT CONTENTS OF AFREE. 
5=26    #SKI  G4
5=FQ          SRA   2  5                   [1/32ND PART THEREOF 
5=^B    #SKI  G3
5?F2          SRA   2  4                   [1/16TH.PART THEREOF,ROUNDED UP. 
5?YL          ADN   2  1024*3/2            [ADD 1.5K.   
5#D=          CALL  4  SCORE               [SPLIT OFF 'LONGLOC' AREA.   
5#XW          STO   5  AFREE               [RESET TOTAL MOVEABLE CORE   
5*CG          FINDCORE 3
5*X6          STO   3  CTOP                [STORE ADDRESS OF LONGLOCK AREA  
5BBQ          FREECORE 3
5BWB    )   
5CB2    #SKI  CAMK7>5-5^G4  
5CTL          FON      HLLOCKAREA          [WAKE ACTS WAITING FOR LONGLOCK AREA 
5F#G          DOWN     BACKMAP,1           [RESTORE IF NECESSARY
5FS6    XFSHNBBACK  
5G#5 ...      JENVNOT  XNOTEXI,CME  
5G#= ...      JENVNOT  XMES,CME,EXCL
5G#D ...      DOWN    CMEMILL,2 
5G#K ...XMES
5G#R ...      LDN   7  0                   [LD. MOD DOWN BLK
5G*6 ...      OUTBLOCN 13                    [ONE WD EACH PARAM + ONE FOR EACH P
5G*F ...XNEXMES 
5G*S ...      MHUNTW   2,ADATA,EMS  
5GB7 ...      BNG   2  XNOTEXI  
5GBG ...      BXGE  7  A1(2),XENDMES
5GBT ...SL1   SMO      7
5GC8 ...      LDN   3  A1+1(2)             [DEVICE PTR  
5GCH ...      LDN   4  1
5GCW ...      LDN   5  JPDNUMA  
5GD9 ...      CALL  6  PARAMETER           [CONVERT PARAMETER FOR MESSAGE   
5GDJ ...      BRN      SL1  
5GDX ...SL2   SMO      7
5GF= ...      LDN   3  A1+2(2)             [RIGHT OR WRONG  
5GFK ...      LDN   4  2
5GFY ...      LDN   5  JPDVARCHAR   
5GG? ...      CALL  6  PARAMETER
5GGL ...      BRN      SL2                 [CONVERT PARAMETER FOR MESSAGE   
5GG^ ...SL3   SMO      7
5GH# ...      LDN   3  A1+4(2)             [IN OR OUT   
5GHM ...      LDN   4  1
5GJ2 ...      CALL  6  PARAMETER           [CONVERT PARAMETER FOR MESSAGE   
5GJ* ...      BRN      SL3  
5GJN ...SL4   SMO      7
5GK3 ...      LDN   3  A1+5(2)             [DIS OR SPACES   
5GKB ...      CALL  6  PARAMETER
5GKP ...      BRN      SL4  
5GL4 ...SL5   SMO      7
5GLC ...      LDX   5  A1+6(2)             [LD, ADDRESS 
5GLQ ...      GEOPACK  2,5,NJS             [GEOPACK GEOG NO.
5GM5 ...      LDN   3  2
5GMD ...      LDN   4  1
5GMR ...      LDN   5  JPDGEOPER
5GN6 ...      CALL  6  PARAMETER
5GNF ...      BRN      SL5  
5GNG ...SL6   SMO      7
5GNH ...      LDN   3  A1+7(2)             [LD. TYPE OF DEVICE  
5GNJ ...      LDN   4  1
5GNK ...      LDN   5  JPDPERITYPE  
5GNL ...      CALL  6  PARAMETER
5GNM ...      BRN      SL6  
5GNS ...      MONOUT   EMSJOURN            [OUTPUT MESSAGE TO JOURNAL   
5GP7 ...      ADN   7  7
5GPG ...      BRN      XNEXMES  
5GPT ...XENDMES 
5GQ8 ...[   ALL MESSAGES OUTPUT SO FREE OFF THE DATA BLOCK  
5GQH ...      FREECORE  2   
5GQJ ...#UNS  ASHARE1   
5GQK ...(   
5GQL ...[  NOW OUTPUT INFORMATORY MESSAGES FOR CME SHARED D.A. DEVICES  
5GQM ...      LDN   5  26   
5GQN ...      FINDPEREC 3,APFOTY,5,XFINDSH  
5GQP ...      BNG   3  XNOTEXI  
5GQQ ...      JNCMESH  3,XFINDSH               [^ IF NOT CME SHARED 
5GQR ...      LGEOG    3,4  
5GQS ...      OUTPACK  4,1,GEOPER              [OUTPACK GEOG UNIT NO
5GQT ...      MONOUT   CMESH                   [UNIT NN IS CME SHARED   
5GQW ...      BRN      XFINDSH  
5GQX ...)   
5GQY ...XNOTEXI 
5YDW          ACROSS  SETUP,7   
5^XQ    XMTGER  
62CB          GEOERR   1,MTSETUP
62X2    XFSHMT  
63W=    #END
^^^^ ...303071000004
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1