{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: GETON867)}}
====== GETON867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ALTLEN|ALTLEN]], [[george:macro:CLOSETOP|CLOSETOP]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:COMERR|COMERR]], [[george:macro:DOWN|DOWN]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:ERROR|ERROR]], [[george:macro:ERRTEST|ERRTEST]], [[george:macro:FNORM|FNORM]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HLSXONCH|HLSXONCH]], [[george:macro:HUNT|HUNT]], [[george:macro:JFREZFCB|JFREZFCB]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MTEXPROP|MTEXPROP]], [[george:macro:MTMERGPROP|MTMERGPROP]], [[george:macro:NAMETOP|NAMETOP]], [[george:macro:OPEN|OPEN]], [[george:macro:PERCON|PERCON]], [[george:macro:PICKREP|PICKREP]], [[george:macro:PROPERTY|PROPERTY]], [[george:macro:PUTREP|PUTREP]], [[george:macro:RELPERENT|RELPERENT]], [[george:macro:REPALLER|REPALLER]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SPARANOT|SPARANOT]], [[george:macro:SWITRACE|SWITRACE]], [[george:macro:TESTERR|TESTERR]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TESTREPNOT|TESTREPNOT]], [[george:macro:TOPFCB|TOPFCB]], [[george:macro:TRACE|TRACE]]
22FL #LIS K0GETON>K0LIBRARY>K0ALLGEO
22^= #SEG GETON65 [N.R.BOULT
2357 ...[
2394 ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23#^ ...[
23DW 8HGETON
23YG # THIS SEGMENT CONTROLS IMPLEMENTATION OF THE GETONLINE COMMAND
24D6 SEGENTRY K1GETON,QK1GETON
24XQ [ENTRY POINT FOR GETONLINE COMMAND
25CB QK1GETON
25X2 #SKIP K6GETON
26BL TRACE 2,GETON1
26W= STOZ AWORK1(2)
27*W STOZ AWORK2(2)
27TG STOZ AWORK3(2)
28*6 # DECODE COMMAND PARAMETERS
28SQ PERCON 1 [DECODE PERIPHERAL NAME
29#B TESTREPNOT OK,TERR [J IF ERROR
29S2 MHUNT 3,CPAR,GPERCON [LOOK FOR REPLY BLOCK
2=?L LDX 0 A1(3)
2=R= SRL 0 15
2?=W TXU 0 TMT(1)
2?QG BCC P1 [J IF MT
2#=6 SPARANOT 1 [PASS FIRST PARAMETER
2#PQ ERROR JPNAL,JNOTMT [OTHERWISE REPORT ERROR
2*9B TERR ENDCOM [TERMINATE IF ERROR
2*P2 # RELEASE ANY PREVIOUS CHANNEL
2B8L P1 LDX 5 A1(3) [TYPE/UNIT NO.
2BN= STO 5 AWORK4(2)
2C7W HLSXONCH XBRKIN,5,PHLSER [ASK HLS IF JOB CAN HAVE ANUVER TAPE
2CMG RELPERENT 5 [RELEASE ANY PREVIOUS PERIPHERAL
2D76 # ENTRANT DESCRIPTION PARAMETER
2DLQ P4 SPARANOT 2 [UNPACK ENTRANT DESCRIPTION
2F6B MHUNT 3,CPB,CUNI
2FL2 LDX 0 ANUM(3)
2G5L BPZ 0 P2 [J UNLESS PARAMETER MISSING
2GK= COMERR JPARMIS,JFENTRANT
2H4W PHLSER
2HJG COMERR ERHLSONL [HLS FORBIDS FURTHER ACQUISITION
2J46 P2 NAMETOP 3,FILE,FNAME
2JHQ FNORM 7
2K3B PICKREP 7
2KH2 MHUNT 3,FILE,FNAME
2L2L NAMETOP 3,CPB,CUNI
2LG= PUTREP 7
2L^W NGN 7 1
2MFG TESTREP NAMEFORM,TERR
2M^6 TESTREP OK,P5
2NDQ MHUNT 3,FILE,ADJUNCTS
2NYB LDX 0 A1+2(3)
2PD2 BNG 0 P2A [J IF SLOW PERIPHERAL QUALIFIER
2PXL ANDN 0 2
2QC= BZE 0 P2A [BRANCH UNLESS PROPERTY QUALIFIER
2QWW MTEXPROP TAPE
2RBG TESTREPN OK,PERR
2RW6 #SKI K6GETON>299-299
2S*Q SWITRACE ACOMMUNE1(2),GTONEP
2STB LDX 0 ACOMMUNE1(2) [SPECIAL PROPERTY DESCRIPTION
2T*2 STO 0 AWORK2(2)
2TSL LDX 0 ACOMMUNE2(2) [ILLEGAL COMBINATION MASK
2W#= STO 0 AWORK3(2)
2WRW #SKI K6GETON>199-199
2X?G (
2XR6 SWITRACE AWORK2(2),GTONMPRP
2Y=Q SWITRACE AWORK3(2),GTONMILL
2YQB )
2^=2 MHUNT 3,FILE,ADJUNCTS
2^PL P2A
329= LDX 0 TADJ(1)
32NW ANDX 0 A1+1(3)
338G BZE 0 P6
33N6 LDCT 0 #400
347Q STO 0 AWORK1(2)
34MB P6 LDX 2 ALOGLEN(3)
3572 SBN 2 ADPAIR-A1
35LL SRL 2 1 [NR OF ADJUNCT PAIRS
366= BZE 2 PM1 [NONE
36KW PM3 LDX 0 ADPAIR(3)
375G SBN 0 15
37K6 BNZ 0 PM2 [NOT MODE ADJUNCT
384Q LDX 7 ADPAIR+1(3) [MODE
38JB BRN PM1
3942 PM2 ADN 3 2
39HL BCT 2 PM3 [TRY NEXT
3=3= PM1
3=GW BNG 7 P5 [NO MODE ADJUNCT
3?2G MHUNT 3,CPAR,GPERCON
3?G6 LDX 0 A1+2(3)
3?^Q ANDX 0 TMSK(1)
3#FB BNZ 0 P5 [ALREADY GIVEN
3#^2 LDX 0 TMSK(1)
3*DL ORS 0 A1+2(3)
3*Y= ORS 7 A1+1(3) [INSERT
3BCW P5
3BXG PROPERTY P5A,1,2
3CC6 MTEXPROP DECK
3CWQ TESTREPN OK,PERR
3DBB MTMERGPROP ACOMMUNE1(2),ACOMMUNE2(2),AWORK2(2),AWORK3(2),3,4,PILLC
3DW2 ORN 3 GLIBNONS
3F*L ERN 3 GLIBNONS [REMOVE NONS PROPERTY
3FT= STO 3 AWORK2(2)
3G#W STO 4 AWORK3(2)
3GSG LDX 0 3
3H#6 ANDN 0 GLIBMODE
3HRQ BZE 0 P5A
3J?B MHUNT 1,CPAR,GPERCON
3JR2 LDN 0 #74
3K=L ORS 0 A1+2(1)
3KQ= ORS 0 A1+1(1)
3L9W ERS 0 A1+1(1)
3LPG SRL 3 18 [STORE MODE PROPERTY
3M96 ORS 3 A1+1(1)
3MNQ P5A
3N8B MFREE CPB,CUNI
3NN2 MHUNT 3,FILE,FABSNB
3P7L # CHECK OWNERSHIP OF TAPE
3PM= LDX 0 ATYPE(3)
3Q6W ANDN 0 #200
3QLG BNZ 0 PO4 [BRANCH IF NAMED WORKTAPE
3R66 LDX 0 HDREC(3)
3RKQ SBN 0 10
3S5B BNG 0 PE1
3SK2 ADN 0 4
3T4L STO 0 HDREC(3) [INSERT REDUCED LENGTH
3TJ= LDX 0 ACES
3W3W SMO HDREC(3)
3WHG STO 0 A1+5(3)
3X36 NGN 0 #101 [REMOVE LANG CODE BIT
3XGQ ANDS 0 ATYPE(3)
3Y2B PO1
43XB OPEN PG4,READ,QUERY
44C2 XFSHNBOPEN
45B= TESTREP OK,P03
45TW TESTERR NAME,TERR
46*G TESTREP NOFILE,PE4
46T6 TESTREP VRYWRONG,PE4
47#Q TESTREP NOUSER,PE4
47SB GEOERR 1,REPLY
48#2 P03
48RL MHUNT 2,FILE,FABSNB [THE FABSNB NEEDS TO BE SET
49?= LDN 0 6 [TO CONTAIN :USER.LOCALNAME ONLY
49QW ADS 0 A1(2) [THIS IS FOR LATER USE WHEN
4==G LDX 0 A1(2) [UPDATING BUDGETS
4=Q6 SBN 0 10
4?9Q BZE 0 P02
4?PB LDX 3 2
4#92 TOPFCB 1
4#NL ADN 1 FME1
4*8= ADN 2 A1+1
4*MW MOVE 1 3
4B7G SMO A1(3)
4BM6 LDN 1 A1-6(3)
4C6Q LDN 2 A1+4(3)
4CLB LDX 5 ALOGLEN(3)
4D62 SBX 5 A1(3)
4DKL ADN 5 6
4F5= SMO 5
4FJW MOVE 1 0 [MOVE LOCAL NAME UP FABSNB
4G4G ADN 5 4
4GJ6 LDN 1 10
4H3Q STO 1 A1(3)
4HHB ALTLEN 3,5,FILE,FABSNB
4J32 P02
4JGL TOPFCB 3 [X3 POINTS TO DIRECTORY'S FILE-FCB
4K2= JFREZFCB 3,PERR2 [TEST FOR FROZEN DIR & FREEZE PVLGE
4KFW OWNERCHECK [CHECK OUT OWNERSHIP OF TAPE
4K^G P03B
4LF6 PICKREP 3
4LYQ CLOSETOP [CLOSE DIRECTORY
4MDB PUTREP 3
4MY2 TESTREP OK,P03D [OWNERSHIP OK?
4NCL REPALLER
4NX= BRN TERR [J TO ENDCOM
4PBW P03D
4PWG MHUNT 3,FILE,FABSNB
4QB6 PO4
4QTQ LDN 0 1
4R*B ORS 0 ATYPE(3) [NON-FILESTORE ENTRANT REQUIRED
4RT2 # DOWN TO GET FOR NEW TAPE
4S#L LDX 0 AWORK2(2)
4SS= STO 0 ACOMMUNE1(2)
4T?W #SKIP K6GETON
4TRG TRACE 2,GETONGT
4W?6 DOWN GET,3
4WQQ BRN XBRKIN
4X=B TESTREPNOT OK,PE [J IF FAILED TO GET TAPE
4XQ2 # GET UP REPLY BLOCK FOR SUBSEQUENT OPEN PERI
4Y9L SETNCORE 10,2,FLIB,GOLMT
4YP= STOZ A1(2)
4^8W LDN 6 A1(2) [ZEROISE BLOCK
4^NG LDN 7 A1(2)
5286 MOVE 6 9
52MQ MHUNT 3,FILE,FABSNB
537B LDX 0 ATYPE(3)
53M2 ANDN 0 #200
546L BZE 0 PME1 [BRANCH IF NAMED WORK TAPE
54L= LDN 6 WORK(1)
555W LDN 7 A1+4(2)
55KG MOVE 6 6
5656 BRN PME2
56JQ PME1
574B LDX 6 HDREC(3)
57J2 ADN 6 2
583L TXU 6 ALOGLEN(3) [GEOERR IF NO TSN
58H= BCS PG2
592W # FILL IN REPLY BLOCK
59GG SMO HDREC(3)
5=26 LDN 6 A1-6(3)
5=FQ LDN 7 A1+4(2)
5=^B MOVE 6 5 [NAME,REEL,GENERATION
5?F2 SMO HDREC(3)
5?YL LDX 6 A1(3)
5#D= ANDN 6 4095
5#XW STO 6 A1+9(2) [RETENTION PERIOD
5*CG PME2
5*X6 SMO HDREC(3)
5BBQ LDX 6 A1+1(3)
5BWB STO 6 A1+3(2) [SERIAL NUMBER
5CB2 LDCT 6 5
5CTL ORN 6 #400 [TYPE/MODE
5D*= STO 6 A1+2(2)
5DSW FREECORE 3 [FREE FABSNB
5F#G LDX 5 AWORK4(2)
5FS6 ACROSS OLMTA,2 [GO TO CONNECT TO OBJECT PROGRAM
5G?Q # ERROR REPORTING
5GRB PE TESTREP NOLOCN,PE1
5H?2 TESTREP TSN,PE2
5HQL TESTREP NOTAV,PE3
5J== PQ
5JPW TESTREPN ODRAWN,PQ1
5K9G ERROR BUDGODR,BUDGSPA
5KP6 BRN TERR
5L8Q PQ1
5LNB TESTREPN INCREASE,PQ2
5M82 ERROR BUDGINC,BUDGSPA
5MML BRN TERR
5N7= PQ2
5NLW TESTREP ALREADY,TERR
5P6G TESTERR NAME,TERR
5PL6 TESTREP WRGEN,TERR
5Q5Q TESTREP VRYWRONG,TERR
5QKB TESTREP TEMP,TERR
5R52 TESTREP NODECKS,PE5
5RJL GEOERR 1,GETREP
5S4= PE1 COMERR AMTDESC,JLOCN [SERIAL NUMBER GIVEN
5SHW PE2 COMERR AMTDESC,JNTSN [LOCAL NAME NOT GIVEN
5SN# ...PE3 HUNT 3,FILE,FABSNB
5SSQ ... LDCT 0 #200
5S^8 ... ANDX 0 ATYPE(3)
5T5L ... BZE 0 POOL
5T=4 ... COMERR JNWTA
5TBG ...POOL COMERR JNPT [POOL TAPE NOT AVAILABLE
5TH6 PE4
5W2Q COMERR ERNAME
5WGB PE5 COMERR ERNODECKS
5X22 PERR
5XFL TESTREPN ILLCOMB,PERR1
5X^= PILLC
5YDW COMERR ERILLCOMB
5YYG PERR1
5^D6 COMERR ERILLMODE
5^XQ PERR2
62CB CLOSETOP
62X2 ERRTEST 3,TERR,FROZEN,NOFPRIV [ERROR MESS FOR FROZEN OR NO-F-PR
63BL GEOERR 1,GLFRREP [ELSE GEORGE ERROR
63W= # BREAKIN EXITS
64*W XBRKIN COMBRKIN
64TG # CONSTANTS
66#B TMT +5
67?L TADJ +AGIVE
69=6 TMSK #74
6=9B WORK 12HWORK TAPE
6=P2 0,0
6?N= # GEORGE ERRORS
6#MG PG2 GEOERR BRIEFPM,SHORTBLK
6*LQ PG4 GEOERR BRIEFPM,BREAKIN
6B6B MENDAREA 1023-0?,K99GETON
6BL2 #END
^^^^ ...546123420002