[inforoots] Spacecraft Pioneer and it's data on old media problem
Van Snyder
van.snyder at jpl.nasa.gov
Mon Oct 1 13:26:07 PDT 2007
On Sun, 2007-09-30 at 04:45 -0700, Carl Baltrunas wrote:
> On the PDP-11s, they had a couple of OS's, RT-11, RSX-11, and RSTS.
> I've programmed on all three of these (RT and RSX, in both FORTRAN and
> Assembly). I'm not sure what they had available on the PDP-8 or PDP-12
> systems as far as OS's. And I know they had systems with, 8-bit, 12-
> bit, 15-bit, and 36-bit word sizes, but do not know what would be so
> special about the file formats other than ascii or bcd encoding in 6
> or 7 bit bytes.
It's probably Fortran unformatted files that cause the problem. These
aren't ASCII or other text. The numbers in them are in the internal
format of the machine. Frequently, each record of the file has an
"envelope" that indicates whether it's all or part of a logical record,
how long it is, how long the logical record is.... Unformatted files
are intended to be read by programs compiled by the same compiler that
compiled the program that wrote them. There are modern portable ways to
store unformatted data, such as XDR and HDF, but these might result in
the same bind in 40 years that now exists w.r.t Fortran unformatted
files.
Fortran 66, per se, shouldn't be a terrific problem. The only thing in
Fortran 66 that was absent in Fortran 77 was Hollerith, and one arcane
incompatibility having to do with a comma after a P desriptor in a
FORMAT statment (which will be repaired in 2008). All of Fortran 77 was
included in Fortran 90. The only things deleted in Fortran 95 were real
and double precision DO variables (which were added in Fortran 77 but
shouldn't have been), branching to an END IF statement from outside the
block (an accidental addition in 77), ASSIGN, ASSIGNED GOTO, PAUSE, and
the H edit descriptor. Compilers snivel about these, but still compile
them. The only thing deleted in Fortran 2003 was the concept of
"printing," using the first character of a formatted record for vertical
format control. This was deleted because it's easy to do with a post
processor, and a program couldn't find out whether it was supported on a
particular unit, or request it.
Of course, if the programs use a lot of DEC extensions, you might not
find them in modern compilers.
How much code are we talking about?
--
Van Snyder | What fraction of Americans believe
Van.Snyder at jpl.nasa.gov | Wrestling is real and NASA is fake?
Any alleged opinions are my own and have not been approved or
disapproved by JPL, CalTech, NASA, the President, or anybody else.
More information about the inforoots
mailing list