Jump to content
K55

RaSCSI Development Thread

Recommended Posts

Hi, I have a Macintosh SE whos hard drive failed and so i designed my own raSCSI board. However, after looking on the raSCSI documentation, it says it needs a hda file to work, but i cannot seem to find these anywhere. the only kind of file i've found are IMG dumps of hard drives. Could anyone point me in the right direction/provide me with a guide to getting a hda file to use with rascsi or maybe upload one for me to use. also, is the pin-outs the same for the Macintosh as it is on gimons site for the 'fullspec' board?

 

(I replaced the 74LS641 transcivers with 74HCT245D, in my design, as they are much cheaper and seem to be compatible according to datasheets)

Share this post


Link to post
Share on other sites
13 hours ago, landoGriffin said:

Unfortunately, I think the previous discussion about the 74LS641 transceiver is going to push the price up at least $10 each. I think its still a pretty affordable solution though!

 

I put in an order for 100 of them yesterday, so we can at least get some higher volume pricing. (On a side note, my hubby was super thrilled that I spent that much money on what he calls "computer garbage") ;-) 

No problem - it's still a great deal.  And I'm glad you asked your hubby for forgiveness instead of permission! :lol:

Share this post


Link to post
Share on other sites
12 hours ago, uzairpatel45 said:

Hi, I have a Macintosh SE whos hard drive failed and so i designed my own raSCSI board. However, after looking on the raSCSI documentation, it says it needs a hda file to work, but i cannot seem to find these anywhere. the only kind of file i've found are IMG dumps of hard drives. Could anyone point me in the right direction/provide me with a guide to getting a hda file to use with rascsi or maybe upload one for me to use. also, is the pin-outs the same for the Macintosh as it is on gimons site for the 'fullspec' board?

 

(I replaced the 74LS641 transcivers with 74HCT245D, in my design, as they are much cheaper and seem to be compatible according to datasheets)

To start with, your "HDA" file can just be a file full of zeros. You can create it using the Linux dd command on your Pi

pi@rascsi:~ $ dd if=/dev/zero of=/home/pi/new_drive.hda bs=4M count=100
100+0 records in
100+0 records out
419430400 bytes (419 MB, 400 MiB) copied, 22.4022 s, 18.7 MB/s
pi@rascsi:~ $ 

BS is the block size and count is the number of blocks. So, the above command will make a 400MB drive. Block size doesn't really matter, but if you don't specify it, dd will default to 512 bytes, which will may take a lot longer to create the file.

 

Once you have the drive created, you need to command rascsi to include it. Pick an ID that isn't currently used in your system. In my case, I don't have an ID 0. 

pi@rascsi:~ $ rasctl -l

+----+----+------+-------------------------------------
| ID | UN | TYPE | DEVICE STATUS
+----+----+------+-------------------------------------
|  1 |  0 | SCHD | /home/pi/harddisk.hda
|  6 |  0 | SCCD | /home/pi/marathon.iso(WRITEPROTECT)
+----+----+------+-------------------------------------
pi@rascsi:~ $ rasctl -i 0 -c attach -t hd -f /home/pi/new_drive.hda
pi@rascsi:~ $ rasctl -l

+----+----+------+-------------------------------------
| ID | UN | TYPE | DEVICE STATUS
+----+----+------+-------------------------------------
|  0 |  0 | SCHD | /home/pi/new_drive.hda
|  1 |  0 | SCHD | /home/pi/harddisk.hda
|  6 |  0 | SCCD | /home/pi/marathon.iso(WRITEPROTECT)
+----+----+------+-------------------------------------
pi@rascsi:~ $

Boot up your Mac that is attached to the RaSCSI. Open up Drive Setup and it should show your new drive in the list as <not initialized>. Be careful not to initialize the wrong drive!!

pic3.png.67cd8cba37801f84827a09c68470f70c.png

 

In the warning dialog box, click "Initialize".

pic2.png.a09dc63beae840751cf8487f70d883d3.png

After it completes, you should have a drive called "Untitled" with approximately the same amount of space as the .HDA you created.

pic1.png.25bf16e62fdcabe53e1ea07ed2eaa051.png

 

 If you have issues, I'd recommend trying Lido or SCSI Probe. They can be more forgiving than Apple's Drive Setup.

 

 

Edited by landoGriffin

Share this post


Link to post
Share on other sites

Assuming it’s just raw HFS disk images you need, here are some premade ones along the lines of Gryphel’s blanks. Blank images compress down really well, so whenever you need one, you just decompress a new disk. The Gryphel blanks are generally small (400K floppies up to a couple hundred megs) but I’ve included images up to 2GB.

blanks.tar.xz

Share this post


Link to post
Share on other sites

Having thought about it more, you probably want Apple Partition Map files, not just HFS images, so the process outlined above is a better bet. Sorry!

Share this post


Link to post
Share on other sites

Happy Friday everyone! A couple updates....

 

I think the web interface is ready for folks to start trying out! I've been testing it out today and it seems to work. I'd love for someone to try it out and give me some feedback. (I realize that there aren't many people who have working RaSCSI devices.... yet ;-)) Setup instructions are available here:

https://github.com/akuker/RASCSI/wiki/Web-Interface

 

image.thumb.png.b64c80a478a9d82704d031cc49f6e578.png

 

I've got 10 RaSCSI boards that should be delivered in the next few days, along with a ton of 74LS641s. If I didn't dork anything up with the design, I hopefully will have some to send out to folks in a week or so.

 

Share this post


Link to post
Share on other sites
8 hours ago, PotatoFi said:

The amount of progress that you've made on this is shocking! When boards and parts are available, I'd love to buy one!

I completely agree! This looks like it could have a lot more Mac-specific potential than SCSI2SD in the future. The Raspberry Pi opens up so many possibilities for fun things to do with the computers!

 

I can't wait until the mythical Pi-PDS accelerator/network bridge & server/ethernet & WiFi/video out & grayscale cards become a thing though. :lol: This project is certainly a great step in that direction!

Share this post


Link to post
Share on other sites

I'd be interested in building a few but do you have a parts list and programming instructions or sd image? I saw the gerbers but maybe I missed the other stuff.

Share this post


Link to post
Share on other sites
10 hours ago, 360alaska said:

I'd be interested in building a few but do you have a parts list and programming instructions or sd image? I saw the gerbers but maybe I missed the other stuff.

Draft software setup instructions are on the wiki:

https://github.com/akuker/RASCSI/wiki/Setup-Instructions

 

Its on my to-do list to make a downloadable image with everything set up already. But, there are only so many hours in the day. 

 

There are a couple different versions floating around out there. 

If 2.1 works properly, I'm planning on doing a bigger order and offering them up for sale. I'm not planing on making a profit on them or anything. Just trying to get them in bulk to get the price down. :)

 

I welcome any updates to the wiki. If you have a github account, you should be able to make updates. If there are things that are unclear, feel free to create an Issue on Github or just ask on the forum. I check the forum more than I care to admit....

Share this post


Link to post
Share on other sites

What do you guys think about keeping "SASI" support in the code? In the Apple realm, I don't believe it has ever been used. 

 

Part of me wants to strip it out to help remove some complexity from the code. If someone really wants SASI support, they could fall back on the original GIMONS version of the code. 

 

Any thoughts/opinions?

Share this post


Link to post
Share on other sites

Ooooo this is neat. I wonder if this can be expanded on? Such as emulating a SCSI-Ethernet adapter instead of SCSI HDD? Say for example you had a SCSI Ethernet emulation, you could have your Appletalk fileshares running on that Pi, you could have an appletalk print server/bridge, the web proxy, etc... all in a "one stop shop" kinda thing. Might able to emulate the Scuznet protocol that another project here has done. 

 

Even plug in USB Sticks formatted as HFS (from newer macs), and be able to mount them as disks or AFP shares. 

 

Anyways, besides all that, I am not sure how you got around the "non RTOS" nature of the Pi and bit-banging across the GPIO. ive had issues with that, especially in applications that require things to happen at specific times. 

Edited by techknight

Share this post


Link to post
Share on other sites
8 hours ago, techknight said:

Ooooo this is neat. I wonder if this can be expanded on? Such as emulating a SCSI-Ethernet adapter instead of SCSI HDD? Say for example you had a SCSI Ethernet emulation, you could have your Appletalk fileshares running on that Pi, you could have an appletalk print server/bridge, the web proxy, etc... all in a "one stop shop" kinda thing. Might able to emulate the Scuznet protocol that another project here has done. 

Yeah, I've been very tempted to attack this as a project.  I had a look through the source code and more or less understand what's going on.  The scuznet is based on an existing ethernet over SCSI protocol, so drivers already exist for it, and the documentation for that would be useful.

 

What I'd really like is work out how to write MacTCP / Open Transport IP drivers and write something that offloads IP processing to the Pi, or better still SSL.  Anyone know how to write those?

Share this post


Link to post
Share on other sites

I am still in favor of a split-process browser where the engine runs on a Pi or other ARM CPU, and only the Chrome runs on the Mac OS side. the Web proxies kinda do that already, but instead of feeding images, its simply true framebuffer space so you can interact with it natively like a regular browser of today. 

 

But I digress... 

Share this post


Link to post
Share on other sites

RaSCSI implements network device emulation already, but the driver that uses it is implemented only for X68000. I'd guess that emulating the same device as Scuznet is probably easier than implementing a new Classic driver, but that could have advantages.

Share this post


Link to post
Share on other sites

FYI.... my house was hit with the storm that came through the Midwest yesterday. I’m without power or cell service, so I’ll be quiet for a few days :)  (nothing broken that can’t be replaced, so counting my blessings)

Share this post


Link to post
Share on other sites

Oh man, sorry to hear about the problems you're having up there. Ft. Wayne/Terre Haute childhood here. I miss watching Thunderheads roam the landscape, but this is something quite different. Beginning to really hate the weather patterns and lack of off seasons here in NC.

 

Question: will RaSCSI support the higher transfer rates of Fast/Narrow SCSI for better performance overall?

Share this post


Link to post
Share on other sites
12 hours ago, kerobaros said:

We got it here in central Illinois too. Where are you located?

Cedar Rapids IA here. They're thinking it will "several days" until we have power again. :-O

 

10 hours ago, Trash80toHP_Mini said:

Question: will RaSCSI support the higher transfer rates of Fast/Narrow SCSI for better performance overall?

Possibly, someday? No immediate plans. My personal use case is for early/mid 1990's Macs, which wont be able to take advantage of the additional speed.

 

15 hours ago, techknight said:

Even plug in USB Sticks formatted as HFS (from newer macs), and be able to mount them as disks or AFP shares.

I like it!! Mounting them as disks would probably take some custom drivers on the Mac side. But as my Electrical Engineer friends say... "Software can fix anything"

 

Long term... I'd like to migrate this to use the RT Linux extensions for the SCSI bit banging. One step at a time though!

Share this post


Link to post
Share on other sites
17 hours ago, techknight said:

Even plug in USB Sticks formatted as HFS (from newer macs), and be able to mount them as disks

 

10 hours ago, landoGriffin said:

Mounting them as disks would probably take some custom drivers on the Mac side

 

I'm not convinced it would, actually.  How does this sound (very handwavy):

  1. Implement a "raw partition" disc image format.  This acts like the existing "hard disc in a file" format, except that once its calculated the offset to look at, it does something a bit cleverer.  If the offset is where the partition table should be, we synthesise a "fake" partition table based on the size of the raw partition file; if the offset is where the driver partition would be, we serve back a bit of a SCSI driver; otherwise, we subtract the size of the fake partition table + the SCSI driver and use that offset into the file.  This lets you deal with a partition that just contains the HFS filesystem, without having to worry about the disc that surrounds it.
    • problem: we don't have an open source SCSI disc driver (as far as I know, do we?).  We could use one of the existing ones but it would be legally perhaps questionable.
  2. Create a udev rule or similar that watches for USB sticks with an appropriate partition type, then signals RaSCSI to use the device as the image file for a raw partition image.

If you wanted dynamic mounting support, where you plug a USB stick in and it just mounts, it would probably require code on the Mac side, yeah; but I suspect if you emulated a removable drive with the disc image strategy I outlined above, you could  at least use a SCSI mounting utility to mount them in a "hotswap" kind of way, even if it wouldn't automatically mount.

 

This is all just random "this idea just occurred to me" so may not be feasible, but it feels doable.

 

10 hours ago, landoGriffin said:

Cedar Rapids IA here. They're thinking it will "several days" until we have power again. :-O

That sounds utterly miserable.  Stay safe, I hope things improve soon

Share this post


Link to post
Share on other sites
13 hours ago, Trash80toHP_Mini said:

Beginning to really hate the weather patterns and lack of off seasons here in NC.

At least you have rain.  Over here in CA, it's pretty much endless fire danger (of varying intensity) except a few months between late February and early June where it's at its minimum;  this period is basically the same as the rest of the year, except cooler, and usually with at least some rain.

 

So, miserable as it may be at times, be glad you have rain!  You don't want to live in fire country during an extreme drought, as I've been doing for many years now....

 

Hurricanes, though.  They're kinda the east/southeast coast equivalent of our fires, I guess?

 

Anyway, back on topic...

 

c

Share this post


Link to post
Share on other sites
13 hours ago, landoGriffin said:

Cedar Rapids IA here. They're thinking it will "several days" until we have power again. :-O

Hey, a fellow Iowan!  I'm glad to hear you were OK, that was one wild storm.  We just got power back a few hours ago in Ames, so hopefully they'll get things fixed for you soon.

Share this post


Link to post
Share on other sites
13 hours ago, landoGriffin said:

Cedar Rapids IA here. They're thinking it will "several days" until we have power again. :-O

 

$WORK has a data center in Cedar Falls. They were having trouble with Internet connectivity yesterday and today.  Our other location is OK :-)

 

Hope things clear up for you soon!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×