[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: dsk and do files
>
>There may be a difference between a file archive and a disk image
>archive, but .shk designates BOTH. That's what Andy Nicholas
>intended and that's what Shrinkit does by default. Just because
>someone down the line thought up the .sdk designation and Nathan
>Mates followed suite with a GUPP that changed Shrinkits default
>behavior does not make it correct. The .shk format is an archive
>that may contain either a file or a disk image with a NuFx header
>and most often compressed with LZW or LZW/2.
>
Ok, smartypants....
I can go to my GS right now and rename (or retype) a .system file to be a
system16 file, and wala! it doesn't change what the true underlying data
represents. the ".SHK" extension doesn't mean a damn thing. It is a file
extension. File extensions do not change the data underneath.
>>It is very easy to convert a DISK IMAGE to the 2MG or DSK or PO format. It is
>>incredibly difficult (and stupid) to convert a SHK ***FILE ARCHIVE*** to a
>>readable and usable disk image.
>
>WHY? Sure, a disk image support is needed for initially getting
>ProDOS or GS/OS onto an emulator, but once a hard disk image
>is created it makes PERFECT SENSE to support .shk file format.
>An integrated Shrinkit type program that can take an .shk file
>archive on a Mac or Wintel hard drive and unshrink the files ONTO
>the DISK IMAGE would make emulators MUCH MORE USEFUL.
>You could then run ANY software from legitamate sources like
>the GROUND FTP SERVER or YOUR OWN GS with ease. It
>makes PERFECT SENSE. If GS+ Magazine lasted a few more
>years, there would probably be at least a Mac version of such a
>program. It makes PERFECT SENSE. To argue against it...no
>reason except an irrational preference for .dsk.
Ok, lets look at this from a programmers perspective.
1 - Load the SHK archive.
2 - determine whether or not is a DSK or SHK format.
3 - if DSK, unpack/unarchive the disk image to our own
propriety internal image type.
4 - If SHK, read a list of files and types. Create an
empty "image" in ram, and start placing files
in the proper places. Make sure to follow all the PRODOS
formatting, directory and RWTS specs. Basically,
rewrite the ProDos FS spec for the platform that the emulator
works with.
5 - Ok, now we have a disk image. (and this is ALL before boot-up).
6 - Boot
7 - Ooops, the file archive didn't have the valid prodos system
files. Gee, lets go write some more code to auto insert the
prodos 8 boot files. Oops, this is a GS/OS application. Hmmm.
If we saw a resource fork in the archive, maybe we should create
the GS/OS bootstrap files....
8 - Damn! Now the image size is 1.7MB. It is no longer a simple
3.5" disk image. So much for standards.
9 - Ok, we are booting... phew.
10 - Everything looking good. Running our little app in the original
SHK archive. Trying to save file. SHIT! We can't save. Out of
disk space on the original image. We only resized the image to
1.7MB (which is just big enough to contain the entire GS/OS app
and the associated boot files). Hmmm.. useless app.
11 - This sucks,lets shut down. Ok, let's rearchive all the files
on the disk image. Hmmm.. archive size grew from 1.1 to 1.7MB
just by booting the image. So much for "lean and mean".
12 - Send hate mail to programmer for making it so complicated
to deal with SHK archives. Disk images are much cleaner.
And this only deals with 10% of the contingency issues that I can dream up. I
didn't even get into GS/OS-Prodos8/16 licensing issues, forked file problems,
toolset dependencies etc etc etc.
Now, I can agree with you that if we could deal with SHK archives in a
reasonable manner, it would make sense to support them. But the issues involved
are pretty complex, and emulator code bloat is not the solution.
A simple utility that would extract SHK files to an 800k disk IMAGE would be
better. But having it intergrated into an emulator is stupid. This utility
should simple handle forks and files. No bootstrap support should be provided.
If the disk is non-bootable, it is non-bootable. Simple and stupid. That is the
key.
So, who is willing to create a utility to extract SHK files to a valid disk
image? Or how bout someone send me the libraries for Andy's shrinkit routines,
along with a detailed description of the Prodos8 FS spec.
smentzer@ecom.net
>
>>And supporting the SHK ***FILE ARCHIVE*** format within the XGS core (or any
>>emulator) makes NO sense whatsoever.
>
>WRONG. See above. Besides, why not support .shk images
>instead of the non-standard .dsk images? Why? The answer
>again goes back to Randy Spurlock and his II+ emulator, Apple2em,
>which started the whole emulator craze. He had an old copy
>of Copy II+ on his real Apple II+, so he distributed Apple2em
>with a .dsk image of this. That old version of Copy II+ MADE
>.DSK IMAGES...THAT's why .dsk became the emulator standard.
>It is used because of INERTIA, not because there is anything
>magical or better about it. If Spurlock had known about Shrinkit
>...if he had used an Apple IIe instead of a II+...it is almost certain
>that emulators would use .shk as standard (either only the disk
>image .shk or both disk image and file .shk archives).