{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: UNLOADMT867)}}
====== UNLOADMT867 ======
(George Source)
**Macros used:** [[george:macro:BS|BS]], [[george:macro:BXU|BXU]], [[george:macro:CHAIN|CHAIN]], [[george:macro:CLALLOC|CLALLOC]], [[george:macro:CLCOUNT|CLCOUNT]], [[george:macro:CLDRM|CLDRM]], [[george:macro:CLOSE|CLOSE]], [[george:macro:CLOSETOP|CLOSETOP]], [[george:macro:COOR1|COOR1]], [[george:macro:COOR3|COOR3]], [[george:macro:DCA|DCA]], [[george:macro:DELETE|DELETE]], [[george:macro:DFCLEAR|DFCLEAR]], [[george:macro:DFJUMPN|DFJUMPN]], [[george:macro:DFJUMPS|DFJUMPS]], [[george:macro:DFLOAD|DFLOAD]], [[george:macro:FDTENT|FDTENT]], [[george:macro:FPUT|FPUT]], [[george:macro:FREEMT|FREEMT]], [[george:macro:GEOERR|GEOERR]], [[george:macro:GETACT|GETACT]], [[george:macro:GPERI|GPERI]], [[george:macro:HUNTW|HUNTW]], [[george:macro:JALLOC|JALLOC]], [[george:macro:JBCC|JBCC]], [[george:macro:JBS|JBS]], [[george:macro:JCERRCT|JCERRCT]], [[george:macro:JENVNOT|JENVNOT]], [[george:macro:LCERRS|LCERRS]], [[george:macro:LFAILS|LFAILS]], [[george:macro:LGEOG|LGEOG]], [[george:macro:LGPERIS|LGPERIS]], [[george:macro:LINKSET|LINKSET]], [[george:macro:LOBJPERIS|LOBJPERIS]], [[george:macro:LOCKC|LOCKC]], [[george:macro:LONGON|LONGON]], [[george:macro:LREPEATS|LREPEATS]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MONOUT|MONOUT]], [[george:macro:MTINFORM|MTINFORM]], [[george:macro:OPENSYS|OPENSYS]], [[george:macro:OUTNUM|OUTNUM]], [[george:macro:OUTPACK|OUTPACK]], [[george:macro:OUTPACKB|OUTPACKB]], [[george:macro:OUTPAR|OUTPAR]], [[george:macro:OUTPARB|OUTPARB]], [[george:macro:PAIR|PAIR]], [[george:macro:READAGAIN|READAGAIN]], [[george:macro:SDSEARCH|SDSEARCH]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETALLOC|SETALLOC]], [[george:macro:SETELOG|SETELOG]], [[george:macro:SKIP|SKIP]], [[george:macro:STARTACT|STARTACT]], [[george:macro:SUICIDE|SUICIDE]], [[george:macro:SWITRACE|SWITRACE]], [[george:macro:TREP|TREP]], [[george:macro:UNLOCK|UNLOCK]], [[george:macro:UP|UP]]
22FL #LIS K0UNLOADMT>K0LIBRARY>K0ALLGEO
22^= #SEG UNLOADMT65 [N.R.BOULT
23DW 8HUNLOADMT
23JR ...[
23NN ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23SK ...[
23YG SEGENTRY K1UNLOADMT,QK1UNLOADMT
24D6 SEGENTRY K2UNLOADMT,QK2UNLOADMT
24XQ #
25CB #
25X2 # THIS SEGMENT HANDLES THE FREEING (FOR USE BY OTHER
26BL # ACTIVITIES) AND UNLOADING OF MAGNETIC TAPES
26W= #
27*W #
27TG # CONSTANTS
28*6 #
28SQ TAUT +AMTAUT
29#B TUNL +AMTUNL
29S2 TRET +AMTRET
2=?L TREP +AMTREP
2=R= TNSD +AMTNSD
2?=W TWQ #3400000
2?QG TLINK PAIR UNLOADMT,2
2#=6 TNONS 16HNONSTANDARD TAPE
2#PQ TMB 4HMT
2*9B #
2*P2 # LOCALS
2B8L #
2BN= #
2C7W # SUBROUTINES
2CMG #
2D76 ...WAKE LDX 1 AWORK1(2)
2DLQ BZE 1 WA1 [WAKING NOT REQUIRED
2F6B STO 0 AWORK1(2) [SAVE LINK
2FL2 LONGON #61,AWORK3(2)
2G5L WA3 LONGON #61
2GK= ... LDX 0 AWORK1(2) [RETRIEVE LINK
2H4W ...WA1 EXIT 0 0
2HJG #
2J46 # ENTRY POINT 1
2JHQ QK1UNLOADMT
2K3B LDX 0 ACOMMUNE2(2)
2KH2 #SKI K6UNLOADMT>99-99
2L2L SWITRACE 0,ULMTMODE
2LG= #SKI K6UNLOADMT>199-199
2L^W (
2MFG SWITRACE ACOMMUNE1(2),ULMTDL
2M^6 SWITRACE ACOMMUNE3(2),ULMTSEC
2NDQ SWITRACE ACOMMUNE4(2),ULMTSS5
2NYB )
2PD2 ANDX 0 TAUT(1)
2PXL BZE 0 PH
2QC= # J SET UP AUTONOMOUS ACTIVITY
2QWW GETACT ACTDOC,,1
2RBG LDX 3 BPTR(2)
2RW6 LINKSET 3,TLINK(1) [LINK WORDS ...
2S*Q LDN 0 4 [ACCUMULATORS ...
2STB LDN 1 ACC4(3)
2T*2 MOVE 0 4
2TSL LDN 0 ACOMMUNE1(2) [ACOMMUNES ...
2W#= LDN 1 ACOMMUNE1(3)
2WRW MOVE 0 6
2X?G LDX 0 ACOMMUNE1(2)
2XR6 BZE 0 PD
2Y=Q STO 0 CPPTR(3)
2YQB BRN PD1
2^=2 PD
2^PL CHANGEPE 3
329= PD1
32NW # K START AUTONOMOUS ACTIVITY
338G LDX 2 3
33N6 FPUT
347Q # O RETURN TO CALLING ACTIVITY
34MB UP
3572 PH
35LL LDX 0 ACOMMUNE1(2)
366= BZE 0 PH2
36KW STO 0 CPPTR(2)
375G PH2
37K6 # ENTRY POINT 2
384Q QK2UNLOADMT
38JB LDX 0 ACOMMUNE2(2)
3942 STO 0 AWORK2(2)
39HL LDX 1 FX1
3=3= ANDX 0 TNSD(1)
3=GW BNZ 0 PAO [THROW WFF
3?2G # I OPEN :SYSTEM.DOCUMENT
3?G6 PI
3?^Q OPENSYS XBRKIN,DOCUMENT,GENERAL
3#FB # L FIND RECORD IN DOCUMENT
3#^2 SDSEARCH NOSD,CPPTR,CPPTR(2)
3*DL # M UNLOAD REQUIRED ?
3*Y= LDX 0 AWORK2(2)
3BCW ANDX 0 TUNL(1)
3BXG BNZ 0 PVF
3CC6 # N TEST STATUS OF TAPE
3CWQ LDX 7 ACOMMUNE3(2)
3DBB BNZ 7 PN6 [INSECURE TAPE
3DW2 LDX 0 ACOMMUNE4(2)
3F*L ANDX 0 TWQ(1)
3FT= BNZ 0 PV [WRONG OR QUERY
3G#W PN6 LFAILS ,0
3GSG BNZ 0 PVF [BRANCH IF FAILED IN USE
3H#6 # P TEST COUNT OF USERS (SECURE TAPES)
3HRQ BNZ 7 PR [INSECURE TAPE
3J?B LDX 0 ACOMMUNE4(2)
3JR2 ANDN 0 #7777
3K=L BZE 0 PR2 [NOBODY WAITING
3KQ= # Q SET RETAIN
3L9W LDX 0 TRET(1)
3LPG ORS 0 AWORK2(2) [SET RETAIN
3M96 # R CLOSE :SYSTEM.DOCUMENT
3MNQ PR LDX 7 21(3)
3N8B #SKI K6UNLOADMT>299-299
3NN2 SWITRACE 7,ULMTSD21
3P7L ANDN 7 #400 [NON-STANDARD MARKER
3PM= PR2 CLOSETOP
3Q6W # S NONSTANDARD TAPE
3QLG # U READ HEADER
3R66 LDN 0 7 [REWIND MODE
3RKQ DCA ,DLA,0,MODE
3S5B LOCKC 2,£
3S=J ...#UNS FDRMT
3SCQ ... CLDRM
3SK2 GPERI ,2 [REWIND TAPE
3T4L COOR1
3TJ= UNLOCK 2
3W3W LDCH 0 CPRW1(2)
3WHG ... BNZ 0 PIA [BRANCH IF REWIND FAILED
3X36 BNZ 7 PAB [NONSTANDARD TAPE
3XGQ LDN 0 0 [READ MODE
3Y2B DCA ,DLA,0,MODE
3YG2 LDN 0 1 [COUNT
3Y^L DCA ,STO,0,COUNT
3^F= LOCKC 2,£
3^YW LDN 0 ACOMMUNE1(2)
42DG DCA ,STO,0,CTSA [ADDRESS
42Y6 GPERI ,2 [POSITION TAPE AFTER HEADER
43CQ COOR1
43XB UNLOCK 2 [UNLOCK ACTIVITY
44C2 LDCH 0 CPRW1(2) [REPLY CHARACTER
44WL ANDN 0 #57 [MASK OUT LONG BLOCK BIT
453S ... BZE 0 PAB
4592 ...[ READ OR REWIND FAILED - UNLOAD TAPE
45B8 ...PIA LDX 0 TUNL(1)
45HB ... ORS 0 AWORK2(2)
45NJ ... BRN PI
45TW # AB DEALLOCATE DECK
46*G PAB CLALLOC
46T6 LDX 3 CPPTR(2)
47#Q #SKI K6UNLOADMT>299-299
47SB SWITRACE 3,ULMTCLAL
48#2 STOZ CPPTR(2)
48RL STOZ CPRW1(2)
49?= STOZ CPRW2(2)
49QW STOZ CPRSW(2)
4==G # AC WAKE UP APPROPRIATE ACTIVITIES
4=Q6 ... DFJUMPN 3,WORK,PAC3 [JUMP IF NOT WORKTAPE
4?9Q LONGON #63 [WAKE UP FOR WORK TAPE
4?PB BRN PAD
4#92 PAC3 DFJUMPN 3,POOL,PAC5 [JUMP IF NOT POOLTAPE
4#NL LONGON #56 [WAKE UP FOR POOL TAPE
4*8= BRN PAD
4*MW PAC5 DFJUMPS 3,NONS,PAC7 [JUMP IF NON-STANDARD
4B7G DFLOAD 3,TSN,6
4B=9 ... FDTENT 2,6,XNOFDT [IS THIS TSN IN FDT??
4B?6 ... JBCC XDTA,2,BIFDTO [J IF ENTRY ALREADY LOOKED AT
4B#3 ... [OTHERWISE CLEAR BIT.
4B#Y ... BS 2,BIFDTJL [SET 'TAPE JUST LOADED' BIT
4B*T ... BS BOLC,BIFDTLMEF [SET 'LOOK AT FDT FIRST' BIT
4BBQ ... STARTACT RET [KICK DTS ACTIVITY
4BCM ... BRN PAD [RETRIEVAL SYSTEM WILL DEAL WITH THIS
4BDJ ...XDTA [FDT ENTRY BUT BIFDTO IS CLEAR
4BFF ... JBS PAD,2,BIFDTJL [J IF NO DTA SET UP YET BY DTSA
4BGB ... [DTA HAS BEEN SET UP - KICK IT
4BH? ... [......MOST PROBABLY IT IS DUMPER'S D
4BJ8 ...XNOFDT [NO FDT ENTRY - SO CONTINUE
4BM6 LONGON #61,6
4C6Q PAC7 LONGON #61
4CLB # AD RETAIN SET ?
4D62 PAD LDX 0 AWORK2(2)
4DKL ANDX 0 TRET(1)
4F5= BNZ 0 PAL [RETAIN SET
4FJW # AE CO-ORDINATE FOR MISCELLANEOUS USERS
4G4G DFLOAD 3,TSN,6 [REMEMBER TSN
4GJ6 COOR3 #62
4H3Q DFJUMPN 3,LOAD,PAL [BRANCH IF NO LONGER LOADED
4HHB JALLOC 3,PAL [BRANCH IF NOW ALLOCATED
4J32 DFLOAD 3,TSN,0
4JGL BXU 0 6,PAL [BRANCH IF TAPE HAS BEEN CHANGED
4K2= # AF DECK NOW ALLOCATED
4KFW SETALLOC 3
4K^G STO 3 CPPTR(2)
4LF6 LDX 1 FX1
4LYQ LDX 0 TUNL(1)
4MDB ORS 0 AWORK2(2) [SET UNLOAD
4MY2 #SKI K6UNLOADMT>299-299
4NCL SWITRACE AWORK2(2),ULMTAGN
4NX= BRN PI
4PBW # VF SET UP FOR WAKE S/R
4PWG PVF LDX 2 FX2
4QB6 LDX 0 CPPTR(2)
4QTQ STO 0 AWORK1(2) [INDICATES LONGON REQUIRED
4R*B BRN PV1
4RT2 # V COPY DOCUMENT ENTRY
4S#L PV STOZ AWORK1(2) [ZERO FOR NO WAKING
4SS= PV1 READAGAIN
4T?W # W DELETE ENTRY
4TRG DELETE
4W?6 STOZ AWORK3(2)
4WQQ DFJUMPS ,NONS,NWK
4X=B DFJUMPS ,POOL,WKZ
4XQ2 DFJUMPS ,WORK,WKZ
4Y9L DFLOAD ,TSN,0
4YP= STO 0 AWORK3(2)
4^8W BRN NWK
4^NG WKZ STOZ AWORK1(2)
5286 NWK
52MQ # X RESET PLIST
52XJ ... DFLOAD ,TSN,7
537B DFCLEAR ,TSN
53M2 DFCLEAR ,TBITS
546L # Y CLOSE :SYSTEM.DOCUMENT
54L= CLOSE [DOCUMENT
555W # Z REWIND AND DISCONNECT DECK
55KG LDN 0 9 [REWIND AND DISCONNECT
5656 DCA ,DLA,0,MODE
56JQ LOCKC 2,£
574B GPERI ,2
57J2 COOR1
583L UNLOCK 2 [ACTIVITY
58H= PAK
58JS ...[ MEDIA UNLOAD ERROR LOG- SET UP ADATA/ELOUT BLOCK
58LB ... JENVNOT PAKA,CME
58MY ... LDN 4 22
58PG ... LDX 3 CPPTR(2)
58R4 ... SETELOG 2,4,3
58RT ... STO 7 ELDME(2)
58SL ... LDN 5 #5060
58W8 ... ORS 5 ELHEADER+1(2)
58XQ ... LDX 2 FX2
58^# ...PAKA
592W LGEOG ,5
59GG PAK1
5=26 OUTPACK 5,1,GEOPER,PAK1
5=FQ MHUNT 3,FILE,FRB
5=^B LDX 5 A1+2(3)
5?F2 BZE 5 PAK3 [BRANCH IF NONSTANDARD TAPE
5?YL PAK2
5#D= OUTPACKB 5,1,TSN,PAK2
5#XW BRN PAK4
5*CG PAK3
5*X6 OUTPARB SKIP
5BBQ PAK4
5BWB MHUNT 3,FILE,FRB
5CB2 OUTPACKB A1+3(3),3,LOCNAME,PAK4
5CTL PAK5
5D*= MHUNT 3,FILE,FRB
5DSW OUTPACKB A1+6(3),1,REELNUM,PAK5
5F#G PAK6
5FS6 MHUNT 3,FILE,FRB
5G?Q OUTPACKB A1+7(3),1,GENNUM,PAK6
5GRB LFAILS ,4
5H?2 LREPEATS ,6
5HQL BZE 4 PAK8
5HS* ...[ MEDIA UNLOAD ERROR LOGS-PUT IN FAIL COUNT
5HW4 ... HUNTW 2,ADATA,ELOUT
5HXR ... BNG 2 PAK7
5H^G ... LDN 3 0
5J39 ... SLL 34 16
5J4Y ... STO 3 ELHEADER+12(2)
5J6M ... ORS 4 ELHEADER+13(2)
5J8B ... SRL 34 16
5J== PAK7
5JPW OUTPACKB 4,1,FAILCT,PAK7
5K9G CLCOUNT ,FAIL
5KP6 BRN PAK9
5L8Q PAK8
5LNB OUTPARB SKIP
5M82 PAK9
5MML BZE 6 PAK11
5N7= PAK10
5NLW OUTPACKB 6,1,REPEATS,PAK10
5P6G CLCOUNT ,REPEAT
5PL6 BRN PAK12
5Q5Q PAK11
5QKB OUTPARB SKIP
5R52 PAK12
5RJL BZE 5 PAK13
5S4= OUTPARB SKIP
5SHW BRN PAK14
5T3G PAK13
5TH6 OUTPARB NULL
5W2Q PAK14
5W4F #SKI JSKI06
5W68 (
5W7X OUTPAR TIMENOW [TIME TO MESSAGE
5W9L LGPERIS ,7 [GEORGE PERI COUNT
5W?* LOBJPERIS ,0 [OBJECT PROGRAM PERIS
5W*4 ADX 7 0 [TOT THEM UP
5WBR OUTPACK 7,1,TRANSCT
5WDG )
5WDH ...[ MEDIA UNLOAD ERROR LOGS-PUT IN TRANSFER COUNT
5WDJ ... LDX 5 6
5WDK ... HUNTW 2,ADATA,ELOUT
5WDL ... BNG 2 PAK14A
5WDM ... LDN 6 0
5WDN ... SLL 67 8
5WDP ... ORS 6 ELHEADER+9(2)
5WDQ ... STO 7 ELHEADER+10(2)
5WDR ...PAK14A
5WDS ... LDX 2 FX2
5WDT ... LDN 7 0
5WDW ... JCERRCT ,PAK16
5WDX ... LCERRS ,7 [CORRECTED ERROR COUNT
5WDY ... BZE 7 PAK16
5WD^ ...PAK15
5WF2 ... OUTPACK 7,1,NUMA,PAK15
5WF3 ... CLCOUNT ,CERR
5WF4 ... BRN PAK17
5WF5 ...PAK16
5WF6 ... OUTPAR SKIP
5WF8 ...PAK17
5WF= ...[ MEDIA UNLOAD ERROR BLOCKS-CHAIN ADATA/ELOUT BLOCK AT END
5WF# ...[ OF ELOG ACTIVITY
5WFB ... HUNTW 2,ADATA,ELOUT
5WFD ... BNG 2 PAK17A
5WFG ... ADX 5 7
5WFJ ... STO 5 ELHEADER+11(2)
5WFL ... LDX 1 BELOGACT
5WFN ... LDX 3 ACTRING(1)
5WFQ ... SBN 3 ACTRING
5WFS ... LDX 3 BPTR(3)
5WFW ... CHAIN 2,3
5WFY ... STARTACT ELOG
5WG2 ...PAK17A
5WG4 ... MONOUT AUNIT1
5WGB FREEMT
5X22 CALL 0 WAKE
5X^= # AL AUTONOMOUS ?
5YDW PAL1 MFREE FILE,FRB
5YYG PAL LDX 2 FX2
5^D6 LDX 1 FX1
5^XQ LDX 0 AWORK2(2)
62CB ANDX 0 TAUT(1)
62X2 BZE 0 PAM [NON-AUTONOMOUS
63BL # AN SUICIDE TERMINATION
63W= SUICIDE [FINISH
64*W PAM UP
64TG # AJ REPLY BLOCK TO BE SET UP
65*6 PAJ
65SQ MHUNT 3,FILE,FRB
66#B LFAILS ,5
66S2 LREPEATS ,6
67?L ORX 5 6
67HD ... DFLOAD ,TSN,7
67R= BNZ 5 PAK [BRANCH IF FAILS OR REPEATS
68=W FREEMT
68QG CALL 0 WAKE
69=6 BRN PAL1
69PQ # AO THROW OFF TAPE
6=9B PAO
6=P2 #SKI K6UNLOADMT>299-299
6?8L SWITRACE 0,ULMTNSD
6?N= LDN 0 9 [REWIND AND DISCONNECT
6#7W DCA ,DLA,0,MODE
6#MG LOCKC 2,£
6*76 GPERI ,2
6*LQ COOR1
6B6B UNLOCK 2
6BL2 # AP RESET PLIST
6C5L DFCLEAR ,TSN
6CK= DFCLEAR ,TBITS
6D4W LGEOG ,5
6DJG FREEMT
6F46 OUTNUM 5,0
6FHQ MTINFORM AZFREE
6G3B BRN PAL
6GH2 #
6H2L # GEOERRS
6HG= #
6H^W NOSD GEOERR 1,NOSYSDOC
6JFG XBRKIN GEOERR 1,XBRKIN
6J^6 MENDAREA 50,K99UNLOADMT
6KDQ #END
^^^^ ...11310633000200000000