MODEA65

(George Source)

Macros used: COMERR, COOR3, DFJUMPS, DFSET, ENDCOM, FINDPEREC, FPCACA, FPERENT, GEOERR, HUNT, JALLOC, JNOTMT21S, JUNBUSY, JWRONG, LCAP, LGEOG, LMODEQ, LPROP, MENDAREA, MHUNT, MTINFORM, OUTNUM, OUTPARAM, PERCON, SEGENTRY, SETMODEQ, SETUPCORE, SMODE, SPARABEG, SPARANOX, SWITRACE, TESTREP

MODEA65.txt
22FL    #LIS  K0MODEA>K0LIBRARY>K0ALLGEO
22^=    #SEG           MODEA65             [M.C.MACDONALD   
23DW                   8HMODEA65
23YG    #     THIS SEGMENT IS ENTERED FROM THE MODE SEGMENT 
24D6    #     FOR THE SWITCH ALL DECKS AND USER CONTEXT CASES   
24XQ    #   
25CB          SEGENTRY K1MODEA,QK1MODEA 
25X2          SEGENTRY K2MODEA,QK2MODEA 
26BL    #   
26W=    #     CONSTANTS 
27*W    #   
27TG    #   
28*6    #     CONSTANTS 
28SQ    #   
29#B    SNA            +1   
29S2                   4H*  
2=?L    TFIVE          +5   
2=R=    TEN            +10  
2?=W    TPRB
2?QG    #HAL           APERI+APERIRES,0 
2#=6    TOLP
2#PQ    #HAL           AOLPT,0  
2*9B    #   
2*P2    SMON           +10  
2B8L    SMODE          +0   
2BN=                   +4   
2C7W                   +8   
2CMG                   +12  
2D76                   +16  
2DLQ                   +20  
2F6B                   +24  
2FL2                   +28  
2G5L                   +32  
2GK=                   +36  
2GMT ...#UNS JMT21  
2GQD ...(   
2GT3 ...            +40 
2GXL ...            +44 
2H29 ...)   
2H4W    #   
2HJG    #     SUBROUTINES   
2J46    #   
2JHQ    #                                  SCVM 
2K3B    #     SUBROUTINE SDECC  
2KH2    SDECC LDX   0  A1(3)               [NR OF CHARS 
2L2L          BZE   0  SD1  
2LG=          ADN   0  1
2L^W    SD1   LDX   1  3
2MFG          SLC   1  2
2M^6          ADX   1  0
2NDQ          SRC   1  2
2NYB          LDX   5  A1+1(2)             [DECK NR 
2PD2          SMO      FX1  
2PXL          DVS   4  TEN  
2QC=          BZE   5  SD2                 [UNITS ONLY  
2QWW          DCH   5  A1+1(1)             [TENS
2RBG          BCHX  1  £
2RW6    SD2   DCH   4  A1+1(1)             [UNITS   
2S*Q          BCHX  1  £
2STB          LDN   0  #34                 [',' 
2T*2          DCH   0  A1+1(1)  
2TSL          SLC   1  2
2W#=          SLC   3  2
2WRW          SBX   1  3
2X?G          SRC   3  2                   [RESTORE POINTER 
2XR6          STO   1  A1(3)               [NEW BLOCK COUNT 
2Y=Q          EXIT  7  0
2YQB    SWITCHQA
2^=2          LPROP    3,0  
2^PL    #SKI  K6MODE>199-199
329=          SWITRACE 0,MOAPROPS   
32NW          ANDN  0  #200                [9 TRACK TAPE?   
338G          BZE   0  SWQ1 
33N6          LDX   0  GSIGN
347Q          EXIT  7  0
34MB    SWQ1  LCAP     3,0                 [CAPABILITIES
3572    #SKI  K6MODE>199-199
35LL          SWITRACE 0,MOACAPS
366=          STO   0  AWORK2(2)           [SAVE THEM   
36KW          ANDN  0  #10                 [DENSITY SWITCHABLE BY PROCESSOR?
375G          BNZ   0  SWQ5                [J. IF NOT 1974  
37K6          LDN   0  #14  
384Q          ANDS  0  AWORK3(2)           [ADJUST DENSITY TO PRESENT SETTING   
38JB    #SKI  K6MODE>299-299
3942          SWITRACE 0,MOANSWD
39HL          LMODEQ   3,0  
3=3=          ANDN  0  #60                 [CURRENT DENSITY 
3=GW          ORS   0  AWORK3(2)
3?2G          BRN      SWQ3 
3?G6    SWQ5  LDN   0  #40  
3?^Q          ANDX  0  AWORK3(2)           [HIGH DENSITY REQUIRED?  
3#FB          BZE   0  SWQ3                [J. IF NOT   
3#^2    #SKI  K6MODE>299-299
3*DL          SWITRACE 0,MOAHDEN
3*Y=          LDN   0  4
3BCW          ANDX  0  AWORK2(2)           [J. IF NOT AVAILABLE 
3BXG          BZE   0  SWQ2 
3B^9 ...#UNS     JMT21  
3C2Y ...(   
3C4M ...      LDN   0  8                    [   
3C6B ...      ANDX  0  AWORK3(2)            [J IF SHORT GAP NOT REQUIRED
3C85 ...      BZE   0  SWQ6                 [  WITH HIGH DENSITY
3C9S ...      JNOTMT21S 3,SWQ2  
3C?H ...      BRN      SWQ4 
3C*= ...)   
3CC6    SWQ3  LDN   0  8
3CWQ          ANDX  0  AWORK3(2)           [SHORT GAP REQUIRED  
3C^W ...#UNS     JMT21  
3D52 ...      BZE   0  SWQ6 
3D86 ...#UNS     JMT21  
3D?= ...#SKI
3DBB          BZE   0  SWQ4 
3DW2    #SKI  K6MODE>299-299
3F*L          SWITRACE 0,MOASGAP
3FT=          LDN   0  2
3G#W          ANDX  0  AWORK2(2)           [J IF AVAILABLE  
3GSG          BNZ   0  SWQ4 
3H#6    SWQ2  NGN   0  1
3HRQ          EXIT  7  0
3HTJ ...#UNS     JMT21  
3HXB ...(   
3H^8 ...SWQ6
3J32 ...      JNOTMT21S 3,SWQ4  
3J4S ...      HUNT     1,CPAR,GPERCON   
3J6L ...      BNG   1  SWQ7 
3J8D ...      LDN   0  1
3J== ...      ANDX  0  A1+3(1)  
3J#4 ...      BZE   0  SWQ7 
3J*W ...      ANDX  0  A1+2(1)  
3JCN ...      BNZ   0  SWQ2                 [WRITE WITH LONG GAP ON MT21S   
3JFG ...SWQ7
3JH# ...      LDN   0  8
3JK6 ...      ORS   0  AWORK3(2)            [SET SHORT GAP FOR MT21S
3JLY ...)   
3JNQ ...SWQ4  LDX   0  AWORK2(2)
3JR2          SRL   0  3                   [SWITCHABLE BIT  
3K=L          LDX   1  FX1  
3KQ=          EXIT  7  0
3L9W    #   
3LPG    #                                  ENTRY POINT 1
3M96    #     USER  CONTEXT CASE
3MNQ    #     THE MODE SEGMENT LEAVES THE MODE SPECIFIED IN X4  
3N8B    #     AND AS A BIT PATTERN IN AWORK3
3NN2    #   
3P7L    QK1MODEA
3PM=    #SKI  K6MODE>99-99  
3Q6W          SWITRACE 0,MOUSER 
3QLG          SPARABEG 1,SNA(1)            ['*' PARAM   
3R66          MHUNT    3,CPB,CUNI   
3RKQ          LDX   0  ANUM(3)  
3S5B          BPZ   0  PU1                 [EXISTS  
3SK2    PU2   COMERR   JPARMIS,APER        [NON-EXISTENT PARAMETER  
3T4L    PU1   BZE   0  PU2                 [NULL PARAMETER  
3TJ=          LDX   6  JPARNUM(3)          [PARAM. NR   
3W3W          PERCON
3WHG          TESTREP  OK,PU3              [OK  
3X36          ENDCOM                       [NOT VALID   
3XGQ    PU3   SPARANOX 6                   [FOR ERROR MESSAGE,IF ANY
3Y2B          MHUNT    3,CPAR,GPERCON   
3YG2          LDX   0  A1(3)
3Y^L          SRL   0  15   
3^F=          TXU   0  TFIVE(1) 
3^YW          BCC      PU4                 [MT  
42DG    PU14  COMERR   HNOTOL              [NOT ONLINE MT   
42Y6    PU4   STO   4  AWORK4(2)           [REMEMBER MODE   
43CQ          LDX   4  A1(3)
43XB          LDX   0  CONTEXT(2)   
44C2          SLL   0  14   
44WL          BNG   0  PU5                 [CORE IMAGE  
45B=    PU9   COMERR   JXEXIST             [DOES NOT EXIST  
45TW    PU5   FPCACA   3,FX2               [FIND APET   
46*G    PU7   LDX   3  FPTR(3)             [NEXT BLOCK  
46T6          LDX   0  ATYPE(3) 
47#Q          ANDX  0  HALFTOP  
47SB          TXU   0  TPRB(1)  
48#2          BCC      PU6                 [PRB FOUND   
48RL          TXL   0  CACT 
49?=          BCS      PU7                 [NOT AN ACTIVITY BLOCK   
49QW          GEOERR   1,XPRB              [PRB LOST
4==G    PU6   LDN   2  A1(3)
4=Q6    #SKI  K6MODE>199-199
4?9Q          SWITRACE 3,MOAPRB 
4?PB          FPERENT  4,2,2,4             [FIND ENTRY  
4#92          BNG   2  PU9  
4#NL    PU8   LDX   1  1(2)                [PRB ENTRY   
4*8=          BNG   1  PU11                [NOT ONLINE  
4*MW          ANDX  1  BITS22LS            [GET DEVICE LIST POINTER 
4B7G          BRN      PU20 
4BM6    PU11  LDX   3  FPTR(3)             [NEXT BLOCK  
4C6Q          LDX   0  ATYPE(3) 
4CLB          TXL   0  CACT 
4D62          BCS      PU11                [NOT ACTIVITY
4DKL          LDX   1  FX1  
4F5=          ANDX  0  HALFTOP  
4FJW          TXU   0  TOLP(1)  
4G4G          BCC      PU12                [AOLPT   
4GJ6          GEOERR   1,XPROG  
4H3Q    PU12  BCT   4  PU11 
4HHB    #SKI  K6MODE>199-199
4J32          SWITRACE 3,MOAOLPT
4JGL          LDX   0  ATMARK(3)
4K2=          SBN   0  2
4KFW          BNZ   0  PU14                [NOT OL MT   
4K^G    PU13
4LF6          LDX   1  CPPTR(3)            [DEVICE LIST POINTER 
4LYQ          BNZ   1  PU20 
4MDB          LDX   1  AWORK4(3)
4MY2          BNZ   1  PU20 
4NCL          GEOERR   1,DLISTPTR   
4NX=    PU20  LDX   3  1
4PBW          LDX   2  FX2  
4PWG    #SKI  K6MODE>99-99  
4QB6          SWITRACE 3,MOADLPTR   
4QTQ          CALL  7  SWITCHQA            [SWITCHABLE ?
4R*B          BPZ   0  PU16 
4RT2          OUTNUM   AWORK4(2),OCTAL     [MODE
4S#L          COMERR   HMNAV               [NOT AVAILABLE   
4SS=    PU16
4T?W          JUNBUSY  3,PU10   
4TRG          COOR3    #41                 [CO-ORDINATE IF DECK BUSY
4W?6          BRN      PU16 
4WQQ    PU10  SETMODEQ 3,AWORK3(2)         [RESET CURRENT MODE  
4X=B    #SKI  K6MODE>199-199
4XQ2          SWITRACE AWORK3(2),MODEA  
4Y9L          ENDCOM                       [FINISHED !  
4YP=    #                                  ENTRY POINT 2
4^8W    #     SWITCH ALL DECKS CASE 
4^NG    #   
5286    QK2MODEA
52MQ          LDX   0  AWORK3(2)           [MODE
537B    #SKI  K6MODE>99-99  
53M2          SWITRACE AWORK3(2),MODEALL
546L          ANDN  0  #60                 [DENSITY BITS
54L=          SBN   0  #40                 [IF HIGH DENSITY SPECIFIED   
555W          BNZ   0  PA1                 [2ND CHOICE AVAILABLE
55KG    #     SET UP SECOND CHOICE WHEN 800 RPI 
5656          LDX   0  AWORK3(2)
56JQ          SBN   0  #20                 [2ND CHOICE -556 RPI 
574B          STO   0  AWORK4(2)
57J2          BRN      PA3  
583L    #     NOTE NO SECOND CHOICE - NOT 800 RPI   
58H=    PA1   NGN   0  1
592W          STO   0  AWORK4(2)
59GG    #     SWITCH DECKS,SETTING UP LIST AS WE GO 
5=26    PA3 
5=FQ          LDN   0  6                   [CALCULATE NO OF MT DECKS
5=^B          SMO      0                   [ON THE INSTALLATION 
5?F2          LDX   6  JPTI 
5?YL          SBN   0  1
5#D=          SMO      0
5#XW          SBX   6  JPTI 
5*CG          ADX   6  6                   [DOUBLE  
5*X6          ADN   6  1                   [PLUS 1  
5BBQ    #SKI  K6MODE>99-99  
5BWB          SWITRACE 6,MOADCKS
5CB2          SETUPCORE 6,3,FLIB,FDECKS    [FOR LIST OF DECKS   
5CTL          LDN   0  1
5D*=          STO   0  A1(3)               [INITIALISE  
5DSW    #     LOOK  DOWN DEVICE LIST AT MT RECORDS  
5F#G          FINDPEREC 3,APFOTY,TFIVE(1),REENT 
5FS6          BNG   3  PAM                 [END OF LIST 
5G?Q          JWRONG   3,REENT             [DECK WRONGED
5GRB          JALLOC   3,REENT             [ALLOCATED   
5H?2          DFJUMPS  3,LOAD,REENT        [TAPE LOADED 
5HQL    #SKI  K6MODE>199-199
5J==          SWITRACE 3,MOADVCE
5JPW          LDN   6  0
5K9G          STO   4  AWORK3(2)           [RESET MODE AS SPECIFIED 
5KP6          CALL  7  SWITCHQA            [CHECK IF MODE AVAILABLE 
5L8Q          TXU   0  GSIGN               [GSIGN IF 9 TRACK TAPE   
5LNB          BCC      REENT
5M82          BZE   0  REENT               [ZERO IF DENSITY NOT SWICHABLE   
5MML          BPZ   0  PA7                 [MODE OK 
5N7=    #     TRY SECOND CHOICE 
5NLW          LDX   0  AWORK4(2)
5P6G          BNG   0  REENT               [NO 2ND CHOICE   
5PL6          LDX   6  AWORK3(2)           [FIRST CHOICE
5Q5Q          STO   0  AWORK3(2)           [REPLACE BY 2ND CHOICE   
5QKB          CALL  7  SWITCHQA 
5R52          BNG   0  REENT               [NOT AVAILABLE   
5RJL    PA7   SETMODEQ 3,AWORK3(2)         [RESET CURRENT MODE  
5S4=    #SKI  K6MODE>199-199
5SHW          SWITRACE AWORK3(2),MODEAQ 
5T3G          LDX   0  AWORK1(2)
5TH6          BNZ   0  PA8                 [TEMPORARY SWITCH?   
5W2Q          LDX   0  AWORK3(2)
5WGB          DFSET    3,SMODE,0
5X22    #SKI  K6MODE>199-199
5XFL          SWITRACE 0,SMODEA 
5X^=    PA8   BZE   6  PA10 
5YDW          STO   6  AWORK3(2)
5YYG    PA10  MHUNT    2,FLIB,FDECKS
5^D6          LGEOG    3,5  
5^XQ          SMO      A1(2)
62CB          STO   5  A1(2)               [LIST DECK NR
62X2          SMO      A1(2)
63BL          STO   6  A1+1(2)             [0 IF 1ST CHOICE OK  
63W=          LDN   0  2
64*W          ADS   0  A1(2)               [FOR NEXT RECORD 
64TG          LDX   2  FX2  
65*6          BRN      REENT
65SQ    #     OUTPUT MESSAGES   
66#B    PAM   STO   4  AWORK1(2)           [FIRST CHOICE
66S2          MHUNT    2,FLIB,FDECKS
67?L          LDX   7  ALOGLEN(2)   
67R=          SRL   7  1
68=W          SETUPCORE 7,3,AONBS,GROT     [MESSAGE BUFFER  
68QG          STOZ     A1(3)
69=6          MHUNT    2,FLIB,FDECKS       [LIST OF DECKS   
69PQ          LDX   0  A1(2)
6=9B          SBN   0  1
6=P2          BZE   0  PAM7            [NO DECKS SWITCHABLE 
6?8L          LDX   6  A1(2)
6?N=          ADX   6  2                   [LIST LIMIT  
6#7W          SBN   6  1
6#MG    PAM3  LDX   0  A1+2(2)  
6*76          BNZ   0  PAM2                [NOT OK  
6*LQ          CALL  7  SDECC               [CONVERT AND STORE   
6B6B    PAM2  ADN   2  2
6BL2          TXL   2  6
6C5L          BCS      PAM3                [NEXT - IF ANY   
6CK=          LDX   0  A1(3)
6D4W          BZE   0  PAM4                [NO MESSAGE  
6DJG          OUTPARAM A1(3),A1+1,AONBS,GROT
6F46          OUTNUM   AWORK1(2),OCTAL  
6FHQ          MTINFORM HMODE
6G3B    PAM4  LDX   0  AWORK4(2)
6GH2          BNG   0  PAM7                [NO 2ND CHOICE   
6H2L          MHUNT    3,AONBS,GROT 
6HG=          MHUNT    2,FLIB,FDECKS
6H^W          STOZ     A1(3)
6JFG          LDX   6  A1(2)
6J^6          ADX   6  2                   [LIST LIMIT  
6KDQ          SBN   6  1
6KYB    PAM5  LDX   0  A1+2(2)  
6LD2          BZE   0  PAM6                [1ST CHOICE  
6LXL          CALL  7  SDECC               [CONVERT & STORE 
6MC=    PAM6  ADN   2  2
6MWW          TXL   2  6
6NBG          BCS      PAM5 
6NW6          LDX   0  A1(3)
6P*Q          BZE   0  PAM7                [NO MESSAGE  
6PTB          OUTPARAM A1(3),A1+1,AONBS,GROT
6Q*2          OUTNUM   AWORK4(2),OCTAL  
6QSL          MTINFORM HMODE
6R#=    PAM7  ENDCOM                       [FINISHED !! 
6RRW          MENDAREA 50,K99MODEA  
6S?G    #END
^^^^ ...23326645000300000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1