Seq # *Modification Id* Act
----------------------------+
00001 M00S00001.fsefile +++|PROC FSEFILE;
00002 M00S00002.fsefile +++|BEGIN
00003 M00S00003.fsefile +++|
00004 M00S00004.fsefile +++|
00005 M00S00005.fsefile +++|#
00006 M00S00006.fsefile +++|*** FSEFILE -- SUBROUTINES FOR FILE ACCESS.
00007 M00S00007.fsefile +++|*
Line S00008 Modification History |
M01 (Removed by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00008 M01S00008.281l803 ---|* COPYRIGHT CONTROL DATA CORPORATION, 1983.
Line S00001 Modification History |
M01 (Added by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00009 M01S00001.281l803 +++|* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
00010 M00S00009.fsefile +++|*
00011 M00S00010.fsefile +++|* FSEFILE HAS THE ROUTINES TO TEST THE ATTRIBUTES OF
00012 M00S00011.fsefile +++|* VARIOUS LOCAL FILES. THIS IS THEREFORE USED ONLY FOR
00013 M00S00012.fsefile +++|* THE SINGLE-USER VERSION OF FSE AND IS NOT PROGRAMMED
00014 M00S00013.fsefile +++|* REENTRANTLY. THIS MODULE IS A CANDIDATE FOR FUTURE
00015 M00S00014.fsefile +++|* OVERLAY STRUCTURING. IT MAY BE USED BY THE FSEMAIN MODULE
00016 M00S00015.fsefile +++|* AND THE FILCMD MODULE ONLY.
00017 M00S00016.fsefile +++|#
00018 M00S00017.fsefile +++|
00019 M00S00018.fsefile +++| DEF LISTCON #0#;
00020 M00S00019.fsefile +++|
00021 M00S00020.fsefile +++|CONTROL EJECT; # UNIVERSAL DECLARES #
00022 M00S00021.fsefile +++|
00023 M00S00022.fsefile +++|*IFCALL SINGLE,COMFSGL
00024 M00S00023.fsefile +++|*IFCALL ONLY,COMFONL
00025 M00S00024.fsefile +++|*IFCALL MULTI,COMFMLT
00026 M00S00025.fsefile +++|*CALL COMFFSE
00027 M00S00026.fsefile +++|
00028 M00S00027.fsefile +++| # EXTERNALS #
00029 M00S00028.fsefile +++|
00030 M00S00029.fsefile +++|
00031 M00S00030.fsefile +++|XDEF
00032 M00S00031.fsefile +++| BEGIN
00033 M00S00032.fsefile +++|*CALL COMFXFL
00034 M00S00033.fsefile +++| END
00035 M00S00034.fsefile +++|
00036 M00S00035.fsefile +++|XREF ARRAY MAXADDR;; # KEY ADDRESSES IN BUFFER SEGMENT #
00037 M00S00036.fsefile +++|XREF ARRAY WORKBUF;;
00038 M00S00037.fsefile +++|
00039 M00S00038.fsefile +++|XREF PROC FASTRLC;
00040 M00S00039.fsefile +++|
00041 M00S00040.fsefile +++|XREF
00042 M00S00041.fsefile +++| BEGIN
00043 M00S00042.fsefile +++| PROC PF;
00044 M00S00043.fsefile +++| PROC FILINFO;
00045 M00S00044.fsefile +++| PROC READ;
00046 M00S00045.fsefile +++| PROC READC;
00047 M00S00046.fsefile +++| PROC REWIND;
00048 M00S00047.fsefile +++| PROC FLDLEN;
Line S00001 Modification History |
M01 (Added by) | ns2377 |
Seq # *Modification Id* Act
----------------------------+
00049 M01S00001.ns2377 +++| PROC RTIME;
00050 M01S00002.ns2377 +++| PROC TTLIN;
00051 M01S00003.ns2377 +++| PROC TTSTR;
00052 M01S00004.ns2377 +++| PROC VDTCLO;
00053 M01S00005.ns2377 +++| PROC VDTOPN;
Line S00001 Modification History |
M01 (Added by) | ns2249 |
Seq # *Modification Id* Act
----------------------------+
00054 M01S00001.ns2249 +++| PROC VDTPRT$; # PROMPT ON/OFF #
00055 M00S00048.fsefile +++| END
00056 M00S00049.fsefile +++|
00057 M00S00050.fsefile +++|XREF
00058 M00S00051.fsefile +++| BEGIN
00059 M00S00052.fsefile +++|*CALL COMFXSB
00060 M00S00053.fsefile +++|*CALL COMFXSC
00061 M00S00054.fsefile +++|*CALL COMFXED
00062 M00S00055.fsefile +++|*CALL COMFXWK
00063 M00S00056.fsefile +++| END
00064 M00S00057.fsefile +++|
00065 M00S00058.fsefile +++| # COMMON DATA #
00066 M00S00059.fsefile +++|
00067 M00S00060.fsefile +++|*CALL COMFDS1
00068 M00S00061.fsefile +++|*CALL COMFVD2
00069 M00S00062.fsefile +++|*CALL COMFDS2
Line S00001 Modification History |
M01 (Added by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00070 M01S00001.ns2568 +++|*CALL COMSPFM
00071 M00S00063.fsefile +++|PAGE # HERE WE GO #
00072 M00S00064.fsefile +++|
00073 M00S00065.fsefile +++|
00074 M00S00066.fsefile +++|FUNC MSEQUIP(NAME) B;
00075 M00S00067.fsefile +++| BEGIN
00076 M00S00068.fsefile +++|#
00077 M00S00069.fsefile +++|** MSEQUIP - TEST FILE ATTRIBUTES FOR MASS STORAGE.
00078 M00S00070.fsefile +++|*
00079 M00S00071.fsefile +++|* ENTRY NAME - NAME OF FILE TO INSPECT.
00080 M00S00072.fsefile +++|*
00081 M00S00073.fsefile +++|* EXIT MSEQUIP - TRUE IF ALREADY ON MASS STORAGE OR IF
00082 M00S00074.fsefile +++|* ANTICIPATED TO BE ON MASS STORAGE BY DEFAULT.
00083 M00S00075.fsefile +++|* OTHERWISE FALSE.
00084 M00S00076.fsefile +++|*
00085 M00S00077.fsefile +++|* CALLS GETINFO, TRIMNAME.
00086 M00S00078.fsefile +++|*
00087 M00S00079.fsefile +++|* NOTE ASSUMES CORRECT DEFINITION OF DEFAULT NAMES
00088 M00S00080.fsefile +++|* FOR INPUT AND OUTPUT FILES.
00089 M00S00081.fsefile +++|#
00090 M00S00082.fsefile +++| ITEM NAME C(7);
Line S00001 Modification History |
M01 (Added by) | fsefi4 |
Seq # *Modification Id* Act
----------------------------+
00091 M01S00001.fsefi4 +++|
00092 M01S00002.fsefi4 +++| FILINFSTAT = 0;
00093 M00S00083.fsefile +++| IF B<0,42>NAME EQ 0 THEN
00094 M00S00084.fsefile +++| BEGIN
00095 M00S00085.fsefile +++| MSEQUIP=FALSE;
00096 M00S00086.fsefile +++| RETURN;
00097 M00S00087.fsefile +++| END
00098 M00S00088.fsefile +++| MSEQUIP=TRUE;
00099 M00S00089.fsefile +++| GETINFO(NAME);
00100 M00S00090.fsefile +++| IF FILINFSTAT EQ 0 THEN
00101 M00S00091.fsefile +++| BEGIN
00102 M00S00092.fsefile +++| IF TRIMNAME(NAME) EQ DEFINPNAM THEN MSEQUIP=FALSE;
00103 M00S00093.fsefile +++| IF TRIMNAME(NAME) EQ DEFOUTNAM THEN MSEQUIP=FALSE;
00104 M00S00094.fsefile +++| END
00105 M00S00095.fsefile +++| ELSE
00106 M00S00096.fsefile +++| BEGIN
00107 M00S00097.fsefile +++| IF NOT (FILINFRMS AND FILINFREAD) THEN MSEQUIP=FALSE;
00108 M00S00098.fsefile +++| END
00109 M00S00099.fsefile +++| END # OF MSEQUIP #
00110 M00S00100.fsefile +++|
00111 M00S00101.fsefile +++|FUNC TTEQUIP(NAME) B;
00112 M00S00102.fsefile +++| BEGIN
00113 M00S00103.fsefile +++|#
00114 M00S00104.fsefile +++|** TTEQUIP - TEST FILE ATTRIBUTES FOR TERMINAL.
00115 M00S00105.fsefile +++|*
00116 M00S00106.fsefile +++|* ENTRY NAME - FILE TO TEST.
00117 M00S00107.fsefile +++|*
00118 M00S00108.fsefile +++|* EXIT TTEQUIP - TRUE IF FILE ALREADY ASSIGNED TO TERMINAL
00119 M00S00109.fsefile +++|* EQUIPMENT, OR IF ANTICIPATED TO BE SO ASSIGNED
00120 M00S00110.fsefile +++|* BY DEFAULT. OTHERWISE FALSE.
00121 M00S00111.fsefile +++|*
00122 M00S00112.fsefile +++|* CALLS GETINFO, TRIMNAME.
00123 M00S00113.fsefile +++|*
00124 M00S00114.fsefile +++|* NOTE ASSUMES CORRECT DEFINITION OF DEFAULT NAMES FOR
00125 M00S00115.fsefile +++|* INPUT AND OUTPUT FILES.
00126 M00S00116.fsefile +++|#
00127 M00S00117.fsefile +++| ITEM NAME C(7);
00128 M00S00118.fsefile +++| TTEQUIP=FALSE;
00129 M00S00119.fsefile +++| IF B<0,42>NAME EQ 0 THEN RETURN;
00130 M00S00120.fsefile +++| GETINFO(NAME);
00131 M00S00121.fsefile +++| IF FILINFSTAT EQ 0 THEN # NOT EXIST #
00132 M00S00122.fsefile +++| BEGIN
00133 M00S00123.fsefile +++| IF TRIMNAME(NAME) EQ DEFINPNAM THEN TTEQUIP=TRUE;
00134 M00S00124.fsefile +++| IF TRIMNAME(NAME) EQ DEFOUTNAM THEN TTEQUIP=TRUE;
00135 M00S00125.fsefile +++| END
00136 M00S00126.fsefile +++| ELSE # FILE ALREADY EXIST #
00137 M00S00127.fsefile +++| BEGIN
00138 M00S00128.fsefile +++| IF FILINFTTY THEN TTEQUIP=TRUE;
00139 M00S00129.fsefile +++| END
00140 M00S00130.fsefile +++| END # OF TTEQUIP #
00141 M00S00131.fsefile +++|
00142 M00S00132.fsefile +++|
00143 M00S00133.fsefile +++|FUNC WRITEABLE(NAME) B;
00144 M00S00134.fsefile +++| BEGIN
00145 M00S00135.fsefile +++|#
00146 M00S00136.fsefile +++|** WRITEABLE - TEST FILE FOR NON-READ-ONLY DISK.
00147 M00S00137.fsefile +++|*
00148 M00S00138.fsefile +++|* ENTRY NAME - FILE TO INSPECT.
00149 M00S00139.fsefile +++|*
00150 M00S00140.fsefile +++|* EXIT - WRITEABLE - TRUE IF AND ONLY IF FILE IS ON
00151 M00S00141.fsefile +++|* MASS STORAGE AND HAS NO ACCESS RESTRICTIONS.
00152 M00S00142.fsefile +++|*
00153 M00S00143.fsefile +++|* CALLS MSEQUIP.
00154 M00S00144.fsefile +++|*
00155 M00S00145.fsefile +++|* NOTE CODING ASSUMES GETINFO WILL BE CALLED FOR THIS
00156 M00S00146.fsefile +++|* FILE NO LATER THAN COMPLETION OF MSEQUIP.
00157 M00S00147.fsefile +++|#
00158 M00S00148.fsefile +++| ITEM NAME C(7);
00159 M00S00149.fsefile +++| WRITEABLE=FALSE;
00160 M00S00150.fsefile +++| IF MSEQUIP(NAME) THEN
00161 M00S00151.fsefile +++| BEGIN
00162 M00S00152.fsefile +++| WRITEABLE=FILINFWRIT;
00163 M00S00153.fsefile +++| IF FILINFSTAT EQ 0 THEN WRITEABLE=TRUE;
00164 M00S00154.fsefile +++| END
00165 M00S00155.fsefile +++| END # OF WRITEABLE #
00166 M00S00156.fsefile +++|
00167 M00S00157.fsefile +++|
00168 M00S00158.fsefile +++|FUNC LOCALFILE(NAME) B;
00169 M00S00159.fsefile +++| BEGIN
00170 M00S00160.fsefile +++|#
00171 M00S00161.fsefile +++|** LOCALFILE - TEST FILE ATTRIBUTES FOR LOFT.
00172 M00S00162.fsefile +++|*
00173 M00S00163.fsefile +++|* ENTRY NAME - FILE TO INSPECT.
00174 M00S00164.fsefile +++|*
00175 M00S00165.fsefile +++|* EXIT LOCALFILE - TRUE IF AND ONLY IF FILE IS ON
00176 M00S00166.fsefile +++|* MASS STORAGE, HAS WRITE PERMISSION, AND IS OF
00177 M00S00167.fsefile +++|* LOCAL FILE TYPE.
00178 M00S00168.fsefile +++|*
00179 M00S00169.fsefile +++|* CALLS WRITEABLE.
00180 M00S00170.fsefile +++|*
00181 M00S00171.fsefile +++|* NOTE ASSUMES GETINFO IS CALLED BY WRITEABLE.
00182 M00S00172.fsefile +++|#
00183 M00S00173.fsefile +++| ITEM NAME C(7);
00184 M00S00174.fsefile +++| LOCALFILE=FALSE;
00185 M00S00175.fsefile +++| IF WRITEABLE(NAME) THEN
00186 M00S00176.fsefile +++| BEGIN
00187 M00S00177.fsefile +++| IF FILINFFT EQ 0
00188 M00S00178.fsefile +++| OR FILINFFT EQ 6 THEN LOCALFILE=TRUE;
00189 M00S00179.fsefile +++| END
00190 M00S00180.fsefile +++| END # OF LOCALFILE #
00191 M00S00181.fsefile +++|
00192 M00S00182.fsefile +++|
00193 M00S00183.fsefile +++|PROC GETINFO(NAME);
00194 M00S00184.fsefile +++| BEGIN
00195 M00S00185.fsefile +++|#
00196 M00S00186.fsefile +++|** GETINFO - INTERFACE TO FILINFO MACRO.
00197 M00S00187.fsefile +++|*
00198 M00S00188.fsefile +++|* ENTRY NAME - FILE TO PROCESS.
00199 M00S00189.fsefile +++|*
00200 M00S00190.fsefile +++|* EXIT FILINFPARMS ARRAY IS FILLED IN.
00201 M00S00191.fsefile +++|*
00202 M00S00192.fsefile +++|* CALLS TRIMNAME, FILINFO.
00203 M00S00193.fsefile +++|#
00204 M00S00194.fsefile +++| ITEM NAME C(7), NEWNAME C(7);
00205 M00S00195.fsefile +++| NEWNAME=TRIMNAME(NAME);
00206 M00S00196.fsefile +++| FILINFNAME=NEWNAME;
00207 M00S00197.fsefile +++| FILINFO(FILINFPARMS);
00208 M00S00198.fsefile +++| END # OF GETINFO #
00209 M00S00199.fsefile +++|
00210 M00S00200.fsefile +++|
00211 M00S00201.fsefile +++|FUNC ASSGNFILE(NAME) B;
00212 M00S00202.fsefile +++| BEGIN
00213 M00S00203.fsefile +++|#
00214 M00S00204.fsefile +++|** ASSGNFILE - TEST FILE FOR FNT ASSIGNMENT.
00215 M00S00205.fsefile +++|*
00216 M00S00206.fsefile +++|* ENTRY NAME - FILE TO INSPECT.
00217 M00S00207.fsefile +++|*
00218 M00S00208.fsefile +++|* EXIT ASSGNFILE - TRUE IF AND ONLY IF THIS JOB HAS
00219 M00S00209.fsefile +++|* AN FNT FOR THE FILE.
00220 M00S00210.fsefile +++|*
00221 M00S00211.fsefile +++|* CALLS GETINFO.
00222 M00S00212.fsefile +++|#
00223 M00S00213.fsefile +++| ITEM NAME C(7);
00224 M00S00214.fsefile +++| ASSGNFILE=FALSE;
00225 M00S00215.fsefile +++| IF B<0,42>NAME EQ 0 THEN RETURN;
00226 M00S00216.fsefile +++| GETINFO(NAME);
00227 M00S00217.fsefile +++| IF FILINFSTAT NQ 0 THEN ASSGNFILE=TRUE;
00228 M00S00218.fsefile +++| END # OF ASSGNFILE #
00229 M00S00219.fsefile +++|
00230 M00S00220.fsefile +++|
00231 M00S00221.fsefile +++|PROC VFYFILE(NAME,MODE);
00232 M00S00222.fsefile +++| BEGIN
00233 M00S00223.fsefile +++|#
00234 M00S00224.fsefile +++|** VFYFILE - VERIFY FILE AS LEGAL TO BE EDITED.
00235 M00S00225.fsefile +++|*
00236 M00S00226.fsefile +++|* ENTRY NAME - FILE TO INSPECT.
00237 M00S00227.fsefile +++|* MODE - POSITIVE IMPLIES USE ERRJUMP FOR FAILURES,
00238 M00S00228.fsefile +++|* NEGATIVE IMPLIES ABORT THE JOB STEP VIA MORTAL.
00239 M00S00229.fsefile +++|*
00240 M00S00230.fsefile +++|* EXIT TO CALLER IF FILE IS LEGAL, OTHERWISE TO
00241 M00S00231.fsefile +++|* SPECIFIED ERROR ROUTINE WITHOUT RETURN.
00242 M00S00232.fsefile +++|*
00243 M00S00233.fsefile +++|* CALLS ERRJUMP, MORTAL, ERROR(INTERNAL), COMPARE(INTERNAL).
00244 M00S00234.fsefile +++|#
00245 M00S00235.fsefile +++| ITEM NAME C(7), MODE I;
00246 M00S00236.fsefile +++|
00247 M00S00237.fsefile +++| PROC ERROR(STR);
00248 M00S00238.fsefile +++| BEGIN
00249 M00S00239.fsefile +++| ITEM STR C(40);
00250 M00S00240.fsefile +++| IF MODE GQ 0 THEN ERRJUMP(STR);
00251 M00S00241.fsefile +++| MORTAL(STR);
00252 M00S00242.fsefile +++| END
00253 M00S00243.fsefile +++|
00254 M00S00244.fsefile +++| PROC COMPARE(PARM);
00255 M00S00245.fsefile +++| BEGIN
00256 M00S00246.fsefile +++| ITEM PARM C(7), NAME1 C(7), NAME2 C(7);
00257 M00S00247.fsefile +++| NAME1=TRIMNAME(NAME);
00258 M00S00248.fsefile +++| NAME2=TRIMNAME(PARM);
00259 M00S00249.fsefile +++| IF NAME1 EQ NAME2 THEN ERROR("RESERVED FILE$");
00260 M00S00250.fsefile +++| END
00261 M00S00251.fsefile +++|
00262 M00S00252.fsefile +++| COMPARE(INPTNAM);
00263 M00S00253.fsefile +++| COMPARE(OUTPNAM);
00264 M00S00254.fsefile +++| COMPARE(WORKNAM);
00265 M00S00255.fsefile +++| COMPARE("ZZZMOVE");
Line S00256 Modification History |
M01 (Removed by) | fsefi4 |
Seq # *Modification Id* Act
----------------------------+
00266 M01S00256.fsefi4 ---| IF NOT MSEQUIP(NAME) THEN ERROR("FILE MUST BE ON DISK$");
Line S00003 Modification History |
M01 (Added by) | fsefi4 |
Seq # *Modification Id* Act
----------------------------+
00267 M01S00003.fsefi4 +++| IF NOT MSEQUIP(NAME) THEN
00268 M01S00004.fsefi4 +++| BEGIN
00269 M01S00005.fsefi4 +++| IF FILINFSTAT NQ 0 AND FILINFRMS THEN
00270 M01S00006.fsefi4 +++| BEGIN # IF FILE HAS NO READ PERMISSION #
00271 M01S00007.fsefi4 +++| ERROR("FILE DOES NOT HAVE READ PERMISSION$");
00272 M01S00008.fsefi4 +++| END
00273 M01S00009.fsefi4 +++| ELSE
00274 M01S00010.fsefi4 +++| BEGIN # IF FILE IS NOT ON DISK #
00275 M01S00011.fsefi4 +++| ERROR("FILE MUST BE ON DISK$");
00276 M01S00012.fsefi4 +++| END
00277 M01S00013.fsefi4 +++| END
00278 M00S00257.fsefile +++| END # OF VFYFILE #
00279 M00S00258.fsefile +++|PAGE # FILE READ SUBROUTINE #
00280 M00S00259.fsefile +++|
00281 M00S00260.fsefile +++|
00282 M00S00261.fsefile +++|PROC FILEREAD;
00283 M00S00262.fsefile +++| BEGIN
00284 M00S00263.fsefile +++|#
00285 M00S00264.fsefile +++|** FILEREAD - READ A LOCAL FILE INTO FILE IMAGE BRACKET.
00286 M00S00265.fsefile +++|*
00287 M00S00266.fsefile +++|* NOTE THAT TO SAVE THE CPU OVERHEAD OF RELOCATING THE
00288 M00S00267.fsefile +++|* POINTER STACKS FOR EVERY INSERTION, WE CALL WORKIO
00289 M00S00268.fsefile +++|* DIRECTLY, THEN WE CALL RELOCATE TO CORRECT FOR BYPASSING
00290 M00S00269.fsefile +++|* THE "INSY" INTERFACE.
00291 M00S00270.fsefile +++|*
00292 M00S00271.fsefile +++|* NOTE THAT THE "USRBRK" FLAG IS CONTINUALLY CHECKED
00293 M00S00272.fsefile +++|* TO DETECT AN EXTERNAL INTERRUPT.
00294 M00S00273.fsefile +++|*
00295 M00S00274.fsefile +++|* ENTRY FILNUM - WHICH BRACKET.
00296 M00S00275.fsefile +++|* FILEFET - ALREADY INITIALIZED.
00297 M00S00276.fsefile +++|* ASCII[FILNUM] - CHARACTER SET.
00298 M00S00277.fsefile +++|*
00299 M00S00278.fsefile +++|* EXIT NUMBERED[FILNUM] - WHETHER FILE REALLY NUMBERED.
00300 M00S00279.fsefile +++|* FILEFET - AT EOI, OR INDETERINATE IF USER BREAK.
00301 M00S00280.fsefile +++|*
00302 M00S00281.fsefile +++|* CALLS READ, READC, CONVIN, GETLNUM, TRIMPAD, INS, FASTRLC.
00303 M00S00282.fsefile +++|*
00304 M00S00283.fsefile +++|* USES WIDTHFOUND.
00305 M00S00284.fsefile +++|#
Line S00006 Modification History |
M01 (Added by) | ns2377 |
Seq # *Modification Id* Act
----------------------------+
00306 M01S00006.ns2377 +++| DEF AVERAGE #500#; # AVERAGE FILE SIZE #
00307 M01S00007.ns2377 +++| DEF TWOANAHALF #2500#; # TWO AND A HALF SECONDS #
00308 M00S00285.fsefile +++| ITEM LOOPCTL, RESULT, LASTNUM, ASCIITYPE, MAXL, RECYCLE, FIRSTPOS;
00309 M00S00286.fsefile +++| ITEM ZERO=0;
Line S00287 Modification History |
M01 (Removed by) | ns2377 |
Seq # *Modification Id* Act
----------------------------+
00310 M01S00287.ns2377 ---|
Line S00008 Modification History |
M01 (Added by) | ns2377 |
Seq # *Modification Id* Act
----------------------------+
00311 M01S00008.ns2377 +++| ITEM COUNTER I; # LINE COUNTER #
00312 M01S00009.ns2377 +++| ITEM SAMPLE I; # LINE SAMPLE RATE #
00313 M01S00010.ns2377 +++| ITEM STARTTIME I; # REAL TIME CLOCK (START) #
00314 M01S00011.ns2377 +++| ITEM CHECKTIME I; # REAL TIME CLOCK (CHECK) #
00315 M01S00012.ns2377 +++| IF SCREENMODE OR DONTPRINT OR NOT INTERACT
00316 M01S00013.ns2377 +++| OR READNAM EQ "FSEPROC" THEN
00317 M01S00014.ns2377 +++| BEGIN # IF NO MESSAGE SHOULD BE SENT #
00318 M01S00015.ns2377 +++| COUNTER = 0;
00319 M01S00016.ns2377 +++| END
00320 M01S00017.ns2377 +++| ELSE
00321 M01S00018.ns2377 +++| BEGIN # MESSAGE MAY BE SENT #
00322 M01S00019.ns2377 +++| COUNTER = 1;
00323 M01S00020.ns2377 +++| SAMPLE = AVERAGE;
00324 M01S00021.ns2377 +++| RTIME(STARTTIME);
00325 M01S00022.ns2377 +++| STARTTIME = B<24,36>STARTTIME;
00326 M01S00023.ns2377 +++| END
00327 M00S00288.fsefile +++| REWIND(FILEFET,1);
00328 M00S00289.fsefile +++| READ(FILEFET,0);
00329 M00S00290.fsefile +++| FIRSTPOS=CURRENT;
00330 M00S00291.fsefile +++| RESULT=0;
00331 M00S00292.fsefile +++| MAXL=0;
00332 M00S00293.fsefile +++| RECYCLE=0;
00333 M00S00294.fsefile +++| LASTNUM=0;
Line S00295 Modification History |
M01 (Removed by) | fsefi1 |
Seq # *Modification Id* Act
----------------------------+
00334 M01S00295.fsefi1 ---| ASCIITYPE=ASCII[FILNUM];
00335 M00S00296.fsefile +++| FOR LOOPCTL=LOOPCTL WHILE RESULT EQ 0 AND USRBRK EQ 0 DO
00336 M00S00297.fsefile +++| BEGIN
Line S00001 Modification History |
M01 (Added by) | fsefi1 |
Seq # *Modification Id* Act
----------------------------+
00337 M01S00001.fsefi1 +++| ASCIITYPE=ASCII[FILNUM]; # CHARACTER SET FOR FILE #
00338 M00S00298.fsefile +++| LINE[0]=0;
00339 M00S00299.fsefile +++| READC(FILEFET,TMPLIN,BUFWID2P1,RESULT);
Line S00024 Modification History |
M01 (Added by) | ns2377 |
Seq # *Modification Id* Act
----------------------------+
00340 M01S00024.ns2377 +++| IF COUNTER NQ 0 THEN
00341 M01S00025.ns2377 +++| BEGIN # IF MESSAGE STILL TO ISSUE #
00342 M01S00026.ns2377 +++| COUNTER = COUNTER + 1;
00343 M01S00027.ns2377 +++| IF COUNTER GR SAMPLE THEN
00344 M01S00028.ns2377 +++| BEGIN # IF SAMPLE SIZE REACHED #
00345 M01S00029.ns2377 +++| RTIME(CHECKTIME);
00346 M01S00030.ns2377 +++| CHECKTIME = B<24,36>CHECKTIME - STARTTIME;
00347 M01S00031.ns2377 +++| IF CHECKTIME GR TWOANAHALF THEN
00348 M01S00032.ns2377 +++| BEGIN # IF ENOUGH TIME HAS PASSED #
00349 M01S00033.ns2377 +++| TTSTR("BUILDING: $");
00350 M01S00034.ns2377 +++| TTLFN(READNAM);
00351 M01S00035.ns2377 +++| TTLIN(" ONE MOMENT PLEASE$");
00352 M01S00036.ns2377 +++| COUNTER = 0; # ONE MESSAGE IS ENOUGH #
00353 M01S00037.ns2377 +++| VDTCLO(COUNTER); # FLUSH OUTPUT,NO RECALL #
00354 M01S00038.ns2377 +++| END
00355 M01S00039.ns2377 +++| ELSE
00356 M01S00040.ns2377 +++| BEGIN # COMPUTE PROBABLE SAMPLE COUNT #
00357 M01S00041.ns2377 +++| SAMPLE = (SAMPLE*TWOANAHALF)/CHECKTIME;
00358 M01S00042.ns2377 +++| END
00359 M01S00043.ns2377 +++| END
00360 M01S00044.ns2377 +++| END
00361 M00S00300.fsefile +++| IF RESULT GR 0 THEN
00362 M00S00301.fsefile +++| BEGIN
Line S00002 Modification History |
M01 (Added by) | fsefi1 |
Seq # *Modification Id* Act
----------------------------+
00363 M01S00002.fsefi1 +++| ASCIITYPE=1; # CHARACTER SET FOR EORCON #
00364 M00S00302.fsefile +++| TMPLINE[0]=EORCON;
00365 M00S00303.fsefile +++| FILECODE=1;
00366 M00S00304.fsefile +++| READ(FILEFET,1);
00367 M00S00305.fsefile +++| IF FILECODE EQ O"31" THEN RESULT=-1;
00368 M00S00306.fsefile +++| ELSE IF FILECODE NQ O"1031" OR FILEIN NQ FILEOUT THEN
00369 M00S00307.fsefile +++| BEGIN
00370 M00S00308.fsefile +++| RESULT=0;
00371 M00S00309.fsefile +++| END
00372 M00S00310.fsefile +++| END
00373 M00S00311.fsefile +++| IF RESULT EQ -1 THEN
00374 M00S00312.fsefile +++| BEGIN
Line S00003 Modification History |
M01 (Added by) | fsefi1 |
Seq # *Modification Id* Act
----------------------------+
00375 M01S00003.fsefi1 +++| ASCIITYPE=1; # CHARACTER SET FOR EOFCON #
00376 M00S00313.fsefile +++| RESULT=0;
00377 M00S00314.fsefile +++| TMPLINE[0]=EOFCON;
00378 M00S00315.fsefile +++| FILECODE=1;
00379 M00S00316.fsefile +++| READ(FILEFET,0);
00380 M00S00317.fsefile +++| END
00381 M00S00318.fsefile +++| IF RESULT EQ 0 THEN # PREPARE LINE OF TEXT #
00382 M00S00319.fsefile +++| BEGIN
00383 M00S00320.fsefile +++| MAXL=MAXL+1; # COUNT RELOCATION FACTOR #
00384 M00S00321.fsefile +++| CONVIN(LIN,ASCIITYPE);
00385 M00S00322.fsefile +++| IF NUMBERED[FILNUM] NQ 0 THEN # VERIFY/ADJUST SEQUENCE NUMBERS #
00386 M00S00323.fsefile +++| BEGIN
00387 M00S00324.fsefile +++| GETLNUM;
00388 M00S00325.fsefile +++| IF LINENO LQ LASTNUM THEN # FILE IS NOT REALLY SEQUENCED #
00389 M00S00326.fsefile +++| BEGIN
00390 M00S00327.fsefile +++| NUMBERED[FILNUM]=0;
00391 M00S00328.fsefile +++| CHANGED[FILNUM]=0; # TAKE BACK FLAG FOR ADJUSTMENTS #
00392 M00S00329.fsefile +++| IF MAXL GR 1 THEN
00393 M00S00330.fsefile +++| BEGIN
00394 M00S00331.fsefile +++| REWIND(FILEFET,1);
00395 M00S00332.fsefile +++| READ(FILEFET,0);
00396 M00S00333.fsefile +++| POSZ(FIRSTPOS);
00397 M00S00334.fsefile +++| RECYCLE=MAXL-1;
00398 M00S00335.fsefile +++| MAXL=0;
00399 M00S00336.fsefile +++| TEST LOOPCTL;
00400 M00S00337.fsefile +++| END
00401 M00S00338.fsefile +++| END
00402 M00S00339.fsefile +++| ELSE # ADJUST SEQUENCING DIGITS #
00403 M00S00340.fsefile +++| BEGIN
00404 M00S00341.fsefile +++| IF WIDTHFOUND EQ NUMWIDTH THEN
00405 M00S00342.fsefile +++| BEGIN # FIX INTERVENING BLANK #
00406 M00S00343.fsefile +++| GETCHAR(LINE,NUMWIDTH,LINCTR);
00407 M00S00344.fsefile +++| IF BLANKS NQ 0 AND LINCTR NQ CBLANK THEN
00408 M00S00345.fsefile +++| BEGIN
00409 M00S00346.fsefile +++| RSHIFT(LIN,NUMWIDTH,1);
00410 M00S00347.fsefile +++| SETCHAR(LINE,NUMWIDTH,CBLANK);
00411 M00S00348.fsefile +++| CHANGED[FILNUM]=1; # FLAG THAT WE ADJUSTED TEXT #
00412 M00S00349.fsefile +++| END
00413 M00S00350.fsefile +++| END
Line S00351 Modification History |
M01 (Removed by) | fsefi2 |
Seq # *Modification Id* Act
----------------------------+
00414 M01S00351.fsefi2 ---| IF WIDTHFOUND GR 0 AND WIDTHFOUND LS NUMWIDTH THEN
Line S00001 Modification History |
M01 (Added by) | fsefi2 |
Seq # *Modification Id* Act
----------------------------+
00415 M01S00001.fsefi2 +++| IF WIDTHFOUND GR 0 AND WIDTHFOUND LS NUMWIDTH
00416 M01S00002.fsefi2 +++| AND NUMMODE EQ NUMST"PREFER" THEN
00417 M00S00352.fsefile +++| BEGIN # ADJUST DIGITS #
00418 M00S00353.fsefile +++| CHANGED[FILNUM]=1; # FLAG THAT WE ADJUSTED TEXT #
00419 M00S00354.fsefile +++| SETLNUM;
00420 M00S00355.fsefile +++| GETLNUM;
00421 M00S00356.fsefile +++| END
00422 M00S00357.fsefile +++| END
00423 M00S00358.fsefile +++| END
00424 M00S00359.fsefile +++| LASTNUM=LINENO;
00425 M00S00360.fsefile +++| TRIMPAD;
00426 M00S00361.fsefile +++| IF RECYCLE NQ 0 THEN
00427 M00S00362.fsefile +++| BEGIN
00428 M00S00363.fsefile +++| ZERO = = P<LINEBUF>; # POSITION INVISIBLY #
00429 M00S00364.fsefile +++| FWDZ; # POSITION INVISIBLY #
00430 M00S00365.fsefile +++| ZERO = = P<LINEBUF>; # POSITION INVISIBLY #
00431 M00S00366.fsefile +++| REP;
00432 M00S00367.fsefile +++| RECYCLE=RECYCLE-1;
00433 M00S00368.fsefile +++| END
00434 M00S00369.fsefile +++| ELSE INS;
00435 M00S00370.fsefile +++| END
00436 M00S00371.fsefile +++| END
00437 M00S00372.fsefile +++| FASTRLC(REGSTACK,MAXREG+1,CURRENT-MAXL+1,MAXL);
00438 M00S00373.fsefile +++|
00439 M00S00374.fsefile +++| END # OF FILEREAD #
00440 M00S00375.fsefile +++|PAGE # ADDFILE CONTROLS FILEBUILD #
00441 M00S00376.fsefile +++|
00442 M00S00377.fsefile +++|
00443 M00S00378.fsefile +++|PROC ADDFILE;
00444 M00S00379.fsefile +++| BEGIN
00445 M00S00380.fsefile +++|#
00446 M00S00381.fsefile +++|** ADDFILE - ADD AN EXTERNAL FILE TO INTERNAL FILES.
00447 M00S00382.fsefile +++|*
00448 M00S00383.fsefile +++|* ENTRY FILNUM - WHICH BRACKET.
00449 M00S00384.fsefile +++|* READNAM - FILE NAME.
00450 M00S00385.fsefile +++|* CHARPARM - CHARACTER SET PREFERENCE OR DEFAULT.
00451 M00S00386.fsefile +++|* GETPARM - PERMANENT/LOCAL PREFERENCE OR DEFAULT.
00452 M00S00387.fsefile +++|* ALLASCII - DEFAULT CHARACTER SET.
00453 M00S00388.fsefile +++|* SMALLFIELD - WHETHER FIELD LENGTH NOW SMALL OR LARGE.
00454 M00S00389.fsefile +++|* BOTC(FILECTL) - BRACKETS FILE DIRECTORY AREA.
00455 M00S00390.fsefile +++|* TOPA(AUDITCTL) - BRACKETS AUDIT TRAIL.
00456 M00S00391.fsefile +++|* NUMMMODE - WHAT TO DO WITH EMPTY FILE.
Line S00001 Modification History |
M01 (Added by) | ns2607 |
Seq # *Modification Id* Act
----------------------------+
00457 M01S00001.ns2607 +++|* SCNFDINIT - 1 IF FILE IS INITIAL EDIT FILE,
00458 M01S00002.ns2607 +++|* 0 OTHERWISE.
00459 M00S00392.fsefile +++|*
00460 M00S00393.fsefile +++|* EXIT GETPARM - INDICATES WHETHER GET REALLY DONE.
00461 M00S00394.fsefile +++|* LOCKED[FILNUM] - SET BY FILE ATTRIBUTES.
00462 M00S00395.fsefile +++|* ASCII[FILNUM] - SET BY PARAMETER.
00463 M00S00396.fsefile +++|* CHANGED[FILUM] - FALSE.
00464 M00S00397.fsefile +++|* NUMBERED[FILNUM] - SET BY NUMMODE AND FILE CONTENT.
00465 M00S00398.fsefile +++|* BOTC, TOPA - RELOCATED, ALSO VARIOUS OTHERS.
00466 M00S00399.fsefile +++|* CURRENT, CURF(FILNUM) - TOP OF FILE.
00467 M00S00400.fsefile +++|* FDLF(FILNUM) - UPDATED.
00468 M00S00401.fsefile +++|* TOPF(FILNUM), BOTF(FILNUM) - BRACKET THE FILE.
00469 M00S00402.fsefile +++|*
00470 M00S00403.fsefile +++|* USES FILEFET, DSKSIZ, UTILFET.
00471 M00S00404.fsefile +++|*
00472 M00S00405.fsefile +++|* CALLS VFYFILE, FLDLEN, PAUSEIO, TRIMNAME, ASSGNFILE,
00473 M00S00406.fsefile +++|* MAKEFET, GET, WRITEABLE, POSZ, FORMFDL, INSY,
00474 M00S00407.fsefile +++|* FILEREAD, REWIND.
00475 M00S00408.fsefile +++|#
00476 M00S00409.fsefile +++| ITEM NEWNAME C(7);
00477 M00S00410.fsefile +++|
00478 M00S00411.fsefile +++| VFYFILE(READNAM,0);
00479 M00S00412.fsefile +++|
00480 M00S00413.fsefile +++| IF SMALLFIELD THEN
00481 M00S00414.fsefile +++| BEGIN
00482 M00S00415.fsefile +++| FLDLEN(LOC(MAXADDR)+4);
00483 M00S00416.fsefile +++| PAUSEIO; # DRAIN BUFFERS SO WE CAN ... #
00484 M00S00417.fsefile +++| DSKSIZ=INIDSKSIZ; # ... ENLARGE BUFFERS #
00485 M00S00418.fsefile +++| END
00486 M00S00419.fsefile +++|
00487 M00S00420.fsefile +++| NEWNAME=TRIMNAME(READNAM);
00488 M00S00421.fsefile +++| IF GETPARM EQ 1 AND NOT ASSGNFILE(READNAM) THEN GETPARM=2;
00489 M00S00422.fsefile +++| IF GETPARM EQ 2 THEN
00490 M00S00423.fsefile +++| BEGIN
Line S00424 Modification History |
M01 (Removed by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00491 M01S00424.ns2568 ---| PF("GET",READNAM,READNAM,"RC",PFMERROR,0);
00492 M01S00425.ns2568 ---| IF PFMERROR NQ 0 THEN
Line S00002 Modification History |
M01 (Added by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00493 M01S00002.ns2568 +++| PF("GET",READNAM,READNAM,"RC",PFMERROR,"EM",PFMMSG,"EL","40",0);
00494 M01S00003.ns2568 +++| IF PFMERROR EQ 0 THEN
00495 M01S00004.ns2568 +++| BEGIN # IF POSSIBLE CALL TO *CPUPFM* #
00496 M01S00005.ns2568 +++| IF SCREENMODE AND TABTYPHEAD[0] THEN
00497 M01S00006.ns2568 +++| BEGIN # IF RUNNING WITH TYPE AHEAD #
00498 M01S00007.ns2568 +++| VDTPRT$(0); # ASSURE PROMPT IS OFF #
00499 M01S00008.ns2568 +++| END
00500 M01S00009.ns2568 +++| END
00501 M01S00010.ns2568 +++| IF PFMERROR EQ FNF THEN
00502 M00S00426.fsefile +++| BEGIN
Line S00427 Modification History |
M01 (Removed by) | ns2189 |
Seq # *Modification Id* Act
----------------------------+
00503 M01S00427.ns2189 ---| PF("ATTACH",READNAM,READNAM,"RC",PFMERROR,"M","W","NA","YES",0);
Line S00001 Modification History |
M01 (Added by) | ns2189 |
Seq # *Modification Id* Act
----------------------------+
00504 M01S00001.ns2189 +++| PF("ATTACH",READNAM,READNAM,"RC",PFMERROR,"M","W","NA","YES",
Line S00002 Modification History |
M01 (Added by) | ns2189 |
M02 (Removed by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00505 M02S00002.ns2568 ---| "SR","NF",0);
Line S00428 Modification History |
M01 (Removed by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00506 M01S00428.ns2568 ---| END
Line S00002 Modification History |
M01 (Added by) | ns2249 |
M02 (Removed by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00507 M02S00002.ns2568 ---| ELSE
00508 M02S00003.ns2568 ---| BEGIN # IF POSSIBLE CALL TO *CPUPFM* #
00509 M02S00004.ns2568 ---| IF SCREENMODE AND TABTYPHEAD[0] THEN
00510 M02S00005.ns2568 ---| BEGIN # IF RUNNING WITH TYPE AHEAD #
00511 M02S00006.ns2568 ---| VDTPRT$(0); # ASSURE PROMPT IS OFF #
00512 M02S00007.ns2568 ---| END
Line S00011 Modification History |
M01 (Added by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00513 M01S00011.ns2568 +++| "SR","NF","EM",PFMMSG,"EL","40",0);
Line S00008 Modification History |
M01 (Added by) | ns2249 |
Seq # *Modification Id* Act
----------------------------+
00514 M01S00008.ns2249 +++| END
00515 M00S00429.fsefile +++| IF PFMERROR NQ 0 THEN
00516 M00S00430.fsefile +++| BEGIN
Line S00431 Modification History |
M01 (Removed by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00517 M01S00431.ns2568 ---| ERRSTRING="PFN BUSY OR NOT FOUND, USING LOCAL FILE$";
Line S00012 Modification History |
M01 (Added by) | ns2568 |
Seq # *Modification Id* Act
----------------------------+
00518 M01S00012.ns2568 +++| C<0,18>ERRSTRING="USING LOCAL FILE -";
00519 M01S00013.ns2568 +++| C<18,40>ERRSTRING=C<0,40>PFMMSG;
00520 M01S00014.ns2568 +++| C<58,1>ERRSTRING="$";
00521 M00S00432.fsefile +++| END
00522 M00S00433.fsefile +++| END
00523 M00S00434.fsefile +++| IF GETPARM GQ 2 THEN GETPARM=0;
00524 M00S00435.fsefile +++| FILENAM[FILNUM]=NEWNAME;
00525 M00S00436.fsefile +++| CHANGED[FILNUM]=0;
00526 M00S00437.fsefile +++| LOCKED[FILNUM]=0;
Line S00003 Modification History |
M01 (Added by) | ns2607 |
Seq # *Modification Id* Act
----------------------------+
00527 M01S00003.ns2607 +++| INITFILE[FILNUM]=SCNFDINIT;
00528 M00S00438.fsefile +++| ASCII[FILNUM]=CHARPARM;
00529 M00S00439.fsefile +++| IF CHARPARM EQ 0 AND ALLASCII THEN ASCII[FILNUM]=2;
Line S00440 Modification History |
M01 (Removed by) | fsefi3 |
Seq # *Modification Id* Act
----------------------------+
00530 M01S00440.fsefi3 ---| NUMBERED[FILNUM]=1;
00531 M00S00441.fsefile +++| IF NOT WRITEABLE(READNAM) THEN LOCKED[FILNUM]=1;
00532 M00S00442.fsefile +++| POSZ(BOTC(FILECTL)-1);
00533 M00S00443.fsefile +++| FORMFDL(FILNUM);
00534 M00S00444.fsefile +++| INSY;
00535 M00S00445.fsefile +++| FDLF(FILNUM)=CURRENT;
00536 M00S00446.fsefile +++|
00537 M00S00447.fsefile +++| # NEW FILE BRACKET GOES BEFORE AUDIT TRAIL BRACKET #
00538 M00S00448.fsefile +++| POSZ(TOPA(AUDITCTL)-1);
00539 M00S00449.fsefile +++| TOPF(FILNUM)=CURRENT;
00540 M00S00450.fsefile +++| MAKEFET(FILEFET,READNAM,FILEBUF,DSKSIZ);
00541 M00S00451.fsefile +++| IF ASSGNFILE(READNAM) THEN
00542 M00S00452.fsefile +++| BEGIN
00543 M00S00453.fsefile +++| FILEREAD;
00544 M00S00454.fsefile +++| REWIND(FILEFET,0);
00545 M00S00455.fsefile +++| END
00546 M00S00456.fsefile +++| LINE[0]=NULLIN;
00547 M00S00457.fsefile +++| INSY;
00548 M00S00458.fsefile +++| BOTF(FILNUM)=CURRENT;
00549 M00S00459.fsefile +++|
00550 M00S00460.fsefile +++| IF BOTF(FILNUM) EQ TOPF(FILNUM)+1 THEN
00551 M00S00461.fsefile +++| BEGIN
00552 M00S00462.fsefile +++| POSZ(TOPF(FILNUM));
00553 M00S00463.fsefile +++| IF NUMMODE EQ NUMST"INTERPRET" THEN NUMBERED[FILNUM]=0;
00554 M00S00464.fsefile +++| END
00555 M00S00465.fsefile +++| ELSE POSZ(TOPF(FILNUM)+1);
00556 M00S00466.fsefile +++| CURF(FILNUM)=CURRENT;
00557 M00S00467.fsefile +++|
00558 M00S00468.fsefile +++| IF SMALLFIELD THEN
00559 M00S00469.fsefile +++| BEGIN
00560 M00S00470.fsefile +++| PAUSEIO; # DRAIN BUFFERS SO WE CAN ... #
00561 M00S00471.fsefile +++| DSKSIZ=DISKSIZE; # ... SHRINK BUFFERS BACK #
00562 M00S00472.fsefile +++| FLDLEN(LOC(WORKBUF)+DSKSIZ+4);
00563 M00S00473.fsefile +++| END
00564 M00S00474.fsefile +++|
00565 M00S00475.fsefile +++| END # OF ADDFILE #
00566 M00S00476.fsefile +++|
00567 M00S00477.fsefile +++|
00568 M00S00478.fsefile +++|END TERM