22FL #LIS K0LIBPROPS 22^= #SEG LIBPROPS [N.R.BOULT 23DW 8HLIBPROPS 23YG # 24D6 SEGENTRY K1LIBPROPS,QK1LIBP 24XQ SEGENTRY K2LIBPROPS,QK2LIBP 25CB SEGENTRY K3LIBPROPS,QK3LIBP 25JJ ... SEGENTRY K4LIBPROPS,QK4LIBP 25PQ ... SEGENTRY K5LIBPROPS,QK5LIBP 25X2 # 26BL # K1LIBPROPS IMPLEMENTS THE ENTPROP MACRO 26W= # K2LIBPROPS IMPLEMENTS THE MTEXPROP MACRO 27*W # K3LIBPROPS IMPLEMENTS THE MTCHAR MACRO 27KN ...[ K4LIBPROPS IMPLEMENTS THE OUTMTPROP MACRO 27TG ...[ K5LIBPROPS IMPLEMENTS THE MTSERSPD MACRO 285# ... SEGENTRY K9LIBPROPS 28*6 STAND #40000000 28SQ PROP 8HPROPERTY 29#B MPERSAND #26 29S2 SPACE #20 2=?L THIRT +13 2=R= TEN +10 2?=W YPHEN #35 2?QG # 2#=6 # 2#PQ QK1LIBP 2*9B MHUNT 3,CPB,CUNI 2*P2 LDX 4 ANUM(3) 2B8L ANDN 4 #7777 [NO. CHARS 2BN= LDX 0 APARA(3) 2C7W SRL 0 12 2CMG SBN 0 #6062 2D76 BNZ 0 PERR1 [BRANCH IF NOT PR QUALIFIER 2DLQ LDX 0 APARA(3) 2F6B BXU 0 PROP(1),PE1 2FL2 LDX 0 APARA+1(3) 2G5L BXU 0 PROP+1(1),PE1 2GK= SBN 4 8 2H4W ADN 3 2 2HJG BRN PE1A 2J46 PE1 2JHQ BCHX 3 £ 2K3B BCHX 3 £ 2KH2 SBN 4 2 2L2L PE1A 2LG= BZE 4 PERR1 2L^W # FIND NUMBER OF PROPERTIES 2MFG LDX 5 4 2M^6 LDX 2 3 2NDQ LDN 6 1 2NYB PE2 LDCH 0 APARA(2) 2PD2 BXU 0 MPERSAND(1),PE3 2PXL ADN 6 1 2QC= PE3 2QWW SBN 5 1 2RBG BCHX 2 £ 2RW6 BNZ 5 PE2 [BRANCH UNLESS END OF QUALIFIER 2S*Q STO 6 5 2STB SLL 6 2 2T*2 ADN 6 2 2TSL MHUNT 1,CPB,CUNI 2W#= SBX 3 1 2WRW SETUPCORE 6,2,FILE,FPROPS 2X?G STO 6 A1(2) [LOGICAL LENGTH 2XR6 STO 5 A1+1(2) [NO. OF PROPERTIES 2Y=Q LDN 6 A1+2(2) [FIRST PROPERTY CELL 2YQB MHUNT 1,CPB,CUNI 2^=2 ADX 3 1 2^PL LDX 1 FX1 329= PE3A 32NW LDX 2 6 338G LDN 5 0 33N6 # PROCESS NEXT PROPERTY 347Q PE4 34MB LDCH 0 APARA(3) 3572 BXE 0 MPERSAND(1),PE8 [BRANCH IF END OF PROPERTY 35LL BXGE 5 THIRT(1),PERR [BRANCH IF PROPERTY TOO LONG 366= BNZ 5 PE5 36KW BXE 0 SPACE(1),PE7A [BRANCH IF NON-SIGNIFICANT SPACE 375G BRN PE6 37K6 PE5 384Q BXL 0 TEN(1),PE7 38JB BXE 0 YPHEN(1),PE7 3942 BXE 0 SPACE(1),PE7 39HL PE6 3=3= SBN 0 #41 3=GW BNG 0 PERR [BRANCH IF NON-ALPHABETIC 3?2G SBN 0 #73-#41 3?G6 BPZ 0 PERR [BRANCH IF NON-ALPHABETIC 3?^Q ADN 0 #73 3#FB PE7 3#^2 DCH 0 1(2) [DEPOSIT CHARACTER 3*DL BCHX 2 £ 3*Y= ADN 5 1 [NO. CHARS 3BCW PE7A 3BXG BCHX 3 £ 3CC6 SBN 4 1 3CWQ BNZ 4 PE4 3DBB BRN PE8A 3DW2 PE8 [END OF PROPERTY 3F*L BCHX 3 £ 3FT= SBN 4 1 3G#W PE8A 3GSG SMO 6 3H#6 STO 5 0 [STORE PROPERTY LENGTH 3HRQ ADN 6 4 3J?B BNZ 4 PE3A [BRANCH UNLESS END OF QUALIFIER 3JR2 SETREP OK 3K=L UP 3KQ= PERR [FORMAT ERROR 3L9W MFREE FILE,FPROPS 3LPG PERR1 3M96 SETREP NAMEFORM 3MNQ UP 3N8B # 3NN2 # CODE FOR MTEXPROP MACRO 3P7L # 3P#S ...[ N.B. THIS TABLE IS ALSO USED BY THE OUTMTPROP MACRO 3PG2 ...[ 3PM= QTABLE +6 3Q6W 12HTRACK7 3QLG +GLIBTRA7 3QRN ...#UNS JMODGCR 3QYW ...#SKI 3R66 +GLIBTRA9+GLIBPE+GLIBNRZI 3R?# ...#UNS JMODGCR 3RDG ... +GLIBTRA9+GLIBPE+GLIBNRZI+GLIBGCR 3RKQ +3 3RPM ...#UNS JMODGCR 3RTJ ...#SKI 3R^F ...( 3S5B +6 3SK2 12HTRACK9 3T4L +GLIBTRA9 3TJ= +GLIBTRA7+GLIBMODE 3W3W +3 3W?N ...) 3WHG +2 3X36 12HPE 3XGQ +GLIBPE 3XMY ...#UNS JMODGCR 3XT6 ...#SKI 3Y2B +GLIBTRA7+GLIBMODE+GLIBNRZI 3Y7J ...#UNS JMODGCR 3Y#Q ... +GLIBTRA7+GLIBMODE+GLIBNRZI+GLIBGCR 3YG2 +3 3Y^L +4 3^F= 12HNRZI 3^YW +GLIBNRZI 4264 ...#UNS JMODGCR 42?= ...#SKI 42DG +GLIBTRA7+GLIBMODE+GLIBPE 42KN ...#UNS JMODGCR 42QW ... +GLIBTRA7+GLIBMODE+GLIBPE+GLIBGCR 42Y6 +3 42^9 ...#UNS JMODGCR 432# ...( 433C ... +3 434G ... 12HGCR 435K ... +GLIBGCR 436N ... +GLIBTRA7+GLIBMODE+GLIBPE+GLIBNRZI 437R ... +3 438W ... +6 439^ ... 12HTRACK9 43?4 ... +GLIBTRA9 43#7 ... +GLIBTRA7+GLIBMODE 43*= ... +3 43B* ...) 43CQ +4 43XB 12HMODE 44C2 +GLIBMODE+GLIBTRA7 44J8 ...#UNS JMODGCR 44PB ...#SKI 44WL +GLIBTRA9+GLIBPE+GLIBNRZI 453S ...#UNS JMODGCR 4592 ... +GLIBTRA9+GLIBPE+GLIBNRZI+GLIBGCR 45B= +3 45TW +4 46*G 12HNONS 46T6 +GLIBNONS 47#Q +0 47SB +1 48#2 +4 48RL 12HFAST 49?= +GLIBFAST 49QW +GLIBSLOW 4==G +2 4=Q6 +4 4?9Q 12HSLOW 4?PB +GLIBSLOW 4#92 +GLIBFAST 4#NL +2 4*8= QTABND +0 4*MW QMODE 4HMODE 4B7G QMASK #77777703 4B=L ...#UNS JMT21 4B*Q ...QTHSV +45 4BDW ...#UNS JMT21 4BJ2 ...#SKI 4BM6 QTHSV +37 4C6Q QK2LIBP 4CLB STOZ AWORK1(2) [ILLEGAL COMBINATION 4D62 STOZ AWORK2(2) [SPECIAL PROPERTY WORD 4DKL LDX 7 ACOMMUNE1(2) 4F5= SBN 7 1 4FJW BNZ 7 Q1 [BRANCH UNLESS TAPE PROPERTIES 4G4G MHUNT 3,FILE,FPROPS 4GJ6 BRN Q2 4H3Q Q1 4HHB MHUNT 3,APERI,APROPS 4J32 Q2 4JGL LDX 6 A1+1(3) [NO. OF PROPERTIES IN BLOCK 4K2= LDN 3 A1+2(3) 4KFW Q2B 4K^G SMO FX1 4LF6 LDN 5 QTABLE [ADDRESS OF PROPERTY LIST 4LYQ Q2A 4MDB LDX 1 5 4MY2 LDX 7 0(1) [NO OF SIGNIFICANT CHARS. 4NCL LDX 2 3 4NX= Q3 4PBW LDCH 0 1(2) [PROPERTY FROM BLOCK 4PWG LDCH 4 1(1) [PROPERTY FROM LIST 4QB6 BXU 0 4,Q3A 4QTQ BCHX 1 £ 4R*B BCHX 2 £ 4RT2 BCT 7 Q3 4S#L SMO 5 4SS= LDX 0 6 4T?W SMO FX2 4TRG ANDX 0 ACOMMUNE1 4W?6 BZE 0 Q5 [IGNORE IF INAPPROPRIATE 4WQQ SMO 5 4X=B LDX 0 4 4XQ2 SMO FX2 4Y9L ANDX 0 AWORK1 4YP= BNZ 0 QERR1 [BRANCH IF ILLEGAL COMBINATION 4^8W SMO FX1 4^NG LDX 0 QMODE 5286 BXU 0 1(3),Q4 [BRANCH UNLESS MODE 52MQ LDX 0 0(3) 537B SBN 0 7 53M2 BPZ 0 QERR2 [BRANCH IF TOO MANY CHARS 546L ADN 0 3 54L= BZE 0 QM2 [BRANCH IF VALUE NULL 555W SBN 0 1 55KG BNZ 0 QM1 [BRANCH IF 2 CHARS 5656 LDCH 0 2(3) 56JQ SMO FX1 574B BXGE 0 TEN,QERR2 57J2 BRN QM2 583L QM1 58H= LDX 0 2(3) 592W SRL 01 18 59GG SRL 1 18 5=26 SMO FX1 5=FQ MPA 0 TEN 5=^B LDX 0 1 5?F2 QM2 5?YL STO 0 1 5#D= SMO FX1 5#XW ANDX 1 QMASK 5*CG BNZ 1 QERR2 [BRANCH IF WRONG VALUE 5*X6 SMO FX1 5BBQ BXGE 0 QTHSV,QERR2 [BRANCH IF ILLEGAL MODE 5BWB SLL 0 18 5CB2 SMO FX2 5CTL ORS 0 AWORK2 5D*= Q4 5DSW SMO 5 5F#G LDX 0 4 5FS6 SMO FX2 5G?Q ORS 0 AWORK2 [STORE PROPERTY 5GRB SMO 5 5H?2 LDX 0 5 5HQL SMO FX2 5J== ORS 0 AWORK1 [STORE ILLEGAL COMBINATION BITS 5JPW Q5 5K9G ADN 3 4 5KP6 SBN 6 1 5L8Q BNZ 6 Q2B [BRANCH UNLESS ALL PROPERTIES EXAMINE 5LNB LDX 2 FX2 5M82 LDX 0 AWORK1(2) 5MML STO 0 ACOMMUNE2(2) [ILLEGAL COMBINATION BITS 5N7= LDX 0 AWORK2(2) 5NLW STO 0 ACOMMUNE1(2) [PROPERTY BITS 5P6G SETREP OK 5PL6 UP 5Q5Q QERR1 5QKB SETREP ILLCOMB 5R52 BRN QERR3 5RJL QERR2 5S4= SETREP ILLMODE 5SHW QERR3 5T3G UP 5TH6 Q3A 5W2Q ADN 5 7 5WGB SMO 5 5X22 LDX 0 0 5XFL BNZ 0 Q2A [BRANCH UNLESS END OF LIST 5X^= BRN Q5 5YDW # 5YYG # CODE FOR MTCHAR MACRO 5^D6 # 5^XQ RTAB 62CB +GLIBTRA9 62X2 #200 63BL +GLIBTRA7 63W= +0 64*W +GLIBPE 64TG #202 65*6 +GLIBNRZI 65SQ #201 65X* ...#UNS JMODGCR 65^Y ...( 664H ... +GLIBGCR 6676 ... +HWPGCR 669P ...) 66#B QK3LIBP 66S2 LDX 5 STAND(1) 67?L LDX 4 ACOMMUNE1(2) 67DS ...#UNS JMODGCR 67L2 ...#SKI 67R= ANDN 4 GLIBTRA9+GLIBTRA7+GLIBPE+GLIBNRZI 67YD ...#UNS JMODGCR 685L ... ANDN 4 GLIBTRA9+GLIBTRA7+GLIBPE+GLIBNRZI+GLIBGCR 68=W BZE 4 R4 [BRANCH IF NO SPECIAL PROPERTIES 68QG LDX 0 4 69=6 ANDN 0 GLIBTRA9 69PQ BNZ 0 R5 [BRANCH IF TRACK9 6=9B R1 6=#G ...#UNS JMODGCR 6=CL ... LDN 0 10 6=GQ ...#UNS JMODGCR 6=KW ...#SKI 6=P2 LDN 0 8 6?8L R2 6?N= SMO 0 6#7W BXE 4 RTAB-2(1),R3 [BRANCH WHEN SPECIAL PROPERTY FOUND 6#MG SBN 0 2 6*76 BNZ 0 R2 6*LQ GEOERR 1,LIBPROP 6B6B R3 6BL2 SMO 0 6C5L LDX 5 RTAB-1(1) [LOAD HARDWARE PROPERTY CODE/#100 6CK= R4 6D4W STO 5 ACOMMUNE1(2) 6DJG UP 6F46 R5 6FHQ LDX 0 4 6FNY ...#UNS JMODGCR 6FW6 ...#SKI 6G3B ANDN 0 GLIBPE+GLIBNRZI 6G8J ...#UNS JMODGCR 6G*Q ... ANDN 0 GLIBPE+GLIBNRZI+GLIBGCR 6GH2 BZE 0 R6 [J UNLESS TRACK9 SUPERFLUOUS 6GN8 ...#UNS JMODGCR 6GTB ...#SKI 6H2L ANDN 4 GLIBPE+GLIBNRZI 6H7S ...#UNS JMODGCR 6H*2 ... ANDN 4 GLIBPE+GLIBNRZI+GLIBGCR 6HG= BRN R1 6H^W R6 6JFG BNG 5 R1 6J^6 ANDN 5 #200 6KDQ BZE 5 R1 6KYB LDX 5 STAND(1) 6LD2 BRN R4 6LD8 ...[ 6LDB ...[ ******************************************************************** 6LDJ ...[ CODE FOR THE OUTMTPROP MACRO 6LDQ ...[ ******************************************************************** 6LDY ...[ 6LF6 ...[ USES QTABLE - SEE MTEXPROP MACRO 6LF# ...[ ACOMMUNE1 CONTAINS SPD OF PROPERTY TO BE OUTPUT 6LFG ...[ 6LFN ...QK4LIBP 6LFW ...#UNS JMODGCR 6LG4 ...( 6LG= ... LDX 6 ACOMMUNE1(2) 6LGD ... ANDN 6 GLIBTRA7+GLIBTRA9+GLIBPE+GLIBNRZI+GLIBGCR 6LGL ... BZE 6 NPROP 6LGS ...[ PROPERTY MUST BE IN TABLE 6LH2 ... LDN 5 5 6LH8 ... LDN 7 QTABLE(1) 6LHB ...XLOOP SMO 7 6LHJ ... LDX 0 4 [PICK UP 4TH WORD OF ENTRY 6LHQ ... ANDX 0 6 6LHY ... BNZ 0 XFOND [FOUND THE CORRECT ENTRY 6LJ6 ... ADN 7 7 6LJ# ... BCT 5 XLOOP 6LJG ... GEOERR 1,MTPROP 6LJN ...[ PROPERTY FOUND IN TABLE - GET OUT CHARACTER STRING 6LJW ...XFOND SMO 7 6LK4 ... LDN 5 0 6LK= ... LDN 6 ACOMMUNE1(2) 6LKD ... MOVE 5 3 6LKL ... OUTPARAM ACOMMUNE1(2),ACOMMUNE2 6LKS ... UP 6LL2 ...[ NO PROPERTY TO OUTPUT 6LL8 ...NPROP OUTNULL 6LLB ... UP 6LLJ ...) 6LLQ ...[ 6LLY ...[ ********************************************************************** 6LM6 ...[ CODE FOR THE MTSERSPD MACRO 6LM# ...[ ********************************************************************** 6LMG ...[ 6LMN ...QK5LIBP 6LMW ...#UNS JMODGCR 6LN4 ...( 6LN= ... LDX 7 ACOMMUNE1(2) 6LND ... HUNT 3,FLIB,FSPD 6LNL ... BNG 3 NEXST 6LNS ... LDX 0 A1(3) 6LP2 ... ANDN 0 GLIBTRA7+GLIBTRA9+GLIBPE+GLIBNRZI+GLIBGCR 6LP8 ... BNZ 0 UP 6LPB ...[ CONVERT THE PROPERTY FROM THE ENTRY IN :SYSTEM.SERIAL 6LPJ ...[ HELD IN X7 INTO AN SPD 6LPQ ...NEXST MBSXD 0,GSERBTRA7,GSERBPE,GSERBNRZI,GSERBGCR 6LPY ... ANDX 0 7 6LQ6 ... BZE 0 UP 6LQ# ... BPZ 3 XIST 6LQG ...[ NO FLIB/FSPD BLOCK EXISTS SO WE MUST CREATE ONE 6LQN ... SETNCORE 1,3,FLIB,FSPD 6LQW ... STOZ A1(3) 6LR4 ...XIST BSXD 0,GSERBTRA7 6LR= ... LDN 6 GLIBTRA7 6LRD ... CALL 5 XIST2 6LRL ... BSXD 0,GSERBPE 6LRS ... LDN 6 GLIBPE 6LS2 ... CALL 5 XIST2 6LS8 ... BSXD 0,GSERBNRZI 6LSB ... LDN 6 GLIBNRZI 6LSJ ... CALL 5 XIST2 6LSQ ... BSXD 0,GSERBGCR 6LSY ... LDN 6 GLIBGCR 6LT6 ... CALL 5 XIST2 6LT# ... GEOERR 1,SERSPD 6LTG ...[ 6LTN ...XIST2 ANDX 0 7 6LTW ... BZE 0 (5) 6LW4 ... ORS 6 A1(3) 6LW= ...UP UP 6LWD ...) 6LWL ...#UNS JMODGCR 6LWS ...#SKI 6LX2 ... GEOERR 1,LIBPROPS 6LXL MENDAREA 50,K99LIBPROPS 6MC= #END ^^^^ ...62473474000300000000