INLOOP84

(George Source)

Macros used: ABANDCOM, ACROSS, ALTLENG, BXE, BXGE, BXL, BXU, CHAIN, CLOSE, CLOSEABANDON, COOR1, DCA, DISENGPER, DOWN, ENDCOM, ERASEMULT, FILEOPEN, FREECORE, GEOERR, GPERI, HUNT, INFINB, INPUTFULL, ISITJOB, LOCK, LOCKC, LONGSET, LONGSTOP, LTYPE, MENDAREA, MHUNT, MHUNTW, NAMETOP, RESTART, REWIND, SEG, SEGENTRY, SETERR, SPACECT, STEP, STEPAGAIN, TESTMULT, TESTREP2, TESTRPN2, TRACE, TRACEVER, UNLOCK, WIND

INLOOP84.txt
22FL          SEG   INLOOP,74,P STANSFIELD,USERCOMS 
22^=    [   
23DW    [   
23YG          SEGENTRY K1INLOOP,Z1INLOOP
24D6    #   
24XQ    #   
25CB    # THIS SEGMENT INPUTS LINES OR CARDS TO A FILE WITH A SPECIFIED NAME,   
25X2    # FINISHING WHEN IT COMES TO THE 4-CH. TERMINATOR SPECIFIED. IF NONE
26BL    # SPECIFIED IT ENDS ON ****(STORING THIS TERMINATOR AND A BLANK RECORD  
26W=    # IN THE FILE). IT THEN GOES ACROSS TO TIDYREAD WHEN FINISHED.  
27*W    #   
27TG    #   
28*6    OMSK           #77777773
28SQ    PMSK           #37777777
29#B    QMSK           #777777  
29S2    RMASK          #73777777
2=?L    PRCNT          +128 
2=R=    RECMAX         +2000               [MAX RECORD LENGTH   
2?=W    X64            #64                 [$   
2?QG    X70            #70  
2#=6    #   
2#PQ    #   
2*9B    [ THIS SUBROUTINE ISSUES THE PERI'S AND CONTROLS THE RESTARTS.  
2*P2    [     BUFFER ADDRESS = START OF BUFFER = ADD. OF ALINE + (A1+2).
2B8L    [     PERI ADDRESS = BUFFER ADDRESS FOR INITIAL TRANSFERS, OTHERWISE
2BN=    [     = PREVIOUS PERI ADDRESS + N/CHARACTER TRANSFERRED 
2C7W    #   
2CMG    SR3   SBX   7  FX1  
2D76          LDX   2  FX2  
2DLQ          LDX   0  FINISH              [TEST IF A FINISH COMMAND HAS BEEN GI
2F6B          SLL   0  2
2FL2          BNG   0  WRECK               [J IF 'FINISH NOW'   
2G5L    SRD2  LOCKC    2,£                 [LOCK CPAT   
2GK=          GPERI    ,2                  [READ A LINE 
2H4W          COOR1                        [WAKE UP AFTER TRANSFER  
2HJG          UNLOCK   2                   [UNLOCK CPAT 
2J46          LDX   2  AWORK3(2)           [PTR TO CUFFER   
2JHQ          SBN   2  A1+2 
2K3B          UNLOCK   2                   [UNLOCK BUFFER   
2KH2          RESTART  YTM1,WRECK,REST  
2L2L          MHUNT    1,ADATA,ALINE
2LG=    #SKI  K6PREPREAD>599-599
2L^W          TRACEVER  A1+2(1),A1+2ALIN
2MFG          LOCKC    1,SALINE 
2M^6          MHUNT    1,ADATA,ALINE
2NDQ          ADN   1  A1+2                [PTR TO BUFFER   
2NYB          SBX   1  AWORK3(2)
2PD2          BZE   1  NOMOV               [ BUFFER HAS NOT BEEN MOVED  
2PXL          ADX   1  AWORK3(2)
2QC=          DCA      ,LDX,0,CTSA  
2QWW          SBX   0  AWORK3(2)
2RBG          STO   1  AWORK3(2)           [ UPDATE BUFFER ADDRESS  
2RW6          ADX   1  0
2S*Q          DCA      ,STO,1,CTSA         [UPDATE PERI ADDRESS 
2STB    NOMOV   
2T*2          LDX   1  FX1  
2TSL          BNZ   5  RCARD               [J IF CR 
2W#=          DCA      ,LDX,0,MODE  
2WRW          ANDN  0  #10                 [TEST IF GRAPHIC MODE
2X?G          BNZ   0  PREGR
2XR6    REPET LDN   0  4
2Y=Q          DCA      ,ORS,0,MODE         [CHANGE MODE TO PREVIOUS 
2YQB    PREGR LDX   0  CPRW1(2) 
2^=2          ANDX  0  QMSK(1)             [REPLY WORD  
2^PL          DCA      ,LDX,3,COUNT        [PERI COUNT  
329=          SBX   3  0
32NW          STO   3  ACOMMUNE1(2)        [N/CH IN LAST TRANSFER   
338G          DCA      ,LDX,4,CTSA         [PERI ADDRESS
33N6          SBX   4  AWORK3(2)
347Q          SLC   4  2                   [N/CH BEFORE LAST PERI   
34MB          ADX   4  3                   [TOTAL N/CH IN THE RECORD
3572          BZE   0  NLINE               [ J IF REPLY WORD ZERO   
35LL          DCA      ,LDX,0,MODE  
366=          ANDN  0  #10  
36KW          BNZ   0  RESBF               [J IF GRAPHIC
375G    NLINE DCA      ,LDX,0,CTSA         [PERI ADDRESS
37K6          SLC   0  2                   ['PERI ADDRESS' IN CH
384Q          ADX   3  0
38JB          SBN   3  2                   [PTR TO ANTEPENULTIMATE CH   
3942          SRC   3  2                   [PTR TO NL   
39HL          LDCH  0  0(3) 
3=3=          SBN   0  #76  
3=GW          BNZ   0  UPDPA               [J IF NOT ^  
3?2G          BCHX  3  £
3?G6          LDCH  0  0(3)                [LOAD SUCCESSOR  
3?^Q          SBN   0  #32  
3#FB          BNZ   0  UPDPA               [J IF NOT *  
3#^2          SBN   4  2                   [IGNORE NL   
3*DL    RESBF LDX   3  4
3*Y=          LDX   0  AWORK3(2)
3BCW          DCA      ,STO,0,CTSA         [RESET PTR TO BUFFER 
3BXG          DCA      ,LDX,0,MODE         [MODE
3CC6          ANDN  0  #10  
3CWQ          BNZ   0  RECGR               [J IF GRAPHIC
3DBB          LDN   0  128  
3DW2          BRN      RESCT
3F*L    UPDPA BXGE  4  RECMAX(1),RESBF     [J IF MAX
3FT=          LDX   3  RECMAX(1)
3G#W          SBX   3  4                   [N/CH ALOWED TO TRANSFER 
3GSG          DCA      ,LDX,0,COUNT 
3H#6          BXGE  3  0,PCTOK  
3HRQ          DCA      ,STO,3,COUNT        [CHANGE PERI COUNT   
3J?B    PCTOK SRC   4  2                   [N/W IN RCD  
3JR2          LDX   1  AWORK3(2)
3K=L          SBN   1  A1+2 
3KQ=          LDX   0  ALOGLEN(1)   
3L9W          LDX   3  4
3LPG          ANDN  3  #7777
3M96          ADN   3  35                  [ADD 128 CHARS+RED TAPE+1 WORD   
3MNQ          BXL   0  3,XALTL  
3N8B          DCA      ,LDX,0,CTSA         [PERI ADDRESS
3NN2          SLC   0  2
3P7L          ADX   0  ACOMMUNE1(2)        [N/CH IN LAST TRANS. + OLD PERI ADD  
3PM=          SRC   0  2
3Q6W          DCA      ,STO,0,CTSA         [UPDATE PERI PTR TO END OF LAST TRANS
3QLG          BRN      SRD2 
3R66    XALTL STO   1  AWORK3(2)
3RKQ          ALTLENG  AWORK3(2),3,SALINE   
3S5B          MHUNT    3,ADATA,ALINE
3SK2          LOCKC    3,SALINE            [LOCK NEW INPUT BUFFER   
3T4L          MHUNT    3,ADATA,ALINE
3TJ=          ADN   3  A1+2 
3W3W          STO   3  AWORK3(2)           [START ADDRESS   
3WHG          ADX   3  4
3X36          DCA      ,STO,3,CTSA         [START ADDRESS FOR NEXT TRANSFER 
3XGQ          BRN      SRD2 
3Y2B    RECGR LDN   0  127  
3YG2    RESCT DCA      ,STO,0,COUNT        [RESTORE PERI COUNT  
3Y^L    RCARD ADX   7  FX1  
3^F=          EXIT  7  0
3^YW    #   
42DG    #   
42Y6    REST  MHUNT    1,ADATA,ALINE
43CQ          LOCKC    1,SALINE            [LOCK UP BUFFER  
43XB          MHUNT    1,ADATA,ALINE
44C2          ADN   1  A1+2 
44WL          SBX   1  AWORK3(2)
45B=          BZE   1  NOMVE               [BUFFER HAS NOT BEEN MOVED   
45TW          ADX   1  AWORK3(2)
46*G          STO   1  AWORK3(2)           [UPDATE BUFFER ADDRESS   
46T6    NOMVE LDX   1  FX1  
47#Q          LDX   0  AWORK3(2)
47SB          DCA      ,STO,0,CTSA         [SET PERI ADDRESS TO START OF BUFFER 
48#2          DCA      ,LDX,0,MODE         [MODE
48RL          ANDN  0  4
49?=          BZE   0  SRD2                [J IF GRAPHIC OR ALPHA   
49QW          LDCH  0  AWORK1(2)
4==G          SBN   0  #44  
4=Q6          BZE   0  SRD2                [J IF GRAPHIC,TABS   
4?9Q          LDX   0  OMSK(1)  
4?PB          DCA      ,ANDS,0,MODE        [CHANGE TO ALPHA 
4#92          LDCH  0  AWORK4(2)           [LAST SHIFT  
4#NL          SBN   0  #74  
4*8=          BZE   0  SRD2                [J IF ALPHA  
4*MW    RESTART 
4B7G          DOWN     INRESTAR,1          [PERI TRANSFER+ALPHA-PREVIOUS CONV.  
4BM6          BRN      NCTSA               [TRY AGAIN   
4C6Q          BRN      YTM1                [J IF BREAK IN   
4CLB          BRN      WRECK               [J IF CANTDO 
4D62    #   
4DKL    NCTSA DCA      ,LDX,0,CTSA  
4F5=          STO   0  AWORK3(2)           [RESTORE BUFFER ADD. FROM PERI   
4FJW          LDX   0  ACOMMUNE1(2) 
4G4G          ADN   0  1
4GJ6          BNZ   0  REPET               [MODE CONVERSION OK  
4H3Q          LDN   0  #66                 [SWITCH  
4HHB          SLL   0  12   
4J32          ORS   0  AWORK1(2)           [SET UP SWITCH   
4JGL          BRN      REPET
4K2=    [   
4KFW    [     SUBROUTINES FOR LOCKC MACROS  
4K^G    SALINE  
4LF6          MHUNT    2,ADATA,ALINE
4LYQ          EXIT  1  0
4MDB    [   
4MY2    #   
4NCL    #   
4NX=    Z1INLOOP
4PBW          LTYPE    ,5                  [ X5=PERI MODE   
4PWG    #   
4QB6          STOZ     CPRW1(2)            [CLEAR THE REPLY WORD
4QTQ          DCA      ,LDEX,0,MODE 
4R*B          STO   0  AWORK4(2)
4RT2    #SKI  K6PREPREAD>599-599
4S#L          TRACEVER AWORK4(2),MODEINLP   
4SS=          SBN   0  #12  
4T?W          BZE   0  SHZER               [J IF PT GRAPHIC 
4TRG          LDN   0  #74  
4W?6    SHZER DCH   0  AWORK4(2)           [STORE ALPHA 
4WQQ          DCA      ,LDX,4,COUNT        [N/CH
4X=B          ADN   4  11                  [ALLOW FOR HEADER WORDS  
4XQ2          SRL   4  2                   [CONVERT TO NUMBER OF WORDS  
4Y9L          SETUPCOR 4,3,ADATA,ALINE     [SET UP BUFFER BLOCK 
4YP=    [     NOT LONG-LOCK IF LESS THAN --200 MILLISEC 
4^8W          STO   4  A1(3)               [NO. OF WDS. REQUESTED STORED
4^NG    Z1    LDX   6  AWORK2(2)           [GET THE TERMINATOR INTO X6  
5286          MHUNTW   3,ADATA,ALINE       [FIND THE INPUT BLOCK
52MQ          CHAIN    3,2                 [CHAIN IT NEXT TO ACT. BL.   
537B          LOCK     3
53M2          LOCK     2
546L          ADN   3  A1+2 
54L=          DCA      ,STO,3,CTSA         [BUFF ADDRESS
555W          STO   3  AWORK3(2)           [REMEMBER START ADDRESS  
55KG          LDX   4  5
5656          BZE   4  PTAPE               [J IF TR 
56JQ          SBN   4  3
574B          BZE   4  YC                  [J IF CR 
57J2          GEOERR   1,PERGON            [ERROR IF NEITHER
583L    YC    CALL  7  SR3  
58H=    Y4    DCA      ,LDX,3,CTSA  
592W          LDN   7  20                  [20 WORD ALLOWANCE FOR CARDS 
59GG          ADN   3  19                  [X3 POINT TO THE LAST WORD OF BUFFER 
5=26    SPCHK LDX   4  0(3)                [GET IT  
5=FQ          SPACECT  4,7,SP              [COUNT SPACES
5=^B          NGX   7  7
5?F2          ANDN  7  3                   [N/USED CHARS
5?YL          BRN      XSPACE   
5#D=    SP    SBN   3  1                   [REDUCE POINTER  
5#XW          BCT   7  SPCHK               [AND GO BACK IF WE HAVE NOT TESTED   
5*CG    XSPACE                             [ALL THE WORDS ON THE CARD.  
5*X6          DCA      ,LDX,1,CTSA  
5BBQ          SBN   1  A1+2                [X1 POINTS TO THE RECORD HEADER  
5BWB          ADN   3  3                   [MAKE ALLOWANCE FOR THE RECORD HEADER
5CB2          DCA      ,SBX,3,CTSA         [X3=LENGTH OF THE RECORD 
5CTL          LDX   4  3                   [REMEMBER THE LENGTH OF THE RECORD   
5D*=          STO   4  A1(1)               [INSERT THE WORD COUNT IN RECORD HEAD
5DSW          SRC   7  2
5F#G          ORN   7  #41                 [PFCC
5FS6          STO   7  A1+1(1)  
5G?Q          BXE   6  A1+2(1),YTM         [J IF TERMINATOR 
5GB* ...#UNS  JPGLTER   
5GDY ...(   
5GHH ...      LDX   0  GTERM
5GL6 ...      BXE   0  A1+2(1),YTM         [OR UNIVERSAL TERMINATOR 
5GNP ...)   
5GRB    STEPC STEP     0,0(3)              [PREPARE TO INSERT THE RECORD
5H?2          TESTREP2 FILEFULL,YTMX,APPWAIT,WAIT   
5HQL          CALL  1  SALINE              [RESTORE BUFFER ADDRESS  
5J==          ADN   2  A1                  [X2 NOW POINTS TO THE RECORD ITSELF  
5JPW          SMO      4                   [NOW MOVE THE RECORD 
5K9G          MOVE  2  0                   [INTO THE FILE   
5KP6          BZE   5  YT   
5L8Q          BRN      YC                  [READ NEXT CARD  
5LNB    #   
5M82    #   
5MML    PTAPE DCA      ,LDX,0,MODE  
5N7=          ANDN  0  #77  
5NLW          SBN   0  #12  
5P6G          BZE   0  YT                  [J IF GRAPHIC
5PL6          LDCH  0  AWORK1(2)
5Q5Q          SBN   0  #44  
5QKB          BZE   0  YT                  [J IF GRAPHIC,TABS   
5R52          REWIND
5RJL          STEP  
5S4=          BZE   3  YT                  [J IF BEGINNING OF FILE  
5SHW          WIND  
5T3G          STEPAGAIN 
5TH6          LDX   1  0(3)                [N/W IN THE RECORD   
5W2Q          SBN   1  2
5WGB          SLL   1  2                   [N/CH
5X22          LDX   7  1(3) 
5XFL          SRL   7  6
5X^=          ANDN  7  #77                 [LAST SHIFT  
5YDW          BZE   1  NOCHR               [J IF THE RECORD IS EMPTY
5YYG    SHFIN LDCH  0  2(3)                [LOAD CHAR   
5^D6          SBN   0  #74  
5^XQ          BNZ   0  NOAL                [J IF NOT ALPHA  
62CB          LDN   7  #74                 [REMEMBER LAST SHIFT 
62X2          BRN      NEXCH
63BL    NOAL  SBN   0  1
63W=          BNZ   0  NEXCH               [J IF NOT BETA   
64*W          LDN   7  #75  
64TG    NEXCH BCHX  3  £
65*6          BCT   1  SHFIN               [J TO TEST NEXT CHAR 
65SQ    NOCHR DCH   7  AWORK4(2)           [STORE LAST SHIFT
66#B          SBN   7  #74  
66S2          BZE   7  YT                  [J IF ALPHA  
67?L          LDN   7  RLINK               [REMEMBER LINK   
67R=          BRN      RESTART             [J TO CONVERT TO PREVIOUS
68=W    YT    CALL  7  SR3  
68QG    RLINK   
69=6          LDN   0  #14  
69PQ          ANDX  0  AWORK4(2)           [MODE
6=9B          BNZ   0  YT1                 [J IF PREVIOUS OR GRAPHIC
6=P2          LDN   0  4
6?8L          ORS   0  AWORK4(2)
6?N=    YT1   LDCH  7  AWORK4(2)           [LAST SHIFT  
6#7W          SLL   7  6                   [SHIFT IT UP BY A CHARACTER POSITION 
6#MG          LDX   0  CPRW1(2)            [GET REPLY WORD  
6*76          ANDX  0  QMSK(1)             [REMAINDER COUNT IN X0   
6*LQ    STO3  ADN   3  8                   [+RED TAPE   
6B6B          STO   3  ACOMMUNE1(2)        [N/CH IN RCD+RED TAPE
6BL2          STO   3  ACOMMUNE2(2)        [N/CH IN RCD+RT  
6C5L          SBN   3  8                   [-RED TAPE   
6CK=          NGX   0  3                   [IN ORDER TO GET THE CHAR. COUNT 
6D4W          SRC   3  2                   [MAKE IT A WORD MODIFIER 
6DJG    #SKI  K6PREPREAD>199-199
6F46          TRACE    4,NOCHS  
6FHQ          LDCT  4  #600                [AND INSERT THE  
6G3B          ANDX  4  3                   [LAST FREE CHARACTER POSITION
6GH2          ORS   4  7                   [IN CHARACTER POSITION   
6H2L          DCA      ,LDX,2,CTSA         [X2=START OF 
6HG=          SBN   2  A1+2                [BUFFER. MAKE IT POINT TO THE BLOCK  
6H^W          ORN   7  #41                 [PFCC
6JFG          STO   7  A1+1(2)             [INSERT CHARACTER DESCRIPTION WORD   
6J^6          ANDN  0  #3                  [HOW MANY CHARS TO SPACEFIL LAST WORD
6KDQ          BZE   0  Y6                  [IF LAST WORD FULL - BRANCH  
6KYB          LDN   4  #20                 [SPACE CHARACTER 
6LD2    STOR  SMO      2                   [LOOP
6LXL          DCH   4  A1+2(3)             [TO SPACEFILL THE FREE CHARACTER 
6MC=          BCHX  3  £                   [POSITIONS OF THE LAST WORD  
6MWW          BCT   0  STOR                [BACK FOR ANOTHER?   
6NBG    Y6    ADN   3  2                   [ALLOW FOR THE RECORD HEADER 
6NW6          STO   3  A1(2)               [AND STORE RECORD LENGTH 
6P*Q          LDX   7  2
6PTB          LDX   2  FX2  
6Q*2          LDX   0  AWORK1(2)           [SWITCH  
6QSL          SRL   0  12   
6R#=          SBN   0  #66  
6RRW          BNZ   0  SHOK                [J IF CONVERSION NOT NECESSARY   
6S?G          NAMETOP  7,ADATA,ACONV
6SR6          LDN   1  #22  
6T=Q          LDN   2  #26  
6TQB          TRANSFOR 1,2                 [CONVERT TO PREVIOUS 
6W=2          NAMETOP  7,ADATA,ALINE
6WPL          TESTRPN2 SHIFT,SHOK          [J IF RECORD HAS NOT BEEN CONVERTED  
6X9=          LDX   0  AWORK1(2)
6XNW          ANDN  0  #7777
6Y8G          STO   0  AWORK1(2)           [UNSET SWITCH IF CONVERSION OK   
6YN6    SHOK  LDX   2  7
6^7Q          LDX   3  A1(2)               [RECORD LENGTH   
6^MB          BXE   6  A1+2(2),YTM         [TEST FOR TERMINATOR 
6^P^ ...#UNS  JPGLTER   
6^SJ ...(   
6^X7 ...      LDX   0  GTERM
6^^Q ...      BXE   0  A1+2(2),YTM         [OR UNIVERSAL TERMINATOR 
724* ...)   
7272          LDCH  0  A1+2(2)             [IS FIRST CHARACTER  
72LL          SBN   0  #74                 [ALPHA?  
736=          BZE   0  XALPH               [J IF IT IS  
73KW    NOTTM LDX   4  3                   [REMEMBER THE RECORD LENGTH  
745G          LDX   2  FX2  
74K6          LDN   0  #10  
754Q          ANDX  0  AWORK4(2)           [MODE
75JB          BNZ   0  TAHUN               [J IF GRAPHIC
7642          SBN   3  2                   [SUBTRACT RED TAPE   
76HL          SLL   3  2                   [N/CH IN RCD 
773=          BZE   3  TAHUN
77GW          LDX   1  AWORK3(2)           [PTR KO RCD  
782G    SHUNT LDCH  0  0(1)                [CHAR.   
78G6          SBN   0  #74                 [TEST IF ALPHA   
78^Q          BNZ   0  NOALP
79FB          LDN   0  #74  
79^2          DCH   0  AWORK4(2)           [STORE ALPHA 
7=DL          BRN      NECH 
7=Y=    NOALP SBN   0  1                   [TEST IF BETA
7?CW          BNZ   0  NECH 
7?XG          LDN   0  #75  
7#C6          DCH   0  AWORK4(2)           [STORE BETA  
7#WQ    NECH  BCHX  1  £
7*BB          BCT   3  SHUNT               [J TO TEST NEXT CHAR 
7*W2    TAHUN HUNT     1,AINPAR,ATB 
7B*L          LDX   3  4                   [RESTORE THE RECORD LENGTH   
7BT=          BPZ   1  TABSEXP             [J TO EXPAND TABS
7C#W          BRN      STEPC               [INPUT NEXT LINE 
7CSG    #SKI  1 
7D#6    (   
7DRQ    TABSEXP 
7F?B          DOWN     INRESTAR,2   
7FR2          BRN      YT                  [J TO REPEATE PERI   
7G=L          BRN      SDISN               [J IF NON-MULTIFILE IS FULL  
7GQ=          BRN      TBRK                [BREAK-IN
7H9W    )   
7HPG    XALPH LDX   0  A1+2(2)             [REMOVE ALPHA SHIFT  
7J96          LDCH  1  A1+3(2)  
7JNQ          SLL   0  6                   [FOR TERMINATOR  
7K8B          ORX   0  1
7K*J ...#UNS  JPGLTER   
7KGQ ...      BXE   0  GTERM,YTM           [J IF UNIVERSAL TERMINATOR   
7KN2          BXU   6  0,NOTTM             [J IF NOT TERMINATOR 
7L7L    #   
7LM=    YTM   LDX   2  FX2                 [RESET THE CPA ADDRESS   
7LX4    YTM1
7M6W          FILEOPEN XENDC
7MLG ...      MHUNT  3,ADATA,ALINE  
7N66          LDCH  0  AWORK1(2)
7NKQ          SBN   0  #44  
7P5B          BNZ   0  UNL                 [J IF NOT GRAPHIC
7PK2          LDN   0  #41                 [PFCC
7Q4L          STO   0  A1+1(3)             [SET UP R/T  
7QJ=    UNL   ACROSS   TIDYREAD,1   
7R3W    #   
7R?N    WAIT
7RHG          LONGSET  IWTDEST,XGEOERR  
7RR#          LONGSTOP XBRK 
7S36    ROK   CALL  1  SALINE   
7SGQ          LDX   3  A1(2)
7T2B          BRN      STEPC
7TG2    XBRK  CLOSE 
7T^L    TBRK  CALL  5  SINFIN   
7WF=          ABANDCOM  
7WYW    YTMX                               [AFTER A FILE FULL REPLY 
7XDG    #SKIP K6PREPREAD>599-599
7XY6          TRACE    2,FILEFULL   
7YCQ          INPUTFULL TBRK,ROK,JOVER  
7YXB    SDISN DISENGPER                    [DISENGAGE THE PERIPHERAL
7^C2          LDX   6  AWORK2(2)           [GET THE TERMINATOR  
7^WL    NXT   CALL  7  SR3                 [READ A RECORD   
82B=          LDX   3  AWORK3(2)           [BUFFER ADDRESS  
82TW          BXE   6  0(3),WRFL           [TEST FOR TERMINATOR 
82YF ...#UNS  JPGLTER   
8334 ...(   
835M ...      LDX   0  GTERM
838= ...      BXE   0  0(3),WRFL           [... OR UNIVERSAL TERMINATOR 
83=T ...)   
83*G          LDCH  0  JSOURCE1(2)  
83T6          BNZ   0  NXT                 [J IF CARNS  
84#Q          LDCH  0  0(3)                [TEST IF FIRST CHAR IS ALPHA 
84SB          SBN   0  #74                 [IS ALPHA
85#2          BNZ   0  NXT                 [J IF NOT
85RL          LDX   0  0(3) 
86?=          LDCH  1  1(3) 
86QW          SLL   0  6                   [REMOVE ALPHA SHIFT  
87=G          ORX   0  1
87CN ...#UNS  JPGLTER   
87JW ...      BXE   0  GTERM,WRFL          [J IF UNIVERSAL TERMINATOR   
87Q6          BXU   6  0,NXT               [J IF NOT TERMINATOR 
889Q    WRFL  SBN   3  A1+2                [GET THE INPUT BUFFER
88PB          FREECORE 3                   [FREE THE INPUT BUFFER   
8992          BRN      XENDC               [LEAVE THE FILE OPENED IF JOB
89NL    WRECK   
89YD ...      FILEOPEN XENDC
8=8=          TESTMULT STREM
8=MW          CLOSEABANDON  
8?7G          BRN      XISIT
8?M6    STREM   
8#6Q          CLOSE                        [CLOSE ELEMENT   
8#LB          ERASEMULT                    [WHOLE MULTIFILE 
8*62    XISIT   
8*KL          ISITJOB  WRECKA   
8B5=          SETERR                       [SET ERROR   
8BJW    WRECKA  
8C4G          LDX   0  FINISH              [TEST IF FINISH COMMAND  
8CJ6          SLL   0  2
8D3Q          BPZ   0  XENDC               [J IF NOT 'FINISH NOW'   
8DHB          DISENGPER                    [DISENGAGE THE PERIPHERAL
8F32    XENDC   
8FGL          CALL  5  SINFIN   
8G2=          ENDCOM                       [BACK TO THE COMMAND PROCESSOR   
8GFW    SINFIN  
8G^G          INFINB
8HF6          EXIT  5  0
8HYQ    #   
8J5Y    XGEOERR 
8J?6          GEOERR 1,LONGSET? 
8JDB          SEGENTRY K99INLOOP
8JY2          MENDAREA  100,K99INLOOP   
8KCL    #   
8KX=    #END
^^^^ ...77643305000300000000