{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: DEAD867)}}
====== DEAD867 ======
(George Source)
**Macros used:** [[george:macro:BUDGINCR|BUDGINCR]], [[george:macro:BXE|BXE]], [[george:macro:BXU|BXU]], [[george:macro:CHAIN|CHAIN]], [[george:macro:CHECKOWNER|CHECKOWNER]], [[george:macro:CLOSBUDG|CLOSBUDG]], [[george:macro:CLOSETOP|CLOSETOP]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:CONSERNO|CONSERNO]], [[george:macro:DELETE|DELETE]], [[george:macro:DFCLEAR|DFCLEAR]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:ERRORX|ERRORX]], [[george:macro:FINDPEREC|FINDPEREC]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FREETAB|FREETAB]], [[george:macro:FSHENTRY|FSHENTRY]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNT2J|HUNT2J]], [[george:macro:JALLOC|JALLOC]], [[george:macro:LOGACCESS|LOGACCESS]], [[george:macro:LONGON|LONGON]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MTINFORM|MTINFORM]], [[george:macro:NAMETOP|NAMETOP]], [[george:macro:OPENBUDO|OPENBUDO]], [[george:macro:OPENDIR|OPENDIR]], [[george:macro:OPENSYS|OPENSYS]], [[george:macro:OUTPARAM|OUTPARAM]], [[george:macro:READAGAIN|READAGAIN]], [[george:macro:REWIND|REWIND]], [[george:macro:REWRITE|REWRITE]], [[george:macro:SDSEARCH|SDSEARCH]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETALLOC|SETALLOC]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SETUPTAB|SETUPTAB]], [[george:macro:SPARANOX|SPARANOX]], [[george:macro:SSEARCH|SSEARCH]], [[george:macro:STEP|STEP]], [[george:macro:STEPAGAIN|STEPAGAIN]], [[george:macro:STEPWRITE|STEPWRITE]], [[george:macro:TABSET|TABSET]], [[george:macro:TABULATE|TABULATE]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TRACE|TRACE]], [[george:macro:TSININC|TSININC]], [[george:macro:UNLOAD|UNLOAD]]
22FL #OPT K0DEAD=K0LIBRARY>K0ALLGEO>K0GREATGEO
22^= #LIS K0DEAD
23DW SEG DEAD,1,N.R.BOULT,LIBRARY
23L4 ...[
23R= ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23YG #
24D6 SEGENTRY K1DEAD,QK1DEAD
24XQ SEGENTRY K2DEAD,QK2DEAD
25CB SEGENTRY K3DEAD,QK3DEAD
25X2 #
26BL FSHENTRY K4DEAD,QK4DEAD,QK4DEAD,QK4DEAD
26W= FSHENTRY K5DEAD,QK5DEAD,QK5DEAD,QK5DEAD
27*W FSHENTRY K7DEAD,QK7DEAD,QK7DEAD,QK7DEAD
27TG #
28*6 # ENTRY FOR UNANTICIPATED CLOSEDOWN
28SQ #
29#B FSHENTRY K8DEAD,QK8DEAD,,QK8DEAD
29S2 #
2=?L # THE DEAD SEGMENT ELIMINATES FROM THE SYSTEM TAPES
2=R= # WHOSE SERIAL NUMBERS ARE HELD IN AN AONBS/GLIST BLOCK
2?=W ZNOTOWN +ERNOTOWN
2?QG ZNOTKNOW +ERUNKNOWN
2#=6 ZQUERY +ERQUERY
2#PQ ZNOTPW +ERNOTPW
2*9B ZUDUMP +HDINUSE
2*P2 ZNOTRAP +ERNOTRAP
2C7W ZG3PT +ERG3PT
2CMG NDUMPER 12HDUMPER
2D76 NPROCTP 12HGEO3PROCTAPE
2F6B NLANG 4HC1
2FL2 #
2LG= #
2L^W #
2MFG QK1DEAD
2QC= OPENSYS YBRKIN,DOCUMENT,GENERAL
2QWW OPENSYS XBRKIN,SERIAL,GENERAL
2RBG MHUNT 1,AONBS,GLIST
2RW6 STOZ AWORK2(2)
2S*Q LDN 0 1
2STB STO 0 AWORK3(2)
2T*2 TSERLOOP
2TSL LDX 0 ALOGLEN(1)
2W#= LDX 6 AWORK2(2)
2WRW TSER1
2X?G ADN 6 1
2XR6 BXE 6 0,TEND [BRANCH IF END OF GLIST
2Y=Q SMO 6
2YQB LDX 7 A1(1)
2^=2 BZE 7 TSER1
2^PL STO 6 AWORK2(2)
329= LDX 0 CONTEXT(2)
32NW ANDN 0 1
338G BZE 0 TSER3 [IF COMMAND IN USER CONTEXT
33N6 LDX 3 A1(1) [THE APPROPIATE ADJUNCTS BLOCK
347Q LDX 1 2 [MUST BE CHAINED NEXT TO CPAT
34MB TSER2
3572 HUNT2J 1,FILE,ADJUNCTS,,XADJ
35LL BCT 3 TSER2
366= CHAIN 1,2
36KW TSER3
375G SSEARCH NOTKNOWN,7
37K6 STO 7 AWORK1(2)
384Q LDX 0 5(3)
38JB SLL 0 2
3942 BNG 0 NOTKNOWN [BRANCH IF 'TO BE DEADED'
39HL SLL 0 4
3=3= BNG 0 QUERY [BRANCH IF TAPE AT QUERY STATUS
3=GW LDX 0 CONTEXT(2)
3?2G ANDN 0 1
3?G6 BNZ 0 USER [BRANCH IF USER CONTEXT
3?^Q LDX 0 2(3)
3#FB BZE 0 TDEL
3#^2 LDCT 0 #200
3*DL ANDX 0 5(3)
3*Y= BZE 0 NOTPW [BRANCH IF NOT A USED WORKTAPE
3BCW BRN USED1
3BXG TDEL
3CC6 DELETE [DELETE ENTRY FOR THIS TAPE
3CWQ LDX 7 AWORK1(2) [TSN
3GSG FINDPEREC 3,APTSER,7 [FIND PERIPHERAL LIST ENTRY
3QLG BNG 3 NXT
3S5B DFCLEAR 3,POOL
3SK2 DFCLEAR 3,WORK
3W3W LDX 4 3 [SDSEARCH USES X3
3WHG LDN 5 0 [:SYSTEM.DOCUMENT IS OPEN
3X36 LDX 0 AWORK3(2) [AT LEVEL 2 IF :SYSTEM.INCINDEX
3XGQ BNZ 0 SDOC [HAS BEEN OPENED HERE -
3Y2B ADN 5 1 [OTHERWISE AT LEVEL 1
3Y^L SDSEARCH USD1,TSN,7,2
42DG BRN SDFND
42Y6 SDOC
43XB SDSEARCH USD1,TSN,7,1
45B= SDFND
45TW LDX 1 5
46*G READAGAIN 1(1)
46T6 MHUNT 3,FILE,FRB
47#Q LDCT 0 #200
47SB ORS 0 A1+21(3) [SET INSECURE BIT
48#2 NAMETOP 3,FILE,FWB
4?9Q LDX 1 5
4?PB REWRITE 1(1)
4#NL MFREE FILE,FWB
4*8= USD1
4*MW REWIND 1
4GJ6 JALLOC 4,NXT [J IF DECK ALLOCATED
4H3Q SETALLOC 4 [ALLOCATE DECK
4HHB UNLOAD 4,,,AUT,UNL [AND UNLOAD IT
4J32 NXT
4LF6 MHUNT 1,AONBS,GLIST
4LYQ LDX 2 FX2
4MDB SMO AWORK2(2)
4MY2 STOZ A1(1) [TAPE DEALT WITH
4NCL LDN 0 1
4NX= SBS 0 A1(1)
4PBW BRN TSERLOOP
4PWG # TAPE IS BEING DEADED FROM DIRECTORY
4QB6 USER
4QTQ LDX 4 2(3) [USER NAME
4R*B LDX 5 3(3)
4RT2 LDX 6 4(3)
4S#L LDX 7 5(3) [ODD BITS
4SS= #SKI K6DEAD>199-199
4T?W TRACE 5(3),DEADSS
4TRG BZE 4 NOTOWN [BRANCH IF POOL OR WORK TAPE
4W?6 BNG 7 NOTOWN [BRANCH IF TAPE MARKED TO BE RETURNED
4WQQ SLL 7 1
4X=B BNG 7 NOTOWN [BRANCH IF USED WORK TAPE
4Y9L TXU 4 CPREFIX(2)
4YP= TXU 5 CPREFIX+1(2)
4^8W TXU 6 CPREFIX+2(2)
4^NG BCC USER1 [BRANCH IF TAPE IN PROPER USERS DIR
5286 SETNCORE 4,3,FILE,FABSNB
52MQ LDN 1 4
537B STO 1 A1(3)
53M2 LDN 2 A1+1(3)
546L MOVE 1 3 [MOVE USER NAME TO FILE/FABSNB
54L= CHECKOWNER
555W TESTREPN OK,NOTOWN
5656 USER1 [UPDATE SPACEMT BUDGET
56JQ USER3
574B CALL 7 OPDIR
57J2 MHUNT 1,FILE,ENT
583L LDX 0 EINCLOOK(1)
58H= BNG 0 UDUMP [BRANCH IF DUMP TAPE IN USE
592W LDX 3 FX1
59GG TXU 4 NDUMPER(3) [CHECK USERNAME
5=26 TXU 5 NDUMPER+1(3) [FOR :DUMPER
5=FQ TXU 6 NDUMPER+2(3)
5=^B BCS PROCOK
5?F2 LDX 0 ELOC1(1)
5?YL BXU 0 NPROCTP(3),PROCOK [CHECK LOCAL NAME
5#D= LDX 0 ELOC2(1) [FOR GEO3PROCTAPE
5#XW BXU 0 NPROCTP+1(3),PROCOK
5*CG LDX 0 ELOC3(1)
5*X6 BXU 0 NPROCTP+2(3),PROCOK
5BBQ LDX 0 AWORK3(2)
5BWB BZE 0 PROC4 [J IF INCINDEX OPENED OK
5CB2 BNG 0 PROC1 [J IF CLUDGE REPLY
5CTL # OPEN :SYSTEM.INCINDEX
5D*= CLOSETOP [DIRECTORY
5DSW CLOSETOP [:SYSTEM.SERIAL
5F#G OPENSYS XBRKERR,INCINDEX,READ,QUERY
5FS6 TESTREP OK,PROC3
5G?Q TESTREPN CLUDGE,XINCERR
5GRB NGN 0 1 [SET CLUDGE REPLY MARKER
5H?2 STO 0 AWORK3(2)
5HQL OPENSYS XBRKERR,SERIAL,GENERAL
5J== BRN PROC2
5JPW PROC1
5K9G CLOSETOP
5KP6 PROC2
5L8Q LDX 4 ZG3PT(1) [SET ID FOR CLUDGE ERROR MSG
5LNB BRN NOT
5M82 PROC3
5MML STOZ AWORK3(2) [SET INCINDEX OPENED OK MARKER
5N7= OPENSYS XBRKERR,SERIAL,GENERAL
5NLW LDN 0 1 [STEP BACK POINTER TO
5P6G SBS 0 AWORK2(2) [AONBS/GLIST BY 1
5PL6 MHUNT 1,AONBS,GLIST
5Q5Q BRN TSERLOOP
5QKB PROC4
5R52 LDX 7 AWORK1(2)
5RJL TSININC UDUMP,7,2 [CHECK FOR TSN IN INCINDEX
5S4= PROCOK
5SHW SETUPTAB
5T3G TABSET [REMEMBER POSITION IN DIR
5TH6 CHECKTRAPS
5W2Q LDN 0 CERASET
5WGB ANDX 0 ACOMMUNE7(2)
5X22 BZE 0 XNERT
5XFL TABULATE [GET BACK TO OLD PLACE IN DIR
5X^= FREETAB
5YDW MFREE FILE,FABSNB
5YYG SETNCORE 4,3,FILE,FABSNB [SET UP A FABSNB TO HOLD
5^D6 LDN 1 4 [THE USERNAME OF THE OWNER
5^XQ STO 1 A1(3) [OF THE ENTRANT
62CB LDN 2 A1+1(3) [TO UPDATE THE BUDGET
62X2 MOVE 1 3
63BL OPENBUDO XBUD
63W= NGN 3 1
64*W BUDGINCR GSPACEMT,3
64TG CLOSBUDG
65*6 LOGACCESS 5
65SQ STEPAGAIN 1
66#B LDX 0 5(3)
66S2 ANDN 0 #7777 [EXTRACT COUNT OF REQUESTERS
67?L BNZ 0 USED [BRANCH IF TAPE IN USE
67R= MHUNT 1,FILE,ENT
68=W LDX 4 ENUSE(1) [NUMBER OF TRAP RECORDS
68QG LDX 5 ELOC1(1)
69=6 #SKI K6DEAD>299-299
69PQ TRACE 4,DEADTRAP
6=9B FREECORE 1
6=P2 BZE 4 USER4B [J IF NO TRAP RECORDS
6?8L LDX 7 4
6?N= USER4
6#7W STEP
6#MG BCT 7 USER4
6*76 USER4B
6*LQ ADN 4 1
6B6B USER4A
6BL2 DELETE
6C5L BCT 4 USER4A
6CK= USER5
6D4W CLOSETOP
6JFG LONGON #12,5
6Q*2 CALL 5 MONDEAD [OUTPUT OPERATOR MESSAGE
6QSL MFREEW FILE,ADJUNCTS
6R#= BRN TDEL
6RRW USED
6S?G MFREEW FILE,ADJUNCTS
6SR6 MHUNT 3,FILE,ENT
6T=Q LDCT 0 #40
6TQB ORS 0 EINF2(3) [MARK DIR. ENTRY 'TO BE ERASED'
6W=2 #SKI K6DEAD>199-199
6WPL TRACE EINF2(3),DEDEINF
6X9= NAMETOP 3,FILE,FWB
6XNW REWRITE [REWRITE DIR. ENTRY
6Y8G CLOSETOP
6YN6 STEPAGAIN
6^7Q USED1
6^MB STEPWRITE
7272 LDCT 0 #100
72LL ORS 0 5(3) [MARK TAPE 'TO BE DEADED'
736= BRN NXT
73KW XBUD GEOERR 1,NOUSERDD
745G XADJ GEOERR 1,NOADJDD
74K6 # SET UP A FILE/FABSNB BLOCK. USER NAME IN X4,5,6 AND TSN IN AWORK2
754Q OPDIR
75JB SBX 7 FX1
7642 SETNCORE 12,2,FILE,FABSNB
76HL LDN 0 10
773= STO 0 A1(2)
77GW LDN 0 #2001
782G DSA 0 ATYPE(2)
78G6 SMO FX2
78^Q LDX 0 AWORK1 [TSN
79FB STO 0 A1+11(2)
79^2 NGN 0 1
7=DL STO 0 A1+10(2)
7=Y= LDN 1 4
7?CW ADN 2 A1+1
7?XG MOVE 1 3
7#C6 LDN 1 3(2)
7#WQ LDN 2 4(2)
7*BB STOZ 0(1)
7*W2 MOVE 1 5
7B*L OPENDIR XBRKERR,GENERAL [OPEN TAPES DIRECTORY
7BT= TESTREP OK,OPD1
7C#W GEOERR 1,DEADREP
7CSG OPD1
7D#6 ADX 7 FX1
7DRQ EXIT 7 0
7F?B TEND
7FR2 LDX 0 AWORK3(2)
7G=L BNZ 0 TEND1
7GQ= CLOSETOP
7H9W TEND1
7HPG CLOSETOP
7J96 CLOSETOP
7JNQ ENDCOM
7K8B XNERT
7KN2 CLOSETOP
7L7L LDX 4 ZNOTRAP(1)
7LM= BRN NOT
7M6W UDUMP
7MLG CLOSETOP
7N66 LDX 4 ZUDUMP(1)
7NKQ BRN NOT
7P5B NOTPW
7PK2 SMO FX1
7Q4L LDX 4 ZNOTPW
7QJ= BRN NOT
7R3W NOTOWN
7RHG SMO FX1
7S36 LDX 4 ZNOTOWN
7SGQ BRN NOT
7T2B NOTKNOWN
7TG2 SMO FX1
7T^L LDX 4 ZNOTKNOW
7WF= BRN NOT
7WYW QUERY
7XDG SMO FX1
7XY6 LDX 4 ZQUERY
7YCQ NOT
7YXB SMO FX2
7^C2 LDX 5 AWORK2
7^WL SPARANOX 5
82B= ERRORX 4
82TW LDX 0 CONTEXT(2)
83*G ANDN 0 1 [FREE ADJUNCTS IF USER CONTEXT
83T6 BZE 0 NOTUS
84#Q MFREEW FILE,ADJUNCTS
84SB NOTUS
85#2 MFREE CPB,CUNI
85RL BRN NXT
86?= QK2DEAD
86QW [ MOVED TO DEADA FOR REASONS OF SPACE
87=G QK3DEAD
87Q6 [ MOVED TO DEADA FOR REASONS OF SPACE
889Q GEOERR 1,NOTDEAD
88PB XINCERR
8992 GEOERR 1,DDNOINC
89B8 ...XBRKERR
89HB ... GEOERR 1,DEADBRK
89NL ZBRKIN
8=8= CLOSETOP
8=MW XBRKIN
8?7G CLOSETOP
8?M6 YBRKIN
8#6Q COMBRKIN
8#LB MONDEAD
8*62 SBX 5 FX1
8*KL LDX 2 FX2
8B5= LDX 7 AWORK1(2)
8BJW CONSERNO 7,ACOMMUNE1
8C4G OUTPARAM ACOMMUNE1(2),ACOMMUNE2
8CJ6 MTINFORM GDEAD
8D3Q ADX 5 FX1
8DHB EXIT 5 0
8F32 #
8FGL # ENTRY POINTS TO CHECK 'OTHER MACHINE IN SHARED FILESTORE ENVIR.
8G2= #
8XMQ MENDAREA 50,K99DEAD
8Y7B #END
^^^^ ...626703140002