Skip to main content
Home▸ Forums▸ 68kMLA▸ Simple 68k memory disk driver — #8
Post #8 by bbraun
Source Forum68kMLA
CategoryTroubleshooting
Post DateWed, 10 Aug 2011 - 01:06
Original URLhttps://68kmla.org/bb/threads/simple-68k-memory-disk-driver.23650/
Post
Here's a question for you. If I manage to map it as system RAM, would it be just as easy/beneficial/efficient to use a RAMdisk utility to convert some of it to a RAM disk, as it would be to have code/firmware that directly allocates some portion as a RAM disk?
If it's mapped so it shows up to the system as available memory, just using an existing RAMdisk solution would be the way to go. It looks to me like System7 RAMdisk from the Memory control panel stores the settings (presence, size) in PRAM, and on boot the driver loads the settings, builds a disk, initializes and mounts it. Mapping as available memory would be the most versatile and easiest to use out of the box.

However, if for whatever reason not all of it was able to be mapped, but it could be accessed through a mapped register set, then we could make a driver that managed the transfers and present the RAM as a RAMdisk. This is how the Commodore REU's worked. They provided ram, but it wasn't able to be mapped as directly addressable memory due to address space limitations, so there was a register set you banged on to read/write. They also had a few other functions to handle memory copies on the device to avoid going device -> bus -> CPU -> bus -> device, although I'm not really sure a disk driver would be able to utilize that due to File Manager abstraction. In this case, I believe we could potentially boot from the added RAM, if the driver were in the declrom.

As for a development card, I completely agree that throwing more on the card would make it more useful. I was thinking of keeping it simple initially, just to reduce the number of things to debug when something goes wrong, since this is all a learning process. Baby steps and all that. If there was a way to compartmentalize things, that'd satisfy everything I think. A simple flash for the declrom, a register for basic LED and maybe some GPIO accesses, and then the rest for more complex features.

Personally, I'm not terribly familiar with or setup for FPGA dev, and a realistic assessment of my available time would put coming up to speed on that further into the future than I'd like to commit to. On the other hand, I have had some experience with several types of uControllers, like 8051's and ARM (specifically the NXP LPC family), so my bringup time on that would be a little better.

But, that's just me, if other folks are more familiar or up for tackling that side of it, I don't want to hold anything back! :)

mp.ls