{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: INCDTA865)}}
====== INCDTA865 ======
(George Source)
**Macros used:** [[george:macro:BC|BC]], [[george:macro:BITDEFS|BITDEFS]], [[george:macro:BLOCKTRACE|BLOCKTRACE]], [[george:macro:BS|BS]], [[george:macro:BXE|BXE]], [[george:macro:BXGE|BXGE]], [[george:macro:BXU|BXU]], [[george:macro:CHAINACT|CHAINACT]], [[george:macro:CLOSETOP|CLOSETOP]], [[george:macro:COOR3|COOR3]], [[george:macro:DELETE|DELETE]], [[george:macro:DOWN|DOWN]], [[george:macro:FDTENT|FDTENT]], [[george:macro:FINDACTFB|FINDACTFB]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNT2|HUNT2]], [[george:macro:JBC|JBC]], [[george:macro:JBS|JBS]], [[george:macro:JBSS|JBSS]], [[george:macro:JMBS|JMBS]], [[george:macro:LINKSET|LINKSET]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREE|MFREE]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:NAME|NAME]], [[george:macro:OPENINC|OPENINC]], [[george:macro:PAIR|PAIR]], [[george:macro:READBACK|READBACK]], [[george:macro:RINGACT|RINGACT]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:STEP|STEP]], [[george:macro:STEPAGAIN|STEPAGAIN]], [[george:macro:TRACEVER|TRACEVER]], [[george:macro:UP|UP]], [[george:macro:WIND|WIND]]
22FL ... SEG INCDTA,865,P.SMITH,INCDUMP
22^= #
23DW ... SEGENTRY K1INCDTA,X1INCDTA
23YG ... SEGENTRY K2INCDTA,X2INCDTA
24D6 ... SEGENTRY K3INCDTA,X3INCDTA
2=LM ...TYPEFINC
2=M# ...#HAL FILE+FINC,0 [ TYPE OF FINC BLOCK
2=M^ ...TYPEFGET
2=NL ...#HAL FILE+FGET,0 [ ATYPE OF FGET BLOCK
2=NT ...TBLINK
2=P4 ...#HAL BLINK,0 [ATYPE OF BLINK
2=P? ...PFIN PAIR DTSTART,7 [ LINK TO RETURN DTA'S TO RETRIEVAL S
2?8X ... BITDEFS AWORK1,3,XBDTSABWT
2?NH ...X1INCDTA
7KN2 #
7L7L # NOW GATHER THE REQUIRED DUMP TAPE ACTIVITIES (DTAS) (WITH TAPES NOW
7LM= # POSITIONED FOR DUMPING) AND THEIR ASSOCIATED BLOCKS IN FRONT OF DUMPE
7M6W # ACT. BLOCK. RE-RING THE DTAS AS WELL AS RE-CHAINING THEM.
7MLG #
7MPL ...# *****************************************************
7MSQ ...# IN THIS LOOP TO RECHAIN THE DTA'S - WE USE -
7MXW ...# X1 -> FGET , X4 IS MODIFIER DOWN FINC,X7 IS COUNT OF DTA'S
7N32 ...
7N=S ... STOZ AWORK1(2)
7NGL ... MHUNTW 1,FILE,FINC [X1-> FINC BLOCK
7NQD ... NAME 1,FILE,FGET [ NAME FGET TO REMEMBER IT
7P2= ...X8ST LDX 7 INCCOPIES(1) [X7= NO. OF DTAS TO SEARCH FOR
7PK2 ... LDN 4 0 [ INITIALISE MODIFIER
7Q4L ...NEXTTSNC
7QJ= ... LDX 2 FX2
7R3W ... SMO 4
7RHG ... LDX 3 FGETSER(1)
7S36 ...NEXTACTC
7SGQ ... FINDACTFB 2,,ACTDOC,ADUMPT,,BPTR [ GO BACK ALONG CHAIN UNTIL
7T2B ... BXU 3 ADTSN(2),NEXTACTC [ THE CORRECT DTA IS FOUND
7^FK ... SMO CPPTR(2)
7^J8 ... LDEX 0 K52+2 [OPS NO OF DECK
7^LR ... SMO 4
7^PB ... DEX 0 FGETSTATE(1) [KEEP IN FGETSTATE WORD
7^R^ ... [FOR LATER MESSAGE
7^WL LDX 3 FPTR(2) [REMEMBER NEXT BLOCK IN CHAIN
82B= ... LDX 5 FX2
82TW ... RINGACT 2,5
83*G S19
83T6 LDX 0 ATYPE(3)
84#Q BXGE 0 CACT,S19A [J IF NEXT ACT. BLOCK
84SB LDX 3 FPTR(3) [X3-> NEXT BLOCK IN CHAIN
85#2 CHAINACT BPTR(3) [RE-CHAIN BLOCK ASSOCIATED WITH DTA
85RL [ TO CURRECT ACT. BLOCK
86?= BRN S19
86QW S19A
87=G ... ADN 4 FGETLEN [ UPDATE POINTER DOWN FGET
87Q6 ... MHUNTW 1,FILE,FGET [X1-> FGET BLOCK
88FX ... BCT 7 NEXTTSNC [J IF MORE DTAS NEEDED BY DUMPER
898R ... JBC NOPLL,,BPARALLEL [J. NOT PARALLEL
899S ... LDX 0 AWORK1(2)
89=T ... BNZ 0 NOPLL [ALL BLKS LOOKED AT
89?8 ... MHUNTW 1,FILE,FGET [ FIRST FINC RENAMED
89?H ... NAME 1,FILE,FINC [ BACK AGAIN
89?W ... HUNT2 1,FILE,FINC [HUNT NEXT FINC
89#B ... NAME 1,FILE,FGET [ AND TEMPORARILY NAME FGET
89#X ... STO 1 AWORK1(2)
89*Y ... BRN X8ST
89B^ ...NOPLL
89C# ... MHUNTW 1,FILE,FGET [ NAME FGET BACK TO
89CM ... NAME 1,FILE,FINC [ NORMAL FINC
89D2 ...
89D* ... UP [ DUMP TAPE ACTIVITIES ALL RE-CHAINED
9?2H ...# ******************************************************************
9?2J ...# X2INCDTA
9?2K ...# ********
9?2L ...#
9?2M ...# THIS THE ENTRY POINT FOR THE FREEFINC MACRO
9?2N ...# AN INCREMENT HAS JUST BEEN COMPLETED ... AND THE DTA'S HAVE TO BE
9?2P ...# RETURNED TO THE RETRIEVAL SYSTEM
9?2Q ...X2INCDTA
9?2R ... LDX 3 FPTR(2) [ POINTER TO FINC
9?2S ... LDX 5 INCNO(3) [ INCREMENT NUMBER
9?2T ... BRN XCHECKFINC [
9?2W ...#
9?2X ...# ******************************************************************
9?2Y ...# X3INCDTA
9?2^ ...# ********
9?32 ...# THIS THE ENTRY FOR FREEFINC %A,NODUMP
9?33 ...# AN INCREMENT HAS JUST BEEN ABANDONED ... WE HAVE TO RETURN DTA'S
9?34 ...# WE MAY HAVE TO MARK SOME OF THE TAPES AS NO LONGER IN USE BY DUMPE
9?35 ...# A COPY OF THE LAST RELIABLE INCREMENT ID SET UP AS A FINTER
9?36 ...#
9?37 ...X3INCDTA
9?38 ... OPENINC ,GENERAL
9?39 ... WIND
9?3= ... STEP [ POSITION AFTER LAST RECORD
9?3? ...YBACK2
9?3# ... READBACK [READ PREV RECORD
9?3* ... MHUNTW 2,FILE,FRB
9?3B ... JBC YRVABLE,2,BINSUITRV [J IF USEFUL INCR
9?3C ... FREECORE 2
9?3D ... BRN YBACK2 [TRY PREV REC
9?3F ...YRVABLE
9?3G ... NAME 2,FILE,FINTER
9?3H ... LDX 3 FPTR(2) [ POINTER TO FGET(FINC)
9?3J ... LDX 5 GSIGN [ TO SHOW AN INC HAS BEEN AB'D
9?3K ...# ******************************************************************
9?3L ...# XCHECKFINC
9?3M ...# **********
9?3N ...# CHECK THAT IS A FINC OR FGET
9?3P ...XCHECKFINC
9?3Q ... LDX 0 ATYPE(3) [
9?3R ... BXE 0 TYPEFINC(1),YESFINC [ JUMP IF A FINC
9?3S ... BXE 0 TYPEFGET(1),YESFGET [ JUMP IF A FGET
9?3T ... BXE 0 TBLINK(1),YBLINK [ JUMP IF A BLINK BLOCK HAS APPEARED
9?3W ... GEOERR BRIEFPM,FREEFINC [ TRYING TO FREE A NOT FINC BLOCK
9?3^ ...YBLINK LDX 3 FPTR(3) [ CHECK BLOCK AFTER BLINK
9?42 ... BRN XCHECKFINC
9?43 ...YESFINC
9?44 ... NAME 3,FILE,FGET [ FOR EASE OF HUNTING
9?45 ...YESFGET
9?46 ...#UNS IDCTRACE
9?47 ... BLOCKTRACE 3,FREEFINC
9?48 ...#
9?49 ...
9?4= ...# ******************************************************************
9?4? ...# FREE THE FGET'S DTAS
9?4# ...#
9?4* ...STARTFREE
9?4B ... MHUNTW 3,FILE,FGET [ GET POINTER TO GET
9?4C ... LDX 4 INCCOPIES(3) [ PICK UP NO OF TAPES
9?4D ... LDN 7 0
9?4F ...NEXTTAPE1 [
9?4G ... LDX 6 FGETSER(3) [ PICK UP TSN
9?4H ... BNG 6 NOTAPE [ JUMP IF NO TSN
9?4J ... LDX 2 FX2
9?4K ... JMBS NOTUSED,3,BFGETUNAV,BFGETFH
9?4L ... [ IGNORE REJECTED TAPES
9?4M ... JBS POSND,3,BFGETPOS [ JUMP IF TAPE POSITIONED
9?4N ... BPZ 5 POSND [ JUMP IF COMPLETED INCREMENT
9?4P ... JBC NOTUSED,3,BFGETREQ [ IGNORE UNREQUESTED TAPES
9?4R ...#
9?4X ... FDTENT 1,6,NOFDTENT [ [ FIND ENTRY IN FDT - JUMP IF NOT T
9?53 ...
9?57 ... JBC NOFDTENT,1,BIFDTD [ JUMP IF NOT REQUESTED BY DUMPER
9?5? ... BC 1,BIFDTD [ CLEAR DUMPER BIT
9?5C ... BS 1,BIFDTCA [ SET CHAIN ALTERED BIT
9?5H ... BRN NOTUSED [ JUMP TO CLEAR USED BY DUMPER BITS
9?5M ...#
9?5R ...# WAIT TIL DTS STOPS LOOKING AT FGET
9?5X ...NOFDTENT
9?63 ... LDX 2 FX2
9?67 ... JBSS NOTUSED,2,XBDTSABWT [ WAKE DTS ONCE
9?6? ... BS ,BMTSCAN [ TELL DTS THAT DUMP CANCELLED
9?6C ...NOFDTENT2
9?6F ... CLOSETOP [ MUSN'T WAIT WITH INCINDEX OPEN
9?6H ... COOR3 FGOTWAIT [ WAIT TIL IT FINISHES
9?6K ... OPENINC ,GENERAL [ OPEN FILE AGAIN
9?6M ... JBS NOFDTENT2,,BMTSCAN [ JUMP IF SPURIOUS WAKE UP
9?6N ... MHUNTW 3,FILE,FGET [RESET PTR TO FGET ENTRY
9?6P ... ADX 3 7
9?6R ... BRN NOTUSED
9?6X ...#
9?73 ...#
9?77 ...POSND [
9?7? ...# TAPE IS POSITIONED WE HAVE TO FIND THE DTA AND RETURN IT
9?7C ... FINDACTFB 2,,ACTDOC,ADUMPT,,BPTR
9?7H ...
9?7M ... BXU 6 ADTSN(2),POSND [ JUMP IF NOT THIS DTA
9?7R ...
9?7X ... STO 5 ACC6(2) [ SET MARKER IN X6 INC NO OR -VE
9?83 ... LDX 1 FX1
9?87 ... LINKSET 2,PFIN(1) [ LINK TO DTSTART,7
9?8? ... FPUT [ KICK DTA
9?8C ...
9?8H ... BPZ 5 NOTAPE [ JUMP IF SUCCESSFUL INC
9?8M ...#
9?8R ...NOTUSED
9?8X ...#
9?93 ...# THE DUMP HAS BEEN CANCELLED THE USED BY DUMPER BIT MAY HAVE TO NE
9?97 ...# THE FINTER CONTAINS A COPY OF THE LAST RETRIEVABLE INCREAMENT
9?9? ...#
9?9C ... MHUNTW 1,FILE,FINTER
9?9H ... LDX 0 AMTS(1) [ NO OF TAPES
9?9M ...#UNS IDCTRACE
9?9R ... TRACEVER 6,NOTUSD
9?9X ...NEXTTAPE2 [
9?=3 ... BXE 6 AMAG(1),NOTAPE [ JUMP IF TAPE ALREADY USED
9?=7 ... ADN 1 INCMAGLEN
9?=? ... BCT 0 NEXTTAPE2 [ BACK FOR NEXT TAPE
9?=C ...#
9?=H ... DOWN INCTAPES,3 [ TO CLEAR NBIT
9?=M ... MHUNTW 3,FILE,FGET
9?=R ... ADX 3 7 [ RESET POINTER TO FGET ENTRERY
9?=X ...NOTAPE [
9??3 ... ADN 7 FGETLEN
9??7 ... ADN 3 FGETLEN [
9??? ... BCT 4 NEXTTAPE1 [ TRY NEXT TAPE IN FINC
9??C ...# ******************************************************************
9??H ...# ALL TAPES HAVE BEEN RETURNED TO THE RETRIEVALL SYSTEM
9??M ...# WE NOW FREE THE FINC
9??R ...# IF THE INCREMENT JUST CANCELLED IS THE FIRST FILES INCREMENT IN O
9??X ...# PARALLEL DUMP , THE RECORD IN INCINDEX HAS TO BE DELETED
9?#3 ... BPZ 5 NOREC [ JUMP IF NOT FROM CC DU
9?#7 ... WIND [
9?#? ... STEPAGAIN [ THE LAST RECORD
9?#C ... MHUNTW 2,FILE,FGET [
9?#H ... LDX 0 AINCNOR(3)
9?#M ... BXU 0 INCNO(2),NOTINC [ JUMP IF THE INC IS NOT IN INCINDEX
9?#R ... DELETE [ THE RECORD
9?#X ...NOTINC
9?*3 ... CLOSETOP [ CLOSE INCINDEX
9?*7 ... MFREE FILE,FINTER [
9?*? ...NOREC
9?*C ... MHUNTW 3,FILE,FGET
9?*H ...#UNS IDCTRACE
9?*M ... BLOCKTRACE 3,FREED
9?*R ... MFREEW FILE,FGET [
9?*X ... UP
9?B3 ...#
9?B7 ...#
9?B? ...# ******************************************************************
9?BC ...#
9?LB ... MENDAREA 30,K99INCDTA
9?WB #
9#B2 #END
^^^^ ...23147315000100000000