| 1 | SUBROUTINE IO(RECORD)\r |
| 2 | C\r |
| 3 | C\r |
| 4 | C This function reads the direct access file and unpacks it.\r |
| 5 | C we put 6 13-character records into a single direct access record\r |
| 6 | C because OS/8 FORTRAN puts every record into a single block.\r |
| 7 | C Packing this saves one-sixth the space.\r |
| 8 | C\r |
| 9 | COMMON /TXTCOM/ RTEXT,LINES,ASCVAR,TXTLOC,DATA\r |
| 10 | INTEGER RTEXT(205),LINES(12),DATA(78),RECORD\r |
| 11 | INTEGER OLDREC,TXTLOC\r |
| 12 | C COMMON /RECMEM/OLDREC\r |
| 13 | DATA OLDREC/-1/\r |
| 14 | \r |
| 15 | C WRITE (1,111) RECORD\r |
| 16 | IREC = RECORD/6 + 1\r |
| 17 | C WRITE (1,112) OLDREC, IREC\r |
| 18 | IF (IREC .NE. OLDREC)READ(8'IREC)DATA\r |
| 19 | OLDREC = IREC\r |
| 20 | N = 13 * (MOD(RECORD-1,6)) + 1\r |
| 21 | TXTLOC = DATA(N)\r |
| 22 | DO 10 I = 1, 12\r |
| 23 | 10 LINES(I) = DATA(N+I)\r |
| 24 | RETURN\r |
| 25 | C111 FORMAT(' IO FOR ', I15)\r |
| 26 | C112 FORMAT(' IO, OLD=', I15, ' NEW=',I15)\r |
| 27 | END\r |