User Tools

Site Tools


cdc:nos2.source:opl.opl871:deck:fsesubs.001

Deck FSESUBS Part 001

18 Modifications

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
01953  M01S01723.ns2226  ---|    TRIMPAD;
Line S00001 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
01954  M01S00001.ns2226  +++|    IF EDITFIELD LS LENGTH(LIN) THEN
01955  M01S00002.ns2226  +++|      BEGIN
01956  M01S00003.ns2226  +++|      SETCHAR(LINE,EDITFIELD,CENDLINE);  # KILL PROTECTED    #
01957  M01S00004.ns2226  +++|      TRIMPAD;
01958  M01S00005.ns2226  +++|      END
Line S01724 Modification History
M01 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
01959  M01S01724.ns2571  ---|    IF NUMBERED[CURFILE] NQ 0 THEN LSHIFT(LIN,NUMWIDBLK,NUMWIDBLK);
Line S00013 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
01960  M01S00013.ns2571  +++|    TMP1 = 0;
01961  M01S00014.ns2571  +++|    IF TEMP NQ 0 THEN
01962  M01S00015.ns2571  +++|      BEGIN                  # IF HONORING *SET JUMP YES* #
01963  M01S00016.ns2571  +++|      GETCHAR(LINE,TMP1,TMP2);
01964  M01S00017.ns2571  +++|      WHYLE TMP2 EQ CBLANK DO      # COUNT LEADING BLANKS #
01965  M01S00018.ns2571  +++|        BEGIN
01966  M01S00019.ns2571  +++|        TMP1 = TMP1 + 1;
01967  M01S00020.ns2571  +++|        GETCHAR(LINE,TMP1,TMP2);
01968  M01S00021.ns2571  +++|        END
01969  M01S00022.ns2571  +++|      TMP1 = MAX(0,TMP1-1);
Line S00001 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
01970  M01S00001.fsesu6  +++|      TEMP = 1;
Line S00023 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
01971  M01S00023.ns2571  +++|      END
01972  M01S00024.ns2571  +++|    IF NUMBERED[CURFILE] NQ 0 THEN TMP1 = TMP1 + NUMWIDBLK;
01973  M01S00025.ns2571  +++|    IF TMP1 GR 0 THEN LSHIFT(LIN,TMP1,TMP1);
Line S00002 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
01974  M01S00002.fsesu6  +++|    IF NUMMARKS GR 0 THEN
01975  M01S00003.fsesu6  +++|      BEGIN                  # IF MARKS ACTIVE #
01976  M01S00004.fsesu6  +++|      IF REGLINE[MARKREG] EQ CURRENT THEN
01977  M01S00005.fsesu6  +++|        BEGIN                # IF FIRST MARKED LINE #
01978  M01S00006.fsesu6  +++|        IF MRKCHAR[0] GQ 0 THEN
01979  M01S00007.fsesu6  +++|          BEGIN              # IF MARK WORD ACTIVE #
01980  M01S00008.fsesu6  +++|          TEMP = TEMP LOR 2;
01981  M01S00009.fsesu6  +++|          MRKCHAR[0] = MAX(0, MRKCHAR[0]-TMP1);
01982  M01S00010.fsesu6  +++|          END
01983  M01S00011.fsesu6  +++|        END
01984  M01S00012.fsesu6  +++|      IF REGLINE[MARKREG+1] EQ CURRENT THEN
01985  M01S00013.fsesu6  +++|        BEGIN                # IF LAST MARKED LINE #
01986  M01S00014.fsesu6  +++|        IF MRKCHAR[1] GQ 0 THEN
01987  M01S00015.fsesu6  +++|          BEGIN              # IF MARK WORD ACTIVE #
01988  M01S00016.fsesu6  +++|          TEMP = TEMP LOR 4;
01989  M01S00017.fsesu6  +++|          MRKCHAR[1] = MAX(-1, MRKCHAR[1]-TMP1);
01990  M01S00018.fsesu6  +++|          END
01991  M01S00019.fsesu6  +++|        END
01992  M01S00020.fsesu6  +++|      END
01993  M00S01725.fsesubs +++|    COPYLIN(LIN,TTYLIN);
01994  M00S01726.fsesubs +++|    BAKZ;                    # REPOSITION AND READ LIN     #
Line S01727 Modification History
M01 (Removed by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
01995  M01S01727.ns2226  ---|    SETCHAR(LINE,EDITFIELD,CENDLINE);  # KILL PROTECTED    #
01996  M01S01728.ns2226  ---|    TRIMPAD;
Line S00006 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
01997  M01S00006.ns2226  +++|    IF EDITFIELD LS LENGTH(LIN) THEN
01998  M01S00007.ns2226  +++|      BEGIN
01999  M01S00008.ns2226  +++|      SETCHAR(LINE,EDITFIELD,CENDLINE);  # KILL PROTECTED    #
02000  M01S00009.ns2226  +++|      TRIMPAD;
02001  M01S00010.ns2226  +++|      END
Line S01729 Modification History
M01 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02002  M01S01729.ns2571  ---|    EXTENDC(LIN,CHRPTR3-1);  # LENGTHEN TO CURSOR POSITION #
Line S00026 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02003  M01S00026.ns2571  +++|    IF CHRPTR3 GQ LENGTH(LIN) THEN
02004  M01S00027.ns2571  +++|      BEGIN                  # IF CURSOR IS BEYOND END OF LINE #
Line S00028 Modification History
M01 (Added by) ns2571
M02 (Removed by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02005  M02S00028.fsesu6  ---|      IF TEMP NQ 0 THEN
Line S00021 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02006  M01S00021.fsesu6  +++|      IF TEMP LAN 1 NQ 0 THEN
Line S00029 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02007  M01S00029.ns2571  +++|        BEGIN                # IF HONORING *SET JUMP YES* #
02008  M01S00030.ns2571  +++|        GETCHAR(TTYLINE,0,TMP2);   # CHECK FOR LEADING BLANK #
Line S00031 Modification History
M01 (Added by) ns2571
M02 (Removed by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02009  M02S00031.fsesu6  ---|        IF TMP2 EQ CBLANK THEN LSHIFT(TTYLIN,1,1);
Line S00022 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02010  M01S00022.fsesu6  +++|        IF TMP2 EQ CBLANK THEN
02011  M01S00023.fsesu6  +++|          BEGIN              # IF THERE IS A LEADING BLANK #
02012  M01S00024.fsesu6  +++|          LSHIFT(TTYLIN,1,1);
02013  M01S00025.fsesu6  +++|          IF TEMP LAN 2 NQ 0 AND MRKCHAR[0] GR 0 THEN
02014  M01S00026.fsesu6  +++|            MRKCHAR[0] = MRKCHAR[0] - 1;
02015  M01S00027.fsesu6  +++|          IF TEMP LAN 4 NQ 0 AND MRKCHAR[1] GQ 0 THEN
02016  M01S00028.fsesu6  +++|            MRKCHAR[1] = MRKCHAR[1] - 1;
02017  M01S00029.fsesu6  +++|          END
Line S00032 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02018  M01S00032.ns2571  +++|        END
02019  M01S00033.ns2571  +++|      EXTENDC(LIN,CHRPTR3-1);      # LENGTHEN TO CURSOR POSITION #
02020  M01S00034.ns2571  +++|      END
Line S00030 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02021  M01S00030.fsesu6  +++|    IF TEMP LAN 2 NQ 0 THEN
02022  M01S00031.fsesu6  +++|      BEGIN                  # IF FIRST MARK ADJUSTMENT #
02023  M01S00032.fsesu6  +++|      REGLINE[MARKREG] = CURRENT;
02024  M01S00033.fsesu6  +++|      MRKCHAR[0] = MRKCHAR[0] + LENGTH(LIN);
02025  M01S00034.fsesu6  +++|      END
02026  M01S00035.fsesu6  +++|    IF TEMP LAN 4 NQ 0 THEN
02027  M01S00036.fsesu6  +++|      BEGIN                  # IF LAST MARK ADJUSTMENT #
02028  M01S00037.fsesu6  +++|      REGLINE[MARKREG+1] = CURRENT;
02029  M01S00038.fsesu6  +++|      MRKCHAR[1] = MRKCHAR[1] + LENGTH(LIN);
02030  M01S00039.fsesu6  +++|      IF MRKCHAR[1] LS 0 THEN
02031  M01S00040.fsesu6  +++|        BEGIN                # IF NO PLACE TO PUT MARK #
02032  M01S00041.fsesu6  +++|        MRKCHAR[1] = 0;
02033  M01S00042.fsesu6  +++|        RSHIFT(TTYLIN,0,1);
02034  M01S00043.fsesu6  +++|        SETCHAR(TTYLINE,0,CBLANK);
02035  M01S00044.fsesu6  +++|        END
02036  M01S00045.fsesu6  +++|      END
02037  M00S01730.fsesubs +++|    CONCAT(LIN,TTYLIN);
Line S00001 Modification History
M01 (Added by) ns2174
Seq #  *Modification Id* Act 
----------------------------+
02038  M01S00001.ns2174  +++|    SETCHAR(LINE,EDITFIELD,CENDLINE);  # CLEAR END OF LINE #
02039  M00S01731.fsesubs +++|    TRIMPAD;
02040  M00S01732.fsesubs +++|    REPX;                    # STORE CONCATENATED LINES    #
02041  M00S01733.fsesubs +++|    PUSH;
02042  M00S01734.fsesubs +++|    FWDZ;                    # DELETE SECOND HALF          #
02043  M00S01735.fsesubs +++|    DELX;
02044  M00S01736.fsesubs +++|    POP;                     # LEAVE POSITION AT JOINED    #
Line S00035 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02045  M01S00035.ns2571  +++|    POPTEMP;
02046  M00S01737.fsesubs +++|    END
02047  M00S01738.fsesubs +++|  IOEND                       # OF DOJOIN         #
02048  M00S01739.fsesubs +++|
02049  M00S01740.fsesubs +++|
Line S01741 Modification History
M01 (Removed by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02050  M01S01741.ns2226  ---|PROC DOSPLIT;
Line S00011 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02051  M01S00011.ns2226  +++|PROC DOSPLIT(TRUNCATE);
02052  M00S01742.fsesubs +++|  IOBEGIN(DOSPLIT)
02053  M00S01743.fsesubs +++|#
02054  M00S01744.fsesubs +++|**        DOSPLIT - SPLIT A WORKFILE LINE INTO TWO.
02055  M00S01745.fsesubs +++|*
02056  M00S01746.fsesubs +++|*         ENTRY  LIN - THE LINE TO SPLIT.
Line S00012 Modification History
M01 (Added by) ns2226
M02 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02057  M02S00012.ns2571  ---|*                TRUNCATE - WHETHER TO TRIM TRAILING BLANKS.
Line S00036 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02058  M01S00036.ns2571  +++|*                TRUNCATE - IF 1, TRIM TRAILING BLANKS FROM BOTH LINES.
02059  M01S00037.ns2571  +++|*                           IF 2, TRIM TRAILING BLANKS FROM BOTH LINES,
02060  M01S00038.ns2571  +++|*                                 AND ADD LEADING BLANKS TO SECOND LINE
02061  M01S00039.ns2571  +++|*                                 TO MATCH FIRST LINE IF AUTOINDENTING.
02062  M00S01747.fsesubs +++|*                CURRENT - FILE POSITION.
02063  M00S01748.fsesubs +++|*                CHRPTR3 - CHARACTER POSITION.
02064  M00S01749.fsesubs +++|*                NUMBERED[CURFILE] - INDICATES SEQUENCE MODE.
02065  M00S01750.fsesubs +++|*
02066  M00S01751.fsesubs +++|*         EXIT   LIN, CURRENT - UPDATED.
02067  M00S01752.fsesubs +++|*                WORKFILE CHANGED.
02068  M00S01753.fsesubs +++|*
02069  M00S01754.fsesubs +++|*         MACROS GETCHAR, SETCHAR.
02070  M00S01755.fsesubs +++|*
Line S01756 Modification History
M01 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02071  M01S01756.ns2571  ---|*         CALLS  TRIMPAD, REPX, COPYLIN, RSHIFT, INSX.
Line S00040 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02072  M01S00040.ns2571  +++|*         CALLS  COPYLIN, INSX, POPTEMP, PUSHTEMP,
02073  M01S00041.ns2571  +++|*                REPX, RSHIFT, TRIMPAD.
02074  M00S01757.fsesubs +++|*
02075  M00S01758.fsesubs +++|*         USES   TTYLIN.
02076  M00S01759.fsesubs +++|#
Line S00013 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02077  M01S00013.ns2226  +++|  ITEM TRUNCATE;
02078  M00S01760.fsesubs +++|  ITEM TMP1, TMP2;           # USE INSTANTLY     #
Line S00014 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02079  M01S00014.ns2226  +++|
02080  M01S00015.ns2226  +++|  PUSHTEMP;
02081  M01S00016.ns2226  +++|  TEMP=TRUNCATE;
02082  M01S00017.ns2226  +++|  # END OF NON-REENTRANT PARAMETER USAGE #
02083  M00S01761.fsesubs +++|  TTYLINE[0]=NULLIN;         # DEFAULT NEW LINE  #
Line S01762 Modification History
M01 (Removed by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02084  M01S01762.ns2226  ---|  SETCHAR(LINE,EDITFIELD,CENDLINE);    # KILL PROTECTED    #
02085  M01S01763.ns2226  ---|  TRIMPAD;
Line S00018 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02086  M01S00018.ns2226  +++|  IF EDITFIELD LS LENGTH(LIN) THEN
02087  M01S00019.ns2226  +++|    BEGIN
02088  M01S00020.ns2226  +++|    SETCHAR(LINE,EDITFIELD,CENDLINE);    # KILL PROTECTED    #
02089  M01S00021.ns2226  +++|    TRIMPAD;
02090  M01S00022.ns2226  +++|    END
02091  M00S01764.fsesubs +++|  FOR TMP1=CHRPTR3 STEP 1 UNTIL LENGTH(LIN) DO
02092  M00S01765.fsesubs +++|    BEGIN                     # COPY SECOND HALF  #
02093  M00S01766.fsesubs +++|    GETCHAR(LINE,TMP1,TMP2);
02094  M00S01767.fsesubs +++|    SETCHAR(TTYLINE,TMP1-CHRPTR3,TMP2);
02095  M00S01768.fsesubs +++|    END
02096  M00S01769.fsesubs +++|  SETCHAR(LINE,CHRPTR3,CENDLINE);
Line S01770 Modification History
M01 (Removed by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02097  M01S01770.ns2226  ---|  TRIMPAD;
Line S00023 Modification History
M01 (Added by) ns2226
M02 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02098  M02S00023.ns2571  ---|  IF TEMP EQ 1 THEN TRIMPAD;
Line S00042 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02099  M01S00042.ns2571  +++|  IF TEMP GR 0 THEN TRIMPAD;
02100  M00S01771.fsesubs +++|  REPX;                      # STORE FIRST HALF  #
Line S00043 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02101  M01S00043.ns2571  +++|  TMP1 = 0;
02102  M01S00044.ns2571  +++|  IF AUTOINDENT AND TEMP EQ 2 THEN
02103  M01S00045.ns2571  +++|    BEGIN                    # IF HONORING *SET JUMP YES* #
02104  M01S00046.ns2571  +++|    GETCHAR(LINE,TMP1,TMP2);
02105  M01S00047.ns2571  +++|    WHYLE TMP2 EQ CBLANK DO  # COUNT LEADING BLANKS #
02106  M01S00048.ns2571  +++|      BEGIN
02107  M01S00049.ns2571  +++|      TMP1 = TMP1 + 1;
02108  M01S00050.ns2571  +++|      GETCHAR(LINE,TMP1,TMP2);
02109  M01S00051.ns2571  +++|      END
02110  M01S00052.ns2571  +++|    END
02111  M00S01772.fsesubs +++|  COPYLIN(TTYLIN,LIN);
Line S01773 Modification History
M01 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02112  M01S01773.ns2571  ---|  IF NUMBERED[CURFILE] NQ 0 THEN  # CREATE EMPTY NUMERIC FIELD  #
02113  M01S01774.ns2571  ---|    BEGIN
02114  M01S01775.ns2571  ---|    RSHIFT(LIN,0,NUMWIDBLK);
02115  M01S01776.ns2571  ---|    FOR TMP1=0 STEP 1 UNTIL NUMWIDBLK-1 DO SETCHAR(LINE,TMP1,CBLANK);
Line S00053 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02116  M01S00053.ns2571  +++|  IF NUMBERED[CURFILE] NQ 0 THEN TMP1 = TMP1 + NUMWIDBLK;
02117  M01S00054.ns2571  +++|  IF TMP1 GR 0 THEN
02118  M01S00055.ns2571  +++|    BEGIN                    # IF LEADING BLANKS REQUIRED #
02119  M01S00056.ns2571  +++|    RSHIFT(LIN,0,TMP1);
02120  M01S00057.ns2571  +++|    FOR TMP2=0 STEP 1 UNTIL TMP1-1 DO SETCHAR(LINE,TMP2,CBLANK);
02121  M00S01777.fsesubs +++|    END
Line S01778 Modification History
M01 (Removed by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02122  M01S01778.ns2226  ---|  TRIMPAD;
Line S00024 Modification History
M01 (Added by) ns2226
M02 (Removed by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02123  M02S00024.ns2571  ---|  IF TEMP EQ 1 THEN TRIMPAD;
Line S00058 Modification History
M01 (Added by) ns2571
Seq #  *Modification Id* Act 
----------------------------+
02124  M01S00058.ns2571  +++|  IF TEMP GR 0 THEN TRIMPAD;
Line S01779 Modification History
M01 (Removed by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02125  M01S01779.fsesu6  ---|  INSX;                      # ADD SECOND HALF   #
Line S00046 Modification History
M01 (Added by) fsesu6
Seq #  *Modification Id* Act 
----------------------------+
02126  M01S00046.fsesu6  +++|  IF NUMMARKS EQ 0
02127  M01S00047.fsesu6  +++|    THEN INSX;               # IF NO MARKS ACTIVE #
02128  M01S00048.fsesu6  +++|  ELSE
02129  M01S00049.fsesu6  +++|    BEGIN                    # IF MARKS ACTIVE #
02130  M01S00050.fsesu6  +++|    TEMP = TMP1;
02131  M01S00051.fsesu6  +++|    INSX;
02132  M01S00052.fsesu6  +++|    IF REGLINE[MARKREG] EQ CURRENT-1 THEN
02133  M01S00053.fsesu6  +++|      BEGIN                  # IF SPLIT OF FIRST MARKED LINE #
02134  M01S00054.fsesu6  +++|      IF MRKCHAR[0] GQ CHRPTR3 THEN
02135  M01S00055.fsesu6  +++|        BEGIN                # IF SPLIT LEFT OF FIRST MARK #
02136  M01S00056.fsesu6  +++|        REGLINE[MARKREG] = CURRENT;
02137  M01S00057.fsesu6  +++|        MRKCHAR[0] = MRKCHAR[0] - CHRPTR3 + TEMP;
02138  M01S00058.fsesu6  +++|        END
02139  M01S00059.fsesu6  +++|      END
02140  M01S00060.fsesu6  +++|    IF REGLINE[MARKREG+1] EQ CURRENT-1 THEN
02141  M01S00061.fsesu6  +++|      BEGIN                  # IF SPLIT OF LAST MARKED LINE #
02142  M01S00062.fsesu6  +++|      IF MRKCHAR[1] LS 0 THEN REGLINE[MARKREG+1] = CURRENT;
02143  M01S00063.fsesu6  +++|      ELSE IF MRKCHAR[1] GQ CHRPTR3 THEN
02144  M01S00064.fsesu6  +++|        BEGIN                # IF SPLIT LEFT OF LAST MARK #
02145  M01S00065.fsesu6  +++|        REGLINE[MARKREG+1] = CURRENT;
02146  M01S00066.fsesu6  +++|        MRKCHAR[1] = MRKCHAR[1] - CHRPTR3 + TEMP;
02147  M01S00067.fsesu6  +++|        END
02148  M01S00068.fsesu6  +++|      END
02149  M01S00069.fsesu6  +++|    END
Line S00025 Modification History
M01 (Added by) ns2226
Seq #  *Modification Id* Act 
----------------------------+
02150  M01S00025.ns2226  +++|  POPTEMP;
02151  M01S00026.ns2226  +++|
02152  M00S01780.fsesubs +++|  IOEND                       # OF DOSPLIT        #
02153  M00S01781.fsesubs +++|PAGE                                 # KEYWORD MATCHER #
02154  M00S01782.fsesubs +++|
02155  M00S01783.fsesubs +++|
02156  M00S01784.fsesubs +++|PROC MATCHKEY(PARM);
02157  M00S01785.fsesubs +++|  BEGIN
02158  M00S01786.fsesubs +++|#
02159  M00S01787.fsesubs +++|*         MATCHKEY - MATCH KEYWORD BY ABBREVIATION RULES.
02160  M00S01788.fsesubs +++|*
02161  M00S01789.fsesubs +++|*         MATCHKEY MATCHES THE KEYWORD IN TOKENSYM AGAINST THE
02162  M00S01790.fsesubs +++|*         KEYWORD TABLE, FOR A SPECIFIED SECTION OF THE TABLE,
02163  M00S01791.fsesubs +++|*         AND HONORING THE ABBREVIATION RULES OF ALL CHARACTERS,
02164  M00S01792.fsesubs +++|*         THREE CHARACTERS, OR ONE CHARACTER.
02165  M00S01793.fsesubs +++|*
02166  M00S01794.fsesubs +++|*         ENTRY  KEYWDTYPE - WHICH SECTION OF TABLE TO SEARCH.
02167  M00S01795.fsesubs +++|*                TOKENSYM - KEYWORD TO MATCH.
02168  M00S01796.fsesubs +++|*                TOKENLEN - LENGTH OF KEYWORD.
02169  M00S01797.fsesubs +++|*
02170  M00S01798.fsesubs +++|*         EXIT   PARM - LENGTH OF ACCEPTED ABBREVIATION.
02171  M00S01799.fsesubs +++|*                KEYWDNDX - WHERE MATCHED IN TABLE.
02172  M00S01800.fsesubs +++|#
02173  M00S01801.fsesubs +++|  ITEM PARM;
02174  M00S01802.fsesubs +++|  ITEM TMP1;
02175  M00S01803.fsesubs +++|
02176  M00S01804.fsesubs +++|  FOR PARM=TOKENLEN STEP -1 UNTIL 4 DO
02177  M00S01805.fsesubs +++|    BEGIN
02178  M00S01806.fsesubs +++|    FOR TMP1=FIRSTKEYWD[KEYWDTYPE] STEP 1
02179  M00S01807.fsesubs +++|      UNTIL LASTKEYWD[KEYWDTYPE] DO
02180  M00S01808.fsesubs +++|      BEGIN
02181  M00S01809.fsesubs +++|      IF C<0,PARM>TOKENSYM EQ KEYWORD[TMP1] THEN GOTO KEYFOUND;
02182  M00S01810.fsesubs +++|      END
02183  M00S01811.fsesubs +++|    END
02184  M00S01812.fsesubs +++|
02185  M00S01813.fsesubs +++|  PARM=3;
02186  M00S01814.fsesubs +++|  FOR TMP1=FIRSTKEYWD[KEYWDTYPE] STEP 1
02187  M00S01815.fsesubs +++|    UNTIL LASTKEYWD[KEYWDTYPE] DO
02188  M00S01816.fsesubs +++|    BEGIN
02189  M00S01817.fsesubs +++|    IF C<0,3>TOKENSYM EQ C<0,3>KEYWORD[TMP1] THEN GOTO KEYFOUND;
02190  M00S01818.fsesubs +++|    END
02191  M00S01819.fsesubs +++|
02192  M00S01820.fsesubs +++|  PARM=2;
02193  M00S01821.fsesubs +++|  FOR TMP1=FIRSTKEYWD[KEYWDTYPE] STEP 1
02194  M00S01822.fsesubs +++|    UNTIL LASTKEYWD[KEYWDTYPE] DO
02195  M00S01823.fsesubs +++|    BEGIN
02196  M00S01824.fsesubs +++|    IF C<0,2>TOKENSYM EQ C<0,2>KEYWORD[TMP1]
02197  M00S01825.fsesubs +++|      AND C<2,1>KEYWORD[TMP1] EQ " " THEN GOTO KEYFOUND;
02198  M00S01826.fsesubs +++|    END
02199  M00S01827.fsesubs +++|
02200  M00S01828.fsesubs +++|  PARM=1;
02201  M00S01829.fsesubs +++|  FOR TMP1=FIRSTKEYWD[KEYWDTYPE] STEP 1
02202  M00S01830.fsesubs +++|    UNTIL LASTKEYWD[KEYWDTYPE] DO
02203  M00S01831.fsesubs +++|    BEGIN
02204  M00S01832.fsesubs +++|    IF C<0,1>TOKENSYM EQ C<0,1>KEYWORD[TMP1] THEN GOTO KEYFOUND;
02205  M00S01833.fsesubs +++|    END
02206  M00S01834.fsesubs +++|
02207  M00S01835.fsesubs +++|  RETURN;
02208  M00S01836.fsesubs +++|
02209  M00S01837.fsesubs +++|KEYFOUND:
02210  M00S01838.fsesubs +++|  KEYWDNDX=TMP1;
02211  M00S01839.fsesubs +++|
02212  M00S01840.fsesubs +++|  END                                # OF MATCHKEY #
02213  M00S01841.fsesubs +++|
02214  M00S01842.fsesubs +++|
02215  M00S01843.fsesubs +++|END TERM
cdc/nos2.source/opl.opl871/deck/fsesubs.001.txt ยท Last modified: (external edit)