GETFREE867

(George Source)

Macros used: ACROSS, ALTLENG, AND, BXE, CLOSETOP, DOWN, ELSE, FI, FREECORE, FSHENTRY, FSHTEST, GEOERR, GSCAN, HUNT, HUNTC, HUNTW, IDFPER, IF, JFREE, JNANON, JRIGHT, LADDP, LGEOG, LTYPE, MENDAREA, MFREE, MFREEW, MHUNTW, OPEN, OPENSYS, PROPERTY, REWIND, RIGHT, SAWCEN, SEG, SEGENTRY, SETALLOC, SETNCORE, SETREP, SETREP2, STEP, TESTNAMX, THEN, TRACE, TRACEVER, UP, UPPLUS, VFREEW

GETFREE867.txt
2278 ... SEG  GETFREE,,,,G167   
22#B ...[   
22FJ ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
22LQ ...[     THIS EXCLUDES CODE UNDER #SKI G167
22RY ...[   
22^=    #OPT  K0GETFREE=0   
23DW    #LIS  K0GETFREE>K0PERI>K0ALLGEO 
23JR ...#OPT G167 = 0   
23NN ...#SKI G167&1 
23SK ...# WITH UGUG EDIT M167 (ALLOW LF WITH NON-ATTRIBUTED PERMANENT PROPERTY) 
23YG    #   
24XQ    #   
25CB    #     THIS SEGMENT IS PART OF THE PERIPHERAL CONTROLLER. IT SERVICES
25X2    #     THE MACROS ISPER7, GETPER7, SETPROP. THE ENTRY POINTS USED ARE:-  
26BL    #   
26W=    #                    K1GETFREE  -  ISPER7   
27*W    #                    K2GETFREE  -  GETPER7  
27TG    #                    K3GETFREE  -  SETPROP  
28*6    #                    K4GETFREE  -  ISPERG   
28SQ    #                    K5GETFREE  -  CHECKATT 
294J    #                    K11GETFREE -  ISPER7 - EXCEPT APERI/APROPNOS ALREAD
29#B    #   
29S2    #     FURTHER DETAILS OF THE PURPOSE OF EACH MACRO MAY BE FOUND ABOVE   
2=?L    #     THE RELEVANT ENTRY POINT, AND ALSO IN PRM.6   
2=R=    #   
2?=W    #   
2?QG    #              ENTRY POINTS 
2#=6    #   
2#PQ          SEGENTRY K1GETFREE,X1GETFREE  
2*9B          SEGENTRY K2GETFREE,X2GETFREE  
2*P2          SEGENTRY K3GETFREE,X3GETFREE  
2B8L          SEGENTRY K4GETFREE,X4GETFREE  
2BN=          SEGENTRY K5GETFREE,X5GETFREE  
2C7W          SEGENTRY K11GETFREE,X11GETFREE
2C*4          FSHENTRY K21GETFREE,,X21GETFREE,X21GETFREE
2CG=          FSHENTRY K22GETFREE,X22GETFREE,,X22GETFREE
2CJW          FSHENTRY K23GETFREE,X23GETFREE,,X23GETFREE
2CMG    #   
2D76    MAXATT         +ATTMAX+1
2D9P    #UNS FLLP4B 
2D##    (   
2DBX    XACTLFC 
2DFG    #HAL ACTLF+CENTRAL,0
2DJ5    )   
2DLQ    QBITS                              [DEVICE IDENTIFICATION TABLE 
2F6B                   #4000               [TR  
2FL2                   #2000               [TP  
2G5L                   #1000               [LP  
2GK=                   #0400               [CR  
2H4W                   #0200               [CP  
3?^Q    OPEN
3#FB    #     SUBROUTINE OPENS :SYSTEM.PROPERTY 
3#^2    #     LINK INX5 
3*DL          SBX   5  FX1  
3*Y=          OPENSYS  XBRKIN,PROPERTY,READ 
3J?B          ADX   5  FX1  
3JR2          BRN     (5)   
3K=L    #   
3KQ=    #   
3L9W    PROPERTY
3LPG    #             IF THE PROPERTY IS 'CENTRAL' OR A CONSOLE PROPERTY,   
3M96    # DETAILS ARE STORED IN THE APROPNOS BLOCK, UNLESS THERE IS ALREADY 
3MNQ    # ONE THERE, IN WHICH CASE EXIT 0. EXIT 1 IF COMMAND NOT ALLOWED
3N8B    # TO SPECIFY A CONSOLE PROPERTY.
3NN2    #     LINK IN X7
3P7L          MHUNTW   3,APERI,APROPNOS    [LOCATE APROPNOS BLOCK   
3PM=          LDX   4  ACOMMUNE5(2)        [LOAD PROPERTY NO
3Q6W          LDX   0  BPROPCNT(3)  
3QLG          BZE   0  N2                  [BR IF NO PROPS STORED   
3R66    N1  
3RKQ          SMO      0
3S5B          TXU   4  BPROPS-1(3)  
3SK2          BCC      N6                  [BR IF PROPERTY ALREADY STORED   
3T4L          BCT   0  N1   
3TJ=    N2  
3W3W          LDXC  0  ACOMMUNE6(2) 
3WHG          BCC      NOTCONS             [BR IF NOT CONSOLE PROPERTY  
3X36          LDCT  0  #200 
3XGQ          ANDX  0  AWORK4(2)           [MASK ONLINE BIT 
3Y2B          BNZ   0  XFORBIDDEN          [BR IF ONLINE (- NO CONSOLE PROPERTY)
3YG2    PCENTRAL
3Y^L          LDX   0  CPROPNO(3)   
3^F=          BNZ   0  (7)                 [BR IF CONSOLE PROP ALREADY STORED   
3^YW          STO   4  CPROPNO(3)          [ELSE STORE IT   
42DG          LDX   0  4
42Y6          ANDX  0  BITS22LS 
43CQ          SBN   0  1                   [DONT PUT ANY MORE DETAILS IN BLOCK  
43XB          BZE   0  N6                  [FOR CENTRAL 
44C2          BRN      N7   
44WL    NOTCONS 
45B=          LDX   0  4
45TW          ANDX  0  BITS22LS            [REMOVE BIT 1 OF PR NO   
46*G          SBN   0  1
46T6          BZE   0  PCENTRAL            [BR IF THIS PROPERTY IS CENTRAL  
47#Q    N7    SMO      BPROPCNT(3)  
47SB          STO   4  BPROPS(3)           [STORE PROPERTY NO IN LIST   
48#2          LDN   0  1
48RL          ADS   0  BPROPCNT(3)         [UPDATE COUNT OF PROPERTIES  
49?=          ADXC  4  4
49QW          BCC      TEMPORARY           [BR IF PROPERTY TEMPORARY
4==G          HUNTW    3,APERI,APERM       [SEE IF APERM IAS BEEN SET UP
4=Q6          BPZ   3  PERM                [ & BR IF SO 
4?9Q          SBX   7  FX1                 [RELATIVISE LINK 
4?PB          SETNCORE ATTMAX+1*13+2/4+1,3,APERI,APERM  
4#92          BRN      N3   
4#NL    TEMPORARY   
4*8=          HUNTW    3,APERI,BTEMP       [SEE IF BTEMP HAS BEEN SET UP
4*MW          BPZ   3  PERM                [ & BR IF SO 
4B7G          SBX   7  FX1  
4BM6          SETNCORE ATTMAX+1*13+2/4+1,3,APERI,BTEMP  
4C6Q    N3  
4CLB          ADX   7  FX1  
4D62          STOZ     A1(3)
4DKL    PERM                               [MOVE PROPERTY NAME INTO APERM/BTEMP 
4F5=          LDX   1  A1(3)               [CURRENT CHAR COUNT  
4FJW          SRC   1  2
4G4G          BZE   1  N4                  [BR IF BLOCK CURRENTLY EMPTY 
4G75    #UNS G3SIGNET   
4G9N    (   
4G#?          SLC   4  8                   [TEST IF BIT9 SET IN PR NO   
4GBW          BNG   4  PROPMEEP            [THIS IS A MEEP PROPERTY 
4GFF    )   
4GJ6          LDN   0  #26                 [ "&"
4H3Q          SMO      3
4HHB          DCH   0  A1+1(1)             [APPEND "&" TO LAST PROP NAME
4J32          BCHX  1  N4   
4JGL    N4  
4K2=          ADN   1  A1+1(3)             [START ADDRESS - DESTINATION 
4KFW          LDN   0  ACOMMUNE2(2)        [START ADDRESS OF PROPERTY NAME  
4K^G          SMO      ACOMMUNE1(2)        [NO OF SIGNIFICANT CHARACTERS
4LF6          MVCH  0  0                   [MOVE IN CHARACTER STRING
4LYQ          SBN   1  A1+1(3)  
4MDB          SLC   1  2
4MY2          STO   1  A1(3)               [RESET BLOCK CHAR COUNT  
4NCL          LDX   1  FX1  
4NX=    N6  
4PBW          EXIT  7  2                   [AND EXIT
4PWG    N5  
4QB6    XFORBIDDEN  
4QTQ          EXIT  7  1
4QW#    #UNS G3SIGNET   
4QWW    (   
4QXD    PROPMEEP       [PLACE MEEP PROPERTY NAME AT HEAD OF THE (TEMPORARY) 
4QY2                   [PROPERTY NAMES STRING (FOR CENTRAL LISTFILE)
4QYJ          LDX   4  A1(3)               [MOVE CURRENT STRING OF (TEMPORARY)  
4Q^6          ADN   1  A1+1(3)             [PROPERTY NAMES FORWARD BY 5 CHARS   
4Q^N          LDX   2  1                   [STARTING WITH LAST STRING CHAR  
4R2=    STRMV SLC   1  2
4R2S          SBN   1  1
4R3B          SRC   1  2
4R3Y          LDCH  0  0(1)                [INITIALLY MOVE LAST STRING CHAR 
4R4G          DCH   0  1(2)                [TO LAST STRING CHAR +5 POSITION 
4R54          SLC   2  2
4R5L          SBN   2  1
4R68          SRC   2  2
4R6Q          BCT   4  STRMV               [MOVE NEXT STRING CHAR   
4R7#          LDX   2  FX2  
4R7W          LDX   0  ACOMMUNE2(2)        [INSERT MEEP PROPERTY NAME (LPNN) +  
4R8D          STO   0  A1+1(3)             ["&" AT THE HEAD OF STRING   
4R92          LDN   0  #26  
4R9J          DCH   0  A1+2(3)  
4R=6          LDN   0  5                   [UPDATE CHAR STRING COUNT
4R=N          ADS   0  A1(3)
4R?=          LDX   1  FX1  
4R?S          BRN      N6   
4R#B    )   
4R*B    #   
4RT2    SMHUNTW 
4S#L    #     THIS SUBROUTINE HUNTS FOR AN APERI/APROPNOS BLOCK ON X2. IT IS
4SS=    #     REQUIRED BY THE ALTLENG MACRO.
4T?W    #     LINK IN X1
4TRG          MHUNTW   2,APERI,APROPNOS 
4W?6          BRN      (1)  
4WQQ    #   
4X=B    SCLOSETOP   
4XQ2    #     THIS SUBROUTINE CLOSES :SYSTEM.PROPERTY   
4Y9L    #     LINK IN X7
4YP=          SBX   7  FX1  
4^8W          CLOSETOP                     [CLOSE :S0STEM.PROPERTY  
4^NG          ADX   7  FX1  
5286          BRN      (7)  
52MQ    #   
537B    SVFREEW 
53M2    #     THIS SUBROUTINE OPTIONALLY FREES THE APROPNOS, APROPS, APERM AND  
546L    #     BTEMP BLOCKS  
54L=    #     LINK IN X7
555W    SVFREEW1
55KG          VFREEW   APERI,APERM  
5656          VFREEW   APERI,BTEMP  
56JQ          VFREEW   APERI,APROPNOS   
574B          BRN      (7)  
57J2    #   
583L    SCHECKATT   
58H=    #     THIS SUBROUTINE BUZZES AROUND THE APIA POINTED AT BY X1, AND  
592W    #     CHECKS THE PROPERTIES ATTRIBUTED AND REQUESTED IN THE APROPNOS
59GG    #     BLOCK. THE MASTER MARKER IS UPDATED TO REFLECT THE SUITABILITY
5=26    #     OF THE DEVICE UNDER INVESTIGATION.
5=FQ    #     LINK IN X7
5=^B          LDN   5  0                   [INITIALIASE MARKER FOR THIS DEVICE  
5?F2          LDN   4  0                   [RELATIVE POINTER DOWN APIA  
5?YL    XLOOP   
5#D=          SMO      4
5#XW          LDXC  0  APERPROP(1)         [LOAD 1ST/NEXT PROPERTY (LOSE B0)
5*CG          BZE   0  PROPEND             [BR IF NONE/NO MORE  
5*X6          BNG   3  NONWANTED           [BR IF NO PROPERTIES REQUIRED
5BBQ          LDX   6  BPROPCNT(3)         [ELSE GET COUNT OF THEM  
5BWB    R1  
5CB2          SMO      6
5CTL          TXU   0  BPROPS-1(3)         [COMPARE REQUESTS AND ATTRIBUTIONS   
5D*=          BCC      WANTED              [BR IF THIS ONE WANTED   
5DSW          BCT   6  R1                  [COUNT DOWN  
5F#G    NONWANTED   
5FS6    # THIS PROPERTY IS NOT WANTED   
5G?Q          SMO      4
5GRB          LDXC  0  APERPROP(1)  
5H?2          BCC      WILLDO              [BR IF PROPERTY INCLUSIVE
5HQL          SLL   0  1
5J==          BPZ   0  TEMP                [BR IF TEMPORARY/EXCLUSIVE   
5JPW          ORN   5  4                   [ELSE SET P/E NOT REQUIRED MARKER
5K9G          BRN      WILLDO              [AND BR TO DO NEXT PROPERTY  
5KP6    TEMP
5L8Q          ORN   5  32                  [SET T/E NOT REQUIRED MARKER 
5LNB          BRN      WILLDO              [AND CARRY ON
5M82    WANTED  
5MML          LDCT  0  256  
5N7=          SMO      6                   [MARK PROPERTY AS BEING ATTRIBUTED   
5NLW          ORS   0  BPROPS-1(3)         [TO THIS DEVICE  
5P6G    WILLDO  
5PL6          ADN   4  1                   [STEP POINTER DOWN PROPERTY LIST 
5Q5Q          LDN   0  ATTMAX+1            [TEST IF REACHED MAXIMUM NUMBER OF   
5QKB          TXL   4  0                   [DEVICE ATTRIBUTIONS PERMITTED   
5R52          BCS      XLOOP               [BR IF NOT   
5RJL    PROPEND 
5S4=          BNG   3  NONREQ              [BR IF NO PROPERTIES REQUIRED
5SHW          LDX   4  BPROPCNT(3)         [ELSE GET COUNT OF THEM  
5T3G    RLOOP   
5TH6          SMO      4
5W2Q          LDXC  0  BPROPS-1(3)         [TEST IF PROPERTY ATTRIBUTED TO  
5WGB          BCS      XATT                [DEVICE  - BR IF YES 
5X22          SLL   0  1
5XFL          BPZ   0  XTEMP               [BR IF TEMPORARY 
5X^=          ORN   5  2                   [ELSE SET PERM NOT GOT MARKER
5YDW          SRL   0  1
5YYG          ANDX  0  BITS22LS            [STORE MISSING PERMANENT PROPERTY
5^D6          SMO      FX2                 [IN ACOMMUNE8
5^XQ          STO   0  ACOMMUNE8
62CB          BRN      R2   
62X2    XTEMP   
63BL          ORN   5  32                  [SET TEMP NOT GOT MARKER 
63W=          BRN      R2   
64*W    XATT
64TG          SMO      4                   [CLEAR B0 OF THIS ENTRY IN   
65*6          STO   0  BPROPS-1(3)         [APROPNOS BLOCK  
65SQ    R2  
66#B          BCT   4  RLOOP               [COUNT DOWN AND PROCEED  
66S2    NONREQ  
67?L          BRN      (7)                 [EXIT
67R=    #   
67W?    #UNS G3SIGNET   
67^#    (   
684*    SCHECKMEEP  
687B    #     THIS SUBROUTINE TESTS IF THE MEEP LP IS REQUIRED AND EXISTS   
68=C    #     ON ENTRY : X3 -> APERI/APROPNOS BLOCK ; EXITS +0 WITH X1 -> MEEP  
68*D    #     LP DEVICE LIST AND B0 SET IN AWORK4  IF TRUE ; EXITS +1 IF FALSE  
68DF    #     REPLIES NOTAV IF MEEP LP IS REQUIRED BUT DOESN'T EXIST
68HG    #     LINK IN X7
68LH          LDX   0  AWORK4(2)           [TEST IF LP REQUIRED 
68PJ          ANDN  0  #77  
68SK          SBN   0  2
68XL          BNZ   0  SMEEPEX             [LP NOT REQUIRED 
692M          LDCT  6  #400                [FOR 'TWOMEEPS' CHECK
695N          LDX   4  BPROPCNT(3)         [TEST IF A MEEP PROPERTY IS REQUIRED 
698P    SMEEP1  
69?Q          SMO      4
69BR          LDX   0  BPROPS-1(3)  
69FS          SLL   0  9
69JT          BPZ   0  SMEEP2              [NOT A MEEP PROPERTY NO.(B9 UNSET)   
69MW          LDX   0  CPROPNO(3)          [TEST IF A CONSOLE PROP ALSO REQUIRED
69QX          BNZ   0  XMEEP               [NOT PERMITTED WITH MEEP PROPERTY
69TY          BPZ   6  TWOMEEPS            [MORE THAN ONE MEEP PROPERTY REQUIRED
69Y^          LDX   6  ASIGNETPTR   
6=42          BZE   6  SMEEP2              [MEEP LP DOESN'T EXIST BUT CHECK FOR 
6=73                                       ['TWOMEEPS'  
6==4          STO   6  1                   [SET X1 -> MEEP LP DEVICE LIST   
6=*5          LDCT  0  #400                [SET B0 OF AWORK4 TO INDICATE THAT   
6=D6          ORS   0  AWORK4(2)           [THE MEEP LP IS REQUIRED AND EXISTS  
6=H7    SMEEP2  
6=L8          BCT   4  SMEEP1              [TEST NEXT PROPERTY NO.  
6=P9          BZE   6  NOTAV               [MEEP LP REQUIRED BUT DOESN'T EXIST  
6=S=          BPZ   6  (7)                 [MEEP LP IS REQUIRED&EXISTS: EXIT +0 
6=X?    SMEEPEX 
6?2#          EXIT  7  1                   [MEEP LP IS NOT REQUIRED: EXIT+1 
6?5*    #   
6?8B    TESTIFMEEP  
6??C    #     THIS SUBROUTINE TESTS IF THE DEVICE OWNED BY THE CURRENT ACTIVITY 
6?BD    #     IS THE MEEP(SIGNET) LINE PRINTER : EXITS +0 IF TRUE; EXITS +1 IF  
6?FF    #     FALSE 
6?JG    #     LINK IN X7
6?MH          SMO      FX2  
6?QJ          LDX   0  CPPTR
6?TK          BZE   0  TMEEPEX             [REMOTE DEVICE OWNED 
6?YL          BXE   0  ASIGNETPTR,(7)      [MEEP LP OWNED : EXIT +0 
6#3M    TMEEPEX 
6#6N          EXIT  7  1
6#9P    #   
6##Q    SCHECKMDEV1 
6#CR          HUNTW    3,APERI,APROPNOS    [SETS X3 FOR SCHECKMDEV  
6#GS          BNG   3  (5)                 [MUST BE REMOTE  
6#KT    SCHECKMDEV  
6#NW    #     THIS SUBROUTINE CHECKS THAT IF THE MEEP LP IS OWNED,THE REQUEST   
6#RX    #     NEEDS IT AND THAT IF THE MEEP LP IS NOT OWNED,THE REQUEST DOESN'T 
6#WY    #     NEED IT   
6#^^    #     ON ENTRY : X3 -> APERI/APROPNOS BLOCK ; IF CHECKS OK THE S/R EXITS
6*52    #     ELSE THE REPLY PERMEXCL IS GIVEN  
6*83    #     LINK IN X5
6*?4          LTYPE    ,0                  [SET DEV TYPE IN AWK4 FOR SCHECKMEEP 
6*B5          STO   0  AWORK4(2)
6*F6          LDN   1  0                   [NOTE X1 WILL ONLY BE CHANGED IF MEEP
6*J7                                       [LP IS REQUIRED AND EXISTS   
6*M8          CALL  7  SCHECKMEEP   
6*Q9          BRN      SCMO                [MEEP LP IS REQUIRED AND EXISTS  
6*T=          CALL  7  TESTIFMEEP          [MEEP LP NOT REQUIRED : TEST IF OWNED
6*Y?          BRN      PERMEXCL            [NOT REQUIRED BUT OWNED:NO ACCORDANCE
6B3#          EXIT  5  0
6B6*    SCMO  SBX   1  CPPTR(2)            [CHECK IF MEEP LP OWNED  
6B9B          BNZ   1  PERMEXCL            [REQUIRED BUT NOT OWNED:NO ACCORDANCE
6B#C          EXIT  5  0
6BCD    #   
6BGF    )   
6BL2    #   
6C5L    #                                  *  *   * 
6CK=    #                                  * *   ** 
6D4W    #                                  **     * 
6DJG    #                                  * *    * 
6F46    #                                  *  *  ***
6FHQ    #   
6G3B    X1GETFREE   
6GH2    #   
6H2L    #     THIS ENTRY POINT IMPLEMENTS THE ISPER7 MACRO. IT CHECKS WHETHER   
6HG=    #     A DEVICE OF TYPE SPECIFIED IN B18-24 OF ACOMMUNE7 EXISTS WITH 
6H^W    #     ANY CONSOLE AND/OR PERMANENT PROPERTIES WHICH MAY BE REQUESTED
6JFG    #     PROPERTIES REQUIRED ARE IN AN APERI/APROPS BLOCK AND/OR APERI 
6J^6    #     ASSOCS BLOCK. 
6KDQ    #     THE COMMAND TYPE IS IN B0-17 OF ACOMMUNE7 
6KYB    #              VIZ         B0=1    LISTFILE 
6LD2    #                          B1=1    ONLINE   
6LXL    #   
6MC=          NGS   2  AWORK3(2)           [SET ISPER MARKER
6MWW    XISPERG 
6NBG          LDX   6  ACOMMUNE7(2) 
6NW6          STO   6  AWORK4(2)           [TYPE/COMMAND INDICATOR  
6P*Q    #SKI  K6PERI
6PTB          GSCAN    6,ISPER  
6Q*2          ANDN  6  63                  [MASK OUT PERIPHERAL TYPE
6QSL          BZE   6  NOPROPS             [NO PROPERTIES FOR TAPE OR   
6R#=          SBN   6  3
6RRW          BZE   6  NOPROPS             [CARD-READER 
6S?G          HUNT     3,APERI             [NO PROPERTIES ARE REQUIRED UNLESS   
6SR6    #                                   A BLOCK OF TYPE APERI EXISTS
6T=Q          BNG   3  NOPROPS             [BR IF NO PROPERTIES REQUIRED
6TQB          SETNCORE ATTMAX*17+4/4+7,3,APERI,APROPNOS 
6W=2          STOZ     A1(3)
6WPL          LDN   7  A1(3)
6X9=          LDN   0  A1+1(3)  
6XNW          MOVE  7  6                   [ZEROISE FIXED PART OF APROPNOS  
6Y8G ...      HUNTC    3,APERI,APROPS,NOAPROPS      [LOCATE APROPS BLOCK
6^7Q          LDX   6  A1+1(3)             [NO OF PROPERTIES IN BLOCK   
6^MB          TXL   6  MAXATT(1)
7272          BCC      TOOMANY             [BR IF TOO MANY PROPERTIES SPECIFIED 
72LL          CALL  5  OPEN                [OPEN :SYSTEM.PROPERTY   
736=          LDN   5  A1+2 
73KW    PROPLOOP
745G          MHUNTW   3,APERI,APROPS      [LOCATE APROPS BLOCK 
74K6          ADX   3  5                   [POINTER TO FIRST/NEXT ENTRY 
754Q          LDN   4  ACOMMUNE1(2) 
75JB          MOVE  3  4                   [MOVE PROPERTY RECORD INTO WORKSPACE 
7642    STEP
76HL          STEP                         [STEP TO NEXT RECORD 
773=          BZE   3  PROPMISS            [BR IF PROPERTY NAME NOT FOUND   
77GW          TESTREPN COORED,NOMOVE       [BR IF STEP NOT COORIDINATED 
782G          MHUNTW   1,APERI,APROPS   
78G6          ADX   1  5                   [ELSE RESET ACOMMUNE WORDS AS
78^Q          ADN   2  ACOMMUNE1           [THEY MAY HAVE BEEN OVERWRITTEN  
79FB          MOVE  1  4
79^2          LDX   1  FX1  
7=DL          LDX   2  FX2  
7=Y=    NOMOVE  
7?CW          TESTNAMX 3,ACOMMUNE2(2),APROPNAME(3),STEP,4   
7?XG          LDX   0  APROPGROUP(3)
7#C6          STO   0  ACOMMUNE6(2)        [STORE CONSOLE PROPERTY INDICATOR
7#WQ          LDX   0  APROPNO(3)          [PROPERTY NO 
7*BB          STOC  0  ACOMMUNE5(2)        [STORE PROPERTY NO (LESS B0) 
7*W2          CALL  7  PROPERTY            [PROCESS THIS PROPERTY NAME  
7B*L          BRN      TWOCONS             [MORE THAN ONE CONS PROP SPECIFIED   
7BT=          BRN      NONOCONS            [COMMAND NOT ALLOWED CONSOLE PROPERTY
7C#W          BCT   6  REWIND              [BR IF MORE PROPERTY NAMES   
7CSG          BRN      NOMOREPROPS  
7D#6    REWIND  
7DRQ          REWIND                       [REWIND :SYSTEM.PROPERTY 
7F?B          ADN   5  4
7FR2          BRN      PROPLOOP            [BR TO PROCESS NEXT PROPERTY 
7G=L    NOMOREPROPS 
7GQ=          MFREEW   APERI,APROPS        [FREE THE APROPS BLOCK   
7H9W          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
7HPG    NOAPROPS
7J96    # THE CONTENTS OF ANY APERI/APROPS BLOCK HAVE NOW BEEN ANALYSED AND 
7JNQ    # BUNGED IN THE APROPNOS, APERM, AND/OR BTEMP BLOCK.
7K8B          HUNTW    3,APERI,ASSOCS   
7KN2          BNG   3  NOASSOCS            [BR IF NO ASSOCIATIONS TO DO 
7L7L          LDX   4  AWORK4(2)           [COMMAND/TYPE WORD   
7LM=          LDCH  0  4                   [DEVICE TYPE 
7M6W          SMO      0
7MLG          LDX   0  QBITS(1)            [ASSOC KEY FOR DEVICE TYPE   
7N66          DSA   0  4
7NKQ          LDX   6  A1(3)               [COUNT OF ASSOCIATIONS   
7P5B    PALOOP  
7PK2          LDX   0  4                   [TEST IF KEY IN X4 IS CONTAINED  
7Q4L          ANDX  0  A1+1(3)             [IN THE CIT PATTERN IN A1+1 OF   
7QJ=          ERX   0  4                   [THE ASSOCS BLOCK....
7R3W          BZE   0  SMATCH              [BR IF SO
7RHG          ADN   3  ASSOCSLEN           [STEP TO NEXT RECORD 
7S36          BCT   6  PALOOP   
7SGQ          BRN      NOASSOCS            [BR IF NO RELEVANT ASSOCIATIONS  
7T2B    SMATCH  
7TG2          LDN   0  12   
7T^L          STO   0  ACOMMUNE1(2)        [STORE CHARACTER COUNT OF 12 
7WF=          LDN   7  A1+3(3)             [START OF PROPERTY NAME  
7WYW          LDN   0  ACOMMUNE2(2) 
7XDG          MOVE  7  3                   [MOVE PROPERTY NAME INTO WORKSPACE   
7XGP          LDCT  1  #600                [ROUTINE TO EDIT..   
7XJY          ORN   1  ACOMMUNE4(2)        [..OUT TRAING SPACES..   
7XM7    NEXT  LDCH  0  0(1)                [..AND ALTER CHARACTER.. 
7XPB          SBN   0  #20                 [..COUNT ACCORDINGLY 
7XRK          BNZ   0  ZEDED
7XTS          LDN   0  1
7XY3          SBS   0  ACOMMUNE1(2) 
7Y2=          SLC   1  2
7Y4F          SBN   1  1
7Y6N          SRC   1  2
7Y8X          LDX   0  ACOMMUNE1(2) 
7Y?6          BNZ   0  NEXT 
7Y**    ZEDED LDX   0  A1+2(3)             [PROPERTY NUMBER 
7YCQ          STO   0  ACOMMUNE6(2)        [STORE CONSOLE PROP INDICATOR (B0)   
7YXB          STOC  0  ACOMMUNE5(2)        [STORE PROP NO (LESS B0) 
7^78          LDX   1  FX1  
7^C2          CALL  7  PROPERTY            [PROCESS THE ASSOCIATION 
7^WL          BRN      NOASSOCS            [2ND CONS PROP - IGNORE IT   
82B= ...      BRN      XFBD 
82TW    NOASSOCS
83*G    # ANALYSIS OF ASSOCIATIONS COMPLETED. NOW WE MUST COMPLETE THE APROPNOS 
83T6          MHUNTW   3,APERI,APROPNOS    [LOCATE APROPNOS BLOCK   
84#Q          LDX   5  BPROPCNT(3)  
84SB          BNZ   5  P1                  [BR IF SOME PROPERTIES WERE STORED   
85#2          FREECORE 3                   [ELSE FREE THE APROPNOS BLOCK
85RL          BRN      SPORPON  
86?=    P1  
86QW          TXL   5  MAXATT(1)
87=G          BCC      TOOMANY             [BR IF TOO MANY PROPERTIES REQUESTED 
87Q6          LDX   0  CPROPNO(3)          [LOAD CONSOLE PROPERTY NO
889Q          ANDX  0  BITS22LS 
88PB          BCT   0  P2                  [BR IF NOT CENTRAL   
8992          STOZ     CPROPNO(3)          [ELSE CLEAR CPROPNO  
89NL    P2  
8=8=          ADN   5  BPROPS              [DESTINATION ADDRESS POINTER 
8=MW          HUNTW    1,APERI,APERM       [LOCATE APERM BLOCK  
8?7G          BNG   1  NOAPERM             [BR IF NOT THERE 
8?M6          LDX   6  A1(1)
8#6Q          STO   6  CHPERM(3)           [STORE COUNT OF PERM PROP CHARS  
8#LB          STO   5  ADPERM(3)           [START OF PERM PROP STRING   
8*62          ADN   6  3
8*KL          SRL   6  2                   [NO OF WORDS IN STRING   
8B5=          ADX   5  3
8BJW          LDN   4  A1+1(1)  
8C4G          SMO      6
8CJ6          MOVE  4  0                   [MOVE IN PERM PROP STRING
8D3Q          SBX   5  3                   [RELATIVISE X5   
8DHB          ADX   5  6                   [UPDATE POINTER  
8F32          FREECORE 1                   [& FREE APERM BLOCK  
8FGL    NOAPERM                            [NOW FOR THE BTEMP BLOCK 
8G2=          HUNTW    1,APERI,BTEMP       [LOCATE BTEMP BLOCK  
8GFW          BNG   1  NOBTEMP             [BR IF NOT THERE 
8G^G          LDX   6  A1(1)
8HF6          STO   6  CHTEMP(3)           [NO OF CHARS IN TEMP PROP STRING 
8HYQ          STO   5  ADTEMP(3)           [START ADDRESS OF STRING 
8JDB          ADN   6  3
8JY2          SRL   6  2                   [WORD LENGTH OF STRING   
8KCL          ADX   5  3
8KX=          LDN   4  A1+1(1)  
8LBW          SMO      6
8LWG          MOVE  4  0                   [MOVE STRING INTO APROPNOS   
8MB6          SBX   5  3
8MTQ          ADX   5  6                   [TOTAL LENGTH OF APROPNOS USED   
8N*B          FREECORE 1                   [FREE BTEMP BLOCK
8NT2    NOBTEMP 
8P#L          SBN   5  A1                  [X5 = RECORD HEADER  
8PS=          STO   5  A1(3)               [STORE TOTAL RECORD HEADER   
8Q?W          ADN   5  A1   
8QRG          ALTLENG  3,5,SMHUNTW         [ALTER LENGTH OF BLOCK   
8R?6    NOPROPS 
8RQQ    SPORPON 
8S=B          LDN   0  #77                 [CLEAR COMMAND INDICATOR, BUT
8SQ2          ANDS  0  AWORK4(2)           [RETAIN PERIPHERAL TYPE  
8T9L          BRN      PERIPHERAL          [BR TO LOOK FOR A SUITABLE   
8TP=    #                                   PERIPHERAL  
8W8W    XBRKIN                             [BREAK IN WHILE OPENING SYS.PROP 
8WNG          MFREE    FILE,FABSNB  
8X86          MFREEW   APERI,APROPS 
8XMQ          MFREEW   APERI,APROPNOS   
8Y7B          UP                           [BREAKIN EXIT
8YM2    #   
8^6L    TOOMANY                            [TOO MANY PROPERTIES SPECIFIED   
8^L=          CALL  7  SVFREEW             [FREE APPROPRIATE BLOCKS 
925W    Q1    SETREP2  MAXATT              [SET REPLY   
92KG          UPPLUS   2                   [AND RETURN  
9356    #   
93JQ    PROPMISS                           [PROPERTY NOT IN :SYSTEM.PROPERTY
944B          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
94J2          CALL  7  SVFREEW1            [FREE ALL BUT APROPS BLOCK   
953L          STO   5  ACOMMUNE1(2)        [STORE RELATIVE POINTER TO ERRONEOUS 
95H=          SETREP2  XPROP               [PROPERTY NAME   
962W          UPPLUS   2
96GG    #   
9726    TWOCONS                            [2 CONSOLE PROPERTIES SPECIFIED  
97FQ          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
97^B          CALL  7  SVFREEW             [AND FREE ALL BLOCKS 
98F2          SETREP2  CPROPS   
98YL          UPPLUS   2
99D=    #   
99XW    NONOCONS                           [COMMAND MAY NOT SPECIFY CONSOLE PROP
9=CG          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
9=X6          CALL  7  SVFREEW1            [FREE ALL BUT APROPS 
9?BQ          SETREP2  XCPROP   
9?WB          UPPLUS   2
9#B2    #   
9#TL    SWIPEDCONS  
9**=    SWITCHED
9*SW          FREECORE 3                   [FREE APERI,ATTRIB BLOCK 
9B#G          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
9BS6          BRN      T1   
9BT9    #UNS G3SIGNET   
9BW#    (   
9BXC    #   
9BYG    TWOMEEPS                           [MORE THAN 1 MEEP PROPERTY SPECIFIED 
9B^K          SETREP2  TWOMEEPS 
9C2N          UPPLUS   2
9C3R    #   
9C4W    XMEEP                              [MEEP PROPERTY MAY NOT BE SPECIFIED  
9C5^                                       [WITH A CONSOLE PROPERTY 
9C74          SETREP2  XMEEP
9C87          UPPLUS   2
9C9=    #   
9C=*    )   
9C?Q    NOPER   
9CRB    # NO DEVICE OF REQUIRED TYPE IN RELEVANT CLUSTER
9D?2          LDXC  0  AWORK3(2)
9DQL          BCC      T1                  [BR IF GETPER
9F==          VFREEW   APERI,APROPNOS   
9FPW    T1  
9G9G          SETREP2  NOPER
9GP6          UPPLUS   2
9H8Q    NOPROPA 
9HNB          FREECORE 3                   [FREE APERI,ATTRIB BLOCK 
9J82    #   
9JML    PRNOPROP
9K7=          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
9KLW    NOPROP  
9L6G    # NO DEVICE OF SPECIFIED TYPE HAS ALL THE PERM PROPS REQUIRED   
9LL6          SETREP   NOPROP   
9M5Q          UPPLUS   2
9MKB    #   
9N52    PERMYUK 
9NJL          FREECORE 3                   [FREE APERI,ATTRIB BLOCK 
9P4=    PRPERMEXCL  
9PHW          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
9Q3G    PERMEXCL
9QH6    # DEVICES HAVE PERM EXCL PROPERTIES NOT REQUIRED
9S^=          SETREP2  PERMEXCL 
9TDW          UPPLUS   2
9TYG    #   
9WD6    WRNG
9WXQ    # ALL DEVICES WITH SPECIFIED PERM EXCL PROPS ARE WRONGED
9XCB          SETREP2  WRNG 
9XX2          UPPLUS   2
9YBL    #   
9YW=    NOTAV   
9^*W    # NO DEVICES WITH SPECIFIED PERM PROPS ARE FREE 
9^TG          SETREP2  NOTAV
=2*6          UPPLUS   2
=2SQ    #   
=3#B    PROK
=3S2          CALL  7  SCLOSETOP           [CLOSE :SYSTEM.PROPERTY  
=3TS    OK  
=4M8          SETREP   OK   
=4R=          UPPLUS   2
=5=W    #   
=5GN ...XFBD  GEOERR   1,FRBID  
=5QG    #                                  *  *   **
=6=6    #                                  * *   *  *   
=6PQ    #                                  **      *
=79B    #                                  * *    * 
=7P2    #                                  *  *  ****   
=88L    #   
=8N=    X2GETFREE   
=97W    #   
=9MG    #     THIS ENTRY POINT IS USED BY THE GETPER7 MACRO. IT SEARCHES FOR
==76    #     A DEVICE OF THE REQUIRED TYPE WITH THE REQUIRED PROPERTY  
==LQ    #     CONFIGURATION 
=?6B    #   
=?L2          STO   2  AWORK3(2)           [INDICATE GETPER ENTRY   
=#5L          LDCH  7  ACOMMUNE7(2) 
=#K=    #SKI  K6PERI
=*4W          GSCAN    7,GETPER 
=*JG          STO   7  AWORK4(2)           [PRESERVE DEVICE TYPE REQUIRED   
=B46    PERIPHERAL  
=BHQ    #     NOW TO LOOK FOR A SUITABLE DEVICE 
=C3B          LDXC  5  GSIGN               [SET MASTER MARRKER (- X5 =0)
=CH2          STO   5  AWORK2(2)           [ = 'NOPER'  
=D2L          HUNTW    3,APERI,APROPNOS 
=DG=          BNG   3  PLOCAL              [NO PROPERTIES - MUST BE LOCAL   
=DJF    #UNS G3SIGNET   
=DLN    (   
=DNX          CALL  7  SCHECKMEEP          [CHECK IF MEEP LP REQUIRED   
=DR6          BRN      SCHECKDEV           [MEEP LP EXISTS AND IS REQUIRED  
=DT*                                       [EXAMINE IT  
=DXJ    )   
=D^W          LDX   4  CPROPNO(3)   
=FFG          BZE   4  PLOCAL              [BR IF NO CONS PROP REQ'D
=F^6          IDFPER   XIDFBRK,OK          [LOOK FOR IDF DEVICE 
=GDQ          LDX   0  ACOMMUNE9(2)        [NOT FOUND - BR TO ANALYSE   
=GNJ ...#SKI G167&1$1   
=GYB          BRN      XAMINE              [RESULT  
=H2# ...#SKI G167&1 
=H4= ...(   
=H68 ...#     ALLOWS LISTFILES TO NON-ATTRIBUTED PROPERTIES 
=H86 ...      SRL   0  1
=H=4 ...      BZE   0  WRNG 
=H#2 ...      BRN      XXAMINE  
=H*Y ...)   
=HD2    PLOCAL  
=H^K          LDXC  0  AWORK3(2)
=J4# ...      BCC      XGFND               [SEPAREATE FINDPEREC FOR ISPER   
=J73          FINDPERE 1,APFOTY,AWORK4(2),QNEXTDVI,,NLINE,NLINE 
=J9Q          BRN      NLINE
=J#G ...XGFND FINDPERE 1,APFOTY,AWORK4(2),QNEXTDEV  
=JC=    # FIND DEVICE LIST OF NEXT DEVICE OF THIS TYPE  
=JN3    NLINE BNG   1  NODEV               [BR IF NO MORE   
=JYS    #UNS G3SIGNET   
=K2Q    (   
=K4N          LDXC  0  AWORK4(2)           [IF MEEP LP REQUIRED,IGNORE OTHER LPS
=K6L          BCS      NODEV               [AND ANALYSE MASTER MARKER   
=K8J          BXE   1  ASIGNETPTR,QNEXTDV [MEEP LP NOT REQUIRED : IGNORE IT 
=K=G    SCHECKDEV   
=K#D    )   
=KBG          LDN   5  0
=KW6          LTYPE    1,0  
=L*Q          BZE   0  SLINPUT             [BR IF TR   (NO ATTRIBUTIONS FOR)
=LTB          SBN   0  3
=M*2          BZE   0  SLINPUT             [OR CR      (SLOW INPUT DEVICES )
=MSL          STO   1  ACOMMUNE1(2)        [PRESERVE DEVICE LIST POINTER
=N#=          LADDP    1,1                 [LOAD ADDRESS OF APIA
=NRW          CALL  7  SCHECKATT           [CHECK PROPERTY ATTRIBUTIONS 
=P?G          LDX   1  ACOMMUNE1(2)        [RESTORE DEVICE LIST POINTER 
=PR6    SLINPUT 
=P^B ...      JNANON   1,XJR
=Q7L          ORN   5  8               [SET WRG MARKER  
=Q*W          BRN      XFREE
=QJ6 ...XJR   JRIGHT   1,RIGHT             [BR IF DEVICE RIGHTED
=QQB          ORN   5  8                   [ELSE SET 'WRONGED' MARKER   
=R=2    RIGHT   
=RPL          JFREE    1,XFREE             [BR IF DEVICE FREE   
=S9=          ORN   5  16                  [ELSE SET ALREADY ALLOCATED MARKER   
=SNW    XFREE   
=T8G    #SKI  K6PERI>199$199
=TN6          TRACE    5,GPMARK            [TRACE CHECKATT REPLY
=W7Q          BZE   5  PERFECT             [BR IF DEVICE IS PERFECT FIT 
=WMB          NGN   0  1
=X72    S1  
=XLL          ADN   0  1                   [SHIFT COUNT 
=Y6=          SRC   5  1                   [FIND L.S. BIT SET IN MARKER FOR 
=YKW          BPZ   5  S1                  [THIS DEVICE 
=^5G          LDN   5  1
=^K6          SMO      0
?24Q          SLL   5  0                   [AND SET IT IN THE MASTER MARKER 
?2JB          ORS   5  AWORK2(2)
?342          SBN   5  32                  [TEST IF OK EXCEPT FOR TEMP PROPS
?3HL          BNZ   5  QNEXTDV            [AND BR FOR NEXT DEVICE IF NOT
?43=          LDXC  0  AWORK3(2)
?4GW          BCS      QNEXTDVI            [BR FOR NEXT DEVICE IF ISPER 
?52G          LDX   0  CPPTR(2)            [BR IF DEVICE WITH WRONG TEMP
?5G6          BNZ   0  QNEXTDEV            [ALREADY STORED  
?5^Q          STO   1  CPPTR(2)            [ELSE REMEMBER THIS ONE  
?6CS    QNEXTDV 
?6D#          LDXC  0  AWORK3(2)
?6DS          BCS      QNEXTDVI               [ISPER LABEL  
?6FB          BRN      QNEXTDEV 
?6^2    NODEV   
?6^7    #UNS  FSHTEST   
?6^#    #SKI
?6^F    (   
?754    )   
?7DL    # ALL LOCAL DEVICES HAVE NOW BEEN EXAMINED. NOW TO ANALYSE MASTER   
?7Y=    # MARKER TO DECIDE ON THE REPLY 
?8CW    #   
?8XG          LDX   0  AWORK2(2)           [LOAD MASTER MARKER  
?9C6    XAMINE                             [ENTRY FROM IDFPERIS 
?9WQ    #SKI  K6PERI>199$199
?=BB          TRACE    0,GPMASTER          [TRACE MASTER MARKER 
?=W2          SRL   0  1                   [           REPLY
??*L          BZE   0  NOPER               [           NOPER
??GS ...#SKI G167&1 
??N2 ...XXAMINE 
??T=          SRL   0  1
?##W          BZE   0  NOPROP              [           NOPROP   
?#SG          SRL   0  1
?*#6          BZE   0  PERMEXCL            [           PERMEXCL 
?*RQ          SRL   0  1
?B?B          BZE   0  WRNG                [           WRNG 
?BR2          SRL   0  1
?C=L          BZE   0  NOTAV               [           NOTAV
?CQ=          LDXC  0  AWORK3(2)
?D9W          BCS      OK                  [IF ISPER - OK   
?DPG    # DEVICE OK EXCEPT FOR TEMPORARY PROPERTY CONFIGURATION 
?F96          SAWCEN   CENTRAL,NOTCENTRAL  [BR IF REMOTE DEVICE ALLOCATED   
?FNQ          LDX   1  CPPTR(2)            [LOCAL DEVICE - LOAD CPPTR   
?G8B    #SKI  K6PERI>99$99  
?GN2          TRACE    1,ALLOTPET   
?H7L          SETALLOC 1                   [MARK DEVICE ALLOCATED   
?HM=          LDCH  0  ATYPE(2) 
?J6W          SBN   0  ACTLF/64 
?JLG          BNZ   0  NOTLF               [BR IF NOT CO
?K66          LGEOG    1,0  
?KKQ          STO   0  JSOURCE1(2)         [SET UP JSOURCE1 
?L5B          LTYPE    1,0  
?LK2          DCH   0  JSOURCE1(2)  
?M4L    NOTCENTRAL  
?MJ=          SETREP2  PREQ                [SET 'CHANGES IN TEMPORARY PROPERTY  
?N3W    #                                   ATTRIBUTIONS REQUIRED' REPLY
?NHG          UPPLUS   2                   [AND RETURN  
?P36    #   
?PGQ    #                                  *  *  ***
?Q2B    #                                  * *      *   
?QG2    #                                  **     ***   
?Q^L    #                                  * *      *   
?RF=    #                                  *  *  ***
?RYW    #   
?SDG    X3GETFREE   
?SY6    # THIS ENTRY POINT SERVICES THE SETPROP MACRO. IT REQUESTS CHANGES IN   
?TCQ    # THE ATTRIBUTIONS OF TEMPORARY PROPERTIES TO THE DEVICE OWNED BY THE   
?TXB    # CURRENT ACTIVITY. GETPER7 DROPS STRAIGHT THROUGH TO HERE WHEN NOT 
?WC2    # ISSUED BY AN ACTLF
?WWL    #   
?XB=    NOTLF ACROSS   GETFREEB,1   
?XTW    #   
?Y*G    #   
C??B    XIDFBRK 
C?R2          VFREEW   APERI,APROPNOS      [FREE ANY APROPNOS BLOCK 
C#2S          SETREP   CANT 
C#=L          UP
C#Q=    #   
CF6W    PERFECT                            [PERFECT FIT FOUND   
CFLG          LDXC  0  AWORK3(2)
CG66          BCS      SETOK               [SET REPLY IF ISPER  
CGKQ          SETALLOC 1                   [ELSE ALLOCATE THE DEVICE
CH5B          LDCH  0  ATYPE(2) 
CHK2          SBN   0  ACTLF/64 
CJ4L          BNZ   0  NJS                 [BR IF NOT ACTLF 
CJJ=          LGEOG    1,0  
CK3W          STO   0  JSOURCE1(2)         [SET UP JSOURCE1 
CKHG          LTYPE    1,0  
CL36          DCH   0  JSOURCE1(2)  
CLGQ    NJS 
CM2B          STO   1  CPPTR(2)            [STORE CPPTR 
CMG2    #SKI  K6PERI>99$99  
CM^L          TRACE    1,ALLOTPER   
CN3N    SETOK   
CN3R    #UNS FLLP4B 
CN3W    (   
CN3^    #UNS FLLP4BC
CN44       TRACEVER 2,GF1   
CN47          LDX   2  FX2  
CN4=          SMO   FX1 
CN4*          LDX   1  XACTLFC  
CN4D          IF 1,E,ATYPE(2)   
CN4H    #UNS FLLP4BC
CN4L       TRACEVER 1,GF2   
CN4P          LDX   1  CPPTR(2) 
CN4S    #UNS FLLP4BC
CN4X       TRACEVER 1,GF3DEV
CN52          AND  BS,1,FLP4B   
CN55          THEN  
CN58    #UNS FLLP4BC
CN5?       TRACEVER 0,GF4TOFL2  
CN5B             DOWN  FORMLOOP,2   
CN5F          ELSE  
CN5J    )   
CN5Q          HUNT     1,APERI,APROPNOS 
CN7S          IF       1,PZ                [ PROPERTIES 
CN9W          AND      +CPROPNO(1),NZ      [ CONSOLE PROPERTY   
CNB2             HUNT     1,AMXOR,ADCB  
CND4          AND      1,PZ [ ON 7900   
CNG6          AND      BS,1,ADCB7502LP     [ 7502 LP
CNJ8          THEN  
CNJW    #UNS FLLP4BC
CNKJ       TRACEVER 0,GF5TOFL2  
CNL=             DOWN     FORMLOOP,2          [ SET FORMAT LOOP BLOCK   
CNN#          ELSE  
CNQB             SETREP   OK
CNSD          FI
CNST    #UNS FLLP4BC
CNT=       TRACEVER EXEC3(2),GF6
CNTM    #UNS FLLP4B 
CNW4          FI
CNWG          UPPLUS   2
CNYW    #   
CPDG    #                                  *  *    *
CPY6    #                                  * *    **
CQCQ    #                                  **    * *
CQXB    #                                  * *  *****   
CRC2    #                                  *  *    *
CRWL    #   
CSB=    X4GETFREE   
CSTW    #     THIS ENTRY POINT SERVICES THE ISPERG MACRO. IT COMBINES THE   
CT*G    #     FUNCTIONS OF ISPER AND GETPER 
CTT6    #   
CW#Q          STO   2  AWORK3(2)           [MARK AS GETPER  
CWSB          BRN      XISPERG             [AND BR TO DO GETPER 
CX#2    #   
CXRL    #   
CY?=    #                                  *  *  ****   
CYQW    #                                  * *   *  
C^=G    #                                  **    ***
C^Q6    #                                  * *      *   
D29Q    #                                  *  *  ***
D2PB    #   
D392    X5GETFREE   
D3NL    # THIS ENTRY POINT SERVICES THE CHECKATT MACRO. IT SETS A REPLY 
D48=    # ACCORDING TO THE DEGREE OF ACCORDANCE BETWEEN THE PROPERTIES IN ANY   
D4MW    # APROPNOS BLOCK AND THOSE ATTRIBUTED TO THE DEVICE OWNED BY THE
D57G    # CURRENT ACTIVITY (AS DEFINED BY CPPTR)
D5M6    #   
D5S#    #UNS G3SIGNET   
D5^G    #SKI
D66Q          HUNTW    3,APERI,APROPNOS    [X3 -> APROPNOS OR -VE   
D6?Y    #UNS G3SIGNET   
D6F6          CALL  5  SCHECKMDEV1         [CHECKOUT MEEP LP OWNERSHIP/REQUEST  
D6LB          LADDP    ,1                  [ADDRESS OF APIA 
D762          CALL  7  SCHECKATT           [COMPARE PROPERTIES  
D7KL    #SKI  K6PERI>199$199
D85=          TRACE    5,CHECKATT          [CHECK ATT REPLY 
D8JW          BZE   5  OK                  [   OK   
D94G          LDN   0  2
D9J6          ANDX  0  5
D=3Q          BNZ   0  NOPROP              [   NOPROP   
D=HB          LDN   0  4                   [
D?32          ANDX  0  5
D?GL          BNZ   0  PERMEXCL            [   PERMEXCL 
D#2=          BRN      NOTCENTRAL          [   PREQ 
D#35    #   
D#3Y    #   
D#4R    #                                  *  *   *    *
D#5L    #                                  * *   **   **
D#6F    #                                  **     *    *
D#7#    #                                  * *    *    *
D#87    #                                  *  *  ***  ***   
D#92    #   
D#9T    X11GETFREE  
D#=N    # ENTRY USED BY CHANGELIST COMMAND TO DO ISPER  
D#?H    # MACRO EXCEPT APERI/APROPNOS BLOCK ALREADY SET UP  
D##B    #   
D#*9          NGS   2  AWORK3(2)           [ ISPER MACRO
D#B4          LDCH  7  ACOMMUNE7(2) 
D#BX          STO   7  AWORK4(2)           [ PERIPHERAL TYPE
D#CQ          BRN      PERIPHERAL   
D#CR    #   
D#DW    #   
D#DX    #   
D#FW    #PAGE   
D#^G          MENDAREA 45,K100GETFREE   
D*F6    #END
^^^^ ...31754577000200000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1