{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: DTWRONG867)}}
====== DTWRONG867 ======
(George Source)
**Macros used:** [[george:macro:ALTLEN|ALTLEN]], [[george:macro:BBS|BBS]], [[george:macro:BBUS|BBUS]], [[george:macro:BC|BC]], [[george:macro:BS|BS]], [[george:macro:BXE|BXE]], [[george:macro:BXL|BXL]], [[george:macro:BXU|BXU]], [[george:macro:CHAIN|CHAIN]], [[george:macro:CLOSEDIR|CLOSEDIR]], [[george:macro:DOWN|DOWN]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:FSHMOVE|FSHMOVE]], [[george:macro:FSHSKIP|FSHSKIP]], [[george:macro:HUNTW|HUNTW]], [[george:macro:JBC|JBC]], [[george:macro:JBS|JBS]], [[george:macro:JMBS|JMBS]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:NAME|NAME]], [[george:macro:OPEN|OPEN]], [[george:macro:OPENINC|OPENINC]], [[george:macro:OPENSYS|OPENSYS]], [[george:macro:OUTNULL|OUTNULL]], [[george:macro:OUTPACK|OUTPACK]], [[george:macro:OUTPARAM|OUTPARAM]], [[george:macro:READ|READ]], [[george:macro:REWRITE|REWRITE]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:STARTACT|STARTACT]], [[george:macro:TRANCHKN|TRANCHKN]], [[george:macro:TRANSBEG|TRANSBEG]], [[george:macro:TRANSFIN|TRANSFIN]], [[george:macro:UP|UP]]
22FL ... SEG DTWRONG,860,C.R.JOHNSON,SCHEDULER
22LS ...[
22S2 ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
22^= SEGENTRY K1DTWRONG,X1DTWRONG
23DW [
23L4 ... FSHSKIP B
23R= ...(
23YG [ THIS SEGMENT IMPLEMENTS TAPEWRONG AND TAPERIGHT FOR DUMPER TAPES
24D6 [ AWORK1 USED TO PASS INFORMATION ACROSS FROM LIBRARIAN
24XQ [ B0=0 IF TAPERIGHT COMMAND
25CB [ B0=1 IF TAPEWRONG COMMAND
25X2 [ B1=1 IF CALLED BY MACRO
26BL ...[ B2=0 IF OPERATOR CONTEXT
26W= ...[ B2=1 IF USER CONTEXT
27*W [ AWORK2=0 UNLESS RECORD NEEDS REWRITING
27TG [ AWORK3,AWORK4 PRESERVE X2 AND X5 WHEN CHECKING FOR ALL MTS WRONGED
28*6 [ AWORK3 ALSO USED IN SR OUTINCNOS
28SQ [
29#B [ INCINDEX IS OPENED AND ALL OCCURRENCES OF THE TAPES LISTED IN THE
29S2 [ COMMAND (STORED IN AN AONBS/GLIST)ARE MARKED AS RIGHTED OR WRONGED
2=?L [
2=R= RIGHTMASK #75777777
2?34 ...NMASK #40000000
2?=W NGTMASK #37777777
2?B2 ...QU 4H(U) [THESE THREE CHAR STRINGS ARE
2?F6 ... 4H(O) [USED BY OPERATOR/USER WRONGING
2?J= ... 8H(O,U) [FOR OUTPUTTING WARNING MESSAGES
2?MB ... [MUST BE KEPT CONTIGUOUS
2?QG [
2#=6 [ SR TO SEARCH FOR NEXT FLINC BLOCK AFTER X2.IF FOUND,EXIT+1,ELSE +0
2#PQ [
2*9B SEARCHFLINC
2*P2 LDX 2 FPTR(2)
2B8L LDX 0 ATYPE(2)
2BN= SRL 0 12
2C7W SBN 0 FLIB+FLINC
2CMG BZE 0 SUCCESS [J IF ANOTHER FLINC FOUND
2D76 SBN 0 #6000-FLIB-FLINC [IS IT AN ACT.BLOCK?
2DLQ BNG 0 SEARCHFLINC
2F6B EXIT 3 0 [NO FLINC FOUND
2FL2 SUCCESS
2G5L EXIT 3 1 [FLINC FOUND
2G*D ...)
2GK= [
2GQD ...[ THIS IS THE ONLY ENTRY POINT TO DTWRONG
2GXL ...[ *******************************************************************
2H4W [
2HJG X1DTWRONG
2J46 [
2J5N ... FSHCODE B,XFSHBTRAN
2J7= ...(
2J8S ... TRANSBEG FSHTHTW,DTWRONG,1,CLB,,ACOMMUNE1
2J=B ... FSHMOVE END [:SYSTEM.SERIAL HAS BEEN OPENED
2J?Y ... UP
2J*G ...XFSHBTRAN
2JC4 ...)
2JDL ... FSHSKIP B
2JG8 ...(
2JHQ [
2K3B [ MARK WRONGED TAPES IN FDT,IF THEY ARE THERE.THIS WILL CAUSE THEM
2KH2 [ TO BE UNLOADED,AND PREVENT MORE ACTIVITIES FROM ASKING FOR FILES
2L2L [ TO BE RETRIEVED FROM THEM
2LG= [
2L^W STO 7 AWORK1(2) [COMMAND TYPE
2MFG MHUNTW 2,AONBS,GLIST [BLOCK CONTAINING LIST OF WRONG TSNS
2MGH ...#UNSET JDUMPTW
2MHJ ...(
2MJK ... SMO FX2
2MKL ... LDX 3 AWORK1 [J IF NOT DUMP
2MLM ... BBUS 3,3,SNDUMP
2MMN ... LDX 3 2
2MNP ... LDX 7 A1(3) [COUNT OF ENTRIES
2MPQ ... LDX 5 NMASK(1)
2MQR ...SGLIST
2MRS ... ORS 5 A1+1(3) [SET B0
2MST ... ADN 3 1 [NEXT TSN
2MTW ... BCT 7 SGLIST
2MWX ...)
2MXY ...SNDUMP
2M^6 LDX 7 A1(2) [COUNT OF ENTRIES
2NDQ LDX 5 NGTMASK(1)
2NYB STFDT LDX 1 BOLC [POINT TO FDT
2PD2 LDX 6 A1(1)
2PXL BZE 6 NOENTFDT [J IF NO ENTRIES IN FDT
2QC= LDX 4 A1+1(2) [NEXT TAPE FROM WRONGED LIST
2QWW ANDX 4 5 [CLEAR B0
2RBG BZE 4 STEPGLIST [J IF INCORRECT PARAMETER
2RW6 STEPFDT
2S*Q BXE 4 FDSN(1),WRNGFDT [J IF WRONGED TAPE IS IN FDT
2STB ADN 1 FDTLEN
2T*2 BCT 6 STEPFDT [GO FOR NEXT FDT ENTRY
2TSL BRN STEPGLIST [GO FOR NEXT WRONGED TAPE
2W#= [TAPE IS IN FDT
2WRW WRNGFDT
2W^4 SMO FX2
2X6= LDX 3 AWORK1
2X6* ...#UNSET JDUMPTW
2X6D ...(
2X6H ... BBUS 3,3,NWGD [J IF NOT DUMP PARAM
2X6L ... BS 1,BIFDTOW
2X6P ...NWGD
2X6S ...)
2X75 ... BBUS 0,3,THCOM [J IF TH COMMAND
2X7B ... BBS 2,3,USETW [J IF USER TAPEWRONG
2X7M ... BS 1,BIFDTOW [SET OPERATOR WRONGED BIT
2X7Y ... BRN STEPGLIST
2X89 ...USETW BS 1,BIFDTUW [SET USER WRONGED BIT
2X8G ... BRN STEPGLIST
2X8R ...THCOM
2X94 ... BBS 2,3,USETH [J IF USER TAPERIGHT
2X9* ... BC 1,BIFDTOW [CLEAR OPERATOR WRONGED BIT
2X9L ... BRN STEPGLIST
2X9X ...USETH BC 1,BIFDTUW [CLEAR USER WRONGED BIT
32NW STEPGLIST
338G ADN 2 1 [POINT TO NEXT WRONGED TAPE
33N6 BCT 7 STFDT
347Q NOENTFDT
34MB [ END OF LIST OF WRONGED TAPES
3572 [
35LL [ OPEN INCINDEX
366= [
36KW OPEN OPENINC XBR,GENERAL
375G STOZ AWORK2(2) [SET'DO NOT REWRITE THIS RECORD'
37K6 [
384Q [ READ THROUGH INCINDEX LOOKING FOR TAPES LISTED IN AONBS/GLIST
38JB [
3942 NXTREC
39HL READ
3=3= MHUNTW 2,AONBS,GLIST
3=GW LDX 5 ALOGLEN(2)
3?2G SBN 5 1 [NO OF TSN-TYPE ENTRIES IN BLOCK
3?G6 MHUNTW 3,FILE,FRB
3?^Q LDX 4 A1(3)
3#FB BNZ 4 TPLD
3#^2 [
3*DL [ END OF INCINDEX-CLOSE IT,RETURN TO LIBRARIAN SEGMENT
3*Y= FREECORE 3
3BCW [
3BXG [ BUT IF TW PUT OUT FLINC MESSAGES IF THERE ARE ANY
3CC6 [
3CNG ... LDX 3 AWORK1(2)
3C^W ... BPZ 3 OPENA [J IF TAPERIGHT
3D?= ...#UNSET JDUMPTW
3DJL ... BBS 3,3,OPENA [J IF DUMP PARAM
3DW2 NEXTFLINC
3FT= HUNTW 3,FLIB,FLINC
3G#W BNG 3 OPENA [NO MORE FLINCS
3GNK ... OUTNULL
3GWD ... OUTNULL [%A AND %B SET NULL
3H4# ... MHUNTW 3,FLIB,FLINC
3H5W ... OUTPACK A1+1(3),1,TSN [%C IS TSN
3H#6 ... LDX 1 FX1
3H*N ... STOZ 7
3HC= ... JBS SBOTHWR,3,BFUSWR [J IF TAPE USER-WRONGED
3HDS ... ADN 1 1 [OPERATOR WRONGED ONLY
3HGB ...SUSWR STOZ FLINCST(3) [CLEARED FOR OUTINCS
3HHY ... ADN 1 QU [ADDRESS OF PARAMETER
3HKG ... ADN 7 3 [CHARS IN PARAMETER
3HM4 ... LDX 4 0(1) [PARAMETER
3HNL ... LDX 5 1(1) [DITTO
3HQ8 ... STO 4 AWORK3(2) [STORE PARAMETER
3HRQ ... STO 5 AWORK4(2) [DITTO
3HT# ... OUTPARAM 7,AWORK3 [PARAM BEING (O),(U) OR (O,U)
3HWW ... BRN TMESS
3HYD ...SBOTHWR
3J22 ... JBC SUSWR,3,BFOPWR [J IF TAPE USER-WRONGED ONLY
3J3J ... ADN 1 2 [OPERATOR & USER WRONGED
3J56 ... LDN 7 2 [NO. OF EXTRA CHARS.
3J6N ... BRN SUSWR
3J9S ...TMESS
3J?B DOWN DTSUBS,10 [MESSAGE ABOUT FAILED INCS.
3JR2 MFREEW FLIB,FLINC
3K=L BRN NEXTFLINC
3KQ= OPENA OPENSYS XBRA,SERIAL,GENERAL [SYSTEM.SERIAL OPENED BEFORE INCINDEX
3L9W [CLOSED TO AVOID INTERLOCKS-SO THAT
3LPG [BOTH GET UPDATED
3M96 CLOSEDIR
3MDY ... STARTACT RET [KICK DTS IN CASE TAPES IT REQUIRES HAV
3MFX ... FSHCODE A,XFSHATRAN
3MGW ...(
3MHT ... TRANCHKN FSHTHTW,EQUAL,XFSHATRAN,XFSHATRAN [J IF NOT FROM M/C B
3MJS ... FSHMOVE START [:SYSTEM.SERIAL HAS BEEN OPENED IN A
3MKR ... TRANSFIN [RETURN TO MACHINE B
3MLQ ...XFSHATRAN
3MMP ...)
3MNQ UP
3N8B [
3NN2 [ SEARCH THROUGH INCINDEX RECORDS TAPES,LOOKING FOR OCCURRENCE IN
3P7L [ GLIST BLOCK
3PM= [
3Q6W TPGLIST
3QLG MHUNTW 3,FILE,FRB
3R66 TPLD LDX 4 AMTS(3) [COUNT OF TSNS IN THIS INCINDEX REC.
3RKQ SMO FX1
3S5B LDX 6 NGTMASK
3SK2 ANDX 6 A1+1(2) [TSNS IN GLIST ARE LIABLE TO HAVE
3T4L [ BIT 0 SET.
3TJ= BZE 6 NXTGLIST [IF TSN=0,PARAMETER INCORRECT
3W3W [
3WHG [ COMPARE TSN IN X6 WITH THOSE IN INCINDEX RECORD
3X36 [
3XGQ NXTINC
3Y2B BXE 6 AMAG(3),TPFOUND [J IF TSNS EQUAL
3YG2 ADN 3 INCMAGLEN [POINT TO NEXT ENTRY
3Y^L BCT 4 NXTINC [J IF MORE TSNS IN RECORD
3^F= [
3^YW [ PICK UP NEXT TSN FROM COMMAND
42DG [
42Y6 NXTGLIST
43CQ ADN 2 1
43XB BCT 5 TPGLIST
44C2 [
44WL [ ALL TAPES IN THIS RECORD CHECKED
45B= [
45TW LDX 2 FX2
46*G LDX 0 AWORK2(2)
46T6 BZE 0 RECOK [J IF RECORD DOES NOT NEED REWRITING
47#Q [
47SB [ REWRITE RECORD-TAPE WRONG BITS HAVE BEEN ALTERED
48#2 [
48RL MHUNTW 3,FILE,FRB
49?= NAME 3,FILE,FWB
4==G REWRITE
4=Q6 MFREEW FILE,FWB
4?9Q STOZ AWORK2(2) [RESET'DO NOT REWRITE THIS RECORD'
4?PB BRN NXTREC
4#92 [
4#NL [ RECORD HAS NOT BEEN ALTERED
4*8= [
4*MW RECOK MFREEW FILE,FRB
4B7G BRN NXTREC
4BM6 [
4C6Q [ THIS TAPE IS BEING RIGHTED OR WRONGED
4CLB [
4D62 TPFOUND
4D?8 ...#UNSET JDUMPTW
4DDB ... STO 6 A1+1(2) [CLEAR B0 IN AONBS GLIST
4DKL BBS 2,AMAGSTATE(3),NXTGLIST [IF TAPE RETURNED,DONT MARK IT
4F5= SMO FX2
4FJW ... LDX 1 AWORK1 [IF B0 SET,THEN TAPEWRONG COMMAND
4G4G ... BNG 1 TPWRONG [IF B0 SET,THEN TAPEWRONG COMMAND
4GJ6 [
4H3Q [ TAPE RIGHT COMMAND
4HHB [
4J32 [CLEAR UNVERIFIED BIT IN ALL FREQS
4JGL LDX 1 BOLC [SEARCH ALONG OLC
4JMR ...XLOOP LDX 1 FPTR(1) [NEXT FREQ
4JPG ... BXE 1 CXOL,XEND [CXOL PTS TO END OF OFLC
4K96 ... BC 1,BINCUNVERR [CLEARS UNVERIFIED BIT
4MDB BRN XLOOP
4MN8 XEND LDX 4 2 [SAVE X2
4MY2 STARTACT RET [KICK SCHEDULER
4N7S LDX 2 4 [RESTORE X2
4N?Y ... SMO FX2
4N*# ... LDX 1 AWORK1 [IF B2 SET,THEN USER CONTEXT
4NBN ... BBS 2,1,USER
4ND4 ... BC 3,BMOPWR [CLEAR OPERATOR WRONGED BIT
4NDQ ...#UNSET JDUMPTW
4NFD ... BC 3,BMTBWR
4NG6 ... JBC SETAVEST,3,BMUSWR [J IF NOT STILL WRONGED
4NJ8 ... BRN NOTALLWRNG
4NKJ ...USER BC 3,BMUSWR [CLEAR USER WRONGED BIT
4NLY ... JBS NOTALLWRNG,3,BMOPWR [J IF STILL WRONGED
4NMB ...SETAVEST
4NMS ... MHUNTW 1,FILE,FRB
4NN= ...#UNS FPD
4NNN ... JBS NOTALLWRNG,1,BIUNFIN [DONT SET AVEST IF DUMPER RECORD
4NP6 ... BS 1,BIAVEST [INC. NOW VERIFIED
4PWG NOTALLWRNG
4QB6 TPCOM SMO FX2
4QTQ STO 6 AWORK2 [SET'REWRITE RECORD'SWITCH NON ZERO
4R*B BRN NXTGLIST
4RT2 [
4S#L [ TAPE WRONG COMMAND
4SS= [
4T?W TPWRONG
4T#R ...#UNSET JDUMPTW
4T*N ... BBS 3,1,TPTBWRONG [J IF DUMP PARAM
4TBK ... BBS 2,1,USERW [J IF USERWRONG
4TCG ... JBS NXTGLIST,3,BMOPWR [J IF ALREADY OPERATOR WRONGED
4TDC ... BS 3,BMOPWR [SET OPERSTOR WRONGED BIT
4TF# ... BRN THUNT
4TFD ...#UNSET JDUMPTW
4TFJ ...(
4TFN ...TPTBWRONG
4TFS ... BS 3,BMTBWR
4TFY ... BRN NOTALLWRNG
4TG4 ...)
4TG9 ...USERW JBS NXTGLIST,3,BMUSWR [J IF ALREADY USER WRONGED
4TH6 ... BS 3,BMUSWR [SET USER WRONGED BIT
4TJ3 ...THUNT
4TJY ... LDX 0 AMAGSTATE(3)
4TKT ... SMO FX2
4TLQ ... STO 0 AWORK4 [STORE CURRENT STATE OF TAPE
4TMM ... MHUNTW 3,FILE,FRB
4Y9L LDX 4 AMTS(3) [COUNT OF ENTRIES IN INCINDEX RECORD
4YP= LDX 7 AINCNO(3) [LOAD INC NO INTO X7
4^8W NXTCHECK
4^BN ... JBS TCON,3,BMUSWR [J IF USER WRONGED
4^DL ... JBC NOTALLWRNG,3,BMOPWR [J IF NOT ALL MTS WRONGED
4^GJ ...TCON
5286 ADN 3 INCMAGLEN
52MQ BCT 4 NXTCHECK
537B [
53M2 [ ALL TAPES CONTAINING THIS INC.ARE WRONGED
546L [
54L= [
555W ...[ IF INC. UNREL. OR OBS. DONT DO MESS. ABOUT FILES...ELSE
55KG [ IF DUMPING ON TAPE WHICH GETS WRONGED,THE NO OF THE INC
5656 [ ABOUT TO BE MADE IS PUT IN THE LIST
56JQ [
56R2 ... MHUNTW 3,FILE,FRB [ RESET X3 TO START OF BLOCK
56^= ... JMBS TPCOM,3,BINSUITRV,BIOBS
577G ... LDX 4 AINCD(3)
57*Q ... BZE 4 TPCOM [ IGNORE ALSO NON STARTED INCS
57J2 MHUNTW 1,AONBS,GLIST
583L SBX 2 1
58H= SMO FX2
592W STO 2 AWORK3 [PRESERVE RELATIVISED X2
59GG LDX 2 FX2
5=FQ [ X6 CONTAINS TSN,X7 INC.NO.
5=^B [
5?F2 [ HUNT FOR AND UPDATE,OR SET UP,A BLOCK FOR THE LIST OF INCS MADE
5?YL [ UNAVAILABLE BY THE WRONGING OF THIS TAPE
5#D= [
5#XW WRNGDALL
5*CG CALL 3 SEARCHFLINC
5*X6 BRN NOFLINC [J IF NO MORE FLINC BCLOCKS
5BBQ BXU 6 A1+1(2),WRNGDALL [J IF WRONG TSN
5BWB [X2 POINTS TO FLINC
5CB2 THISFLINC
5CTL LDX 4 A1(2)
5D*= ADN 4 1
5DSW BXL 4 ALOGLEN(2),SMALLER [J IF SPARE ROOM IN BLOCK
5F#G LDX 3 2
5FS6 ADN 4 10
5G3Y ... CHAIN 3,FX2 [ RECHAIN TO FRONT FOR ALTLEN
5G?Q ALTLEN 3,4,FLIB,FLINC [LENGTHEN BLOCK
5GRB BRN WRNGDALL [NOW FIND IT AGAIN
5H?2 SMALLER
5HQL STO 4 A1(2)
5J== PUTIN ADX 2 4
5JPW STO 7 A1(2) [PUT IN INC.NO
5K9G LDX 2 FX2
5L8Q LDX 2 AWORK3(2)
5LNB MHUNTW 1,AONBS,GLIST
5M82 ADX 2 1 [RESET X2
5MML BRN TPCOM
5N7= [
5NLW [ NOFLINC BLOCK FOR TAPE IN X6
5P6G [
5PL6 NOFLINC
5Q5Q SETNCORE 10,2,FLIB,FLINC
5Q=X ... SMO FX2
5Q#L ... LDX 4 AWORK4
5QB* ... STO 4 FLINCST(2) [STORE CURRENT STATE OF TAPE IN FLINC
5QD4 ... LDN 4 3 [PTS TO FIRST INC POSITION IN FLINC
5R52 STO 6 A1+1(2) [SET TSN
5RJL BRN SMALLER
5S4= XBR BRN OPEN [IGNORE BREAK IN
5SHW XBRA BRN OPENA
5SRN ...)
5T3G MENDAREA 20,K99DTWRONG
5TH6 #END
^^^^ ...43742572000100000000