SCHEDMTA860

(George Source)

Macros used: ALTLEN, BS, BXE, BXL, BXU, CLOSETOP, FINDREC, GEOERR, JBS, MBSXD, MFREE, MFREEW, MHUNT, MHUNTW, MONOUT, OPEN, OPENSYS, OUTMESSX, OUTPARAM, READAGAIN, REWIND, SEG, SEGENTRY, SETNCORE, SETREP2, SSEARCH, STEP, STF, TAPEOPEN, TESTREP2, UNNORM, UP, UPPLUS, XWRONG

SCHEDMTA860.txt
22FL ...      SEG SCHEDMTA,860,C.R.JOHNSON,SCHEDULER
22^= ...[   
23DW ...[   
23YG ...      SEGENTRY K1SCHEDMTA,X1SCHEDMTA
24D6 ...      SEGENTRY K2SCHEDMTA,X2SCHEDMTA
24XQ ...      SEGENTRY K3SCHEDMTA,X3SCHEDMTA
25CB ...      SEGENTRY K4SCHEDMTA,X4SCHEDMTA
25X2 ...[   
26BL ...[   
26W= ...[     THIS SEGMENT IS AN OVERFLOW FOR SCHEDMTX (THE RETRIEVAL   
27*W ...[     SYSTEM SCHEDULING SEGMENT) AND DEALS WITH CERTAIN ASPECTS 
27TG ...[     OF RETRIEVEING FILES FROM ALIEN FILESTORE DUMP TAPES. 
28*6 ...[   
28SQ ...[   
29#B ...      SEGENTRY K99SCHEDMTA         [THIS ENTRY POINT IS USED
29S2 ...               +7                  [BY THE 'ALIENDIR' MACRO.
2=?L ...               12HALIENFS          [DEFAULT USERNAME
2=R= ...               12HINCINDEX         [MUST BE 'INCINDEX'  
2?=W ...               +1                  [REEL NUMBER 
2?QG ...               +0                  [ALLOW ANY GENERATION
2#=6 ...               +0                  [AND LANGUAGE.   
2#PQ ...[   
2*9B ...[   
2*P2 ...TEN            +10                 [USED TO CONVERT BINARY TO DEC.  
2B8L ...XINCMISS       +JINCMISS           [MESSAGE PARAMETER IDENTIFIERS   
2BN= ...XINCOFF        +JINCOFF            [
2C7W ...XINCCORR       +JINCCORR           [
2CMG ...XINCWRO        +JINCWRO            [
2D76 ...XINCMSO        +JINCMSO            [
2DLQ ...[   
2F6B ...[   ******************************************************************  
2FL2 ...[   
2G5L ...[     THIS SUBROUTINE SETS UP PARAMETERS FOR AND OUTPUTS THE MESSAGE:-  
2GK= ...[     'SOME RETRIEVES ARE FAILING BECAUSE %B IS %A' 
2H4W ...[          X6 CONTAINS THE %A MESSAGE IDENTIFIER
2HJG ...[   
2J46 ...RVFAIL  
2JHQ ...      SBX   7  FX1                 [RELATIVIZE LINK 
2K3B ...      JBS      XFABFREE,BOLC,BIFDTRVF [J IF MESSAGE ALREADY OUTPUT  
2KH2 ...      OUTMESSX 6                   [OUTPUT %A   
2L2L ...      SETNCORE 11,3,ADATA,CREADL   [SET UP FOR UNNORM   
2LG= ...      STOZ     A1(3)               [CHARACTER COUNT ZREO AS YET 
2L^W ...      UNNORM   TWO                 [CONVERT ENTRANT NAME
2MFG ...      MHUNT    3,ADATA,CREADL      [UNNORM COORDINATES  
2M^6 ...      OUTPARAM A1(3),CPDATA,ADATA,CREADL [OUTPUT %B OF MESSAGE  
2NDQ ...      MFREE    ADATA,CREADL        [NO LONGER NEEDED
2NYB ...      MONOUT   JRVFAIL             [OUTPUT MESSAGE  
2PD2 ...      SEGENTRY K98SCHEDMTA         [USED BY TSRPALL MACRO   
2PXL ...      BS       BOLC,BIFDTRVF       [SET 'RV FAILED MESSAGE OUTPUT' BIT  
2QC= ...      SEGENTRY K97SCHEDMTA         [USED BY TSRPALL MACRO   
2QWW ...XFABFREE                           [
2RBG ...      MFREE    FILE,FABSNB         [FREE FABSNB 
2RW6 ...      ADX   7  FX1                 [RESET LINK  
2S*Q ...      EXIT  7  0                   [EXIT
2STB ...[   
2T*2 ...[   ******************************************************************* 
2TSL ...[   
2W#= ...[     THIS SUBROUTINE CHECKS THAT THE TSN CONTAINED IN X6 IS
2WRW ...[     SECURE (IN :SYSTEM.SERIAL). IF NOT REPLY 'OPWRONG' IS SET.
2X?G ...[   
2XR6 ...TESTSECURE                         [
2Y=Q ...      SBX   7  FX1                 [RELATIVIZE LINK 
2YQB ...      OPENSYS  ,SERIAL,READ        [OPEN :SYTEM.SERIAL  
2^=2 ...      SSEARCH  XNOTSECURE,6        [J IF TSN NOT SECURE 
2^PL ...      CLOSETOP                     [CLOSE SERIAL
329= ...      ADX   7  FX1                 [RESET LINK  
32NW ...      EXIT  7  1                   [   SECURE   
338G ...XNOTSECURE                         [
33N6 ...      CLOSETOP                     [CLOSE SERIAL
347Q ...      SETREP2  OPWRONG             [SET REPLY FOR SCHEDMTX & DTSTART
34MB ...      ADX   7  FX1                 [RESET LINK  
3572 ...      EXIT  7  0                   [   INSECURE 
35LL ...[   
366= ...[   ******************************************************************* 
36KW ...[   
375G ...[     THIS SUBROUTINE CHECKS THAT THE RECORD POINTED TO BY X3   
37K6 ...[     IS A VALID INCINDEX RECORD, I.E. THAT THE FOLLOWING IS TRUE:  
384Q ...[   
38JB ...[        [AINCRH] = AMAGR + [AMTS]*INCMAGLEN
3942 ...[   
39HL ...[     LINK IS X7
3=3= ...[   
3=GW ...[     X3 -> INCINDEX RECORD(RECORD HEADER)  
3?2G ...[   
3?G6 ...RECCHECK                           [
3?^Q ...      LDX   5  AMTSR(3)            [X5 => NO OF TAPES   
3#FB ...      LDN   4  INCMAGLEN           [X4 => LENGTH OF TAPE ENTRY  
3#^2 ...      MPY   5  4                   [X6 => LENGTH OF TAPE ENTRIES
3*DL ...      ADN   6  AMAGR               [X6 => LENGTH OF RECORD? 
3*Y= ...      LDEX  5  AINCRHR(3)          [X5 => LENGTH OF RECORD HEADER   
3BCW ...      BXU   5  6,EXIT1             [J IF TAPE ENTRIES OVERFLOW RECORD   
3BXG ...      SBN   5  AMAGR               [RECORD MUST BE > AMAGR-1
3CC6 ...      BNG   5  EXIT1               [J IF RECORD TOO SHORT   
3CWQ ...      EXIT  7  1                   [VALID RECORD
3DBB ...EXIT1                              [
3DW2 ...      EXIT  7  0                   [INVALID RECORD  
3F*L ...[   
3FT= ...[   
3G#W ...[   ******************************************************************  
3GSG ...[   
3H#6 ...[     THIS ENTRY POINT IS ENTERED DOWN FROM SCHEDMTX IN ORDER   
3HRQ ...[     TO ATTEMPT TO OPEN THE ALIEN FILESTORE INCINDEX (FILESTORE
3J?B ...[     NUMBER SPECIFIED IN X6), POSITION ON THE RELEVENT 
3JR2 ...[     INCREMENT (SPECIFIED IN X4) AND TO PERFORM SUFFICIENT 
3K=L ...[     VALIDITY CHECKING SO THAT THE RETRIEVAL SYSTEM WILL   
3KQ= ...[     NOT BREAK!!   
3L9W ...[   
3LPG ...X1SCHEDMTA                         [
3M96 ...      DVS   5  TEN(1)              [CONVERT FILESTORE NUMBER TO DEC.
3MNQ ...      LDN   7  2                   [X7 => COUNT OF REL. CHARS.  
3N8B ...      SLL   6  18                  [QUOTIENT IN TOP CHAR POSIT. 
3NN2 ...      SLL   5  12                  [REMAINDER IN SECOND POSIT.  
3P7L ...      BNZ   6  SETUPFAB            [J IF TWO CHARS  
3PM= ...      SBN   7  1                   [ONLY ONE CHARACTER  
3Q6W ...      SLL   5  6                   [REMAINDER IN TOP POSITION   
3QLG ...SETUPFAB                           [
3R66 ...      ORX   6  5                   [X6 => FILESTORE IN CHARS
3RKQ ...      BZE   6  (GEOERR)            [X6 ILLEGAL  
3S5B ...      SETNCORE 10,3,FILE,FABSNB    [FOR OPEN MACRO  
3SK2 ...      STO   6  ACOMMUNE1(2)        [FILESTORE NUMBER
3T4L ...      LDN   0  10                  [RECORD HEADER   
3TJ= ...      STO   0  A1(3)               [STORE IT
3W3W ...      LDX   0  ACES                [X0 => #20202020 
3WHG ...      STO   0  A1+1(3)             [PUT SPACES IN FABSNB
3X36 ...      LDN   0  A1+1(3)             [NOW MOVE SPACES 
3XGQ ...      LDN   1  A1+2(3)             [DOWN FABSNB 
3Y2B ...      MOVE  0  5                   [ONLY FIVE   
3YG2 ...      LDX   1  FX1                 [RESET X1
3Y^L ...      LDX   0  K99SCHEDMTA(1)      [X0 => LENGTH OF USERNAME
3^F= ...      BZE   0  (GEOERR)            [MUSN'T BE ZERO  
3^YW ...      LDN   1  K99SCHEDMTA+1(1)    [X1 -> USERNAME  
42DG ...      LDN   2  A1+1(3)             [A1+1 -> USERNAME IN FABSNB  
42Y6 ...      SMO      0                   [LENGTH OF MOVE  
43CQ ...      MVCH  1  0                   [USERNAME MOVED IN   
43XB ...      LDX   1  FX2                 [
44C2 ...      LDN   1  ACOMMUNE1(1)        [X1 -> FILESTORE NUMBER  
44WL ...      SMO      7                   [X7 => 1 OR 2
45B= ...      MVCH  1  0                   [MOVE IN FILESTORE NUMBER
45TW ...      LDX   1  FX1                 [RESET X1
46*G ...      LDN   2  K99SCHEDMTA+4(1)    [X2 -> LOCAL NAME
46T6 ...      LDN   3  A1+4(3)             [X3 -> LOCAL NAME IN FABSNB  
47#Q ...      MOVE  2  6                   [MOVE IN 'INCINDEX' ETC. 
47SB ...[   
48#2 ...[     NOW OPEN INCINDEX,
48RL ...[   
49?= ...      OPEN  (GEOERR),READ,QUERY,NOWAIT  
49QW ...[   
4==G ...[     AND TEST REPLIES. 
4=Q6 ...[   
4?9Q ...      TESTREP2 OK,XCHECK,LOST,XMISSING,MAG,XOFFLINE 
4?PB ...      TESTREP2 NOFILE,XMISSING,NOUSER,XMISSING,VRYWRONG,XWRONG  
4#92 ...      TESTREP2 WRONG,XWRONG 
4#NL ...      GEOERR   1,ALIENFS           [UNEXPECTED REPLY
4*8= ...XCHECK                             [
4*MW ...[   
4B7G ...[     X4 CONTAINS INCREMENT NUMBER  
4BM6 ...[     SEARCH FOR THIS RECORD IN INCINDEX
4C6Q ...[   
4CLB ...      BS       BOLC,BIFDTOPEN      [SET THE 'INCINDEX OPEN' BIT 
4D62 ...      FINDREC ,AINCNOR,4,XCORRUPT  [J IF RECORD NOT FOUND   
4DKL ...      READAGAIN                    [INCINDEX RECORD FOUND   
4F5= ...      MHUNTW   3,FILE,FRB          [X3 -> INCINDEX RECORD   
4FJW ...      ADN   3  A1                  [SET UP FOR RECCHECK 
4G4G ...      CALL  7  RECCHECK            [CHECK FOR INVALID INCINDEX RECORD   
4GJ6 ...      BRN      XCORRUPT            [INVALID RECORD  
4H3Q ...      LDX   5  AMTSR(3)            [X5 => NO OF TAPES   
4HHB ...      BZE   5  XCORRUPT            [J IF NO TAPES   
4J32 ...      LDEX  2  AINCRHR(3)          [X2 => LENGTH OF RECORD  
4JGL ...      SBN   2  AMAGR               [X2 => LENGTH OF TAPE ENTRIES
4K2= ...      BZE   2  XCORRUPT            [J IF NO TAPE ENTRIES
4KFW ...XLOOP                              [
4K^G ...      SBN   2  INCMAGLEN           [SET X2  
4LF6 ...      SMO      2                   [
4LYQ ...      LDX   0  AMAGR(3)            [X0 => TSN   
4MDB ...      BPZ   0  UP                  [J IF POSITIVE TSN FOUND 
4MY2 ...      BNG   2  XCORRUPT            [J IF NONEVEN TAPE ENTRY LENGTH  
4NCL ...      BNZ   2  XLOOP               [J IF MORE TAPE ENTRIES  
4NX= ...      BRN      XCORRUPT            [J IF ALL TSNS ARE NEGATIVE  
4PBW ...UP                                 [
4PWG ...      UP                           [GO UP   
4QB6 ...XMISSING                           [ALIEN INCINDEX IS MISSING   
4QTQ ...      LDX   6  XINCMISS(1)         [X6 => MESSAGE IDENTIFIER FOR RVFAIL 
4R*B ...      CALL  7  RVFAIL              [OUTPUT MESSAGE  
4RT2 ...      BRN      XPERMLST            [
4S#L ...XWRONG                             [ALIEN INCINDEX IS OF WRONG TYPE 
4SS= ...      LDX   6  XINCWRO(1)          [X6 => MESSAGE IDENTIFIER FOR RVFAIL 
4T?W ...      CALL  7  RVFAIL              [OUTPUT MESSAGE  
4TRG ...      BRN      XPERMLST            [
4W?6 ...XMISSORDER                         [ALIEN INCINDEX IS MISSORDERED   
4WQQ ...      MFREEW   FILE,FDINCS         [
4X=B ...      LDX   6  XINCMSO(1)          [X6 => MESSAGE IDENTIFIER FOR RVFAIL 
4XQ2 ...      CALL  7  RVFAIL              [OUTPUT MESSAGE  
4Y9L ...      BRN      XPERMLST            [
4YP= ...XFREEFDINC                         [
4^8W ...      MFREEW   FILE,FDINCS         [FREE FDINCS BLOCK   
4^NG ...XCORRUPT                           [ALIEN INCINDEX IS CORRUPT   
5286 ...      LDX   6  XINCCORR(1)         [X6 => MESSAGE IDENTIFIER FOR RVFAIL 
52MQ ...      CALL  7  RVFAIL              [OUTPUT MESSAGE  
537B ...XPERMLST                           [FILE IS PERMENTLY LOST  
53M2 ...      LDX   2  FX2                 [
546L ...      MBSXD    7,BPERLOST,BTERMST  [MASK FOR PERMENTLY LOST INCREMENT   
54L= ...      STO   7  ACOMMUNE1(2)        [STORE FOR SCHEDMTX  
555W ...      BRN      UPPLUS1             [
55KG ...XOFFLINE                           [ALIEN INCINDEX IS OFFLINE   
5656 ...      LDX   6  XINCOFF(1)          [X6 => MESSAGE IDENTIFIER FOR RVFAIL 
56JQ ...      CALL  7  RVFAIL              [OUTPUT MESSAGE  
574B ...XTEMPLST                           [FILE IS TEMPORARILY LOST
57J2 ...      LDX   2  FX2                 [
583L ...      MBSXD    7,BTEMLOST,BTERMST  [MASK FOR TEMPORARILY LOST FILE  
58H= ...      STO   7  ACOMMUNE1(2)        [STOR FOR SCHEDMTX   
592W ...UPPLUS1                            [
59GG ...      UPPLUS   1                   [GO UP + 1   
5=26 ...[   
5=FQ ...[   ******************************************************************  
5=^B ...[   
5?F2 ...[    THIS ENTRY POINT SETS UP A FDINCS BLOCK FOR AN ALIEN   
5?YL ...[     TAPE WHOSE TSN IS SPECIFIED IN AWORK2 (FILESTORE NUMBER   
5#D= ...[     IS IN X6).
5#XW ...[   
5*CG ...X2SCHEDMTA                         [
5*X6 ...      SETNCORE 7,3,FILE,FDINCS     [X3 -> FDINCS BLOCK  
5BBQ ...      STOZ     AWORK1(2)           [SET FIRST INC ZERO  
5BWB ...      STOZ     FDINCNO(3)          [SET COUNT OF ENTRIES ZERO   
5CB2 ...      LDX   0  AWORK2(2)           [X0 => TSN   
5CTL ...      STO   0  FDINCTSN(3)         [STORE TSN IN FDINCS 
5D*= ...      BZE   6  (GEOERR)            [X6 SHOULDN'T BE ZERO
5DSW ...      STOZ     FDINCWOR(3)         [SET FDINC STATE WORD ZERO   
5F#G ...      STF      3,FDINCFSNO,6       [STORE FILESTORE NUMBER  
5FS6 ...      REWIND                       [POSITION AT START OF INCINDEX   
5G?Q ...T1MTA                              [
5GRB ...      STEP                         [X3 -> NEXT RECORD   
5H?2 ...      BZE   3  T4MTA               [J IF END OF INCINDEX
5HQL ...      CALL  7  RECCHECK            [CHECK VALIDITY OF THIS RECORD   
5J== ...      BRN      XFREEFDINC          [J IF INVALID RECORD 
5JPW ...      LDEX  2  AINCRHR(3)          [X2 => LENGTH OF RECORD  
5K9G ...      SBN   2  AMAGR               [X2 => LENGTH OF TAPE ENTRIES
5KP6 ...      BZE   2  T1MTA               [J IF NO TAPE ENTRIES
5L8Q ...      SMO      FX2                 [X2 IS CORRUPT   
5LNB ...      LDX   0  AWORK2              [X0 => TSN   
5M82 ...T2MTA                              [
5MML ...      SBN   2  INCMAGLEN           [SET X2  
5N7= ...      SMO      2                   [
5NLW ...      BXE   0  AMAGR(3),T3MTA      [J IF TSN FOUND IN INCINDEX RECORD   
5P6G ...      BNG   2  XCORRUPT            [J IF NONEVEN TAPE ENTRY LENGTH  
5PL6 ...      BNZ   2  T2MTA               [J IF MORE ENTRIES   
5Q5Q ...      BRN      T1MTA               [READ NEXT RECORD
5QKB ...T3MTA                              [TAPE ENTRY FOUND
5R52 ...      ADX   2  3                   [X2 -> TAPE ENTRY
5RJL ...      LDX   7  AINCNOR(3)          [X7 => INCREMENT NUMBER  
5S4= ...      BNG   7  XFREEFDINC          [J IF NEG INC NO 
5SHW ...      SMO      FX2                 [
5T3G ...      LDX   5  AWORK1              [X5 => PREVIOS INC   
5TH6 ...      BXL   7  5,XMISSORDER        [J IF INCINDEX MISSORDERED   
5W2Q ...      BXE   7  5,XFREEFDINC        [J IF INC NOS EQAL   
5WGB ...      SMO      FX2                 [
5X22 ...      STO   7  AWORK1              [STORE THIS INCREMENT NMBER  
5XFL ...      MHUNTW   2,FILE,FDINCS       [X2 -> FDINCS
5X^= ...      LDX   3  FDINCNO(2)          [X3 => NUMBER OF ENTRIES SO FAR  
5YDW ...      LDN   0  1                   [
5YYG ...      ADS   0  FDINCNO(2)          [INCREASE ENTRY COUNT BY ONE 
5^D6 ...      SMO      2                   [
5^XQ ...      STO   7  FDINCINC(3)         [INCREMENT NUMBER FOR THIS ENTRY 
62CB ...      ADN   3  4                   [INCREASE LENGTH?
62X2 ...      BXL   3  ALOGLEN(2),T1MTA    [J IF BLOCKSIZE OK   
63BL ...      LDX   6  2                   [
63W= ...      ADN   3  8                   [INCREASE LENGTH BY 8 ENTRIES
64*W ...      ALTLEN   6,3,FILE,FDINCS     [INCREASE BLOCKSIZE  
64TG ...      BRN      T1MTA               [START AGAIN 
65*6 ...T4MTA                              [FDINCS SET UP OK
65SQ ...      MFREE    FILE,FABSNB         [KEPT TILL NOW FOR ERROR REPORTING   
66#B ...      BRN      UP                  [
66S2 ...[   
67?L ...[   ******************************************************************  
67R= ...[   
68=W ...[     THIS ENTRY POINT IS USED TO OPEN AN ALIEN FILESTORE TAPE  
68QG ...[     IF IT IS FOUND TO BE SECURE - ENTERED DOWN FROM SCHEDMTX  
69=6 ...[   
69PQ ...[          X6 => TSN OF TAPE
6=9B ...[   
6=P2 ...X3SCHEDMTA                         [
6?8L ...      CALL  7  TESTSECURE          [IS TSN SECURE (IN SERIAL)?  
6?N= ...      BRN      UPPLUS1             [J IF INSECURE   
6#7W ...      TAPEOPEN (GEOERR),6,,INFORM,NOTOL,REPLY   
6#MG ...      BRN      UP                  [GO UP   
6*76 ...[   
6*LQ ...[   ******************************************************************  
6B6B ...[   
6BL2 ...[     THIS ENTRY POINT IS USED TO OPEN AN ALIEN FILESTORE TAPE  
6C5L ...[     IF IT IS FOUND TO BE SECURE - ENTERED DOWN FROM DTSTART   
6CK= ...[   
6D4W ...[          X4 => TSN OF TAPE
6DJG ...[   
6F46 ...X4SCHEDMTA                         [
6FHQ ...      LDX   6  4                   [X6 => TSN   
6G3B ...      CALL  7  TESTSECURE          [IS TSN SECURE (IN SERIAL)?  
6GH2 ...      BRN      UPPLUS1             [J IF INSECURE   
6H2L ...      TAPEOPEN (GEOERR),6,,NOTOL,REPLY  
6HG= ...      BRN      UP                  [
6H^W ...#END
^^^^ ...347720260001
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1