{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: XATTACH861)}}
====== XATTACH861 ======
(George Source)
**Macros used:** [[george:macro:BXE|BXE]], [[george:macro:BXGE|BXGE]], [[george:macro:BXL|BXL]], [[george:macro:CLOSE|CLOSE]], [[george:macro:ERROR|ERROR]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNT2|HUNT2]], [[george:macro:HUNT2J|HUNT2J]], [[george:macro:HUNTW|HUNTW]], [[george:macro:IDFOPEN|IDFOPEN]], [[george:macro:IDFWRITE|IDFWRITE]], [[george:macro:IPBATTACH|IPBATTACH]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREEALL|MFREEALL]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MNAME|MNAME]], [[george:macro:MSEARCH|MSEARCH]], [[george:macro:MXB|MXB]], [[george:macro:NAME|NAME]], [[george:macro:NEW|NEW]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SIX|SIX]], [[george:macro:TRACE|TRACE]], [[george:macro:UP|UP]], [[george:macro:UPPLUS|UPPLUS]]
22FL #SEG XATTACH [PHILIP TURNER.
22^= #OPT K0XATTACH=0
23DW #LIS K0XATTACH>K0ALLGEO>K0GREATGEO>K0COMMAND
23YG 8HXATTACH
24D6 #
24XQ #
25CB #
25X2 SEGENTRY K1XATTACH,X1XATTACH [ATTACH MACRO.
26BL #
26W= SEGENTRY K20XATTACH,X20XATTACH [DETACH MACRO.
27*W #
27TG SEGENTRY K21XATTACH,X21XATTACH [CONOWNNAME MACRO.
28*6 #
28SQ #
29#B #
29S2 SIX +6
2=?L RIDICON +CONDCBLEN
2=R= [
2?=W [
2?QG [
2#=6 ZOPEN SBX 7 FX1
2#*= ...#UNS IDFMARK8
2#DB ... IDFOPEN ZZBRKIN
2#HG ...#UNS IDFMARK8
2#LL ...#SKI
2#PQ IDFOPEN BREAKIN
2*9B ADX 7 FX1
2*P2 EXIT 7 0
2B8L [
2BN= [SEARCH FOR UNIT/LINE
2C7W SEARCH
2CMG SBX 7 FX1
2D76 MSEARCH 2,3,4 [SEARCH FOR UNIT/LINE
2DLQ SMO FX2
2F6B LDX 0 ACOMMUNE1
2FL2 BNZ 0 S2
2G5L GEOERR 1,NOUNIT [ILLEGAL UNIT/LINE
2GK= S2
2H4W ADX 7 FX1
2HJG EXIT 7 0
2J46 [
2JHQ YREC LDX 3 7(2) [POINTER TO THE NEXT CELL
2K3B BZE 3 R300 [NO MORE LINES
2KH2 SMO FX2 [REL.POINTER TO OLD CELL
2L2L LDX 0 AWORK3
2LG= ANDN 0 #7777
2L^W SBX 2 0 [POINTER TO THE BEGINNING OF THE RECO
2MFG YREC1 BPZ 3 Y20 [SAME RECORD
2M^6 LDX 0 3
2NDQ SRL 0 9
2NYB ANDN 0 #777
2PD2 LDX 2 FX2
2PXL STO 0 ACOMMUNE3(2) [RECORD NO
2QC= SBX 7 FX1
2QWW MXB 2
2RBG ADX 7 FX1
2RW6 Y20
2S*Q ANDN 3 #777
2STB ADX 2 3 [ABS.POINTER TO THE NEXT CELL
2T*2 SMO FX2
2TSL DSA 3 AWORK3 [STORE REL POINTER TO THE NEXT CELL
2W#= EXIT 7 0
2WRW [
2X?G XCLOSE
2XR6 SBX 7 FX1
2Y=Q MFREEALL FILE,FRRB
2YQB CLOSE
2^=2 ADX 7 FX1
2^PL EXIT 7 0
2^RJ ...[
2^TG ...[
2^XD ...ZONLR LDX 2 FX2
2^^B ... LDCT 0 2
323# ... ORS 0 EXT+11(2)
325= ... ERS 0 EXT+11(2)
3278 ... EXIT 7 0
329= [
32NW [
338G X1XATTACH
33N6 SETNCORE 7,2,GOUT,COMP
347Q CALL 7 ZOPEN
34MB SMO FX2
3572 STOZ ACOMMUNE1 [SEARCH FOR AND EVALUATE FIRST CPB
35LL [CUNI BLOCK OR IDF COINF BLOCK
35X6 ... LDN 3 0
367L ... MNAME 2,3 [FIND CONCEP - NO ERROR IF WRONG TYPE
36D6 ... SMO FX2
36NL ... LDX 0 ACOMMUNE1
36^6 ... BZE 0 NOTEX [J IF CONCEP NOT FOUND
379L ...[ NOW CHECK TYPE - WE DONT LET MNAME..
37G6 ...[ ...DO IT AS IT WOULD NOT COME BACK
37QL ...[ ...IF TYPE WAS WRONG
3836 ... LDCT 0 #200
38?L ... SMO FX2
38J6 ... ANDX 0 AWORK3
38SL ... BNZ 0 PIPB [J IF IPB
3956 ... LDCT 0 #400
39*L ...PIPB LDX 6 0
39L6 ... SMO 2
39WL ... ANDX 0 6(3)
3=76 ... BZE 0 RTYPE [J IF SUITABLE TYPE
3=CL ... MHUNTW 2,IDF,COINF
3=N6 ... NAME 2,CPB,CUNI
3=YL ... ERROR JPARPER
3?96 ...NOTEX
3?G6 CALL 7 XCLOSE
3?^Q #
3#FB #
3#^2 UPPLUS 1 [CONCEPT NAME DOES NOT EXIST
3*DL [
3*LW ...RTYPE ERX 6 CACT
3*T6 ... SMO 2
3B3B ... ORS 6 6(3) [SET CONCEP TYPE
3B9L ... SMO 2
3BCW LDXC 6 4(3)
3BF7 ... BCS XZOL
3BGD ... SEGENTRY K61XATTACH
3BHP ... BRN X10
3BK2 ...[
3BL? ...[
3BMJ ...[
3BNT ...[
3BQ6 ...[
3BRC ... SMO FX2
3BSN ... LDX 0 AWORK3
3BT^ ... SLL 0 1
3BX= ... BPZ 0 X10
3BXW ... LDN 0 #10
3BYH ... SMO FX2
3B^S ... ANDX 0 CONTEXT
3C35 ... BZE 0 X10
3C4B ... CALL 7 XCLOSE
3C5M ... UPPLUS 7
3C6Y ...[
3C89 ...[
3C9G ...[
3C=R ...[
3C#4 ...[
3C** ...XZOL
3CC6 LDCT 0 2 [SET B 7 IN X+11 IN CPAT WHICH
3CWQ SMO FX2 [MEANS CONCEPTUAL ONLINE
3DBB ORS 0 EXT+11
3DW2 X10 LDX 0 BRECNO(2)
3F*L SMO FX2
3FT= STO 0 AWORK1 [CONCEPTUAL RECNO
3G#W SMO FX2
3GSG STO 3 AWORK2 [CONCEPTUAL POINTER
3H#6 [CHECK INITIALLY THAT SPECIFIED LINES ARE AVAILABLE IN CONCEPTUAL
3HRQ [
3J?B SMO 2
3JR2 SBX 6 5(3) [LINES USED
3K=L BZE 6 R300 [NONE AVAILABLE
3KQ= SMO 2
3L9W ADX 6 5(3) [SIZE OF THE CONCEPTUAL
3LPG SMO 2
3M96 LDX 5 6(3) [LOWEST LINE IDENTIFIER NO
3MNQ ANDN 5 #7777
3N8B ADX 2 3 [CREATE ABS POINTER
3NN2 SMO FX2
3P7L DSA 3 AWORK3 [STORE REL.POINTER TO A CELL
3PM= ORX 5 GSIGN
3Q6W BRN R50
3QLG RY50 ERX 5 GSIGN [UNSET MARKER
3R66 R50 CALL 7 YREC [POINTER TO NEXT CELL
3RKQ BNG 5 RY50
3S5B #
3SK2 # AWORK3 CONTAINS REL.POINTER TO THE 1ST SUBSIDIARY CONCEPTUAL CELL
3T4L # X2 CONTAINS ABS.POINTER TO CONC.CELL WHITHIN REC(OLD OR NEW)
3TJ= # X3 CONTAINS THE SAME AS AWORK3
3W3W # AWORK1 - REC.NO OF REC WHERE IS THE 1ST CONCEP CELL
3WHG # AWORK2 - REL POINTER TO 1ST CONC.CELL WHITHIN THAT RECORD
3X36 # X6 SIZE OF THE CONCEPTUAL
3XGQ # X5-LOWEST LINE/IDENTIFIER NO
3Y2B #
3YG2 MHUNTW 1,IDF,CONCEP [DATA BLOCK
3Y^L LDX 0 A1+2(1) [THIS APPLIES FOR SEE BELOW(IF NEG)
3^F= BPZ 0 VW1 [ONE HAS TO ADD 1 TO THE LOWEST IDE
3^YW LDN 0 1 [NO FOR EACH PASS
42DG ADS 0 A1+1(1)
42Y6 VW1 LDX 4 A1+1(1)
43CQ BNZ 4 SPLSP [J IF PARTICULAR LINE SPECIFIED
43XB LDN 0 1 [THIS CODE ONLY APPLIES TO FIRST PASS
44C2 NGS 0 A1+2(1) [ WHEN NO SPECIAL LINES SPECIFIED.
44WL LDX 4 5 [STORE THE LOWEST IDE NO IN A1+1
45B= STO 4 A1+1(1) [OF THE CONCEPT BLOCK AND NEGATE A1+2
45TW SPLSP SMO FX2
46*G STOZ AWORK4 [INITIALISE AWRK4
46T6 LDX 0 6
47#Q SLL 0 12
47SB ORX 5 0 [X5:B0-B11 CON.SIZE,B12-B23 LOW.L/I N
48#2 LDX 6 4 [ANALYSED IDE.NO
48RL RPLYS LDX 0 5 [LOWEST L/I NO.
49?= ANDN 0 #7777
49QW SBX 4 0 [IS THE ANALYSED L/I NO.