{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: RETRIEVE864)}}
====== RETRIEVE864 ======
(George Source)
**Macros used:** [[george:macro:ANSOK|ANSOK]], [[george:macro:BBS|BBS]], [[george:macro:BBUS|BBUS]], [[george:macro:BRUSEN|BRUSEN]], [[george:macro:BXE|BXE]], [[george:macro:CHEKPRIV|CHEKPRIV]], [[george:macro:CLOSETOP|CLOSETOP]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:DOWN|DOWN]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:ERRORX|ERRORX]], [[george:macro:FNORM|FNORM]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:FSHSKIP|FSHSKIP]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNT|HUNT]], [[george:macro:KEEPREP|KEEPREP]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MONOUTX|MONOUTX]], [[george:macro:NAME|NAME]], [[george:macro:NAMETOP|NAMETOP]], [[george:macro:OPENDIR|OPENDIR]], [[george:macro:OUTMESS|OUTMESS]], [[george:macro:OUTPARAM|OUTPARAM]], [[george:macro:PUTREP2|PUTREP2]], [[george:macro:REPERR|REPERR]], [[george:macro:REWRITE|REWRITE]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SPARAPAS|SPARAPAS]], [[george:macro:STF|STF]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TESTREP2|TESTREP2]], [[george:macro:TRANCHKN|TRANCHKN]], [[george:macro:TRANSBEG|TRANSBEG]], [[george:macro:TRANSFIN|TRANSFIN]], [[george:macro:TREPN|TREPN]], [[george:macro:UNIFREE|UNIFREE]], [[george:macro:UNNORM|UNNORM]], [[george:macro:UP|UP]], [[george:macro:USEROPEN|USEROPEN]], [[george:macro:VFREE|VFREE]]
22FL ... SEG RETRIEVE,84,C.R.JOHNSON,SCHEDULER
22^= [
23DW [ THIS SEGMENT IMPLEMENTS THE "RETRIEVE" COMMAND FOR AUTONOMOUSLY
23YG [ RESTORING FILES
24D6 [
24XQ [ ENTRY 1 IS FROM THE COMMAND PROCESSOR
25CB [ READS A PARAMETER - ANALYSES IT FOR MISSING,NULL,CONTEXT
25X2 [ TSN AND !. AFTER USEROPEN INC NUMBER CHECKED - IF NOT ZERO AND
26BL [ FILE NOT ONLINE, GO DOWN TO SCHEDENX,2
26W= [ ON RETURN - CHECK REPLY THEN GO TO READ NEXT PARAMETER
27*W [
27TG [ ENTRY 2 FROM RV MACRO -FABSNB SUPPLIED
28*6 [
28SQ [ ENTRY 3 DIRECTORY ALREADY OPEN - SETS UP AN AUTONOMOUS
29#B [ RETRIEVE REQUEST
29S2 [
2=?L SEGENTRY K1RETRIEVE,X1RETRIEVE
2=R= SEGENTRY K2RETRIEVE,X2RETRIEVE
2?=W SEGENTRY K3RETRIEVE,X3RETRIEVE
2?QG SEGENTRY K5RETRIEVE,X5RETRIEVE
2#=6 [
2#PQ [
2*9B [
2*P2 [ MONITORING FILE MESSAGES
2B8L [
2BN= [ MON2 SHOULD BE COMPILED ONE WORD BEFORE +HALRON
2C7W MON2 +ALRONL
2CMG +HALRON [FILES ALREADY ONLINE: %A %B
2D76 XJNOPAR +JNOPAR
2D## ... FSHSKIP B
2DFG ...(
2DLQ XAMISS +AMISS
2F6B XJFENT +JFENTRANT
2FL2 XERLOST +ERLOST
2G5L XERENT +ERENTTYPE
2GK= XJLOC +JLOCNA
2H4W XJUSE +JUSNA
2HJG XERTEMP +ERTEMPLOST
2HKK ...XGENERR +GENERR [ERROR %B %%%A : %C
2HLN ...XALQUAL +ALQUAL [AN ILLEGAL QUALIFIER HAS BEEN GIVEN
2HMR ...XERB4 +ERB4 [YOU DO NOT HAVE %C PRIVILEGE
2HNW ...XERHLS +ERHLS [HLSEXT
2HP^ ...XERNUSER +ERNUSER [THIS QUALIFIER NOT ALLOWED IN NO USE
2HR4 ...XHLSEXT 8HHLSEXT [USED BY CHECKPRIV
2HRN ...)
2HS# ...SLSGMT #177777 [MASK FOR L.S. 16 BITS OF GMTNOW
2J46 ONERR SBX 7 FX1
2JHQ SMO FX1
2K3B LDX 1 0(1)
2KH2 ERRORX 1
2L2L ADX 7 FX1
2LG= EXIT 7 0
2LL7 ...#
2LQ4 ... FSHSKIP B
2LT^ ...(
2L^W TWOERR
2MFG SMO FX1
2M^6 LDX 1 0(1)
2NDQ SMO FX1
2NYB LDX 2 0(2)
2PD2 ERRORX 1,2
2PXL BRN X1
2PY# ...)
2P^3 ...[
2Q2D ...SGMTNOW [ROUTINE TO SET L.S. 16 BITS OF GMTNOW IN
2Q3T ... [FIELD FEGMTRV OF FILE ENT BLOCK
2Q4H ... [AND TO UPDATE THE NAME RECORD
2Q4W ... SBX 6 FX1
2Q5= ... MHUNTW 3,FILE,ENT
2Q6M ... LDX 5 GMTNOW
2Q76 ... SMO FX1
2Q7K ... ANDX 5 SLSGMT
2Q99 ... BNZ 5 SFNZ
2Q=W ... LDN 5 1
2Q?P ...SFNZ STF 3,FEGMTRV,5 [IF FIELD =0 SET IT =1
2Q#J ... NAME 3,FILE,FWB
2Q#T ... REWRITE [UPDATE NAME RECORD
2Q*6 ... MHUNTW 3,FILE,FWB
2Q*C ... NAME 3,FILE,ENT
2Q*T ... ADX 6 FX1
2QB# ... EXIT 6 0
2QC= [
2QWW [ ENTRY FROM COMMAND PROCESSOR WITH PARAMETER LIST
2RBG [
2RW6 [ AWORK1 ZERO IF NO PARAMS READ YET,NON-ZERO OTHERWISE
2S*Q [ AWORK2 CONTAINS NO.OF FILES IN RV WHICH ARE ONLINE
2STB [ AWORK3 CONTAINS LINK FOR RVAUT S.R.
2T*2 [ AWORK4 IS NEGATIVE IF THE CURRENT PARAM IS A MULTIFILE
2TSL X1RETRIEVE
2TW* ... FSHCODE B,XFSHBTRAN
2TY4 ...(
2T^R ...# ALL RETRIEVES TO BE CARRIED OUT ON MACHINE A
2W3G ... TRANSBEG FSHRETRIEVE,RETRIEVE,1,CLB,,ACOMMUNE1
2W59 ...XFSHBTRAN
2W6Y ...)
2W8M ... FSHSKIP B,XFSHNB1
2W=B ...(
2W#= STOZ AWORK1(2)
2WRW STOZ AWORK2(2)
2X?G X1
2XR6 UNIFREE
2Y2Y ... VFREE FILE,ADJUNCTS [JUST IN CASE
2Y6T ... VFREE FI,FONCE [DITTO
2Y=Q SPARAPAS [FETCH NEXT PARAMETER
2YQB STOZ AWORK4(2)
2^=2 MHUNT 3,CPB,CUNI
2^PL LDX 0 ANUM(3)
329= BPZ 0 PEXISTS [J IF PARAM EXISTS
32=^ ...XFSHNB1
32#N ...)
32BC ... FSHCODE A,XFSHATRAN
32D6 ...(
32FT ... TRANCHKN FSHRETRIEVE,EQUAL,XFSHATRAN,XFSHATRAN [J IF NOT FROM B
32HJ ... TRANSFIN [RETURN TO MACHINE B
32K? ...XFSHATRAN
32M2 ...)
32NW [
338G [ PARAMETER NON-EXISTENT
33N6 [
347Q LDX 0 AWORK1(2) [ZERO IF THERE HAVE BEEN NO PARAMS YE
34MB BZE 0 NOTHERS [J IF NO OTHERS
3572 LDX 6 AWORK2(2)
35LL BZE 6 UP [J IF ALL OFFLINE
366= [
36KW [ DECIDE WHICH MONOUT- %A IS ALREADY ONLINE
375G [ OR- FILES ALREADY ONLINE: %A %B %C %D
37K6 [ AND DO IT
384Q [
38JB SBN 6 1
3942 BZE 6 SINGMESS [J IF ONLY ONE PARAM
39HL LDN 6 1
3=3= SINGMESS
3=GW [
3?2G [ OUTPUT PARAMETERS
3?G6 [
3?^Q MHUNTW 3,FILE,FINTER
3#FB BNG 3 OUTMESS
3#^2 OUTPARAM A1(3),CPDATA,FILE,FINTER [REALLY AN ADATA/CREADL
3*DL MFREEW FILE,FINTER
3*Y= BRN SINGMESS
3BCW OUTMESS
3BXG SMO 6
3CC6 LDX 7 MON2(1) [ALRONL OR HALRON
3CWQ MONOUTX 7
3DBB BRN UP
3DW2 [
3F*L [ THERE WERE NO PARAMS TO THE COMMAND
3FT= [
3G#W NOTHERS
3GSG LDN 1 XJNOPAR
3H#6 CALL 7 ONERR [PARAMETER MISSING
3HRQ UP
3J?B ENDCOM [AND RETURN TO COMMAND PROCESSOR
3JC? ...#
3JH8 ... FSHSKIP B
3JM5 ...(
3JR2 PEXISTS
3K=L LDN 1 1
3KQ= STO 1 AWORK1(2) [SET'PARAM READ' IN AWORK1
3L9W BNZ 0 NORM [J IF PARAM NOT NULL
3LPG [
3M96 [ NULL PARAM READ
3MNQ [
3N8B LDN 1 XAMISS
3NN2 LDN 2 XJFENT
3P7L BRN TWOERR [ENTRANT DESCRIPTION MISSING
3PM= NORM
3Q6W [
3QLG [ WE FIRST MUST DO SOME WORK FOR FNORM-IT WONT COPE WITH A RELATIVE
3R66 [ NAME IN NO USER CONTEXT
3RKQ [
3S5B [ X3 POINTS TO CPB/CUNI
3SK2 [
3T4L LDCH 0 APARA(3) [LOAD FIRST CHAR
3TJ= SBN 0 #12
3W3W BZE 0 PRESCOL [J IF COLON PRESENT
3WHG BBUS 23,CONTEXT(2),XLOCAL [J IF RELATIVE IN NO USER CONTEXT
3X36 [
3XGQ [ EITHER COLON OR IN USER CONTEXT
3Y2B [
3YG2 PRESCOL
3Y^L NAMETOP 3,FILE,FNAME
3^9D ... FNORM 3 [CONVERT PARAMETER TO FILE/FABSNB
3^H8 ...NXTTRAP [
3^K6 ... VFREE FILE,FTRAP [FREE FTRAP IF PRESENT
3^M4 ... BPZ 1 NXTTRAP [ANY MORE FTRAP BLOCKS?
3^P2 ... HUNT 3,FILE,ADJUNCTS [ADJUNCTS PRESENT?
3^QY ... BNG 3 NOADJUNCTS [J IF NOT PRESENT
3^SW ... NAME 3,FI,FONCE [HIDE ADJUNCTS DURING USEROPEN!!!
3^WS ...NOADJUNCTS [
3^YW MHUNT 3,FILE,FNAME
42DG NAMETOP 3,CPB,CUNI
42Y6 TESTREP2 NAMEFORM,X1 [GO FOR NEXT IF ERROR IN NAME
43CQ [NO FABSNB SET UP BY FNORM IN THIS
43XB [CASE
44C2 MHUNT 1,FILE,FABSNB
44WL LDN 0 #2400 [B13,15 TSN,REEL/RET
45B= ANDX 0 ATYPE(1)
45TW BNZ 0 XENTTYPE [J IF ENTRANT TYPE INVALID
46*G BBS 16,ATYPE(1),X2 [IF !,THEN ALREADY ONLINE
46T6 LDX 0 ALOGLEN(1)
47#Q SBN 0 4
47SB BZE 0 XUSE [J IF ONLY USERNAME
482L ... USEROPEN XBR,READR,LEAVE,STREAMS,DIR,TERMDIR,UNTRAP,FROZEN
48C6 ... HUNT 3,FI,FONCE [ADJUNCTS PRESENT?
48G= ... BNG 3 NOFONCE [J IF NOT
48KB ... NAME 3,FILE,ADJUNCTS [RENAME BACK TO ADJUNCTS
48NG ...NOFONCE [
48RL REPERR OK2
49?= BRN X2 [TRY NEXT PARAM AFTER ERROR
49QW OK2
4==G TREPN STREAM ,OK3
4=Q6 LDX 0 GSIGN
4?9Q STO 0 AWORK4(2) [REMEMBER TO CLOSE SDF
4?PB OK3
4?^8 ... CALL 6 SGMTNOW [SET L.S. 16 BITS OF GMTNOW IN ENT
4#92 HUNT 3,FILE,ENT
4#NL LDX 0 ECOPS(3)
4*8= ANDN 0 #7777
4*MW BNZ 0 ONLALREADY [ J IF ALREADY ONLINE
4B7G LDX 6 EINC(3) [PICK UP INCREMENT NUMBER
4BM6 BZE 6 XER [BRANCH IF FILE LOST
4BNX ... LDX 6 JOBNO(2) [X6 => JOB NO OF REQUESTING ACTIVITY
4BPG ... HUNT 1,FILE,ADJUNCTS [DOES AN ADJUNCTS EXIST?
4BQ5 ... BNG 1 XSCHEDENX [J IF NOT
4BQF ... LDN 2 21 [X2 => JOBNO IDENTIFIER
4BQT ... LDX 3 A1(1) [X3 => RECORD HEADER
4BR9 ... SBN 3 ADPAIR-A1 [X3 => LENGTH OF WORD PAIRS
4BRK ... BZE 3 XFREEADJ [J IF NO WORD PAIRS
4BR^ ...XADJLOOP [
4BS* ... SBN 3 2 [
4BSP ... SMO 3 [X3 USED AS MODIFIER
4BT5 ... LDX 0 ADPAIR(1) [X0 => QUALIFIER NUMBER IDENTIFIER
4BTM ... BXE 0 2,XADJOK [J IF OK
4BWT ... BNZ 3 XADJLOOP [J IF MORE WORD PAIRS
4BY3 ... BRN XFREEADJ [J IF NO MORE
4B^9 ...XADJOK
4B^S ... BRUSEN XNOUSER [J IF NOT USER CONTEXT
4C2C ... CHEKPRIV 0,XHLSEXT,XHLS [J TO XHLS IF NO PRIVILEGE
4C32 ... MHUNT 1,FILE,ADJUNCTS [FIND ADJUNCTS AGAIN
4C3? ... SMO 3 [
4C3J ... LDX 6 ADPAIR+1(1) [X6 => JOBNUMBER FROM ADJUNCTS
4C3T ...XFREEADJ [
4C48 ... FREECORE 1 [FREE ADJUNCTS
4C4R ...XSCHEDENX
4C5B ...
4C6Q DOWN SCHEDENX,2
4CLB TESTREP OK,XCLS,LOST,XLOST,TEMPLOST,XTEMP
4D62 LDX 0 EXEC3(2)
4DKL BNG 0 XCLS
4F5= GEOERR 1,FUNYREP
4F67 ...XNOUSER
4F74 ... MFREE FILE,ADJUNCTS
4F7^ ... LDN 1 XGENERR [SET UP X1 AND X2
4F8W ... LDN 2 XERNUSER [FOR ERRORX
4F9R ... BRN XOUTWO
4F=N ...XHLS
4F?K ... MFREE FILE,ADJUNCTS [FREE FILE/ADJUNCTS
4F#G ... LDN 1 XERB4 [SET UP X1 AND X2
4F*C ... LDN 2 XERHLS [FOR ERRORX
4FB# ...XOUTWO
4FC9 ... SMO FX1
4FD6 ... LDX 1 0(1)
4FF3 ... SMO FX1
4FFY ... LDX 2 0(2)
4FGT ... ERRORX 1,2
4FHQ ... BRN XFR
4FJW XLOST
4G4G ... LDN 1 XERLOST
4GJ6 BRN XONE
4H3Q XTEMP
4HHB LDN 1 XERTEMP
4J32 XONE
4JGL CALL 7 ONERR
4K2= RV1
4KFW LDX 2 FX2
4K^G BRN XCLS [GO TO CLOSE SDF IF OPEN
4LF6 XCL
4LYQ CLOSETOP [DIRECTORY
4MDB XCLS
4MY2 LDX 0 AWORK4(2)
4NCL BPZ 0 X2 [NO SDF
4NX= CLOSESTR
4PBW X2 MFREE FILE,FABSNB
4PWG BRN X1 [GO FOR NEXT PARAMETER
4QB6 [MUSTNT COME EARLIER OR PEOPLE WILL CANCEL BEFORE FCANCL SET UP
4QTQ [
4R*B [ FILE ALREADY ONLINE
4RT2 [
4S#L ONLALREADY
4SS= SETNCORE 20,3,ADATA,CREADL
4T?W NEWBL STOZ A1(3)
4TRG LDN 0 1
4W?6 ADS 0 AWORK2(2) [INCR.CT OF FILES ONLINE
4WQQ UNNORM TWO
4X=B MHUNTW 3,ADATA,CREADL
4XQ2 NAME 3,FILE,FINTER
4Y9L XFR MFREEW FILE,ENT
4YP= BRN XCL
4^8W XER
4^NG LDN 1 XERLOST [FILE LOST
5286 CALL 7 ONERR
52MQ BRN XFR
537B [
53M2 [ ENTRANT TYPE INVALID
546L [
54L= XENTTYPE
555W LDN 1 XERENT
55KG CALL 7 ONERR
5656 BRN X2
56JQ [
574B [ LOCAL NAME MISSING
57J2 [
583L XUSE MFREE FILE,FABSNB
58H= LDN 1 XAMISS
592W LDN 2 XJLOC
59GG BRN TWOERR
5=26 [
5=FQ [ USER NAME MISSING
5=^B [
5?F2 XLOCAL
5?YL LDN 1 XAMISS
5#D= LDN 2 XJUSE
5#XW BRN TWOERR
5*7N ...)
5*CG XBR
5*X6 COMBRKIN [RETURN TO CP AFTER BREAKIN
5BBQ [
5BWB [ K2 ENTRY-RV MACRO-FABSNB SUPPLIED
5CB2 [
5CTL X2RETRIEVE
5CXJ ... FSHCODE B,XFSHBRV
5C^G ...(
5D3D ...# RV MACRO TO BE OBEYED ON MACHINE A ONLY
5D5B ... TRANSBEG FSHRETRIEVE,RETRIEVE,2,CLB,,ACOMMUNE1
5D7# ... UP
5D9= ...XFSHBRV
5D?8 ...)
5D*= CALL 7 RVAUT [SET UP RV ACTIVITY
5DCF ... FSHCODE A,XFSHARV
5DFN ...(
5DHX ... TRANCHKN FSHRETRIEVE,EQUAL,XFSHARV,XFSHARV [J IF NOT FROM M/C B
5DL6 ... TRANSFIN [RETURN TO MACHINE B
5DN* ...XFSHARV
5DQJ ...)
5DSW UP
5F#G [
5FS6 [ K3 ENTRY - RVDIR MACRO - DIRECTORY OPENED AND
5G?Q [ ENT BLOCK SUPPLIED
5GRB [
5H?2 X3RETRIEVE
5H#Y ... FSHCODE B,XFSHBRVDIR
5HBW ...(
5HDS ... BRN (GEOERR)
5HGQ ...XFSHBRVDIR
5HJN ...)
5HLL ... FSHSKIP B
5HNJ ...(
5HQL CALL 7 RVDIRX
5J== UP
5JG4 ...)
5JPW [
5K9G [ SR TO SET UP REQUEST FOR FILE
5KP6 [
5L8Q RVAUT SBX 7 FX1
5LNB ... OPENDIR XBR,GENERAL,QUERY,ERASING
5M82 TESTREP OK,OK4
5MML BRN UP2
5MXD ...#
5N7= RVDIRX
5NLW SBX 7 FX1 [ FOR RVDIR MACRO
5P6G OK4
5PL6 HUNT 3,FILE,ENT [FIND THE DIR/ENT
5Q5Q LDX 0 ECOPS(3)
5QKB ANDN 0 #7777
5R52 BZE 0 ONLNOT [J IF NOT ONLINE
5RJL [ FILE ALREADY ONLINE
5S4= KEEPREP 5,ONLINE
5SHW BRN ZCLOSE
5T3G [ FILE OFFLINE
5TH6 ONLNOT
5W2Q LDX 6 EINC(3)
5WGB BNZ 6 NOTLOST [VERY UNLIKELY NOT TO BRANCH
5X22 KEEPREP 5,LOST
5XFL ZCLOSE
5X^= FREECORE 3
5YDW CLOSETOP
5YYG PUTREP2 5
5^D6 UP2
5^XQ ADX 7 FX1
62CB EXIT 7 0
62X2 NOTLOST
636S ... CALL 6 SGMTNOW [UPDATE NAME RECORD WITH GMTNOW
63BL ... LDX 2 FX2
63W= ... LDX 6 JOBNO(2) [X6 => JOBNO FROM ACTIVITY
6464 ... STO 7 AWORK3(2) [PRESERVE LINK
64*W DOWN SCHEDENX,2
64TG ANSOK
65*6 LDX 7 AWORK3(2)
65SQ ADX 7 FX1
66#B EXIT 7 0
66S2 XBK
67?L GEOERR 1,RVBRKIN [BREAK-IN ON AUTONOMOUS ACTIVITY
67R= X5RETRIEVE GEOERR 1,K5RET?
68=W MENDAREA 30,K99RETRIEVE
68QG #END
^^^^ ...26157377000200000000