Antonio Carlini wrote:
The critical
reason that everything works seems to be a
rather fortunate use of the mutually exclusive areas by the
RT-11 file structure and the standard ISO file structure.
I'm pretty certain
that at least one VMS engineer participated
in the standards process for ISO9660. I've also heard that, as
a result, this ability to have ISO9660 and A.N.Other file
structure not tread on each other is NOT an accident! Of
course, said engineer was almost certainly thinking of ODS
rather than the RT-11 file structure (does that have a name?).
Jerome Fine replies:
Since RT-11 and ODS might not have had the same requirements,
then I suppose it might still have been "rather fortunate" that RT-11
needs those same 64 blocks.
As for the name of the "RT-11 file structure", I suppose that is what
everyone else calls it as well. The overall details are simple for
RT-11
Partition ZERO:
Block 0 - Secondary boot block (the same as will ALL PDP-11 systems)
Block 1 - Directory information
Block 2,3,4,5 - Tertiary boot blocks
Blocks 6 => 67 - 31 Directory Segments (2 blocks per directory segment)
If you look at
http://support.tditx.com/~odsiso/index.html
you'll find a toolset that allows you to do something
similar with ODS-2 and ISO9660 i.e. have 600MB+ of data
accessible in native for both via an ISO9660 directory
structure and via an ODS-2 structure. It works (IIRC) by
building the ISO9660 image using mkfsiso and then analysing
mkfsiso's log file to find where the files are and creating
the mapping info that ODS-2 needs (or it may be the other
way around - it's been a while since I used it).
Unfortunately, RT-11 devices are a MAXIMUM of 32 MBytes
or 64536 blocks. Thus, the same RT-11 file structure MUST
be repeated every 65536 blocks and requires those 64 (actually
68 blocks, although as few as 8 blocks are sufficient since ONLY
ONE directory segment is mandatory for each RT-11 file structure)
blocks at the start of every RT-11 partition which starts at every
multiple of 65536 blocks. Thus a CD can have about 20 RT-11
partitions - depending on how full the CD is with files.
As I asked, I need to be able to make those 68 blocks available
by some means.
On the other hand, I doubt that it would work very well with a CD
like the RT-11 Freeware CD which has over 21,000 files in over
900 directories. The only really useful situation would be with
a limited number of (for RT-11) large files, probably each being
on average about 500 blocks which is about 120 files per RT-11
file directory. Since all RT-11 binary distributions were about
5000 blocks or larger starting with V4.00 in 1980, a CD with
RT-11 distributions would be ideal if there was more than 300 MBytes
of distributions and the standard ISO9660 file structure was used
along with the RT-11 files structure. In particular, starting with
V5.00
of RT-11 up to V5.07 of RT-11, there were about 17 unique binary
distributions for a total of over 100,000 blocks. That is only about
50 MBytes, but when the layered products are added along with the
source code, I suspect the total would be more than 300 MBytes,
although less than 600 MBytes that ONE CD can manage.
So you *may* be able to automate (or semi-automate)
your
existing process.
What I am looking for is some method of leaving 64 blocks
at the start of every RT-11 partition (every 65536 blocks or
16384 sectors). Note that in most cases, my choice for an
RT-11 distribution would be an RL02 image which can hold
a maximum of 20450 blocks. I would then TRUNCATE the
unused blocks (usually all zeros) at the end and thus save
about 14000 blocks for each binary distribution or DSK file
even though the boot blocks would remain for an RL02 in
blocks 0, 2, 3, 4 and 5 of the RT-11 file directory.
With only a small number of RT-11 DSK distribution files,
it would be relatively easy to set up the RT-11 file directory
for each RT-11 partition for the small number of CDs that
might be produced.
It does look like ODS-2 and RT-11 FS cannot co-exist,
however,
since they both want to use the 64 blocks at the start of
the image, unless it's possible that the unnecessary fields in
each of those two formats can be persuaded to step out
of each others way. Do you have any details about exactly
what RT-11 requires in that area? Maybe a disk that boots
on PDP-11, VAX (VMS), Alpha (VMS) and PC is possible
after all :-)
It seems VERY unlikely. The first 8 blocks of the RT-11
file structure are very specific. On the other hand, if you
don't restrict the operating system that the PC is running,
when I used the CD that was produced, I was able to boot
from the CD using RT-11 running under Ersatz-11 running
under Windows 98 SE. I am also sure that it will be possible
to use the same CD and boot on a real DEC PDP-11.
As I asked before, does anyone know if the source code
for mkisofs.exe could be modified so that when the files
are set up in the standard ISO9660 file structure, the
first 64 blocks at the start of every RT-11 partition (every
65536 blocks) can be left empty? OR, a standalone program
could be written to take a CD image and move the files and
adjust the pointers so that the same result is produced.
Sincerely yours,
Jerome Fine
--
If you attempted to send a reply and the original e-mail
address has been discontinued due a high volume of junk
e-mail, then the semi-permanent e-mail address can be
obtained by replacing the four characters preceding the
'at' with the four digits of the current year.