• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Mount SCSI2SD card in Windows

bigmessowires

Well-known member
Is it possible to mount the SD card from a SCSI2SD in Windows, so I can edit the contents of the disk image and add software downloaded from the web? I saw some references to doing this with Basilisk II's SCSI emulation mode, but when I try to enable SCSI in the Basilisk II GUI it complains about a missing WNASPI32.DLL. So I grabbed the missing DLL from dll-files.com, and now it complains "error in loading ASPI library". What am I missing? I'm running Windows 7 64-bit.

 

bigmessowires

Well-known member
Or is there a way to do this on a Mac with OS X? 

I'm constantly moving files from the internet to my old Macs, as I experiment with classic Mac software. That's pretty much the whole reason for the existence of Floppy Emu, and I'd assumed SCSI2SD did the same thing in SCSI form. But the more I read about it, it appears this just isn't possible with SCSI2SD, unless I'm missing something obvious.

 

joethezombie

Well-known member
If you put it in OS X Leopard or lower, the OS will mount it and you can drag files back and forth.  For anything newer than Leopard, you'll need to use FuseHFS, but I haven't been able to get that to work since Mountain Lion.  Linux with HFS support should work as well.

 
Last edited by a moderator:

bigmessowires

Well-known member
Here's my solution for editing the SCSI2SD disk image from Windows. The same method should also work on a modern Mac with OS X. This assumes you already have a working SD card in your SCSI2SD, and just want to add some more software to it. It won't work for setup of a new/blank SD card, although a similar process could be used to do that.

1. Download dd for Windows from http://www.chrysocome.net/dd

2. Insert the SD card into your Windows PC. It will say the disk is unreadable, and ask if you want to format it. Remember what drive letter the SD card has, then click no/cancel.

3. Open a Windows command shell (click the Start button and type "cmd" in the search box, then press Enter)

4. Type dd --list. You'll see a list of all the physical drives on your PC. Look for the device entry for the drive letter you saw in step 2. Here's mine on drive letter F:

disklist.png

5. Now you will copy the section of the SD card that contains your disk image into a file on your PC. Assuming you've used the default SCSI2SD setup, you will have a 2GB disk image beginning at byte offset 49152 on the SD card. Type  dd bs=16384 skip=3 count=131072 if=\\?\Device\HarddiskVolume8 of=scsi2sd.dsk --progress Substitute the device path you saw in step 4 in place of the one in my example. 

6. After about three minutes, you'll have a file called scsi2sd.dsk. You can use this file in Mini vMac, Basilisk II, Sheepshaver, HFVExplorer, or other emulation tool. Add/edit software to your disk image as desired.

minivmac.png

7. Once you've edited scsi2sd.dsk to your liking, copy it back to the SD card with dd bs=16384 seek=3 count=131072 if=scsi2sd.dsk of=\\?\Device\HarddiskVolume8 --progress Wait another three minutes for the write to complete.

8. Put the SD card back into the SCSI2SD device, and enjoy your updated disk image.

Why this works: the first 96 sectors (49152 bytes) on the SD card contains the partition map and the SCSI driver. These were already written when you first initialized the disk for use with SCSI2SD, and don't need to be modified again. The dd command does a straight copy of the next 2GB from the SD card that follows the partition map and driver. This is a raw HFS disk image, that can be used directly with tools like Floppy Emu, Mini vMac, etc.

 

bigmessowires

Well-known member
To prepare a new, never before used SD card for SCSI2SD, copy this file I've created that contains a basic 2 GB partition map and the generic Apple driver:

dd bs=16384 count=3 if=scsi2sd-partition-map-and-driver.bin of=\\?\Device\HarddiskVolume8 --progress

Then copy any Macintosh disk image that you created with Floppy Emu, Mini vMac, Sheep Shaver, etc. If your disk image is smaller than 2 GB, change the count parameter to the disk size (in bytes) divided by 16384.

dd bs=16384 seek=3 count=131072 if=macintosh-hd.dsk of=\\?\Device\HarddiskVolume8 --progress

Then stick the SD card into your SCSI2SD and boot the Mac. Easy peasy, no second Mac or floppy disk or other bootstrapping tools needed.

scsi2sd-partition-map-and-driver.zip

 

Attachments

  • scsi2sd-partition-map-and-driver.zip
    6.6 KB · Views: 57

wavedealer

Member
To prepare a new, never before used SD card for SCSI2SD, copy this file I've created that contains a basic 2 GB partition map and the generic Apple driver:

dd bs=16384 count=3 if=scsi2sd-partition-map-and-driver.bin of=\\?\Device\HarddiskVolume8 --progress

Then copy any Macintosh disk image that you created with Floppy Emu, Mini vMac, Sheep Shaver, etc. If your disk image is smaller than 2 GB, change the count parameter to the disk size (in bytes) divided by 16384.

dd bs=16384 seek=3 count=131072 if=macintosh-hd.dsk of=\\?\Device\HarddiskVolume8 --progress

Then stick the SD card into your SCSI2SD and boot the Mac. Easy peasy, no second Mac or floppy disk or other bootstrapping tools needed.
The instructions in your first post about copying the image from a pre-existing 68k mac formatted SD card is working perfectly.

I am having trouble with the instructions from the second post about preparing a fresh SD card

.

If I have the SD card mounted on my machine, I get "Error opening native file :0 The operation completed successfully"

If I eject the mounted SD card, it will still show up in the dd --list command but when I run the command to copy the .bin file you prepared, I get

"Error writing file :21 The device is not ready"

I'm not sure what to do to remedy this.

I did successfully adapt the instructions to Mac OSX and I was able to format the fresh card in that OS. I can post instructions for Mac OSX if you guys want

Thanks,

Dave

 

bigmessowires

Well-known member
If I have the SD card mounted on my machine, I get "Error opening native file :0 The operation completed successfully"

If I eject the mounted SD card, it will still show up in the dd --list command but when I run the command to copy the .bin file you prepared, I get

"Error writing file :21 The device is not ready"

I did successfully adapt the instructions to Mac OSX and I was able to format the fresh card in that OS.
I never tried it on OSX. Maybe there's a permission issue?

You probably don't want to format the card in OSX. That will format it as an HFS+ disk or whatever OSX uses these days. You're going to overwrite the FAT with those dd commands anyway.

Your dd command should reference the disk device itself, not any particular volume or partition on that device. 

If you have volumes mounted from the SD card, I would expect you have to unmount them all before you can dd anything to the card.

 

wavedealer

Member
bigmessowires,

I think I was unclear. I first tried on my Win7 machine and was getting the Error Opening Native File. This was with the SD card mounted. They ship with a FAT format so the PC auto mounts them.

I was able to move past the error after using the mountvol [drive letter] \D command. After executing that command (as admin) I was able to write the .bin file you created...but when I looked at the card in the Terminal on my Mac,

it was still the wrong partitioning scheme and format. If I re-initialized the card with the Mac, then I can successfully write the .bin file you created to the card using the dd commands on my PC.

The whole process works fine in the Terminal on OSX tho. The instructions just have to be adapted a little to the command line formats of the UNIX terminal.

For example:

sudo dd if=/Users/youraccount/Desktop/scsi2sd-partition-map-and-driver.bin of=/dev/disk1

where "youraccount" is the user account name on the Mac and "dev/disk1" is the card in the USB adapter. You can get this info by running the command

diskutil list

If it's a fresh card, and it's mounted on the Mac, it has to be unmounted before writing the .bin file

Does any of this make sense?!? Haha!

Anyway, thanks for the .bin file and your instructions! I am able to get a freshly bought card formatted up correctly as well as write images I have created in Basilisk II to the card. Bonus: Once the adapter is installed into my classic Mac, it works perfectly!

 

Compgeke

Well-known member
AdXIa7N.png.a3300b8865ba6285a3800134ca015b0c.png


 

WakelessFoil

Well-known member
DD doesn't work on my computer. It just repeats everything I type. Help!

Update: I got it to work by pasting the file directory of the .exe in cmd. Seems odd but it works.

 
Last edited by a moderator:

WakelessFoil

Well-known member
To prepare a new, never before used SD card for SCSI2SD, copy this file I've created that contains a basic 2 GB partition map and the generic Apple driver:

dd bs=16384 count=3 if=scsi2sd-partition-map-and-driver.bin of=\\?\Device\HarddiskVolume8 --progress

Then copy any Macintosh disk image that you created with Floppy Emu, Mini vMac, Sheep Shaver, etc. If your disk image is smaller than 2 GB, change the count parameter to the disk size (in bytes) divided by 16384.

dd bs=16384 seek=3 count=131072 if=macintosh-hd.dsk of=\\?\Device\HarddiskVolume8 --progress

Then stick the SD card into your SCSI2SD and boot the Mac. Easy peasy, no second Mac or floppy disk or other bootstrapping tools needed.

scsi2sd-partition-map-and-driver.zip
I did this with my mini vmac image of 7.0.1 and it works but when I try to open any alias of a program it asks me to insert "Macintosh HD" which is the disk's name. Is this normal?

 
Top