[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CDR/Multisession/Juliet
On Fri, 16 Apr 1999, Alex Shnitman wrote:
> It did work for me.. There's even such an option in X-CDRoast. And it
> does work for the Debian CDs. These have both Joliet and RR
> extensions. They are made with mkhybrid which is a variation of
> mkisofs, but for all I could understand the real difference is only in
> the fact that mkhybrid also supports HFS for Mac-compatible CDs.
I don't know mkhybrid. Multi-session works by merging the directory tree
of the last session into the directory tree of the current session. This
way, recursively, session n contains all the information about sessions
1..n-1, and adds to it the unique information from session n. Now, RR are
extensions to the regular ISO9660-type directory structure. Joliet is
something else. Joliet is actually a COPY of the ISO9660 directory, but
all the file names are Unicode-encoded instead of low-ASCII. So when you
have a Joliet disc, you have two directory information structures - one is
ISO9660, and one is Joliet.
Let's assume you have a disc with one session already on it, burnt under
Win95 (and therefore it is Joliet). When you want to add a new session to
it, there is that critical step of merging in the information from the
original session. What mkisofs does (without my patch), is read the
primary volume descriptor structure (the ISO9660 [and optional RR] one).
The information is taken from there. But, since the original session
was Joliet, and didn't have any RR, it so happens that all the Joliet
information (namely long filenames) is simply LOST during the merger.
Sending -R and -J together to mkisofs is a hack around this problem, when
burning under highly-aware software. This effectively saves the long
filename both as RR extentions (because mkisofs CAN read these) and in the
secondary volume descriptor (the Joliet one).
Going back to my original example, it is currently impossible to merge in
a Joliet filesystem with mkisofs without my patch. My patch is a rather
quick hack which reads the secondary volume descriptor (when there is
such), and un-Unicodes it. (hardly so.. but for low-ASCII it works).
> I always wondered why are RR extensions needed for multisession by
> mkisofs? It's clear that multisession doesn't need any RR by itself;
> it woks in Windows without RR. So why does mkisofs need it? And what
> did your patch do exactly -- made mkisofs create multisession CDs with
> Joliet instead of RR? (Can you send it to me, too?)
I hope my explaination answers you about all these. I do not know
what mkhybrid does, so it's possible that mkhybrid can also merge
in Joliet sessions.
About the patch, I'll resend it to Joerg again first,
hopefully he'll clean up the mess and integrate it into
mkisofs correctly.
------------------------------------------------------------------------------
crisk@netvision.net.il HAIFA, ISRAEL
------------------------------------------------------------------------------
The biggest lies:
25. ..then take a left. You can't miss it.