A large commit.
[pdp8.git] / sw / rescue / lab8e_goettingen / disk2_11 / rkb / paroff / haeopn.ft
CommitLineData
81e70d48
PH
1C -+-+-+-+-+ \ e H A E O P N . F T \ e -+-+-+-+-+\r
2C\r
3C * UP 29-NOV-82\r
4C\r
5C OPEN THE OUTPUT FILE 6 FOR APPENDING\r
6C\r
7 SUBROUTINE OPNSIX\r
8 INCLUDE HAEBUF.FI\r
9 INCLUDE HAETTY.FI\r
10 INCLUDE HAECLR.FI\r
11C\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
18C\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
265 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
33C @ 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
41C\r
42C\r
4310 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
5020 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
5430 CONTINUE\r
55 WRITE (TTO,2) REV,REVSON\r
56 GOTO 20\r
57C\r
581 FORMAT (' AUSGABEDATEI 6 IST VOLL. LETZTER SATZ:',I3,\r
59 * ' BLOCK:',I4)\r
602 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