DEMAND860

(George Source)

Macros used: BXL, DOWN, FREEBUFF, FREECORE, HUNTW, INFORMX, LONGOFF, LONGSTOP, MENDAREA, MFREEW, MHUNTW, SEGENTRY, SETNCORE, TESTBRKIN, TRACE, UP, UPPLUS

DEMAND860.txt
22FL    #LIS  K0DEMAND>K0ALLGEO>K0GREATGEO  
22^=    #SEG  DEMAND60                     [RICHARD GRIMWADE
23DW          8HDEMAND  
23YG    #     THIS SEGMENT IMPLEMENTS THE DEMAND AND OUTPAUSE MACROS
24D6    #  DEMAND : K1DEMAND  (SEE PRM FOR MACRO DEFN)  
24XQ    #     DEMAND USES THE OUTPAUSE CODE TO DETERMINE WHEN TO O/P THE
25CB    #     SYSTEM REQUEST
25X2    #     IF DEMAND GOES UP FOR AN EVENT ACCS4-7 (INC) ARE SAVED IN AN  
26BL    #     ADATA/ADEMAND BLOCK:- 
26W=    #     X3    :CONTAINS A REPLACER FOR UPPLUS 
27*W    #     X4     CONTAINS THE MESSAGE IDENTIFIER
27TG    #     X5    :CONTAINS TIME DELAY BEFORE MESSAGE O/P 
28*6    #     X6    :CONTAINS TIME FACTOR BETWEEN REPEATS   
28SQ    #     X7    :CONTAINS A COPY OF EXECS   
29#B    #     EXEC1 :CONTAINS MESS IDEN AND IS SET -VE ON REENTRY   
29S2    #     EXEC2 :CONTAINS TIME FACTORS  
2=?L    #     EXEC3 :CONTAINS STATE OF WAIT COMPATIBLE WITH OUTPAUSE
2=R=    #  OUTPAUSE:K2DEMAND
2?=W    #     OUTPAUSE USES X0-X3 ONLY AND KEEPS THE STATE OF THE WAIT IN   
2?QG    #     EXEC3 : THIS HAS B0 SET IF REENTRY AND THE REST OF THE WORD   
2#=6    #     IS THE TIME (IN SPRING CLEANS FOR THE NEXT EXIT   
2#PQ          SEGENTRY K1DEMAND,SENTRY1 
2*9B          SEGENTRY K2DEMAND,SENTRY2 
2*P2    #DEF  XEC1=EXEC1
2B8L    #DEF  XEC2=EXEC2
2BN=    #DEF  XEC3=EXEC3
2C7W    [   
2CMG    [ WORDS IN THE ADATA/ADEMAND BLOCK  
2D76    #DEF  XACCS=A1                     [4 WORDS; COPIES X4-7 INCLUSIVE  
2DLQ    #DEF  XROUTE=XACCS+4               [ROUTING PARAMETER COPIED FROM AWORK4
2F6B    #DEF  XDEMANDLEN=XROUTE+1-XACCS    [LOGICAL LENGTH OF BLOCK 
2FL2    [   
2G5L    X1             60*60/K9*1000*24 
2GK=    SENTRY2 
2H4W          LDN   7  1                   [MARKER FOR MACRO
2HJG    SR1 
2J46          LDXC  0  XEC3(2)  
2JHQ          BCS      TIME                [J IF REENTRY
2K3B          LDN   0  1000/K9  
2KH2          MPY   0  XEC3(2)  
2L2L          LDX   0  1
2LG=          MPY   0  ASYSTEMMESS         [CALCULATE TIME FOR W/UP 
2L^W          ADX   1  JTIME
2M45 ...      SMO      FX1  
2M6# ...      BXL   1  X1,UNDER 
2M8H ...      SMO      FX1  
2M=Q ...      SBX   1  X1   
2M#^ ...      ORX   1  CACT        [B1 IS MIDNIGHT MARKER   
2MC8 ...UNDER   
2MFG          ORX   1  GSIGN               [SET -VE TO INDICATE REENTRY 
2M^6          STO   1  XEC3(2)  
2N6# ...#UNS FREEBUFF   
2N7K ...      LDN   0  XEC1(2)  
2N8W ...      LDN   1  AWORK1(2)
2N=7 ...      MOVE  0  3
2N?G ...      FREEBUFF [ FREES FURBS AND WRITES AWAY FUWBS TO CURRENT ACTIVITY  
2NDQ          LDN   3  0                   [SET MARKER = REPLACER FOR B-IN  
2NNJ ...      BRN      WAIT2
2NYB    WAIT  LDX   2  FX2  
2PD2          LDN   0  XEC1(2)  
2PXL          LDN   1  AWORK1(2)
2QC=          MOVE  0  3                   [SAVE TIME FACTORS ETC.  
2QWW ...WAIT2 LONGSTOP XBI,SPUR 
2RBG          LDN   0  AWORK1(2)
2RW6          LDN   1  XEC1(2)  
2S*Q          MOVE  0  3
2STB          ADN   3  1                   [REPLACER FOR EVENT  
2T*2          BZE   7  XEVEN               [J IF DEMAND ENTRY   
2TSL    MAC   UPPLUS   0(3) 
2W#=    SPUR  LDN   0  AWORK1(2)
2WRW          LDN   1  XEC1(2)  
2X?G          MOVE  0  3
2XR6          LDN   3  3                   [REPLACER FOR TIME OR SPURIOUS   
2Y=Q    XBI   HUNTW    1,GMON,AOUT  
2YQB          BZE   3  YBI                 [J IF B-IN   
2^=2          BNG   1  ZTIME
2^PL          LDXC  0  A1(1)
329=          BCC      ZTIME
32NW          LDN   3  2                   [REPLACE FOR CANTDO  
338G    YBI   BNG   1  NBLK                [NO BLOCK TO FREE
33N6          FREECORE 1
347Q    NBLK  LONGOFF   
34MB          BNZ   7  MAC  
3572          BZE   3  XBIN                [J IF B-IN   
35LL          BRN      XCANT
366=    ZTIME   
36KW          NGNC  0  1
375G          ANDX  0  XEC3(2)  
37K6    TIME  LDX   1  JTIME
384Q          LDN   3  0                   [REPLACER MARKER 
38JB          TXL   1  0
3942          BCS      X3   
39HL    X2  
3=3=          LDN   3  3
3=GW          BZE   7  XTIME               [J IF TIME   
3?2G    #SKI  K6DEMAND>99-99
3?G6          TRACE    JTIME,TIME UP
3?^Q          BRN      MAC  
3#FB ...X3    LDCT   2  #200
3#^2 ...      ANDX   2  0   
3*DL ...      BZE   2   WAIT      [CANT BE TIME UNLESS MIDNIGHT MARKER SET  
3*Y= ...      ERX   0   2   
3BCW ...      SMO      FX1  
3BXG ...      LDX   2  X1   
3CC6 ...      SRA   2  1
3CWQ ...      BXL   2   JTIME,WAIT       [J IF NOT GONE PAST MIDNIGHT   
3DBB ...      LDX   2  FX2  
3DW2 ...      BRN      TIME   [CHECK AGAIN  
3G#W    NRENT LDX   4  XEC1(2)             [MESSAGE ID  
3GSG          LDX   5  XEC2(2)             [TIME LAG
3H#6          ANDN  5  4095 
3HRQ          LDX   6  XEC2(2)             [TIME FACTOR 
3J?B          SRL   6  12   
3JR2          STO   6  XEC3(2)  
3K=L          LDN   7  0
3KQ=          BNZ   5  SR1                 [OUTPAUSE
3L9W    NPAUS TESTBRKIN XBIN
3LPG          LDEX  0  CLONG1(2)
3M96          BNZ   0  ZINF                [J IF NO EVENT ALROADY   
3MNQ          STOZ     XEC3(2)  
3N8B    XEVEN LDX   7  XEC3(2)  
3NN2          SETNCORE XDEMANDLEN,2,ADATA,ADEMAND   
3P7L          LDN   1  4
3PM=          ADN   2  XACCS
3Q6W          MOVE  1  4                   [SAVE ACCS   
3QLG          SMO      FX2  
3R66          LDX   0  AWORK4   
3RKQ          STO   0  XROUTE-XACCS(2)     [KEEP ROUTING PARAMETER  
3S5B          LDN   3  2                   [REPLACER FOR EVENT  
3SK2    #SKI  K6DEMAND>99-99
3T4L          TRACE    JTIME,EVENT  
3TJ=          BRN      MAC  
3W3W    XCANT1  
3WHG          LONGOFF   
3X36    XCANT LDN   3  0                   [REPLACER FOR CANTDO 
3XGQ    #SKI  K6DEMAND>99-99
3Y2B          TRACE    JTIME,CANTDOUP   
3YG2          BRN      MAC  
3Y^L    XBIN  LDN   3  1                   [REPLACER B-IN   
3^F=    #SKI  K6DEMAND>99-99
3^YW          TRACE    JTIME,BRKIN  
42DG          BRN      MAC  
42Y6    SENTRY1 
43CQ    #SKI  K6DEMAND>199-199  
43XB    (   
44C2          TRACE    XEC1(2),DEMAND1  
44WL          TRACE    XEC2(2),DEMAND2  
45B=    )   
45TW          LDX   0  ACOMMUNE1(2) 
46*G          STO   0  AWORK4(2)
46T6          LDXC  4  XEC1(2)  
47#Q          BCC      NRENT               [J IF NOT REENTRY
47SB          HUNTW   1,GMON,AOUT   
48#2          BNG   1  NTHER               [ TEST FOR CANTDO
48RL          LDXC  0  A1(1)
49?=          BCS      XCANT1              [J IF CANTDO 
49QW    NTHER MHUNTW   1,ADATA,ADEMAND  
4==G          ADN   1  XACCS
4=Q6          LDN   2  4
4?9Q          MOVE  1  4                   [RESTORE ACCS
4?PB          LDX   2  FX2  
4#92          LDX   0  XROUTE-XACCS(1)     [RESTORE ROUTING PARAMETER   
4#NL          STO   0  AWORK4(2)           [RESTORE ROUTING PARAMETER   
4*8=          LDX   0  6
4*MW          SLL   0  12   
4B7G          ORX   0  5
4BM6          STO   0  XEC2(2)             [RESTORE TIMING WORD 
4C6Q          MFREEW   ADATA,ADEMAND
4CLB          BZE   7  NPAUS               [J IF NO WAIT
4D62          STO   7  XEC3(2)  
4DKL          LDN   7  0                   [SET MARKER  
4F5=          BRN   ZTIME                  [CHECK IF TIME YET   
4FJW    XTIME HUNTW    1,GMON,AOUT  
4G4G          LDN   7  0                   [SET MARKER  
4GJ6          BPZ   1  XBUFF               [J IF BLOCK THERE
4H3Q    ZINF  LDN   0  XEC1(2)  
4HHB          LDN   1  AWORK1(2)
4J32          MOVE  0  3                   [SAVE EXEC WORDS 
4JGL          INFORMX  AWORK4(2),4,0       [OUTPUT MESSAGE  
4K2=    WSR2
4KFW          LDN   0  AWORK1(2)
4K^G          LDN   1  XEC1(2)  
4LF6          MOVE  0  3                   [RESTORE 
4LYQ    SR2   LDX   0  XEC2(2)  
4MDB          SRL   0  12   
4MY2          STO   0  XEC3(2)  
4NCL          BRN   SR1 
4NX=    XBUFF LDN   0  XEC1(2)  
4PBW          LDN   1  AWORK1(2)
4PWG          MOVE  0  3
4QB6          DOWN     MONFILE,5           [RE-OUTPUT   
4QTQ          BRN      WSR2 
4R*B          MENDAREA 20,GAPDEMAND 
4RT2    #END
^^^^ ...45755417000400000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1