Jump to content

Arduino SCSI device - Work in Progress


Recommended Posts

  • 68kMLA Supporter
20 hours ago, JDW said:

You later mention creating them with "dd" — but that pertains to the creation of only "Drive" images, not "Partition" images

 

This is profoundly and totally untrue.  dd can be used to manipulate and move blocks of data from any block device to any kind of file.  Read the man page.

Link to post
Share on other sites
  • Replies 268
  • Created
  • Last Reply

Top Posters In This Topic

21 hours ago, cheesestraws said:

This is profoundly and totally untrue.  dd can be used to manipulate and move blocks of data from any block device to any kind of file.  Read the man page.

 

Interesting.  Thank you for the clarification.  You are clearly more informed on that than I am.  You also appear unwilling to expound on it in detail (i.e., how the "dd" command is precisely used to create Partition images as opposed to Drive images in the OS X Terminal, not Linux; and note that I spoke of people who are not Terminal savvy in my earlier post too), so I had a glance at the "dd" man page just now.  But I must admit that it doesn't make the exact process clear in my mind as that manual doesn't differentiate between Drive & Partition images (terms used at SavageTaylor, which I now use to keep the two differentiated in my brain.)  Since you will not expound on that, perhaps you would be so kind as to please answer the other 2 questions presented in my earlier post?

 

Specifically, I would appreciate knowing how BlueSCSI handles Drive images versus Partition images.  I know how MacSD handles them.  I do not have a BlueSCSI and wish to know how it handles them.  I think it is a legitimate question.  Again, Mini vMac handles Partition images fine, but it doesn't handle Drive images.  The FloppyEMU is the same.  That is mentioned in detail on SavageTaylor.

 

Until now, my means of creating Partition images for use with my FloppyEMU has been done in Mini vMac.  I've avoided the Terminal because my brain prefers a more graphical approach.  I never deal with Linux and I am not really well-versed in the Terminal either, although I have used a splattering of various commands through the years, with a lot of hand-holding (mostly copy and paste).  I actually learned about the very existence of "dd" in my recent conversations with the developer of MacSD, and I sincerely appreciate his kindness in stepping me through what I consider to be some rather complex matters.  But that doesn't mean I am an expert on "dd", nor does the manual really clear things up in my mind.

 

If I need a blank Partition image, I just grab a ready-made one here.  I can then mount it quickly and with ease within Mini vMac, without needing to know how to use "dd" at all.  To me, Mini vMac is faster and easier to use than Basilisk II.  I then move whatever files I want onto the blank from off another DSK image in Mini vMac, quit, move the DSK to my FloppyEMU's SD card or move it to the SD card of the MacSD (with the Composite setup appropriately in the INI file), and off I go (except for booting the DSK from MacSD).  This approach is very intuitive for most people to comprehend -- certainly much more than moving around "blocks of data" with a Terminal command.

 

And so, I would greatly appreciate knowing how BlueSCSI handles Partition images.  Can you boot from them?  Can you mount them? That sort of thing.

 

Then of course, my other question was about US pricing of the BlueSCSI, because for some reason that is not mentioned on the site selling the product.  Instead, it simply says "Out of Stock."

 

Thank you for your kind help and support.

 

 

Edited by JDW
Link to post
Share on other sites
19 hours ago, anthon said:

The dd command does not do anything with "drive" images or "partition" images. It just moves bytes around. Which bytes, and what you use them for, is entirely up to you.

 

Thank you for the added clarification, but I see we need get off the topic of "dd" entirely so that the questions I have repeated twice thus far can at last be answered.  Would you know the answers to my questions? 

Edited by JDW
Link to post
Share on other sites
  • 68kMLA Supporter

@JDW "Drive" images (partition map, driver, partition) - I include premade ones made with this script so no one has to deal with dd. This is due to just reading the raw contents of the file as the drive image, so if it's on a real HDD it needs to be on an image. Note RaSCSI also uses this format. I removed the gryphel link to avoid confusion.

 

I agree vMac is nice, but you'll need to use BII to work with these images. There is a pre-made macintosh.js if you want a zero config B-II setup.

 

A procedure with dd is still listed if someone wants to build a image from scratch themselves. You could honestly use anything that made a file in a multiple of 512 bytes

 

I see gumroad doesn't display price of out of stock. $25 kit, $50 assembled & tested. Waiting on a few bluepills which should be here in a day or two.

 

That was a lot of text to parse, but I think I answered the main points of your questions.

Link to post
Share on other sites

@erichelgeson

Thank you for confirming that BlueSCSI does not work with Partition (e.g., *.dsk) images used by Mini vMac and FloppyEMU but instead requires Drive (e.g., "*.hda") images exclusively.  Thank you also for confirming the US prices are $25 & $50, excluding shipping fees.

 

Non-programmers and folks who lack experience with the MacOS Terminal or Linux will of course not know how to even run a shell script.  I myself Googled it just now to see that one needs to perform the following steps in the Terminal:

 

1. Open your script page here.

2. Click the "Download ZIP" button and then unzip it to reveal "make-hfs-drive.sh"

2. Launch the MacOS Terminal.

3. Type "sh " (with the space).

4. Drag "make-hfs-drive.sh" into the Terminal (easier than typing the path).

5. Press Return, which will then show something like this:

MBP:~ james$ sh /Users/jdw\ 1/Desktop/make-hfs-drive.sh
usage: dirname path
Create BlueSCSI or RaSCSI images...
-n Enter drive size in MB:

6. Then type in the preferred size (number only) and press Return.  (I typed "20".)  Which then shows this:

-n Enter drive name:

7. I then typed "BlueSCSI_HDD" and pressed Return, which then displayed a lot of text beginning with:

Creating a 20MB Drive
Formatting drive with HFS
Error: The following directories are not writable by your user...

8. I then searched my computer and found "BlueSCSI_HDD-20MB.hda" was stored in my Home directory.

 

I don't have Basilisk II setup on this particular MBP, so I thought I'd test your recommendation of Macintosh.js instead. I downloaded the Intel version here. Loading it and subsequently clicking "Help" at the bottom says to put all files like the .hda into Home/macintosh.js, so I moved "BlueSCSI_HDD-20MB.hda" there and restarted Macintosh.js.  It did not mount, despite the help files suggesting it should.  I do see it inside Unix/macintosh.js though.

 

MacintoshJS.png.8ac332306900c42fe7daf90b63ee5f50.png

 

But I guess there is just more reading I need to do, since it's the first time I've used Macintosh.js.  

 

Thank you for the answering my questions and for the helpful information!

MacintoshJS.png

Link to post
Share on other sites
  • 68kMLA Supporter
20 hours ago, JDW said:

I provided script is just shown for people who are curious how I built the blanks - as this is a more technical discussion form.

 

I would not expect end users to do what you just did. I'd expect them to just grab a savagetaylor or rascsi (which I built) image and be good to go. Or if they are adventitious grab a premade "Drive" blank and install themselves.

 

If you'd like macintosh.js to mount the drive, rename it to .img - if only everyone could agree on file name extensions :)

Link to post
Share on other sites
  • 68kMLA Supporter
20 hours ago, JDW said:

Thank you for confirming that BlueSCSI does not work with Partition (e.g., *.dsk) images used by Mini vMac and FloppyEMU but instead requires Drive (e.g., "*.hda") images exclusively.

 

This discussion has got so confused that it's nearly meaningless.  Let's have a go at clarity.

 

There is no such thing as "partition" vs. "disk" images.  You are talking about them as if they are two different file formats, and this is totally untrue.  What is actually going on here is both simpler and more complicated, at the same time.

 

All raw images (the kind you are talking about) are byte-for-byte copies of some block storage device.  The apparent difference here springs from two different ways that the Mac can deal with block storage: as a naked filesystem, or as a partitioned disc (likely with a driver partition).  Both of these are valid things to have on a whole disk.

 

A filesystem on a piece of block storage is mountable and usable if, and only if, there is a driver which tells the OS where it is and how to read and write to its underlying block storage.  There are really two different ways the OS can find this driver:

  • It can already be available to the OS in either ROM (like the Sony floppy driver) or as a part of or extension to the currently loaded OS (like the Iomega Zip/Jaz drivers).  We'll call these "floppy-like".
  • It can be loaded from a driver partition on the disk itself (like most hard discs).  We'll call these "HD-like".

Note, though, that this is a property of the individual disc, not the kind of disc.  A really good example of this is Zip discs.  Zip discs formatted with either a generic SCSI formatter or older versions of the Zip tools are HD-like; they have a partition table and a driver.  Zip discs formatted with later versions of the Zip tools are floppy-like; they rely on the driver in the extension.  This has led to a certain amount of confusion on these forums as to whether you can use a Zip disc as your system disc or not (the answer is 'yes, so long as you format it right').  Most CDs (and all hybrid CDs, if I remember correctly) are HD-like, but you can have floppy-like ones as well.

 

So, whether a raw image contains a naked filesystem or a filesystem with a partition table and driver is a property of the disc or medium that was originally imaged, not anything really to do with the image itself or the imaging process.  (There is a special case of this where you can extract a partition from, or insert a naked filesystem into, a partitioned disc, but this is nothing special to images; you could do exactly the same on physical media.)

 

So, booting, how does that work?  The same rules apply.  If, at boot time, the boot code has access to a driver, the medium will be bootable.  If it does not, it is not.  Floppies are bootable because the floppy driver is in ROM.  The HD20 is bootable on 512ke, Plus and SE machines because the HD20 driver is in ROM.  Mini vMac's floppy-like images are bootable because mini vMac provides a driver for them "in" the simulated ROM.  SCSI hard discs are bootable because, at boot time, the OS knows how to load the driver from the disc itself.  On later or earlier machines, the HD20 stops being bootable, because there's no driver available at boot-time.  So it goes.

 

Naked filesystems on SCSI are not bootable, then, not because there is anything "second-class" about naked filesystems, but because there's no driver available for them at boot-time.

 

I hope this clears up some of your confusion.

 

Link to post
Share on other sites
  • 68kMLA Supporter
Posted (edited)

Quick update on Mac Plus - @RetroTheryboy and I have been going back and forth on trying a few things out this weekend. Luckily he was able to narrow down what was going on. Here's what we've found out so far:

 

* System 7.0.1 works fine

* Works on v1/v2/v3 Plus ROM

* System 6.0.8 causes a boot loop and odd vertical bars:

MadPlus.thumb.jpg.803f06fdc2a8f30413f950adb3f39427.jpg

* System 6.0.5 causes "normal" boot loops

* Even just having a System 6 folder on the drive causes these behaviors

* Can boot from a System 6.0.5 floppy and see the 7.0.1 (or blank) drives fine

 

Hopefully someone know some random trivia about the Plus, System 6, and SCSI that may cause this behavior. While getting System 7 to work is great, 6 is where it's at for the Plus.

 

This bodge was actually my original design but removed it as I thought it was the _cause_ of these issues so reverted it (the actual cause seemingly is in System software somewhere)

 

If you have a 1.0-b and are comfortable making a small bodge you can do the following:

 

First: Cut the connection between TERMPOWER and the 220's - a firm press between the drill hole and the term power line is enough. Please check continuity still goes to the bluepill from TERMPOWER and you did not break the line (or you'll be adding another bodge!) and the hole is disconnected.

Bodge1.thumb.jpg.41678695da20c0985455799bbac68225.jpg

Second: Connect 5v from the bluepill to the 220's (the one you just isolated)

Bodge2.png.c1324cb2b1d6709f57bd22932c221773.png

 

Please only do this if 1) you're comfortable doing these changes and 2) you want to test. @RetroTheryboy and I have been testing but it is not been extensive yet. 3) I am not responsible if your Plus explodes.

 

Last - if you are on a Plus you can use SCSI Accelerator extension to get a bit more speed out of the Plus:

 

Again huge shot out to Retro Theory for the assist - opensource hardware ftw!

Edited by erichelgeson
Link to post
Share on other sites
On 3/28/2021 at 11:15 AM, erichelgeson said:

If you'd like macintosh.js to mount the drive, rename it to .img

 

Thanks for the tip, Eric!  That filename change gets the image to mount in Macintosh.js, but each time I reboot I get the same "Disk is unreadable, initialize?" dialog.  No need for you to take time to address this.  I know you're busy, and I don't even own a BlueSCSI.  I just mention it FYI.

 

23 hours ago, cheesestraws said:

 

This discussion has got so confused that it's nearly meaningless.  Let's have a go at clarity.

There is no such thing as "partition" vs. "disk" images.  You are talking about them as if they are two different file formats...

 

First, I appreciate the time you made to explain all that.  It makes it a tad clearer in my mind — not crystal, but clearer.  But since you emphasized the word "You" in your post (referring exclusively to me, JDW), it is important I should repeat and emphasize what I said in my previous posts:  I, JDW, did NOT coin "Drive image" & "Partition image" but instead pulled the terminology off this SavageTaylor web page -- a website everyone seems to point to in order to grab ready-made images for SCSI to SD products.  No doubt others will therefore memorize that terminology too.

 

SavageTaylor also labels "Partition images" as "Volume images" which is a tad confusing, but I can deal with it.  Again, I didn't coin those terms.  I just learned them from reading through that SavageTaylor site repeatedly.  From an end user's standpoint who won't comprehend all the technical details of images, they will merely view the situation as being "some images will work on SCSI to SD products while others won't."

 

Why did I even bring this topic up?  Well, because at the time of my first post in this thread, the "README.adoc" on the BlueSCSI Github page made reference to this as being usable with BlueSCSI:

 

Blanks of various sizes from gryphel.com - https://www.gryphel.com/c/minivmac/extras/blanks/

 

Those are blanks for Mini vMac.  I then sought to confirm if images that work with Mini vMac will indeed work with BlueSCSI, and Eric confirmed in this thread that they would not.  Eric subsequently deleted that section from the README on the Github page for clarity.

 

I hope this makes clear my aim and intentions in this thread.

 

Thanks for all the clarifications!

 

Link to post
Share on other sites

For me, those are by far the easiest ones to handle:

 

https://github.com/erichelgeson/BlueSCSI/blob/main/docs/MacHD.zip

 

You will get a whole selection of images, of all sizes in one Zip file. once downloaded, the only step to be done is to rename the images to suit your SD card.

 

For my 2 Gb card, i selected one image of 1 Gb, one of 500 Mb and the last one of 250 Mb, named respectively HD10_512.hda / HD20... / HD30... 

 

Properly detected and mounted as SCSI Id 1/2/3...

Link to post
Share on other sites

I put the kit together this weekend and am very happy with it, a great tool! :)

 

However, I have some problems when trying to use multiple images (ID 1 to 6). When using the pre-made images (https://github.com/erichelgeson/BlueSCSI/blob/main/docs/MacHD.zip), my Classic and SE mount only the image with the highest ID (ID 6). I can mount the rest of the drives with Lido, but they are not available at startup. On my two SE/30 machines, all images are mounted at startup.

 

I've also tried to create new images with dd and format them with Lido 7. Then the Classic and SE mount the three images with highest ID (ID 4-6). Again, the SE/30's mount all images.

 

Anyone else had similar problems? I should add that I connect the BlueSCSI externally with the internal drives still in place.

Edited by blindowl
Link to post
Share on other sites

What names have you used for images ?

 

I also connected the BlueSCSI externally with the internal one in place and had no issue with my CC (not tested with another model so far) 

 

Strange about only Lido being able to mount drives afterwards.

 

You can have a look at the Text log at the root of the SD card for information.

Link to post
Share on other sites
  • 68kMLA Supporter
On 3/28/2021 at 8:13 AM, JDW said:

it is important I should repeat and emphasize what I said in my previous posts:  I, JDW, did NOT coin "Drive image" & "Partition image" but instead pulled the terminology off this SavageTaylor web page -- a website everyone seems to point to in order to grab ready-made images for SCSI to SD products.  No doubt others will therefore memorize that terminology too.

 

I know you didn't coin the terminology.  My point was about the terminology, not you.

 

On 3/28/2021 at 8:13 AM, JDW said:

But since you emphasized the word "You" in your post (referring exclusively to me, JDW)

 

An odd assumption.  The dialect of English I speak does not have a plural 'you' as distinct from a singular 'you'.  The confusion is not limited to you, or I probably wouldn't have posted.

Link to post
Share on other sites
20 hours ago, bibilit said:

What names have you used for images ?

 

I also connected the BlueSCSI externally with the internal one in place and had no issue with my CC (not tested with another model so far) 

 

Strange about only Lido being able to mount drives afterwards.

 

You can have a look at the Text log at the root of the SD card for information.

 

I've named them HD10_512.hda, HD20_512.hda and so on. Nothing in the log file hints of any error.

 

I just connected the BlueSCSI to my Performa 460 and it won't boot at all when the device is connected. Sad Mac and 0000000F 00000001 error. Actually I got the exact same error yesterday on one of my SE/30 machines. Solution is to disconnect the internal drive and use only the BlueSCSI. It worked fine on the other SE/30 though.

 

These are my results:

 

6 x Lido formatted, dd created images:

Classic - only last three images mounted at startup

SE - only last three images mounted at startup

SE/30 #1 - all images mounted at startup

SE/30 #2 - all images mounted at startup but internal drive has to be disconnected (0000000F 00000001 error)

Performa 460 - all images mounted at startup but internal drive has to be disconnected (0000000F 00000001 error)

 

6 x pre-made images (https://github.com/erichelgeson/BlueSCSI/blob/main/docs/MacHD.zip):

Classic - only last image mounted at startup

SE - only last image mounted at startup

SE/30 #1 - all images mounted at startup

SE/30 #2 - all images mounted at startup but internal drive has to be disconnected (0000000F 00000001 error)

Performa 460 - all images mounted at startup but internal drive has to be disconnected (0000000F 00000001 error)

 

Edited by blindowl
Link to post
Share on other sites

I'm no expert here...but I have over the years seen all manner of issues with SCSI chains, Apple & 3rd party driver interaction, etc...  :-/

 

As a process of elimination test, @blindowl can you move the HDDs between your two SE/30s and see if the "issue" also moves...?

 

What I'm wondering is whether one of those HDDs has an Apple (or 3rd party) HDD driver that doesn't "like" the BlueSCSI...  I'm also pretty sure that once a Mac loads a driver for a given block device, it defaults to that - even if there is a "newer" (compatible) one the other devices in the chain...

Edited by mg.man
obviously need to learn to spell - or to not post from my 'phone...
Link to post
Share on other sites

Strange, maybe you have got an issue with your SD card as i did ?

 

Did you tried another set of SD cards ?

 

As said before, out of 5 MicroSD cards, two didn't worked at all, while being able to format properly the cards and create or copy and paste images to those.

 

I can have a try in a Classic or SE-SE/30 myself though.

Link to post
Share on other sites
  • 68kMLA Supporter
21 hours ago, mg.man said:

What I'm wondering is whether one of those HDDs has an Apple (or 3rd party) HDD driver that doesn't "like" the BlueSCSI...  I'm also pretty sure that once a Mac loads a driver for a given block device, it defaults to that - even if there is a "newer" (compatible) one the other devices in the chain...

 

Interesting - the MacHD.zip images are created with the lido driver - though I've had no issues as all of my drives are formated with lido maybe there could be if it works the way you describe. Maybe try formatting the image with apples util and see if the issue persists. BlueSCSI doesn't have any logic (or even know) about when/how to mount, thats the OS.

Link to post
Share on other sites
20 hours ago, bibilit said:

Strange, maybe you have got an issue with your SD card as i did ?

 

Did you tried another set of SD cards ?

 

Yeah, I noticed your previous issues so I tried with two different cards, but the behaviour was exactly the same with both cards.

 

20 hours ago, mg.man said:

I'm no expert here...but I have over the years seen all manner of issues with SCSI chains, Apple & 3rd party driver interaction, etc...  :-/

 

As a process of elimination test, @blindowl can you move the HDDs between your two SE/30s and see if the "issue" also moves...?

 

What I'm wondering is whether one of those HDDs has an Apple (or 3rd party) HDD driver that doesn't "like" the BlueSCSI...  I'm also pretty sure that once a Mac loads a driver for a given block device, it defaults to that - even if there is a "newer" (compatible) one the other devices in the chain...

 

I think you're on the track here. I just reformatted the internal disk in the Classic and updated its driver with Lido to see if matching drivers would solve the problem. But it just ended with the internal disk now also invisible after reboot...

 

Instead I tried formatting the internal disk with Hard Disk Toolkit and then restarting. Now the disk appeared again. I then did the same with the missing BlueSCSI disks and after rebooting all disks were available!

 

I also tried HDT yesterday but it only resulted in a Happy Mac boot loop. The difference today is that now Disk 0 also uses a driver from HDT. 

 

So it seems that the driver on the first drive affects the behavior of the other drives.

Link to post
Share on other sites
20 hours ago, blindowl said:

So it seems that the driver on the first drive affects the behavior of the other drives.

 

Could also be the drive with the 'lowest' ID...  I wonder what would happen if you set the ID on the BlueSCSI to '0' - or set the Internal Drive to a greater number than the first BlueSCSI one...  


Something else you could try is booting from a floppy and setting the startup drive to the one of the BlueSCSI 'partitions'...  I'm wondering if it is the first drive 'polled' or the 'lowest' ID...   :-/

 

Sounds like you're making progress!!  :-D

Link to post
Share on other sites
20 hours ago, blindowl said:

updated its driver with Lido to see if matching drivers would solve the problem. But it just ended with the internal disk now also invisible after reboot...

 

If you only used Lido to 'update' the driver, and didn't go through the whole "Setup" - format / partition / etc...  I wonder if the driver Lido used might not be compatible with whatever partitioning was there before.  I *have* also seen cases where multiple drivers appear on the same physical disk...  So it might be an idea to have Lido do a full "Setup" on the Internal drive and see what happens...   

Link to post
Share on other sites
  • 68kMLA Supporter
On 3/28/2021 at 2:13 AM, JDW said:

Eric subsequently deleted that section from the README on the Github page for clarity.

Documentation in any project is always evolving and a moving target - so thanks. If you see anything else that could be improved or clarified ask or even feel free to propose a change on github.

Link to post
Share on other sites
On 3/28/2021 at 5:26 AM, erichelgeson said:

Quick update on Mac Plus - @RetroTheryboy and I have been going back and forth on trying a few things out this weekend. Luckily he was able to narrow down what was going on. Here's what we've found out so far:

 

* System 7.0.1 works fine

* Works on v1/v2/v3 Plus ROM

* System 6.0.8 causes a boot loop and odd vertical bars:

 

 

Again huge shot out to Retro Theory for the assist - opensource hardware ftw!

 Thanks for the shoutout.. have not had this much fun on old macs in a long time.  Thank you for this project.

 

 

 

sorry this is my first post on this account,  I lost access to my very old  TheoryBoy account , dont seem to be able to get it back. 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...