How to handle old ".rsrc" files

Anything about Mac emulation that does not belong in the above categories.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
User avatar
captainskyhawk
Space Cadet
Posts: 2
Joined: Sun Oct 03, 2021 9:13 pm

How to handle old ".rsrc" files

Post by captainskyhawk »

First of all -- I'd like to thank everyone who worked on the various tutorials on emaculation.com -- very good stuff. In just a morning, I had a running System 7.5 emulator going -- amazing! :smile:

Second -- I've got some old files I created on a Mac from a very long time ago, that I'm unable to load. They've gone through many different systems all throughout the years. I'm trying to open them in my System 7.5 emulator, but experiencing some problems.

I've tried searching the forum, and while I've found others who had problems with resource forks, none seem to be exactly like my problem.

The problem:

It looks like a lot of the files are "split up" -- I've been reading about how copying onto/off non-Macosx systems over the years can "split" the resource forks from the files, as they were created back in the System 7 days, but I haven't seen much about how to repair this.

I believe I still have the resource forks -- a lot of my data seems to have the interesting folder organization, like the following example. Any idea about how to "combine" all of this into one file, launchable in System 7? Thanks for any help!

Code: Select all

captain@Mac3 mac_classic_shared % lh SaintEdit\ 1.1\ Folder 
total 520
-rwxrwxrwx  1 captain  staff   237K Oct 12  1993 SaintEdit 1.1.rsrc
-rwxrwxrwx  1 captain  staff   8.9K Oct 12  1993 SaintEdit 1.1  Notes
-rwxrwxrwx  1 captain  staff   5.8K Oct 12  1993 Brief Documentation
captain@Mac3 mac_classic_shared % 
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: How to handle old ".rsrc" files

Post by adespoton »

That's called "Apple Double" format, and is used, among other places, by SheepShaver and Basilisk II on Windows in the shared folders. Stick that in a shared folder, launch SS or BII, and from within the emulator copy the files back to an internal image and they'll get merged back into single files again.

Or, if you run macOS, you can do it yourself from the command line via cat "file.rsrc" > "file/..namedfork/rsrc"
Jorpho
Master Emulator
Posts: 380
Joined: Fri Sep 17, 2004 4:22 am

Re: How to handle old ".rsrc" files

Post by Jorpho »

adespoton wrote: Mon Oct 04, 2021 3:44 pmThat's called "Apple Double" format, and is used, among other places, by SheepShaver and Basilisk II on Windows in the shared folders.
Don't Sheepshaver and Basilisk use folders named ".finf" and ".rsrc" for storing resource fork data? I've never been entirely clear on whether the data stored therein is necessarily AppleDouble or something custom.

I think individual .rsrc files are created by PC Exchange, but it's been a while.

Unfortunately that doesn't really help to get to the bottom of just what to do here.
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: How to handle old ".rsrc" files

Post by adespoton »

Hmm... you might be right. Those are definitely Apple Double files though. macOS (and OS X) can merge them like I said... I think HFVExplorer can merge them as well on Windows.
Jorpho
Master Emulator
Posts: 380
Joined: Fri Sep 17, 2004 4:22 am

Re: How to handle old ".rsrc" files

Post by Jorpho »

Well, if they're AppleDouble, then if I'm not mistaken, HFVExplorer would require "SaintEdit 1.1.rsrc" to be renamed to "%SaintEdit 1.1", and would also expect a second zero-byte file named "SaintEdit 1.1" to represent the data fork. (A zero-byte file can easily be created from the Windows Explorer right-click menu via New->Text Document.)
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: How to handle old ".rsrc" files

Post by adespoton »

Jorpho wrote: Tue Oct 05, 2021 9:15 pm Well, if they're AppleDouble, then if I'm not mistaken, HFVExplorer would require "SaintEdit 1.1.rsrc" to be renamed to "%SaintEdit 1.1", and would also expect a second zero-byte file named "SaintEdit 1.1" to represent the data fork. (A zero-byte file can easily be created from the Windows Explorer right-click menu via New->Text Document.)
Sounds right to me.
User avatar
captainskyhawk
Space Cadet
Posts: 2
Joined: Sun Oct 03, 2021 9:13 pm

Re: How to handle old ".rsrc" files

Post by captainskyhawk »

adespoton wrote: Mon Oct 04, 2021 3:44 pm That's called "Apple Double" format, and is used, among other places, by SheepShaver and Basilisk II on Windows in the shared folders. Stick that in a shared folder, launch SS or BII, and from within the emulator copy the files back to an internal image and they'll get merged back into single files again.

Or, if you run macOS, you can do it yourself from the command line via cat "file.rsrc" > "file/..namedfork/rsrc"
Very interesting! Unfortunately:

1) when launching Basilisk II, and copying the ".rsrc" file from shared to the internal image, nothing happens. The file is copied over as a ".rsrc" file, and is unable to be opened.

2) I am using MacOSX, and when I tried to perform the "cat" command like you mentioned, the following happened:

Code: Select all

captain@Mac3 SaintEdit 1.1 Folder % cat "SaintEdit 1.1.rsrc" > "SaintEdit 1.1/..namedfork/rsrc"
zsh: no such file or directory: SaintEdit 1.1/..namedfork/rsrc
captain@Mac3 SaintEdit 1.1 Folder %
3) Just to be thorough, I also created a zero byte file just called "SaintEdit 1.1" in the same folder, and then ran the command again:

Code: Select all

captain@Mac3 SaintEdit 1.1 Folder % cat "SaintEdit 1.1.rsrc" > "SaintEdit 1.1/..namedfork/rsrc"
captain@Mac3 SaintEdit 1.1 Folder % ls -ltra "SaintEdit 1.1/..namedfork/rsrc"
-rw-r--r--  1 captain  staff  242193 Oct  6 19:21 SaintEdit 1.1/..namedfork/rsrc
captain@Mac3 SaintEdit 1.1 Folder % 
After doing that, there does seem to be _something_ at the location "SaintEdit 1.1/..namedfork/rsrc", but still this file won't launch inside Basilisk II.

I feel like I'm really close here -- what am I missing?
User avatar
adespoton
Forum All-Star
Posts: 4226
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: How to handle old ".rsrc" files

Post by adespoton »

Hmm... as discussed further down the thread, Basilisk II in Windows uses a slightly different convention for its apple double files. The merged one you created is almost there, but I realized you're still missing the metadata -- you'll need a tool like FileBuddy or Greg's Browser or ResEdit to set the file type and creator. If it's an application, setting the file type to APPL should be enough to get it running. Opening the file in ResEdit might give you clues as to what the creator ID is supposed to be.
Jorpho
Master Emulator
Posts: 380
Joined: Fri Sep 17, 2004 4:22 am

Re: How to handle old ".rsrc" files

Post by Jorpho »

If Executor and HFV Explorer aren't options, then there is a utility included with netatalk that can be used to convert AppleDouble back to MacBinary, previously discussed in https://emaculation.com/forum/viewtopic.php?p=53615 . MacBinary files can then be safely decoded in System 7.5 with Stuffit Expander (or various other utilities).

Otherwise, an increasingly roundabout way is to put the files together in a zip file and then use Miniunzp:
-Create a folder named __MACOSX (starting with two underscores).
-Copy SaintEdit 1.1.rsrc into the folder and rename it to "._SaintEdit 1.1"
-Create a Zip file containing the __MACOSX folder within the zip along with a zero-byte file named "SaintEdit 1.1".
-Decompress the Zip file in System 7.5 with Miniunzp, as in viewtopic.php?f=1&t=8322 .

I don't doubt there's an easier way of doing this, but I don't know exactly what that would be offhand.
Post Reply