Commit | Line | Data |
---|---|---|
81e70d48 PH |
1 | C -+-+-+-+-+ \ e H A E O P N . F T \ e -+-+-+-+-+\r |
2 | C\r | |
3 | C * UP 29-NOV-82\r | |
4 | C\r | |
5 | C OPEN THE OUTPUT FILE 6 FOR APPENDING\r | |
6 | C\r | |
7 | SUBROUTINE OPNSIX\r | |
8 | INCLUDE HAEBUF.FI\r | |
9 | INCLUDE HAETTY.FI\r | |
10 | INCLUDE HAECLR.FI\r | |
11 | C\r | |
12 | \f INTEGER LOC\r | |
13 | EXTERNAL LOC\r | |
14 | INTEGER K,REV,\r | |
15 | * TEMPB(85), @ TEMPORARY INPUT BUFFER FOR FILE HEADER\r | |
16 | * TMAXBL, @ MAX BLOCKS IN THIS FILE\r | |
17 | * TREC\r | |
18 | C\r | |
19 | INPREC=-1 @ SET THE 'NO SAMPLE IN CORE' FLAG FOR ESAM\r | |
20 | UNIT=6 @ ESAM INPUT IS FROM FILE 6\r | |
21 | IF (REC6.LT.1) DEFINE FILE 6(MAXREC,85,U,REC6) @ INIT THE INPUT UNIT\r | |
22 | REC6=1 @ INIT TO THE FIRST RECORD\r | |
23 | SIXCNT=0 @ COUNT THE DATA SETS FOUND ON UNIT 6\r | |
24 | TMAXBL=MAXREC @ DEFAULT FILE LENGTH --> TMAXBL\r | |
25 | BLKCNT=TMAXBL @ DEFAULT LENGTH INTO THE HEADER\r | |
26 | 5 READ(6'REC6) TEMPB @ READ THE NEXT HEADER BLOCK\r | |
27 | SIXCNT=SIXCNT+1 @ INCREMENT DATA SET COUNTER\r | |
28 | REV=TEMPB((LOC(REVSON)-LOC(RCRD0))/3+1) @ REVISON NUMBER --> K\r | |
29 | IF (INT(REVSON).NE.INT(REV).AND..NOT.CLEAR\r | |
30 | * .AND.REC6.EQ.1) GOTO 30 @ REVISON NUMBER INCOMPABILITY\r | |
31 | K=TEMPB((LOC(REDVAL)-LOC(RCRD0))/3+1) @ ADR. OF READ VALID FLAG --> K\r | |
32 | IF (.NOT.CLEAR .AND. K.EQ.6HDLWPD2) GOTO 10 @ IF CLEAR FLAG THEN WE START AT THE FIRST RECORD ELSE\r | |
33 | C @ IF RECORD IS VALID THEN SKIP THE DATA SET\r | |
34 | CLEAR=.FALSE. @ RESET THE CLEAR FLAG\r | |
35 | TREC=REC6-1 @ THIS RECORD BECOMES THE HEADER BLOCK\r | |
36 | REC6=TREC @ INDEX TO THE NEW HEADER BLOCK --> REC6\r | |
37 | XSAML=(TMAXBL-REC6-1)*255 @ MAX SAMPLE COUNT FITTING INTO THE REMAINING FILE SPACE ( ONE CHANNEL INPUT) --> XSAML\r | |
38 | IF (XSAML.LT.640) GOTO 20 @ IF AT LEAST 64 HZ *10 SEC SAMPLING IS NOT POSSIBLE THEN GOTO 20\r | |
39 | SETNUM=SIXCNT @ SAVE THE CURRENT NUMBER OF THIS DATA SET\r | |
40 | RETURN @ REC6 POINTS TO THE NEW HEADER BLOCK\r | |
41 | C\r | |
42 | C\r | |
43 | 10 K=TEMPB((LOC(LASREC)-LOC(RCRD0))/3+1) @ ADR. OF LASREC --> K\r | |
44 | CLEAR=.FALSE.\r | |
45 | REC6=K+1 @ BLOCK OF NEXT HEADER --> REC6\r | |
46 | K=TEMPB((LOC(BLKCNT)-LOC(RCRD0))/3+1) @ ADR. OF BLKCNT --> K\r | |
47 | TMAXBL=K @ LENGTH OF FILE --> TMAXBL\r | |
48 | BLKCNT=TMAXBL @ INSERT THE LENGTH OF THE FILE INTO THE HEADER OF THE NEXT DATA SET\r | |
49 | IF (REC6.LT.TMAXBL) GOTO 5 @ IF END OF FILE REACHED THEN READ THE NEXT DATA SET AT LASREC+1\r | |
50 | 20 WRITE (TTO,1) SIXCNT,REC6 @ END OF FILE\r | |
51 | XSAML=0 @ ABORTS ADCON SINCE THERE IS NO SPACE FOR OUTPUT\r | |
52 | SETNUM=0 @ NO DATA SET FOUND IN THE BUFFER\r | |
53 | RETURN\r | |
54 | 30 CONTINUE\r | |
55 | WRITE (TTO,2) REV,REVSON\r | |
56 | GOTO 20\r | |
57 | C\r | |
58 | 1 FORMAT (' AUSGABEDATEI 6 IST VOLL. LETZTER SATZ:',I3,\r | |
59 | * ' BLOCK:',I4)\r | |
60 | 2 FORMAT (' AUSGABEDATEI 6 REV.:',F4.1,' - HAE REV.:',F4.1)\r | |
61 | END\r | |
62 | \1a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0 |