|
|
1.1 root 1: C***********************************************************************00010912
2: C DATE***82/08/02*18.33.46
3: C OWNER PRE/850703/TC-85- -410/ /FSTC/278FCVS*F78UBP20/
4: C AUDIT FCVS78 V2.0
5: C***** FORTRAN 77 00020912
6: C***** FM912 00030912
7: C***** DIRAF3 - (412) 00040912
8: C***** THIS PROGRAM CALLS SUBROUTINE SN913 IN FILE FM913 00050912
9: C***********************************************************************00060912
10: C***** TESTING OF DIRECT ACCESS FILES ANS REF 00070912
11: C***** FORMATTED, WITH BOTH SEQUENTIAL AND DIRECT 12.5 00080912
12: C***** ACCESS TO THE SAME FILE 00090912
13: C***** 00100912
14: C***** USES SUBROUTINE SN913 FAQ 00110912
15: C***** 00120912
16: C***** S P E C I F I C A T I O N S SEGMENT 412 00130912
17: C***********************************************************************00140912
18: DIMENSION F1S(10), G1S(10) 00150912
19: CHARACTER*20 A20VK, B20VK, C20VK, A201K(10), B201K(10) 00160912
20: CHARACTER*47 A47VK, B47VK, C47VK 00170912
21: CHARACTER*51 A51VK 00180912
22: CHARACTER*12 A12VK 00190912
23: CHARACTER A120VK*120, B120VK*120, A1VK*1, A4VK*4 00200912
24: CHARACTER*31 REMK,REMK1,REMK2,REMK3,REMK4,REMK5,REMK45 00210912
25: LOGICAL AVB, BVB, CVB, C1B(10), D1B(10) 00220912
26: DOUBLE PRECISION AVD, BVD, CVD, DVD, D1D(10), B1D(15) 00230912
27: C***** 00240912
28: C***** BELOW CHARACTER STATEMENT ESTABLISHES THE FILE NAME VARIABLES. 00250912
29: CX20 REPLACED BY FEXEC X-20 CONTROL CARD. X-20 IS FOR REPLACING 00260912
30: CHARACTER*15 CDIR 00270912
31: C THE CHARACTER STATEMENT FOR FILE NAMES ASSOCIATED WITH X-130 00280912
32: C (PROGRAM VARIABLE CDIR) IF NOT VALID FOR THE PROCESSOR. 00290912
33: CBB** ********************** BBCINITA **********************************00300912
34: C**** SPECIFICATION STATEMENTS 00310912
35: C**** 00320912
36: CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00330912
37: 1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00340912
38: CBE** ********************** BBCINITA **********************************00350912
39: CBB** ********************** BBCINITB **********************************00360912
40: C**** INITIALIZE SECTION 00370912
41: DATA ZVERS, ZVERSD, ZDATE 00380912
42: 1 /'VERSION 2.0 ', '82/08/02*18.33.46', '*NO DATE*TIME'/ 00390912
43: DATA ZCOMPL, ZNAME, ZTAPE 00400912
44: 1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00410912
45: DATA ZPROJ, ZTAPED, ZPROG 00420912
46: 1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00430912
47: DATA REMRKS /' '/ 00440912
48: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00450912
49: C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00460912
50: C**** 00470912
51: CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00480912
52: CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00490912
53: CZ03 ZPROG = 'PROGRAM NAME' 00500912
54: ZDATE = '07-Nov-85 ' *RP
55: ZCOMPL = 'CCI 5.2 ' *RP
56: ZPROJ = 'TC-85- -410' *RP
57: ZNAME = ' ' *RP
58: ZTAPE = ' ' *RP
59: ZTAPED = '850703 ' *RP
60: C 00570912
61: IVPASS = 0 00580912
62: IVFAIL = 0 00590912
63: IVDELE = 0 00600912
64: IVINSP = 0 00610912
65: IVTOTL = 0 00620912
66: IVTOTN = 0 00630912
67: ICZERO = 0 00640912
68: C 00650912
69: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00660912
70: I01 = 05 00670912
71: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00680912
72: I02 = 06 00690912
73: C 00700912
74: I01 = 5 00710912
75: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00720912
76: CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00730912
77: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00740912
78: C 00750912
79: I02 = 6 00760912
80: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00770912
81: CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00780912
82: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 00790912
83: C 00800912
84: CBE** ********************** BBCINITB **********************************00810912
85: C***** 00820912
86: C***** THE FOLLOWING STATEMENT MUST BE CHANGED IF THE 00830912
87: C***** UNITS GIVEN ARE NOT CAPABLE OF BEING OPENED AS SPECIFIED. 00840912
88: C***** 00850912
89: C I13 CONTAINS THE UNIT NUMBER FOR A NAMED DIRECT ACCESS FILE. 00860912
90: I13 = 24 00870912
91: OPEN(UNIT=I13,ACCESS='DIRECT',FORM='FORMATTED',RECL=80) 00880912
92: C SPECIFYING I13 = NN OVERRIDES THE DEFAULT I13 = 24. 00890912
93: C 00900912
94: C***** THE FOLLOWING STATEMENT MUST BE CHANGED IF THE NAME 00910912
95: C***** GIVEN IS NOT A VALID FILE SPECIFIER FOR A DIRECT, 00920912
96: C***** FORMATTED FILE. 00930912
97: C***** 00940912
98: C CDIR CONTAINS THE FILE NAME FOR UNIT I13. 00950912
99: CDIR = ' DIRFILE' 00960912
100: C 00970912
101: CX201 REPLACED BY FEXEC X-201 CONTROL CARD. CX201 IS FOR SYSTEMS 00980912
102: C REQUIRING A DIFFERENT FILE SPECIFIER FOR FILES ASSOCIATED WITH 00990912
103: C X-130 THAN THE DEFAULT CDIR = ' DIRFILE'. 01000912
104: C 01010912
105: C***** FILE NUMBER AND NAME ASSIGNMENT 01020912
106: NUVI = I02 01030912
107: KUVI = I13 01040912
108: IVTOTL = 26 01050912
109: ZPROG = 'FM912' 01060912
110: C***** 01070912
111: C***** FILE NUMBER AND NAME ASSIGNMENT 01080912
112: C***** 01090912
113: REMK1='RECORD 1 - ERR PATH TAKEN' 01100912
114: REMK2='RECORD 2 - ERR PATH TAKEN' 01110912
115: REMK3='RECORD 3 - ERR PATH TAKEN' 01120912
116: REMK4='RECORD 4 - ERR PATH TAKEN' 01130912
117: REMK5='RECORD 5 - ERR PATH TAKEN' 01140912
118: REMK45='RECORD 4 + 5 - ERR PATH TAKEN' 01150912
119: CBB** ********************** BBCHED0A **********************************01160912
120: C**** 01170912
121: C**** WRITE REPORT TITLE 01180912
122: C**** 01190912
123: WRITE (I02, 90002) 01200912
124: WRITE (I02, 90006) 01210912
125: WRITE (I02, 90007) 01220912
126: WRITE (I02, 90008) ZVERS, ZVERSD 01230912
127: WRITE (I02, 90009) ZPROG, ZPROG 01240912
128: WRITE (I02, 90010) ZDATE, ZCOMPL 01250912
129: CBE** ********************** BBCHED0A **********************************01260912
130: WRITE(NUVI,41200) 01270912
131: 41200 FORMAT( 1H ,/45H DIRAF3 - (412) DIRECT ACCESS FORMATTED FILE/ 01280912
132: 1 42H WITH OPTION TO OPEN AS A SEQUENTIAL FILE/ 01290912
133: 2 17H ANS REF. - 12.5) 01300912
134: CBB** ********************** BBCHED0B **********************************01310912
135: C**** WRITE DETAIL REPORT HEADERS 01320912
136: C**** 01330912
137: WRITE (I02,90004) 01340912
138: WRITE (I02,90004) 01350912
139: WRITE (I02,90013) 01360912
140: WRITE (I02,90014) 01370912
141: WRITE (I02,90015) IVTOTL 01380912
142: CBE** ********************** BBCHED0B **********************************01390912
143: C***** 01400912
144: C***** PLUS OR MINUS VALUES 01410912
145: C***** 01420912
146: CVS = 0.0001 01430912
147: CVD = 0.0001D0 01440912
148: C***** 01450912
149: C***** INITIALIZE DATA ARRAYS 01460912
150: C***** 01470912
151: CALL SN913(F1S,G1S,C1B,D1B,D1D,B1D,A201K,B201K) 01480912
152: C***** 01490912
153: C***** OPEN DIRECT ACCESS FILE - STATUS=NEW 01500912
154: C***** 01510912
155: OPEN(FILE=CDIR, UNIT=KUVI, ACCESS='DIRECT',RECL=120, 01520912
156: 1 FORM='FORMATTED',STATUS='NEW') 01530912
157: C***** 01540912
158: CT001* TEST 1 - CHECKS RECL AND NEXTREC 01550912
159: C***** FOR JUST OPENED DIRECT ACCESS FILE 01560912
160: C***** 01570912
161: IVTNUM=1 01580912
162: INQUIRE(UNIT=KUVI, RECL=IVI, NEXTREC=KVI) 01590912
163: IF (IVI .NE. 120) GO TO 33020 01600912
164: IF (KVI .NE. 1) GO TO 33020 01610912
165: WRITE(NUVI,80002)IVTNUM 01620912
166: IVPASS=IVPASS+1 01630912
167: GO TO 33030 01640912
168: 33020 REMK='ERROR IN INQUIRE' 01650912
169: WRITE(NUVI,55010)IVTNUM,REMK 01660912
170: 55010 FORMAT(1H ,5HTEST ,I3,1X,5H FAIL,34X,A31) 01670912
171: IVFAIL=IVFAIL+1 01680912
172: WRITE(NUVI,55020)IVI,KVI 01690912
173: 55020 FORMAT(1H ,/,11X,16HCOMPUTED: RECL=,I6,5X,8HNEXTREC=,I6) 01700912
174: WRITE(NUVI,55030) 01710912
175: 55030 FORMAT(1H ,10X,22HCORRECT: RECL= 120,5X,14HNEXTREC= 1/) 01720912
176: C***** 01730912
177: CT002* TEST 2 - WRITES RECORD 1 01740912
178: C***** 01750912
179: 33030 IVTNUM=2 01760912
180: IVI = 1 01770912
181: AVS = F1S (IVI) 01780912
182: BVS = F1S(IVI + 1) 01790912
183: A20VK = A201K (IVI) 01800912
184: AVB = C1B (IVI) 01810912
185: AVD = D1D (IVI) 01820912
186: WRITE(UNIT=KUVI,REC=1,FMT=41204,ERR=33040) IVI, AVS, BVS, AVD, 01830912
187: 1 AVB, A20VK 01840912
188: 41204 FORMAT(I5, F10.5, E14.6, D14.8, L10, A20, 35X, ' LAST RECORD') 01850912
189: WRITE(NUVI,80002)IVTNUM 01860912
190: IVPASS=IVPASS+1 01870912
191: GO TO 33050 01880912
192: 33040 WRITE(NUVI,55010)IVTNUM,REMK1 01890912
193: IVFAIL=IVFAIL+1 01900912
194: C***** 01910912
195: CT003* TEST 3 - WRITES RECORD 2 01920912
196: C***** 01930912
197: 33050 IVTNUM=3 01940912
198: IVI = IVI + 1 01950912
199: AVS = F1S (IVI) 01960912
200: BVS = F1S(IVI + 1) 01970912
201: A20VK = A201K (IVI) 01980912
202: AVB = C1B (IVI) 01990912
203: AVD = D1D (IVI) 02000912
204: WRITE(UNIT=KUVI,REC=2,FMT=41205,ERR=33060) BVS, AVD, IVI, AVS, 02010912
205: 1 AVB, A20VK 02020912
206: 41205 FORMAT(E12.6, D15.7, I4, F11.5, L2, A25, 30X, ' LASTS RECORD') 02030912
207: WRITE(NUVI,80002)IVTNUM 02040912
208: IVPASS=IVPASS+1 02050912
209: GO TO 33070 02060912
210: 33060 WRITE(NUVI,55010)IVTNUM,REMK2 02070912
211: IVFAIL=IVFAIL+1 02080912
212: C***** 02090912
213: CT004* TEST 4 - WRITES RECORD 3 02100912
214: C***** 02110912
215: 33070 IVTNUM=4 02120912
216: IVI = IVI + 1 02130912
217: AVS = F1S (IVI) 02140912
218: BVS = F1S(IVI + 1) 02150912
219: A20VK = A201K (IVI) 02160912
220: AVB = C1B (IVI) 02170912
221: AVD = D1D (IVI) 02180912
222: WRITE(UNIT=KUVI,REC=3,FMT=41206,ERR=33080) IVI, BVS, AVS, AVD, 02190912
223: 1 AVB, A20VK 02200912
224: 41206 FORMAT(I5, F10.5, E14.6, D14.8, L10, A20, 30X, 'THE LAST REC') 02210912
225: WRITE(NUVI,80002)IVTNUM 02220912
226: IVPASS=IVPASS+1 02230912
227: GO TO 33090 02240912
228: 02250912
229: 33080 WRITE(NUVI,55010)IVTNUM,REMK3 02260912
230: IVFAIL=IVFAIL+1 02270912
231: C***** 02280912
232: CT005* TEST 5 - WRITES RECORDS 4 AND 5 WITH ONE WRITE 02290912
233: C***** 02300912
234: 33090 IVTNUM=5 02310912
235: IVI = IVI + 1 02320912
236: AVS = F1S (IVI) 02330912
237: BVS = F1S(IVI + 1) 02340912
238: A20VK = A201K (IVI) 02350912
239: AVB = C1B (IVI) 02360912
240: AVD = D1D (IVI) 02370912
241: WRITE(UNIT=KUVI,REC=4,FMT=41207,ERR=33100) IVI, AVS, AVD, AVB, 02380912
242: 1 A20VK, BVS, BVS, AVD, AVB, IVI, AVS, A20VK 02390912
243: 41207 FORMAT(I5, F10.5, D14.8, L10, A20, E14.6, 35X, 'NEXT TO LAST',/ 02400912
244: 1 E12.6, D15.7, L2, I4, F11.5, A25, 30X, 'THE END') 02410912
245: WRITE(NUVI,80002)IVTNUM 02420912
246: IVPASS=IVPASS+1 02430912
247: GO TO 33290 02440912
248: 33100 WRITE(NUVI,55010)IVTNUM,REMK45 02450912
249: IVFAIL=IVFAIL+1 02460912
250: C***** 02470912
251: CT006* TEST 6 - CHECK RECL AND NEXTREC ON OPENED FILE 02480912
252: C***** 02490912
253: 33290 IVTNUM=6 02500912
254: INQUIRE(UNIT=KUVI, RECL=IVI, NEXTREC=KVI) 02510912
255: IF (IVI .NE. 120)GO TO 33300 02520912
256: IF(KVI .NE. 6)GO TO 33300 02530912
257: WRITE(NUVI,80002)IVTNUM 02540912
258: IVPASS=IVPASS+1 02550912
259: GO TO 33110 02560912
260: 33300 REMK='ERROR IN INQUIRE' 02570912
261: WRITE(NUVI,55010)IVTNUM,REMK 02580912
262: IVFAIL=IVFAIL+1 02590912
263: WRITE(NUVI,55020)IVI,KVI 02600912
264: WRITE(NUVI,55040) 02610912
265: 55040 FORMAT(1H ,10X,22HCORRECT: RECL= 120,5X,14HNEXTREC= 6/) 02620912
266: C***** 02630912
267: CT007* TEST 7 - READS RECORD 1 02640912
268: C***** 02650912
269: 33110 IVTNUM=7 02660912
270: IVI = 1 02670912
271: READ(UNIT=KUVI,REC=IVI,FMT=41210,ERR=33120) KVI, AVS, BVS, AVD, 02680912
272: 1 AVB, A20VK, A47VK 02690912
273: 41210 FORMAT(I5, F10.5, E14.6, D14.8, L10, A20, A47) 02700912
274: ISWT=1 02710912
275: GO TO 33220 02720912
276: 02730912
277: 33120 WRITE(NUVI,55010)IVTNUM,REMK1 02740912
278: IVFAIL=IVFAIL+1 02750912
279: C***** 02760912
280: CT008* TEST 8 - READS RECORD 2 02770912
281: C***** 02780912
282: 33130 IVTNUM=8 02790912
283: IVI = 2 02800912
284: READ(UNIT=KUVI,REC=IVI,FMT=41238,ERR=33140) BVS, AVD, KVI, AVS, 02810912
285: 1 AVB, A20VK, A51VK 02820912
286: 41238 FORMAT(E12.6, D15.7, I4, F11.5, L2, A25, A51) 02830912
287: ISWT=2 02840912
288: GO TO 33230 02850912
289: 02860912
290: 33140 WRITE(NUVI,55010)IVTNUM,REMK2 02870912
291: IVFAIL=IVFAIL+1 02880912
292: C***** 02890912
293: CT009* TEST 9 - READS RECORD 3 02900912
294: C***** 02910912
295: 33150 IVTNUM=9 02920912
296: IVI = 3 02930912
297: READ(UNIT=KUVI,REC=IVI,FMT=41210,ERR=33160) LVI, DVS, GVS, BVD, 02940912
298: 1 BVB, B20VK, B47VK 02950912
299: ISWT=3 02960912
300: GO TO 33240 02970912
301: 02980912
302: 33160 WRITE(NUVI,55010)IVTNUM,REMK3 02990912
303: IVFAIL=IVFAIL+1 03000912
304: C***** 03010912
305: CT010* TEST 10 - READS RECORD 4 03020912
306: C***** 03030912
307: 33170 IVTNUM=10 03040912
308: IVI = 4 03050912
309: READ(UNIT=KUVI,REC=IVI,FMT=41241,ERR=33180) NVI, EVS, DVD, CVB, 03060912
310: 1 C20VK, FVS, C47VK 03070912
311: 41241 FORMAT(I5, F10.5, D14.8, L10, A20, E14.6, A47) 03080912
312: ISWT=4 03090912
313: GO TO 33250 03100912
314: 03110912
315: 33180 WRITE(NUVI,55010)IVTNUM,REMK4 03120912
316: IVFAIL=IVFAIL+1 03130912
317: C***** 03140912
318: CT011* TEST 11 - READS RECORD 5 03150912
319: C***** 03160912
320: 33190 IVTNUM=11 03170912
321: IVI = 5 03180912
322: JVI = 4 03190912
323: READ(UNIT=KUVI,REC=IVI,FMT=41218,ERR=33200) BVS, AVD, AVB, KVI, 03200912
324: 1 AVS, A20VK, A51VK 03210912
325: 41218 FORMAT(E12.6, D15.7, L2, I4, F11.5, A25, A51) 03220912
326: ISWT=5 03230912
327: GO TO 33260 03240912
328: 03250912
329: 33200 WRITE(NUVI,55010)IVTNUM,REMK5 03260912
330: IVFAIL=IVFAIL+1 03270912
331: C***** 03280912
332: CT012* TEST 12 - OVERWRITES RECORD 3 03290912
333: C***** 03300912
334: 33210 IVTNUM=12 03310912
335: IVI = 3 03320912
336: AVS = G1S (IVI) 03330912
337: BVS = G1S(IVI + 1) 03340912
338: A20VK = B201K (IVI) 03350912
339: AVB = D1B (IVI) 03360912
340: AVD = B1D (IVI) 03370912
341: WRITE(UNIT=KUVI,REC=3,FMT=41251,ERR=33310) IVI, AVS, BVS, AVD, 03380912
342: 1 A20VK, AVB 03390912
343: 41251 FORMAT(I5, F11.5, E13.6, D14.8, A20, L10, 35X, 'NEW RECORD ') 03400912
344: WRITE(NUVI,80002)IVTNUM 03410912
345: IVPASS=IVPASS+1 03420912
346: GO TO 33320 03430912
347: 03440912
348: 33310 WRITE(NUVI,55010)IVTNUM,REMK3 03450912
349: IVFAIL=IVFAIL+1 03460912
350: C***** 03470912
351: CT013* TEST 13 - OVERWRITES RECORD 5 03480912
352: C***** 03490912
353: 33320 IVTNUM=13 03500912
354: IVI = 5 03510912
355: AVS = G1S (IVI) 03520912
356: BVS = G1S(IVI - 1) 03530912
357: A20VK = B201K (IVI) 03540912
358: AVB = D1B (IVI) 03550912
359: AVD = B1D (IVI) 03560912
360: WRITE(UNIT=KUVI,REC=5,FMT=41252,ERR=33330) AVS, IVI, A20VK, AVD,03570912
361: 1 BVS, AVB 03580912
362: 41252 FORMAT(F10.5, I5, A20, D14.8, E14.6, L10, 35X, 'STOP RECORD') 03590912
363: WRITE(NUVI,80002)IVTNUM 03600912
364: IVPASS=IVPASS+1 03610912
365: GO TO 33340 03620912
366: 03630912
367: 33330 WRITE(NUVI,55010)IVTNUM,REMK5 03640912
368: IVFAIL=IVFAIL+1 03650912
369: C***** 03660912
370: C***** CLOSE AND REOPEN DIRECT ACCESS FILE 03670912
371: C***** 03680912
372: 33340 CLOSE(UNIT=KUVI) 03690912
373: OPEN(FILE=CDIR, UNIT=KUVI, ACCESS='DIRECT',STATUS='OLD', 03700912
374: 1 FORM='FORMATTED',RECL=120) 03710912
375: C***** 03720912
376: CT014* TEST 14 - READS RECORD 4 03730912
377: C***** 03740912
378: IVTNUM=14 03750912
379: IVI = 4 03760912
380: READ(UNIT=KUVI,REC=IVI,FMT=41241,ERR=33350) NVI, EVS, DVD, CVB, 03770912
381: 1 C20VK, FVS, C47VK 03780912
382: ISWT=6 03790912
383: GO TO 33250 03800912
384: 03810912
385: 33350 WRITE(NUVI,55010)IVTNUM,REMK4 03820912
386: IVFAIL=IVFAIL+1 03830912
387: C***** 03840912
388: CT015* TEST 15 - READS THE CHANGED RECORD 5 03850912
389: C***** 03860912
390: 33360 IVTNUM=15 03870912
391: IVI = 5 03880912
392: READ(UNIT=KUVI,REC=IVI,FMT=41254,ERR=33370) AVS, KVI, A20VK, 03890912
393: 1 AVD, BVS, AVB, A47VK03900912
394: 41254 FORMAT(F10.5, I5, A20, D14.8, E14.6, L10, A47) 03910912
395: ISWT=7 03920912
396: IF (KVI .NE. IVI) GOTO 41221 03930912
397: IF (AVS .LT. G1S(IVI)-CVS .OR. AVS .GT. G1S(IVI)+CVS) GOTO 4122303940912
398: IF (BVS.LT.G1S(IVI-1)-CVS .OR. BVS.GT.G1S(IVI-1)+CVS) GOTO 4122503950912
399: IF (A20VK .NE. B201K(IVI)) GOTO 41229 03960912
400: IF ((AVB .AND. .NOT. D1B(IVI)) .OR. 03970912
401: 1 (.NOT. AVB .AND. D1B(IVI))) GOTO 41233 03980912
402: IF (AVD .LT. B1D(IVI)-CVD .OR. AVD .GT. B1D(IVI)+CVD) GOTO 4122703990912
403: IF (A47VK .NE. 04000912
404: 1 ' STOP RECORD') GOTO 41231 04010912
405: WRITE(NUVI,80002)IVTNUM 04020912
406: IVPASS=IVPASS+1 04030912
407: GO TO 33380 04040912
408: 33370 WRITE(NUVI,55010)IVTNUM,REMK5 04050912
409: IVFAIL=IVFAIL+1 04060912
410: C***** 04070912
411: CT016* TEST 16 - READS RECORD 2 04080912
412: C***** 04090912
413: 33380 IVTNUM=16 04100912
414: IVI = 2 04110912
415: READ(UNIT=KUVI,REC=IVI,FMT=41238,ERR=33390) BVS, AVD, KVI, AVS, 04120912
416: 1 AVB, A20VK, A51VK 04130912
417: ISWT=8 04140912
418: GO TO 33230 04150912
419: 04160912
420: 33390 WRITE(NUVI,55010)IVTNUM,REMK2 04170912
421: IVFAIL=IVFAIL+1 04180912
422: C***** 04190912
423: CT017* TEST 17 - READS THE CHANGED RECORD 3 04200912
424: C***** 04210912
425: 33400 IVTNUM=17 04220912
426: IVI = 3 04230912
427: READ(UNIT=KUVI,REC=3,FMT=41256,ERR=33410) KVI, AVS, BVS, AVD, 04240912
428: 1 A20VK, AVB, A47VK 04250912
429: 41256 FORMAT(I5, F11.5, E13.6, D14.8, A20, L10, A47) 04260912
430: ISWT=9 04270912
431: IF (KVI .NE. IVI) GOTO 41221 04280912
432: IF (AVS .LT. G1S(IVI)-CVS .OR. AVS .GT. G1S(IVI)+CVS) GOTO 4122304290912
433: IF (BVS.LT.G1S(IVI+1)-CVS .OR. BVS.GT.G1S(IVI+1)+CVS) GOTO 4122504300912
434: IF (A20VK .NE. B201K(IVI)) GOTO 41229 04310912
435: IF ((AVB .AND. .NOT. D1B(IVI)) .OR. 04320912
436: 1 (.NOT. AVB .AND. D1B(IVI))) GOTO 41233 04330912
437: IF (AVD .LT. B1D(IVI)-CVD .OR. AVD .GT. B1D(IVI)+CVD) GOTO 4122704340912
438: IF (A47VK .NE. 04350912
439: 1 ' NEW RECORD ') GOTO 41231 04360912
440: WRITE(NUVI,80002)IVTNUM 04370912
441: IVPASS=IVPASS+1 04380912
442: GO TO 33420 04390912
443: 04400912
444: 33410 WRITE(NUVI,55010)IVTNUM,REMK3 04410912
445: IVFAIL=IVFAIL+1 04420912
446: C***** 04430912
447: CT018* TEST 18 - READS RECORD 1 04440912
448: C***** 04450912
449: 33420 IVTNUM=18 04460912
450: IVI = 1 04470912
451: READ(UNIT=KUVI,REC=IVI,FMT=41210,ERR=33430) KVI, AVS, BVS, AVD, 04480912
452: 1 AVB, A20VK, A47VK 04490912
453: ISWT=10 04500912
454: GO TO 33220 04510912
455: 04520912
456: 33430 WRITE(NUVI,55010)IVTNUM,REMK1 04530912
457: IVFAIL=IVFAIL+1 04540912
458: C***** 04550912
459: CT019* TEST 19 - OVERWRITES RECORD 4 04560912
460: C***** 04570912
461: 33440 IVTNUM=19 04580912
462: 41258 IVI = 4 04590912
463: KVI = IVI + 1 04600912
464: AVS = F1S (IVI) 04610912
465: BVS = F1S(IVI + 1) 04620912
466: EVS = F1S(IVI) + 2.34 04630912
467: AVD = D1D (IVI) 04640912
468: WRITE(UNIT=KUVI,REC=4,FMT=41259,ERR=33450) IVI, KVI, AVS, BVS, 04650912
469: 1 EVS, AVD 04660912
470: 41259 FORMAT(I5, I5.3, F10.5, E14.6, E20.1E4, D14.8) 04670912
471: WRITE(NUVI,80002)IVTNUM 04680912
472: IVPASS=IVPASS+1 04690912
473: GO TO 33460 04700912
474: 04710912
475: 33450 WRITE(NUVI,55010)IVTNUM,REMK4 04720912
476: IVFAIL=IVFAIL+1 04730912
477: C***** 04740912
478: CT020* TEST 20 - OVERWRITES RECORDS 1, 2, AND 3 04750912
479: C***** 04760912
480: 33460 IVTNUM=20 04770912
481: IVI = 1 04780912
482: A1VK = 'A' 04790912
483: A4VK = A201K (IVI) (1:4) 04800912
484: AVB = C1B (IVI) 04810912
485: AVD = D1D (IVI) 04820912
486: BVD = D1D (IVI) + 3.234D2 04830912
487: WRITE(UNIT=KUVI,REC=1,FMT=41260,ERR=33470) AVD, BVD, AVB, A1VK, 04840912
488: 1 A4VK 04850912
489: 41260 FORMAT(G14.8, G20.2E4, L2, A, A4, 'TSAL DROCER',//, 04860912
490: 1 10HHOLLERITH , T15, 'ONE', 10X, TL5, 'TWO', TR5, 04870912
491: 2 'THREE', :, 'LAST') 04880912
492: WRITE(NUVI,80002)IVTNUM 04890912
493: IVPASS=IVPASS+1 04900912
494: GO TO 33480 04910912
495: 04920912
496: 33470 WRITE(NUVI,55010)IVTNUM,REMK1 04930912
497: IVFAIL=IVFAIL+1 04940912
498: C***** 04950912
499: CT021* TEST 21 - OVERWRITES RECORD 5 04960912
500: C***** 04970912
501: 33480 IVTNUM=21 04980912
502: IVI = 5 04990912
503: BVS = F1S(IVI - 1) 05000912
504: AVD = B1D (4) 05010912
505: WRITE(UNIT=KUVI,REC=5,FMT=41261,ERR=33490) IVI, BVS, IVI, AVD 05020912
506: 41261 FORMAT(SP, I5, S, F10.5, SS, I5, 3PE14.6E2) 05030912
507: WRITE(NUVI,80002)IVTNUM 05040912
508: IVPASS=IVPASS+1 05050912
509: GO TO 33500 05060912
510: 05070912
511: 33490 WRITE(NUVI,55010)IVTNUM,REMK5 05080912
512: IVFAIL=IVFAIL+1 05090912
513: C***** 05100912
514: C***** CLOSE AND REOPEN DIRECT ACCESS FILE 05110912
515: C***** 05120912
516: 33500 CLOSE(UNIT=KUVI) 05130912
517: OPEN(FILE=CDIR, UNIT=KUVI, ACCESS='DIRECT',STATUS='OLD', 05140912
518: 1 FORM='FORMATTED',RECL=120) 05150912
519: C***** 05160912
520: CT022* TEST 22 - READS RECORD 1 05170912
521: C***** 05180912
522: IVTNUM=22 05190912
523: IVI = 1 05200912
524: READ(UNIT=KUVI,REC=IVI,FMT=41262,ERR=33510) AVD, A20VK, AVB, 05210912
525: 1 A1VK, A4VK, A12VK 05220912
526: 41262 FORMAT(G14.8, A20, L2, A, A4, A12) 05230912
527: ISWT=1 05240912
528: IF (AVD .LT. D1D(IVI)-CVD .OR. AVD .GT. D1D(IVI)+CVD) GOTO 4127705250912
529: IF (A20VK(12:20) .NE. '.34E+0003') GOTO 41279 05260912
530: IF ((A1VK .NE. 'A') .OR. 05270912
531: 1 (A4VK .NE. A201K(IVI)(1:4)) .OR. 05280912
532: 2 (A12VK .NE. 'TSAL DROCER')) GOTO 41279 05290*TI
533: WRITE(NUVI,80002)IVTNUM 05300912
534: IVPASS=IVPASS+1 05310912
535: GO TO 33520 05320912
536: 05330912
537: 33510 WRITE(NUVI,55010)IVTNUM,REMK1 05340912
538: IVFAIL=IVFAIL+1 05350912
539: C***** RECORD # 4 05360912
540: CT023* TEST 23 - READS RECORD 4 05370912
541: C***** 05380912
542: 33520 IVTNUM=23 05390912
543: IVI = 4 05400912
544: READ(UNIT=KUVI,REC=IVI,FMT=41266,ERR=33530) KVI, A20VK, AVS, 05410912
545: 1 BVS, B20VK, AVD 05420912
546: 41266 FORMAT(I5, A5, F10.5, E14.6, A20, D14.8) 05430912
547: ISWT=2 05440912
548: IF (A20VK(3:5) .NE. '005') GOTO 41293 05450912
549: IF ((AVS .LT. F1S(IVI)-CVS .OR. AVS .GT. F1S(IVI)+CVS) .OR. 05460912
550: 1 (BVS.LT.F1S(IVI+1)-CVS .OR. BVS.GT.F1S(IVI+1)+CVS) .OR. 05470912
551: 2 (B20VK(13:20) .NE. '.6E+0001')) GOTO 41293 05480*TI
552: WRITE(NUVI,80002)IVTNUM 05490912
553: IVPASS=IVPASS+1 05500912
554: GO TO 33540 05510912
555: 05520912
556: 33530 WRITE(NUVI,55010)IVTNUM,REMK4 05530912
557: IVFAIL=IVFAIL+1 05540912
558: C***** 05550912
559: CT024* TEST 24 - READS RECORD 2 TESTS FOR BLANK RECORD 05560912
560: C***** 05570912
561: 33540 IVTNUM=24 05580912
562: B120VK = ' ' 05590912
563: IVI = 2 05600912
564: READ(UNIT=KUVI,REC=IVI,FMT=41269,ERR=33550) A120VK 05610912
565: 41269 FORMAT(A120) 05620912
566: ISWT=3 05630912
567: IF (A120VK .NE. B120VK) GOTO 41281 05640912
568: WRITE(NUVI,80002)IVTNUM 05650912
569: IVPASS=IVPASS+1 05660912
570: GO TO 33560 05670912
571: 05680912
572: 33550 WRITE(NUVI,55010)IVTNUM,REMK2 05690912
573: IVFAIL=IVFAIL+1 05700912
574: C***** 05710912
575: CT025* TEST 25 - READS RECORD 5 05720912
576: C***** 05730912
577: 33560 IVTNUM=25 05740912
578: IVI = 5 05750912
579: READ(UNIT=KUVI,REC=IVI,FMT=41271,ERR=33570) A20VK(1:5), AVS, 05760912
580: 1 B20VK, C20VK 05770912
581: 41271 FORMAT(A5, F10.5, BZ, A5, BN, A20) 05780912
582: ISWT=4 05790912
583: IF (A20VK(1:5) .NE. ' +5') GOTO 41283 05800912
584: IF (B20VK(1:5) .NE. ' 5') GOTO 41285 05810912
585: IF (C20VK(1:14) .NE. ' 625.0000E-03') GOTO 41287 05820912
586: WRITE(NUVI,80002)IVTNUM 05830912
587: IVPASS=IVPASS+1 05840912
588: GO TO 33580 05850912
589: 05860912
590: 33570 WRITE(NUVI,55010)IVTNUM,REMK5 05870912
591: IVFAIL=IVFAIL+1 05880912
592: C***** 05890912
593: CT026* TEST 26 - READS RECORD 3 05900912
594: C***** 05910912
595: 33580 IVTNUM=26 05920912
596: IVI = 3 05930912
597: READ(UNIT=KUVI,REC=IVI,FMT=41275,ERR=33590) A120VK 05940912
598: 41275 FORMAT(A120) 05950912
599: ISWT=5 05960912
600: IF (A120VK(1:10) .NE. 'HOLLERITH') GOTO 41289 05970912
601: IF (A120VK(11:40) .NE. 05980912
602: 1 ' ONE TWO THREE ') GOTO 41291 05990912
603: WRITE(NUVI,80002)IVTNUM 06000912
604: IVPASS=IVPASS+1 06010912
605: GO TO 33600 06020912
606: 06030912
607: 33590 WRITE(NUVI,55010)IVTNUM,REMK3 06040912
608: IVFAIL=IVFAIL+1 06050912
609: C***** 06060912
610: C***** CLOSE DIRECT ACCESS FILE 06070912
611: C***** 06080912
612: 33600 CLOSE(UNIT=KUVI,STATUS='DELETE') 06090912
613: GO TO 33610 06100912
614: C***** 06110912
615: C***** CHECKING RECORD 1 06120912
616: C***** 06130912
617: 33220 IF (KVI .NE. IVI) GOTO 41221 06140912
618: IF (AVS .LT. F1S(IVI)-CVS .OR. AVS .GT. F1S(IVI)+CVS) GOTO 4122306150912
619: IF (BVS.LT.F1S(IVI+1)-CVS .OR. BVS.GT.F1S(IVI+1)+CVS) GOTO 4122506160912
620: IF (A20VK .NE. A201K(IVI)) GOTO 41229 06170912
621: IF (A47VK .NE. 06180912
622: 1 ' LAST RECORD') GOTO 41231 06190912
623: IF ((AVB .AND. .NOT. C1B(IVI)) .OR. 06200912
624: 1 (.NOT. AVB .AND. C1B(IVI))) GOTO 41233 06210912
625: IF (AVD .LT. D1D(IVI)-CVD .OR. AVD .GT. D1D(IVI)+CVD) GOTO 4122706220912
626: WRITE(NUVI,80002)IVTNUM 06230912
627: IVPASS=IVPASS+1 06240912
628: IF (ISWT .EQ. 10)GO TO 33440 06250912
629: GO TO 33130 06260912
630: 06270912
631: 41221 WRITE(NUVI,41222)IVTNUM,IVI 06280912
632: IVFAIL=IVFAIL+1 06290912
633: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06300912
634: 1 33420,33440)ISWT 06310912
635: 06320912
636: 41223 WRITE(NUVI,41224)IVTNUM,IVI 06330912
637: IVFAIL=IVFAIL+1 06340912
638: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06350912
639: 1 33420,33440)ISWT 06360912
640: 06370912
641: 41225 WRITE(NUVI,41226)IVTNUM,IVI 06380912
642: IVFAIL=IVFAIL+1 06390912
643: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06400912
644: 1 33420,33440)ISWT 06410912
645: 06420912
646: 41227 WRITE(NUVI,41228)IVTNUM,IVI 06430912
647: IVFAIL=IVFAIL+1 06440912
648: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06450912
649: 1 33420,33440)ISWT 06460912
650: 06470912
651: 41229 WRITE(NUVI,41230)IVTNUM,IVI 06480912
652: IVFAIL=IVFAIL+1 06490912
653: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06500912
654: 1 33420,33440)ISWT 06510912
655: 06520912
656: 41231 WRITE(NUVI,41232)IVTNUM,IVI 06530912
657: IVFAIL=IVFAIL+1 06540912
658: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06550912
659: 1 33420,33440)ISWT 06560912
660: 06570912
661: 41233 WRITE(NUVI,41234)IVTNUM,IVI 06580912
662: IVFAIL=IVFAIL+1 06590912
663: GO TO (33130,33150,33170,33190,33210,33360,33380,33400, 06600912
664: 1 33420,33440)ISWT 06610912
665: C***** 06620912
666: C***** CHECKING RECORD 2 06630912
667: C***** 06640912
668: 33230 IF (KVI .NE. IVI) GOTO 41221 06650912
669: IF (AVS .LT. F1S(IVI)-CVS .OR. AVS .GT. F1S(IVI)+CVS) GOTO 4122306660912
670: IF (BVS.LT.F1S(IVI+1)-CVS .OR. BVS.GT.F1S(IVI+1)+CVS) GOTO 4122506670912
671: IF (A20VK .NE. A201K(IVI)) GOTO 41229 06680912
672: IF ((AVB .AND. .NOT. C1B(IVI)) .OR. 06690912
673: 1 (.NOT. AVB .AND. C1B(IVI))) GOTO 41233 06700912
674: IF (AVD .LT. D1D(IVI)-CVD .OR. AVD .GT. D1D(IVI)+CVD) GOTO 4122706710912
675: IF (A51VK .NE. 06720912
676: 1 ' LASTS RECORD ')GOTO 41231 06730912
677: WRITE(NUVI,80002)IVTNUM 06740912
678: IVPASS=IVPASS+1 06750912
679: IF (ISWT .EQ. 8)GO TO 33400 06760912
680: GO TO 33150 06770912
681: C***** 06780912
682: C***** CHECKING RECORD 3 06790912
683: C***** 06800912
684: 33240 IF (LVI .NE. IVI) GOTO 41221 06810912
685: IF (GVS .LT. F1S(IVI)-CVS .OR. GVS .GT. F1S(IVI)+CVS) GOTO 4122306820912
686: IF (DVS.LT.F1S(IVI+1)-CVS .OR. DVS.GT.F1S(IVI+1)+CVS) GOTO 4122506830912
687: IF (B20VK .NE. A201K(IVI)) GOTO 41229 06840912
688: IF ((BVB .AND. .NOT. C1B(IVI)) .OR. 06850912
689: 1 (.NOT. BVB .AND. C1B(IVI))) GOTO 41233 06860912
690: IF (BVD .LT. D1D(IVI)-CVD .OR. BVD .GT. D1D(IVI)+CVD) GOTO 4122706870912
691: IF (B47VK .NE. 06880912
692: 1 ' THE LAST REC ') GOTO 41231 06890912
693: WRITE(NUVI,80002)IVTNUM 06900912
694: IVPASS=IVPASS+1 06910912
695: GO TO 33170 06920912
696: C***** 06930912
697: C***** CHECKING RECORD 4 06940912
698: C***** 06950912
699: 33250 IF (NVI .NE. IVI) GOTO 41221 06960912
700: IF (EVS .LT. F1S(IVI)-CVS .OR. EVS .GT. F1S(IVI)+CVS) GOTO 4122306970912
701: IF (FVS.LT.F1S(IVI+1)-CVS .OR. FVS.GT.F1S(IVI+1)+CVS) GOTO 4122506980912
702: IF (C20VK .NE. A201K(IVI)) GOTO 41229 06990912
703: IF ((CVB .AND. .NOT. C1B(IVI)) .OR. 07000912
704: 1 (.NOT. CVB .AND. C1B(IVI))) GOTO 41233 07010912
705: IF (DVD .LT. D1D(IVI)-CVD .OR. DVD .GT. D1D(IVI)+CVD) GOTO 4122707020912
706: IF (C47VK .NE. 07030912
707: 1 ' NEXT TO LAST') GOTO 41231 07040912
708: WRITE(NUVI,80002)IVTNUM 07050912
709: IVPASS=IVPASS+1 07060912
710: IF (ISWT .EQ. 6)GO TO 33360 07070912
711: GO TO 33190 07080912
712: C***** 07090912
713: C***** CHECKING RECORD 5 07100912
714: C***** 07110912
715: 33260 IF (KVI .NE. JVI) GOTO 41221 07120912
716: IF (AVS .LT. F1S(JVI)-CVS .OR. AVS .GT. F1S(JVI)+CVS) GOTO 4122307130912
717: IF (BVS.LT.F1S(JVI+1)-CVS .OR. BVS.GT.F1S(JVI+1)+CVS) GOTO 4122507140912
718: IF (A20VK .NE. A201K(JVI)) GOTO 41229 07150912
719: IF ((AVB .AND. .NOT. C1B(JVI)) .OR. 07160912
720: 1 (.NOT. AVB .AND. C1B(JVI))) GOTO 41233 07170912
721: IF (AVD .LT. D1D(JVI)-CVD .OR. AVD .GT. D1D(JVI)+CVD) GOTO 4122707180912
722: IF (A51VK .NE. 07190912
723: 1 ' THE END ') GOTO 4123107200912
724: WRITE(NUVI,80002)IVTNUM 07210912
725: IVPASS=IVPASS+1 07220912
726: GO TO 33210 07230912
727: C***** 07240912
728: C***** 07250912
729: C***** 07260912
730: 41277 WRITE(NUVI,41278)IVTNUM,IVI 07270912
731: IVFAIL=IVFAIL+1 07280912
732: GO TO(33520,33540,33560,33580,33600)ISWT 07290912
733: 07300912
734: 41279 WRITE(NUVI,41280)IVTNUM,IVI 07310912
735: IVFAIL=IVFAIL+1 07320912
736: GO TO(33520,33540,33560,33580,33600)ISWT 07330912
737: 07340912
738: 41281 WRITE(NUVI,41282)IVTNUM,IVI 07350912
739: IVFAIL=IVFAIL+1 07360912
740: GO TO(33520,33540,33560,33580,33600)ISWT 07370912
741: 07380912
742: 41283 WRITE(NUVI,41284)IVTNUM,IVI 07390912
743: IVFAIL=IVFAIL+1 07400912
744: GO TO(33520,33540,33560,33580,33600)ISWT 07410912
745: 07420912
746: 41285 WRITE(NUVI,41286)IVTNUM,IVI 07430912
747: IVFAIL=IVFAIL+1 07440912
748: GO TO(33520,33540,33560,33580,33600)ISWT 07450912
749: 07460912
750: 41287 WRITE(NUVI,41288)IVTNUM,IVI 07470912
751: IVFAIL=IVFAIL+1 07480912
752: GO TO(33520,33540,33560,33580,33600)ISWT 07490912
753: 07500912
754: 41289 WRITE(NUVI,41290)IVTNUM,IVI 07510912
755: IVFAIL=IVFAIL+1 07520912
756: GO TO(33520,33540,33560,33580,33600)ISWT 07530912
757: 07540912
758: 41291 WRITE(NUVI,41292)IVTNUM,IVI 07550912
759: IVFAIL=IVFAIL+1 07560912
760: GO TO(33520,33540,33560,33580,33600)ISWT 07570912
761: 07580912
762: 41293 WRITE(NUVI,41294)IVTNUM,IVI 07590912
763: IVFAIL=IVFAIL+1 07600912
764: GO TO(33520,33540,33560,33580,33600)ISWT 07610912
765: C***** 07620912
766: C***** 07630912
767: C***** 07640912
768: 41222 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07650912
769: 1 14H - ON I FORMAT) 07660912
770: 41224 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07670912
771: 1 14H - ON F FORMAT) 07680912
772: 41226 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07690912
773: 1 14H - ON E FORMAT) 07700912
774: 41228 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07710912
775: 1 14H - ON D FORMAT) 07720912
776: 41230 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07730912
777: 1 14H - ON A FORMAT) 07740912
778: 41232 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07750912
779: 1 20H - ON X AND ' FORMAT) 07760912
780: 41234 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07770912
781: 1 14H - ON L FORMAT) 07780912
782: 41278 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07790912
783: 1 17H - ON GW.D FORMAT) 07800912
784: 41280 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07810912
785: 1 19H - ON GW.DEN FORMAT) 07820912
786: 41282 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07830912
787: 1 19H - ON BLANK RECORD ) 07840912
788: 41284 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07850912
789: 1 19H - ON SP FORMAT ) 07860912
790: 41286 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07870912
791: 1 21H - ON BZ OR SS FORMAT) 07880912
792: 41288 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07890912
793: 1 19H - ON NP FORMAT ) 07900912
794: 41290 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07910912
795: 1 19H - ON H FORMAT ) 07920912
796: 41292 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07930912
797: 1 23H - ON TR, TLC, T FORMAT) 07940912
798: 41294 FORMAT(1H ,5HTEST ,I3,6H FAIL,34X,6HRECORD,I2, 07950912
799: 1 19H - ON IN.N FORMAT ) 07960912
800: C***** 07970912
801: C***** END OF TEST SEGMENT 412 07980912
802: C***** 07990912
803: 33610 CONTINUE 08000912
804: CBB** ********************** BBCSUM0 **********************************08010912
805: C**** WRITE OUT TEST SUMMARY 08020912
806: C**** 08030912
807: IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 08040912
808: WRITE (I02, 90004) 08050912
809: WRITE (I02, 90014) 08060912
810: WRITE (I02, 90004) 08070912
811: WRITE (I02, 90020) IVPASS 08080912
812: WRITE (I02, 90022) IVFAIL 08090912
813: WRITE (I02, 90024) IVDELE 08100912
814: WRITE (I02, 90026) IVINSP 08110912
815: WRITE (I02, 90028) IVTOTN, IVTOTL 08120912
816: CBE** ********************** BBCSUM0 **********************************08130912
817: CBB** ********************** BBCFOOT0 **********************************08140912
818: C**** WRITE OUT REPORT FOOTINGS 08150912
819: C**** 08160912
820: WRITE (I02,90016) ZPROG, ZPROG 08170912
821: WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 08180912
822: WRITE (I02,90019) 08190912
823: CBE** ********************** BBCFOOT0 **********************************08200912
824: CBB** ********************** BBCFMT0A **********************************08210912
825: C**** FORMATS FOR TEST DETAIL LINES 08220912
826: C**** 08230912
827: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31) 08240912
828: 80002 FORMAT (1H ,2X,I3,4X,7H PASS ,32X,A31) 08250912
829: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31) 08260912
830: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL ,32X,A31) 08270912
831: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,15X,10HCOMPUTED= , 08280912
832: 1I6,/,1H ,15X,10HCORRECT= ,I6) 08290912
833: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 08300912
834: 1E12.5,/,1H ,16X,10HCORRECT= ,E12.5) 08310912
835: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 08320912
836: 1A21,/,1H ,16X,10HCORRECT= ,A21) 08330912
837: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31) 08340912
838: 80022 FORMAT (1H ,16X,10HCORRECT= ,A21,1X,A31) 08350912
839: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31) 08360912
840: 80026 FORMAT (1H ,16X,10HCORRECT= ,I6,16X,A31) 08370912
841: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31) 08380912
842: 80030 FORMAT (1H ,16X,10HCORRECT= ,E12.5,10X,A31) 08390912
843: 80050 FORMAT (1H ,48X,A31) 08400912
844: CBE** ********************** BBCFMT0A **********************************08410912
845: CBB** ********************** BBCFMAT1 **********************************08420912
846: C**** FORMATS FOR TEST DETAIL LINES - FULL LANGUAGE 08430912
847: C**** 08440912
848: 80031 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 08450912
849: 1D17.10,/,1H ,16X,10HCORRECT= ,D17.10) 08460912
850: 80033 FORMAT (1H ,16X,10HCOMPUTED= ,D17.10,10X,A31) 08470912
851: 80035 FORMAT (1H ,16X,10HCORRECT= ,D17.10,10X,A31) 08480912
852: 80037 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 08490912
853: 80039 FORMAT (1H ,16X,10HCORRECT= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 08500912
854: 80041 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 08510912
855: 80043 FORMAT (1H ,16X,10HCORRECT= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 08520912
856: 80045 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 08530912
857: 11H(,F12.5,2H, ,F12.5,1H)/,1H ,16X,10HCORRECT= , 08540912
858: 21H(,F12.5,2H, ,F12.5,1H)) 08550912
859: CBE** ********************** BBCFMAT1 **********************************08560912
860: CBB** ********************** BBCFMT0B **********************************08570912
861: C**** FORMAT STATEMENTS FOR PAGE HEADERS 08580912
862: C**** 08590912
863: 90002 FORMAT (1H1) 08600912
864: 90004 FORMAT (1H ) 08610912
865: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER) 08620912
866: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM) 08630912
867: 90008 FORMAT (1H ,21X,A13,A17) 08640912
868: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/) 08650912
869: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H - COMPILER= ,A20) 08660912
870: 90013 FORMAT (1H ,8H TEST ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS, 08670912
871: 1 7X,7HREMARKS,24X) 08680912
872: 90014 FORMAT (1H ,46H----------------------------------------------, 08690912
873: 1 33H---------------------------------) 08700912
874: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/) 08710912
875: C**** 08720912
876: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 08730912
877: C**** 08740912
878: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/) 08750912
879: 90018 FORMAT (1H ,A13,13X,A20,7H * ,A10,1H/, 08760912
880: 1 A13) 08770912
881: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY ,35X,15HCOPYRIGHT 1982) 08780912
882: C**** 08790912
883: C**** FORMAT STATEMENTS FOR RUN SUMMARY 08800912
884: C**** 08810912
885: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED) 08820912
886: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED) 08830912
887: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED) 08840912
888: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION) 08850912
889: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED) 08860912
890: CBE** ********************** BBCFMT0B **********************************08870912
891: STOP 08880912
892: END 08890912
893: C********************************************************************** 00010913
894: C DATE***82/08/02*18.33.46
895: C OWNER PRE/850703/TC-85- -410/ /FSTC/278FCVS*F78UBP20/
896: C AUDIT FCVS78 V2.0
897: C***** FORTRAN 77 00020913
898: C***** FM913 00030913
899: C***** SN913 FAQ - (807) 00040913
900: C***** THIS SUBROUTINE IS CALLED BY PROGRAM FM912 00050913
901: C********************************************************************** 00060913
902: SUBROUTINE SN913(FW1S, GW1S, CW1B, DW1B, DW1D, BW1D, 00070913
903: 1 A20W1K, B20W1K) 00080913
904: C***** 00090913
905: C***** SUBROUTINE USED WITH SEGMENT DIRAF3 (412) TO SUPPLY VALUES 00100913
906: C***** TO ARRAYS THRU THE DUMMY ARGUMENT LIST 00110913
907: C***** 00120913
908: REAL FT1S(5),FW1S(5),GT1S(5),GW1S(5) 00130913
909: LOGICAL CT1B(5),CW1B(5),DT1B(5),DW1B(5) 00140913
910: DOUBLE PRECISION DT1D(5),DW1D(5),BT1D(5),BW1D(5) 00150913
911: CHARACTER*20 A20T1K(5),A20W1K(5),B20T1K(5),B20W1K(5) 00160913
912: DATA FT1S /1.0, 2.0, 3.0, 4.0, 5.0/ 00170913
913: DATA GT1S /1.2, 2.3, 3.5, 4.45, 45.0/ 00180913
914: DATA A20T1K / 'AAAALKJHGFASERTYUIOP', 'KDJFLKJEOITMNV E CJF', 00190913
915: 1 'CDFEJHFKLM CNB FHGDC', 'LKJHNHBJMVK,FIJ NVHD', 00200913
916: 2 'JHGFKDJJSLDKFJDKJFSL'/ 00210913
917: DATA B20T1K / 'AAAALSDEFCASERTYUIOP', 'KDDFFEJEOITMNV E CJF', 00220913
918: 1 'CDFEJHFKLM DHGDC', 'L...NHBJMVK,FIJ NVHD', 00230913
919: 2 'LKJHDNMVHNEUYHBDGHCJ'/ 00240913
920: DATA CT1B /.TRUE., .FALSE., .TRUE., .TRUE., .FALSE./ 00250913
921: DATA DT1B /.FALSE., .TRUE., .FALSE., .TRUE., .TRUE./ 00260913
922: DATA DT1D /1.23D1, 2.34D1, 3.45D3, 5.602D3, 5.602D0/ 00270913
923: DATA BT1D /23.1D1, 34.1D1, 23.45D3, .625D0, 109.384D0/ 00280913
924: C***** 00290913
925: C***** 00300913
926: C***** 00310913
927: DO 1 IVI = 1, 5 00320913
928: FW1S(IVI) = FT1S(IVI) 00330913
929: GW1S(IVI) = GT1S(IVI) 00340913
930: CW1B(IVI) = CT1B(IVI) 00350913
931: DW1B(IVI) = DT1B(IVI) 00360913
932: DW1D(IVI) = DT1D(IVI) 00370913
933: BW1D(IVI) = BT1D(IVI) 00380913
934: A20W1K(IVI) = A20T1K(IVI) 00390913
935: B20W1K(IVI) = B20T1K(IVI) 00400913
936: 1 CONTINUE 00410913
937: C***** 00420913
938: C***** 00430913
939: C***** 00440913
940: RETURN 00450913
941: END 00460913
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.