OPERA864

(George Source)

Macros used: ALTLEN, AND, BC, BS, CHAIND, COOR1, COOR3, DCA, DO, DOWN, ELSE, ELSF, FC, FI, FIXTRA, GPERI, IF, IFR, LOCKC, MBC, MFREE, MHUNTW, OR, READED, REPEAT, SEGENTRY, STF, THEN, UNLOCK, UP, WHILE

OPERA864.txt
22FL    #OPT           K0OPERA=0
22^=    #LIS           K0OPERA > K0ALLGEO > K0GREATGEO  
23DW    #SEG           OPERA               [COMM - STIG TOWNSEND
23YG    [   
24D6    [   
24XQ                8HOPERA 
25CB       SEGENTRY K1OPERA,OPERAK1        [SHOW TO A MONITOR SCREEN
25X2       SEGENTRY K2OPERA,OPERAK2        [SHOW TO INTERACTIVE SCREEN  
26BL       SEGENTRY K3OPERA,OPERAK3        [CLEAR FCOUTBUF OF BSTS MESSAGES 
26W=    [   
27*W    [   
27TG    [ AWORK4 IS USED TO HOLD THE NUMBER OF THE SCREEN FOR   
28*6    [    WHICH THE SHOW IS TO BE DONE. IN THE CASE OF A MONITOR 
28SQ    [    SHOW, THIS IS TAKEN FROM ACOMMUNE4 WHEN ENTERED
29#B    [   
29S2    #PAGE   
2=?L    [   
2=R=    [   
2?=W    #DEF  WIDTH = 40                   [WIDTH OF OPER SCREEN (CHARS)
2?QG                                       [
2#=6    #DEF  PAGESIZE = 2                 [SIZE OF PAGE IN B/S BLOCKS  
2#PQ                                       [
2*9B    #DEF  SIZEDATE = 7                 [LENGTH OF DATE STRING (CHARS)   
2*P2                                       [
2B8L    #DEF  SIZETIME = 5                 [LENGTH OF HH.MM (CHARS) 
2BN=                                       [
2C7W    #DEF  WRITEMODE = 3                [EXTENDED WRITE MODE 
2CMG                                       [
2D76    #DEF  UNLOCK = #200                [ADDITIONAL WRITE MODE - UNLOCK KEYS 
2DLQ                                       [
2F6B    SHOWINGMSG     40H*** SHOWING ***   
2FL2                                       [
2G5L          FIXTRA   K90OPERA            [FOR MACRO 'KEEPPAGES'   
2GK=    MAXBLKLET      +20 * PAGESIZE      [HIGHEST BLOCKLET NO IN RECALL FILE  
2H4W                                       [
2HJG    NEWLINES       4H^*^*              [2 NEWLINES  
2J46                                       [
2JHQ    TYPESHOW       +CONBUFF+CSHOW@L 12 [CONBUFF/CSHOW BLOCKTYPE 
2K3B                                       [
2KH2    TYPECOUT       +CONBUFF+COUT @L 12 [CONBUFF/COUT BLOCKTYPE  
2L2L    #PAGE   
2LG=    [   
2L^W    [   
2MFG    [   
2M^6    [*********************************************************************  
2NDQ    [   
2NYB    SHUNTFRRB   
2PD2    [   
2PXL    [*********************************************************************  
2QC=    [   
2QWW    [ SUBSIDIARY HUNT ROUTINE FOR 'LOCKC'   
2RBG    [   
2RW6       MHUNTW   2,FILE,FRRB 
2S*Q       EXIT  1  0   
2STB    #PAGE   
2T*2    [   
2TSL    [   
2W#=    [   
2WRW    [*********************************************************************  
2X?G    [   
2XR6    SHOWBLOCK   
2Y=Q    [   
2YQB    [*********************************************************************  
2^=2    [   
2^PL    [ POINTS X3 AT THE FIRST CONBUFF/CSHOW ON THE CONSOLE OUTPUT
329=    [ CHAIN WHOSE DISPLAY NUMBER IS THE SAME AS THAT HELD IN AWORK4 
32NW    [   
338G    [ X4 LINK   
33N6    [   
347Q    [ ON EXIT,  X0 CORRUPT  
34MB    [           X1,2 = FX'S 
3572    [           X3 -> BLOCK 
35LL    [   
366=       LDX   1  FX1 
36KW       LDX   2  FX2 
375G       LDN   3  BCONSOUT
37K6       WHILE    TRUE                [LOOP TILL FIND /CSHOW FOR SCREEN   
384Q          LDX   3  FPTR(3)  
38JB       AND      EITHER,+ATYPE(3),U,TYPESHOW(1)  
3942       OR       +AWORK4(2),U,CSVID(3)   
39HL       DO   
3=3=       REPEAT                       [X3 -> SHOW BLOCK   
3=GW       EXIT  4  0   
3?2G    [   
3?G6    #PAGE   
3?^Q    [   
3#FB    [   
3#^2    [*********************************************************************  
3*DL    [   
3*Y=    SREADPAGE   
3BCW    [   
3BXG    [*********************************************************************  
3CC6    [   
3CWQ    [ READS THE PAGE SPECIFIED IN THE FIRST SHOW BLOCK FOR THE SCREEN WE
3DBB    [ ARE CONSIDERING.  
3DW2    [   
3F*L    [ LINK X6   
3FT=    [ ON ENTRY, AWORK4 CONTAINS SCREEN NUMBER   
3G#W    [           /CSHOW BLOCK FOR THIS SCREEN IS ON CONSOLE CHAIN
3GSG    [   
3H#6    [ ON EXIT,  PAGE IS SET UP IN A FILE/FRRB BLOCK 
3HRQ    [           X1,2 = FX'S 
3J?B    [           X3 -> BLOCK 
3JR2    [           X5 CORRUPT  
3K=L    [   
3KQ=       SBX   6  FX1 
3L9W       CALL  4  SHOWBLOCK           [X3 -> /CSHOW   
3LPG       LDX   2  CONSCNTRL   
3M96       ADN   2  COVID   
3MNQ       ADX   2  CSVID(3)            [X2 -> SCREEN CELL  
3N8B       LDX   4  CSPAG(3)            [SET X4 TO START BLOCKLET OF PAGE   
3NN2       IF       4,NG                [IF START OF 'AUTO' THEN
3P7L       THEN 
3PM=          BS       2,COAUTO            [SET AUTO BIT
3Q6W          LDN   4  1                   [READ PAGE @1
3QLG          STO   4  CSPAG(3)            [PUT REAL PAGE NUMBER IN 
3R66       ELSF     +CSVID(3),NZ        [ELSF FOR MONITOR SCREEN THEN   
3RKQ       THEN 
3S5B          BC       2,COAUTO            [CLEAR AUTO BIT  
3SK2       FI                           [FI 
3T4L       LDX   0  4   
3TJ=       SLL   0  PAGESIZE/2  
3W3W       SMO      CONSCNTRL   
3WHG       LDX   4  COBLK   
3X36       SBX   4  0   
3XGQ       IFR      4,NG
3Y2B       OR       4,ZE
3YG2       THEN 
3Y^L          LDX   1  FX1  
3^F=          ADX   4  MAXBLKLET(1) 
3^YW       FI                           [X4 = START BLOCKLET
42DG       LDN   5  PAGESIZE*128
42Y6       READED   4,1,5               [READ REQUESTED PAGE
43CQ       MHUNTW   3,FILE,FRRB 
43XB       ADX   6  FX1 
44C2       EXIT  6  0   
44WL    #PAGE   
45B=    [   
45TW    [   
46*G    [***************************************************************
46T6    [   
47#Q    SPREPERI
47SB    [   
48#2    [***************************************************************
48RL    [   
49?=    [ EXTRACTS BSTS MESSAGES FROM FCOUTBUF, TAKING COUNT AND
49QW    [ ADDRESS FROM THE OPER DEVICE LIST ENTRY   
4==G    [ THE MESSAGE IS INCORPORATED AS A STRING OF /COUT'S
4=Q6    [ AT THE !! FRONT !! OF THE CONSOLE OUTPUT CHAIN
4?9Q    [ THE MESSAGE MUST BE OF THE FORMAT:
4?PB    [    <LINE>* <NULL>*
4#92    [    WHERE <LINE> ::=  <NULL>* <DATA CHARS>* <NEWLINE>  
4#NL    [          <NULL> ::= UPARROW SPACE "^ "
4*8=    [          <NEWLINE> ::= UPARROW STAR "^*"  
4*MW    [          A FOLLOWING ASTERISK MEANS THE ELEMENT MAY BE
4B7G    [              REPEATED ANY NUMBER OF TIMES (INCL ZERO) 
4BM6    [   
4C6Q    [ LINK X7   
4CLB    [   
4D62    [ ON EXIT:  COBS HOLDS ZERO 
4DKL    [           X1,2 = FX'S 
4F5=    [   
4FJW       SBX   7  FX1 
4G4G       WHILE    TRUE
4GJ6          LDX   1  FX1  
4H3Q          LDX   2  FX2  
4HHB          WHILE    BUSY,CPPTR(2)
4J32          DO
4JGL             COOR3    #50   
4K2=          REPEAT
4KFW          LDX   3  CONSCNTRL
4K^G       AND      +COBS(3),NZ 
4LF6       DO   
4LYQ          LDX   3  CPPTR(2) 
4MDB          DCA      3,LDX,4,COUNT
4MY2          ADN   4  (CPDATA-A1)*4 + 3
4NCL          SRL   4  2                   [SET UP BLOCK TO ... 
4NX=          SETUPCOR 4,2,ADATA,CREADL    [HOLD COPY OF MESSAGE
4PBW       [
4PWG          WHILE    TRUE                [ENSURE LONGER BSTS MESSAGE ...  
4QB6             DCA      3,LDX,5,COUNT    [NOT WRITTEN DURING 'SETUPCOR'   
4QTQ             ADN   5  (CPDATA-A1)*4 + 3 
4R*B             SRL   5  2 
4RT2          AND      4,L,5
4S#L          DO
4SS=             LDX   4  5 
4T?W             ALTLEN   2,4,ADATA,CREADL  
4TRG             MHUNTW   2,ADATA,CREADL
4W?6          REPEAT
4WQQ       [
4X=B          LDN   4  FCOUTBUF+1          [COPY OUT THE MESSAGE
4XQ2          LDN   5  CPDATA(2)
4Y9L          LDN   6  FCOUTBUF+1          [SET X6 TO CHAR COUNT
4YP=          DCA      3,SBX,6,CTSA 
4^8W          SLL   6  2
4^NG          DCA      3,ADX,6,COUNT       [X6 = CHAR COUNT LESS ANY ...
5286          SMO      6                   [... PRECEDING "CANCEL"  
52MQ          MVCH  4  0
537B       [
53M2                                       [INITIALISE LOOP:
546L                                       [X6 COUNT OF CHARS TO CHECK FOR N/L (
54L=          LDX   3  CONSCNTRL           [COBS NONZERO MEANS BSTS WROTE ...   
555W          STOZ     COBS(3)             [   AGAIN AFTER THIS MSG WAS COPIED  
55KG          BS       3,COVERWRITE        [REMEMBER SCREEN NEEDS RESETTING 
55NL ...      IF       BSC,3,COPAGEWAIT    [DONT PAGEWAIT   
55RQ ...      THEN  
55WW ...         STOZ     CODAT(3)  
5622 ...      FI
5656          LDN   1  CPDATA              [X1 DISPLACEMENT OF START OF ... 
56JQ                                       [   CURRENT LINE WITHIN MESSAGE  
574B       [
57J2          WHILE    TRUE                [WHILE ...   
583L             MHUNTW   2,ADATA,CREADL
58H=             ADX   1  2 
592W             WHILE    6,NZ                [   (IGNORING NULLS ("^ ") )  
59GG                                          [FIND "^*" OR END OF MSG  
5=26                LDCH  0  0(1)   
5=FQ                SBN   0  #76
5=^B             AND      0,ZE  
5?F2                BCHX  1  £  
5?YL                LDCH  0  0(1)   
5#D=                SBN   0  #32
5#XW                SBN   6  2  
5*CG                BCHX  1  £  
5*X6             AND      0,NZ  
5BBQ             DO 
5BWB             REPEAT 
5CB2                                          [AT END OF NULLS LOOP:
5CTL                                          [X6 = 0   => END OF MESSAGE   
5D*=                                          [X6 NZERO => END OF LINE, WHEN
5DSW                                          [   X0 = 0   => NEWLINE FOUND 
5F#G                                          [               X1 -> NEXT LINE   
5FS6                                          [   X0 NZERO => DATA CHAR FOUND   
5G?Q                                          [               X1 -> DATA CHAR   
5GRB          AND      6,NZ                [... NOT RUN OFF END OF MSG DO   
5H?2          DO
5HQL             LDX   3  1                   [X3 -> START OF THIS LINE 
5J==             IF       0,NZ                [IF LINE NOT NULL THEN
5JPW             THEN   
5K9G                WHILE    TRUE   
5KP6                DO                           [FIND NEXT DELTA CHAR  
5L8Q                   LDCH  0  0(1)
5LNB                   SBN   6  1   
5M82                   BCHX  1  £   
5MML                   SBN   0  #76 
5N7=                REPEAT   UNTIL,0,ZE          [FOUND ^ OF DELTA  
5NLW                LDCH  0  0(1)   
5P6G                SBN   6  1  
5PL6                BCHX  1  £  
5Q5Q                SBN   0  #32                 [GEOERR IF NOT ^* -
5QKB                BNZ   0  (GEOERR)            [CAN'T COPE WITH DELTA IN LINE 
5R52             FI                           [FI LINE NOT NULL 
5RJL          [ 
5S4=          [ HAVE FOUND NEWLINE  
5SHW          [ X1 -> BEYOND IT 
5T3G          [ X2 -> BSTS MESSAGE BLOCK
5TH6          [ X3 -> START OF THIS LINE WITHIN IT  
5W2Q          [ 
5YDW             SBX   1  2                   [X1 -> START NEXT LINE (W.R.T. FPT
5^D6             SBX   3  2                   [X3 -> START THIS LINE (W.R.T. FPT
5^GP ...         SLC   3  2 
5^K# ...         LDX   4  1 
5^MX ...         SLC   4  2 
5^QG ...         SBN   4  2(3)                [X4 = CHARS IN LINE EXCL "^*" 
5^T5 ...         SRC   3  2 
5^XQ             LDX   2  FX2   
62CB             STO   1  AWORK1(2) 
62X2             STO   4  AWORK2(2) 
63BL             IF       4,NZ                [IF THIS LINE NOT NULL THEN   
63W=             THEN   
64*W                ADN   4  (ATEXT-AREC)*4 + 3 
64TG                SRL   4  2  
65*6                SETUPCOR 4,1,CONBUFF,COUT    [X1 -> CONBUFF-COUT FOR ONE LIN
65SQ                MHUNTW   2,ADATA,CREADL      [X2 -> CREADL  
66#B                STO   4  AREC(1)             [SET WORD COUNT
66S2                LDX   4  2  
67?L                ADX   4  3                   [X4 -> START OF THIS LINE  
67R=                LDN   2  AREC-1(1)  
68=W                ADX   2  AREC(1)
68QG                LDX   0  ACES   
69=6                STO   0  0(2)                [SPACEFILL LAST WORD IN /COUT  
69PQ                LDX   2  FX2                 [X2 = FX2  
6=9B                LDN   5  ATEXT(1)            [X5 -> START OF /COUT TEXT AREA
6=P2                LDX   3  AWORK2(2)  
6?8L                MVCH  4  0(3)                [MOVE THIS LINE IN 
6?N=             FI                           [FI LINE NOT NULL 
6#7W             LDX   1  AWORK1(2) 
6#MG          REPEAT                       [REPEAT UNTIL END OF MESSAGE 
6*76          MFREE ADATA,CREADL
6*LQ       [
6B6B       [ LINES OF MSG ARE ON ACT CHAIN IN REVERSE ORDER 
6BL2       [ PUTTING THEM AT FRONT OF CONSOLE CHAIN RESTORES ORIGINAL ORDER 
6C5L       [
6CK=          MHUNTW   3,CONBUFF,COUT      [FROM 1ST /COUT (LAST LINE OF MSG) DO
6D4W          WHILE    TRUE 
6DJG          DO
6F46             LDX   4  FPTR(3)   
6FHQ             CHAIND   3,BCONSOUT          [CHAIN /COUTS AT FRONT
6G3B             LDX   3  4 
6GH2          REPEAT   UNTIL,+ATYPE(3),U,TYPECOUT(1)
6H2L       [
6HG=       REPEAT   
6H^W    [   
6JFG       ADX   7  FX1 
6J^6       EXIT  7  0   
6KDQ    #PAGE   
6KYB    [   
6LD2    [   
6LXL    [                    WW   WW   W
6MC=    [                    WW  WW   WW
6MWW    [                    WW WW   WWW
6NBG    [                    WWWW     WW
6NW6    [                    WWWW     WW
6P*Q    [                    WW WW    WW
6PTB    [                    WW  WW   WW
6Q*2    [                    WW   WW  WW
6QSL    [   
6R#=    [   
6RRW    OPERAK1 
6S?G    [   
6SR6    [ SHOWS A PAGE TO A MONITOR SCREEN (OR CLEARS SCREEN IF THE ACTIVE  
6T=Q    [ PAGE IS SPECIFIED)
6TQB    [   
6W=2    [ ON ENTRY, ACOMMUNE4 CONTAINS SCREEN NUMBER
6WPL    [           /CSHOW BLOCK FOR THIS SCREEN IS ON CONSOLE CHAIN
6X9=    [   
6XNW       LDX   0  ACOMMUNE4(2)
6Y8G       STO   0  AWORK4(2)           [SET SCREEN NUMBER  
6YN6       CALL  4  SHOWBLOCK   
6^7Q       IF       +CSPAG(3),ZE        [IF "SHOW OFF" THEN 
6^MB       THEN 
7272          CALL  7  SPREPERI 
72LL          LDX   0  NEWLINES(1)         [SET UP BUFFER TO CLEAR SCREEN   
736=          STO   0  FCOUTBUF 
73KW          LDN   4  FCOUTBUF 
745G          LDN   5  FCOUTBUF+1   
74K6          MOVE  4  HEIGHTPAGE+5/2      [BUFFER IS SET UP
754Q          LDX   3  CPPTR(2)            [SET UP CONTROL AREA 
75JB          LDN   0  WRITEMODE
7642          DCA      3,DLA,0,MODE 
76HL          LDN   0  FCOUTBUF 
773=          DCA      3,STO,0,CTSA 
77GW          LDX   0  AWORK4(2)
782G          SLL   0  9
78G6          DCA      3,STO,0,EXTRA       [INCLUDING SCREEN NUMBER 
78^Q          LDN   0  HEIGHTPAGE+5/2*4 
79FB          DCA      3,DLA,0,COUNT
79^2          GPERI    3,2                 [ISSUE PERI  
7=DL          COOR1 
7=Y=          LDN   3  CPRW1(2) 
7?CW          IF       MBAC,3,CONSFAIL,CONSINOP [IF OK THEN 
7?XG          THEN  
7#C6             LDX   3  AWORK4(2) 
7#WQ             SMO      CONSCNTRL 
7*BB             ADN   3  COVID 
7*W2             MBC      3,COSHOWING,COAUTO  [CLEAR 'SCREEN SHOWING' BITS  
7B*L             FC       3,COCURRENT   
7BT=          FI                           [FI  
7C#W       ELSE                         [ELSE (NOT ACTIVE PAGE) 
7CSG          CALL  6  SREADPAGE
7CWP ...      LDX   3  CONSCNTRL
7CYY ...      IF       +CORET(3),ZE 
7D37 ...      THEN  
7D5B ...         MFREE    FILE,FRRB 
7D7K ...         UP 
7D9S ...      FI
7D#6          DOWN     OPER,3              [PUT RESPONSE LINE IN BLOCK  
7DRQ          CALL  4  SHOWBLOCK
7F?B          LDX   3  CSVID(3) 
7FR2          ADX   3  CONSCNTRL
7G=L          ADN   3  COVID
7GQ=          CALL  1  SHUNTFRRB
7H9W          IF       BC,3,COAUTO         [IF NOT AUTO THEN
7HPG          THEN  
7J96             LDX   0  ACES                [BLANK "(AUTO)"   
7JNQ             STO   0  (ACHCT+1)+(WIDTH/4)-2(2)  
7K8B             STO   0  (ACHCT+1)+(WIDTH/4)-1(2)  
7KN2          FI                           [FI  
7L7L          LOCKC    2,SHUNTFRRB         [LOCK BUFFER BLOCK   
7LM=          CALL  7  SPREPERI 
7M6W          LDX   3  CPPTR(2)            [SET UP CONTROL AREA 
7MLG          LDN   0  WRITEMODE
7N66          DCA      3,DLA,0,MODE 
7NKQ          CALL  1  SHUNTFRRB
7P5B          LDN   0  ACLOG(2) 
7PK2          DCA      3,STO,0,CTSA 
7Q4L          LDX   0  ACHCT(2) 
7QJ=          DCA      3,DLA,0,COUNT
7R3W          LDX   2  FX2  
7RHG          LDX   0  AWORK4(2)
7S36          SLL   0  9
7SGQ          DCA      3,STO,0,EXTRA
7T2B          GPERI    3,2                 [ISSUE PERI  
7TG2          COOR1 
7T^L          MFREE    FILE,FRRB           [FREE BUFFER BLOCK   
7WF=          LDN   3  CPRW1(2) 
7WYW          IF       MBAC,3,CONSFAIL,CONSINOP [IF SHOWED OK THEN  
7XDG          THEN  
7XY6             LDX   3  AWORK4(2) 
7YCQ             SMO      CONSCNTRL 
7YXB             ADN   3  COVID               [SET 'SCREEN SHOWING' BIT 
7^C2             BS       3,COSHOWING   
7^WL             STO   3  5 
82B=             CALL  4  SHOWBLOCK 
82TW             LDX   1  CSPAG(3)            [X1 = CURRENT PAGE NUMBER 
83*G             LDX   3  5 
83T6             STF      3,COCURRENT,1       [SET IT IN THE INFO CELL  
84#Q          FI                           [FI  
84SB       FI                           [FI ACTIVE PAGE / OTHER 
85#2       UP   
85RL    #PAGE   
86?=    [   
86QW    [   
87=G    [   
87Q6    [                    WW   WW   WWWWW
889Q    [                    WW  WW   WW   WW   
88PB    [                    WW WW         WW   
8992    [                    WWWW          WW   
89NL    [                    WWWW        WW 
8=8=    [                    WW WW     WW   
8=MW    [                    WW  WW   WW
8?7G    [                    WW   WW  WWWWWWW   
8?M6    [   
8#6Q    [   
8#LB    OPERAK2 
8*62    [   
8*KL    [   
8B5=    [ SHOWS A PAGE ON THE INTERACTIVE SCREEN, SETTING APPROPRIATE BITS  
8BJW    [ AND TIMER WORDS.  
8C4G    [   
8CJ6    [ ON ENTRY, /CSHOW BLOCK FOR THIS SCREEN IS ON CONSOLE CHAIN
8D3Q    [   
8DHB       STOZ     AWORK4(2)           [WE KNOW IT'S SCREEN ZERO   
8F32       CALL  6  SREADPAGE   
8FGL       LDN   5  SHOWINGMSG(1)       [X56 READY TO INSERT *** SHOWING ***
8G2=       LDN   6  ACHCT+1(3)  
8GFW       LDX   2  3   
8G^G       ADX   2  ACLOG(3)            [ACLOG WILL BE O-WRITTEN BY ***'S   
8HF6       SBN   2  SIZETIME+SIZEDATE+4/4 [X2 -> FIELD FOR CURRENT TIME & DATE  
8HYQ       MOVE  5  WIDTH/4             [INSERT *** SHOWING *** 
8JDB       LDN   1  FTIME               [INSERT CURRENT DATE AND TIME   
8JY2       MVCH  1  SIZETIME
8KCL       LDN   1  ACES
8KX=       MVCH  1  4   
8LBW       LDN   1  FDATE   
8LWG       MVCH  1  SIZEDATE            [TIME AND DATE INSERTED 
8MB6       CALL  1  SHUNTFRRB   
8MTQ       LOCKC    2,SHUNTFRRB 
8N*B       DO   
8NT2          CALL  7  SPREPERI 
8P#L          LDX   3  CPPTR(2)            [SET UP CONTROL AREA 
8PS=          CALL  1  SHUNTFRRB
8Q?W          LDN   0  WRITEMODE+UNLOCK 
8QRG          DCA      3,DLA,0,MODE 
8R?6          LDN   0  ACLOG(2) 
8RQQ          DCA      3,STO,0,CTSA 
8S=B          LDX   0  ACHCT(2) 
8SQ2          DCA      3,DLA,0,COUNT
8T9L          LDN   0  0
8TP=          DCA      3,STO,0,EXTRA
8W8W          LDX   2  FX2  
8WNG          GPERI    3,2                 [ISSUE PERI  
8X86          COOR1 
8XMQ          LDN   3  CPRW1(2) 
8Y7B       REPEAT   UNTIL,MBAC,3,CONSFAIL,CONSINOP  
8YM2       CALL  4  SHOWBLOCK   
8^6L       LDX   1  CSPAG(3)            [X1 = CURRENT PAGE NUMBER   
8^L=       LDX   3  CONSCNTRL   
925W       BC       3,COPAGEWAIT        [CLEAR 'PAGEWAITING'
92KG       LDX   0  EDATE   
9356       STO   0  CODAT(3)            [REMEMBER WHEN SHOW STARTED 
93JQ       LDX   0  CLEANCT 
944B       STO   0  CODAT+1(3)  
94J2       ADN   3  COVID   
953L       BS       3,COSHOWING         [SET 'SHOWING'  
95H=       STF      3,COCURRENT,1       [SET PAGE NO. IN INFO CELL  
96GG       MFREE    FILE,FRRB   
9726       UP   
97FQ    #PAGE   
97^B    [   
98F2    [   
98YL    [                    WW   WW   WWWWW
99D=    [                    WW  WW   WW   WW   
99XW    [                    WW WW         WW   
9=CG    [                    WWWW       WWWW
9=X6    [                    WWWW          WW   
9?BQ    [                    WW WW         WW   
9?WB    [                    WW  WW   WW   WW   
9#B2    [                    WW   WW   WWWWW
9#TL    [   
9**=    [   
9*SW    OPERAK3 
9B#G    [   
9BS6    [ CLEAR FCOUTBUF OF BSTS MESSAGES   
9C?Q    [   
9CRB       CALL  7  SPREPERI
9D?2       UP   
9DQL    #END
^^^^ ...450612340004
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1