• 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.

RaSCSI Development Thread

quorten

Well-known member
I'd have to say, I think @PotatoFi's video (I wasn't on the livestream) is pretty good to watch for those of us who question our soldering skills... I guess I'm actually not too bad for a novice myself after all.  Otherwise, yeah, with the length and all, sort of a waste of time to watch the whole thing, but hey, PotatoFi had to go through all of that time one way or another.

 

PotatoFi

Well-known member
I'd have to say, I think @PotatoFi's video (I wasn't on the livestream) is pretty good to watch for those of us who question our soldering skills... I guess I'm actually not too bad for a novice myself after all.  Otherwise, yeah, with the length and all, sort of a waste of time to watch the whole thing, but hey, PotatoFi had to go through all of that time one way or another.
It was intended to be more about "hang out" time than an instructional video. I personally can't watch recorded live streams after the fact - something about watching it happen live is entertaining, but when it's done, I'm just not interested.

And if I can solder one of those up, anybody can!

 

quorten

Well-known member
It was intended to be more about "hang out" time than an instructional video.
Yeah, really, I agree... I figured it would be a good idea to find out what the hangout time was like after the fact since I missed it live.

 
Last edited by a moderator:

landoGriffin

Well-known member
A couple comments about a post that @Byte Knight made in the MacSD thread.... 

I've got a RaSCSI too ..... but it's nice not having to wait for the Pi to boot up before you turn your computer on....
If you don't have any other bootable drives installed, the Mac will wait for RaSCSI to boot up. So, you might see a flashing question mark for 10-20 seconds. But, the Mac should boot once RaSCSI starts up.

and it's also nice to be able to hook up an HD activity light.
RaSCSI has that too. I didn't get around to testing it until a few days ago, so I hadn't been advertising it. Next to the ACT/ENB LEDs there are two holes for a header.  You can hook up an external LED with a little dab of solder and  a couple header pins. (They could go on the top OR bottom - doesn't really matter)

image.png

 

Byte Knight

Well-known member
If you don't have any other bootable drives installed, the Mac will wait for RaSCSI to boot up. So, you might see a flashing question mark for 10-20 seconds. But, the Mac should boot once RaSCSI starts up.


RaSCSI has that too. I didn't get around to testing it until a few days ago, so I hadn't been advertising it. Next to the ACT/ENB LEDs there are two holes for a header.  You can hook up an external LED with a little dab of solder and  a couple header pins. (They could go on the top OR bottom - doesn't really matter)
I stand corrected - thanks for clarifying!

 

quorten

Well-known member
As-is, No. I don't think it would be possible. The Parallel port pinout is quite different from the SCSI pinout.
Well I was looking at this further and the RaSCSI bus transceivers are compatible, very similar to the first design of pi-parport actually.  So really all that's needed is to add a few switches/transistors to change the bus termination resistors and an external dongle to rewire the pinout on the DB25 connector.  Finally the pi-parport drivers can be dropped in verbatim simply by using a different ID EEPROM on the RaSCSI board, this will load a different DT Overlay with the different pinout and it will all just work.

At least that's my cursory assessment.  It would be nice to have one board that can do it all.  Oh, and I didn't mention that you can make a parallel port board that can act either as a "host" or a "device."  That would obviate the need for some of those proprietary Raspberry Pi boards meant to emulate a parallel port printer.

EDIT: On the question of ESD protection diodes, the existing bus tranceivers probably already have them (on a continuity check, GPIO-side pins appear to be all shorted to ground when the chip is powered off), but it could be that parallel port transceivers are designed with better ESD protection.  It might be worth considering if better ESD protection is desirable for a SCSI interface too.

 
Last edited by a moderator:

jcs

Member
Hello, cyber pals.

I've been recording a series of videos on C Programming on System 6 using a camera (iPad) in front of my Mac 512Ke/Plus.  After reading about the ScuzzyView device, I figured it should be possible to make something similar that sends the screen buffer over the SCSI port and turn it into a video stream that I can capture, which led me to the RaSCSI.

This weekend I started working on it and was able to send the screen data through RaSCSI and turn it into an XBM image to display on my laptop. Then I got live screen mirroring working by having RaSCSI draw the data stream onto the framebuffer of the Raspberry Pi.

I plan on upstreaming my changes to RaSCSI once it's in a better state, and maybe support things like recording the data to a local file rather than forcing it onto the framebuffer and supporting color/non-1bpp data.  For now, my changes are available in my "video" branch:

https://github.com/jcs/RASCSI/commits/video

I will also be releasing the code to the Mac program which sends the screen data through the SCSI Manager.  Right now it's implemented as a normal application so it only mirrors while it's the foreground application.  It needs to be changed to act as a driver so it can run all the time.


 

cheesestraws

Well-known member
This weekend I started working on it and was able to send the screen data through RaSCSI and turn it into an XBM image to display on my laptop. Then I got live screen mirroring working by having RaSCSI draw the data stream onto the framebuffer of the Raspberry Pi.
This is really cool.

 

Dog Cow

Well-known member
Right now it's implemented as a normal application so it only mirrors while it's the foreground application.  It needs to be changed to act as a driver so it can run all the time.
Are you sure it needs to be a driver to run all the time? Both the Process Manager under System 7 and later, and MultiFinder on System 6 include provision for background application processing.

 

Crutch

Well-known member
Agreed, this is really cool!

Dog cow is correct above, but if you want it to run on a Plus running pre-System 6 or pre-MultiFinder (which would be cool), you’ll indeed need to write it as a DRVR (or maybe even as a VBL task?).

 

Michael_b

Well-known member
That’s awesome! How much of a leap is it from this to something like the SCSIgraph? I assume it would be a matter of having a second (virtual) display that the Mac thinks is connected, and having a screen buffer for that display available to be copied over SCSI? 

It looks like the SCSIgraph also had color output - maybe this could be part of a solution to obtain grayscale video on the SE/30 (or earlier) without an XCEED card...

 

quorten

Well-known member
At the outset, the idea sounds awesome!  Of course, as you've mentioned, there's still plenty of work to be done on the implementation.  A proper video driver interface, like used by the old PDS video expansion cards, would expose drawing commands that would be hardware accelerated, and that would definitely improve the framerate on the Raspberry Pi side.

 

rplacd

Well-known member
That’s awesome! How much of a leap is it from this to something like the SCSIgraph? I assume it would be a matter of having a second (virtual) display that the Mac thinks is connected, and having a screen buffer for that display available to be copied over SCSI? 

It looks like the SCSIgraph also had color output - maybe this could be part of a solution to obtain grayscale video on the SE/30 (or earlier) without an XCEED card...
Ha! I wonder as well if I could use a SCSI device to accelerate 3D graphics as well – I'd block transfer vertices and transformations in, rasterize on the RaSCSI, and read a framebuffer out...

 
Last edited by a moderator:

superjer2000

Well-known member
Hello, cyber pals.

I've been recording a series of videos on C Programming on System 6 using a camera (iPad) in front of my Mac 512Ke/Plus.  After reading about the ScuzzyView device, I figured it should be possible to make something similar that sends the screen buffer over the SCSI port and turn it into a video stream that I can capture, which led me to the RaSCSI.


I hadn't seen any references to the C programming videos you are doing - that's a great initiative!  I had started trying to learn toolbox programming using C on the mac a while ago and put it down but plan to get back into it and will be sure to check these out.  Thanks!  (And obviously the RAscsi hack is incredible!)

 

jonpurdy

Well-known member
After futzing about with my scsi2sd 5.5 for the past four hours and having slow writes, unreliable mounting, and disk errors, I've have enough of it.

I heard about this project back in 2019 on HN and stumbled upon it again today. Progress looks absolutely amazing!!

If I were to buy one (fully assembled to save time soldering), how well does it currently work and how reliable is it? (I have extensive Linux experience and very familiar with the Pi/Raspbian.) Basically, if I follow the instructions in the wiki, is it currently in a state where it works reliably?

 

landoGriffin

Well-known member
Threw together a minimal version of the board, just two headers and the 4 chips (no on-board termination). Hope I didn't make any mistakes, and OSHPark likes it, and I didn't miss an important component. :D  https://oshpark.com/shared_projects/FLWSmnqS (Board file / schematic is here, but I don't think anyone uses CircuitMaker haha https://workspace.circuitmaker.com/Projects/Details/Edward-Halferty/rascsi )

View attachment 38634


That is awesome!!! such a cute little guy :)

Something you might consider on the next version would be to make it the exact same size as a Pi Zero so that you can mount it directly on top of (or under) a Pi Zero.

I'm excited to hear how it works!!

 

landoGriffin

Well-known member
I heard about this project back in 2019 on HN and stumbled upon it again today. Progress looks absolutely amazing!!
Thanks!!! Its been a fun project to work on!

If I were to buy one (fully assembled to save time soldering), how well does it currently work and how reliable is it? (I have extensive Linux experience and very familiar with the Pi/Raspbian.) Basically, if I follow the instructions in the wiki, is it currently in a state where it works reliably?


I've had no problems at all with the hard drive functionality. It seems rock solid. For the CD-ROM, as long as you used the patched extension (driver), it works fine as well.

IMO the main limitation right now is the boot time of the Pi. So, if you can power up the Pi 30 seconds before you power up your Mac, you'll be fine. On most models (from what I've observed) the Mac will wait for the Pi to boot, as long as there isn't another bootable device.

Which reminds me, I need to re-vamp the pricing scheme on my Tindie. The price of the assembled boards is going to go down quite a bit. I had a big (for me) run of them assembled in China. They can do it a lot more cheaply that I can!

Feel free to join us on Discord and hang out! https://discord.gg/PyS58u6

 

landoGriffin

Well-known member
Tindie is updated with new pricing. Check it out!!

- Assembled RaSCSI is now only $45 (+ shipping)!!

- Kit is only $30 (+ shipping!)

 
Top