I’m more in the BeOS camp myself. Not a fan of Haiku deviating from the project’s original inspiration and mission.
It’s one of the reasons that I am slowly moving away from Zeta OS. l…need a more up-to-date browser. Otherwise, Zeta works for much of my needs. I still use floppy drives and CD/DVD drives.
I have not tested Haiku with USB floppy drive yet.
I have tested Haiku with a USB floppy drive. When attempting to mount a floppy disk the mount server will freeze which causes both Deskbar’s Mount menu and Tracker to lock up. So there is some code that attempts to mount the USB floppy, but it is unable to complete the process.
I relatively recently helped (that is, helped test) waddlesplash fix USB floppy drives causing a KDL, so AFAIK the current status of the driver is doesn’t work, but doesn’t crash the system.
From where can I get those drivers? I can see Beta6 doesn’t have them anymore.
It seems the code was removed in 2022: https://cgit.nikisoft.one/haiku/commit/src/add-ons/kernel/drivers/disk?id=9ee255851df6898e26f9e4d6f724d7bdb8c3663c
You can try to revert the commit,but the commit message says it already didn’t work before.
There’s one thing I don’t understand. BeOS had floppy drive support from start to finish, didn’t it? Both the PowerPC and x86 versions. The BeBox had a floppy drive, and PCs running BeOS x86 had them too.
When OpenBeOS was created, it also included floppy drive support. Even Haiku used to have a driver at one point.
So why was the decision made to throw out something that was already finished and working?
Is a floppy driver really such a massive and troublesome piece of software that it requires constant attention and maintenance? No. Floppy drives and their recording formats are prehistoric technology that froze and hasn’t changed in years. There’s no need to track developments or push continuous updates. You just write it once, do it right, and then you can practically forget about the source code and just use the driver. After all, nobody is going to invent or manufacture new 3.5" floppy drives with upgrades or introduce new, better recording formats.
Underlying code which the floppy driver used was removed because nothing other than the floppy driver used it; as far as I can tell. So yes, there was substantial maintenance required.
BFS has always been awful for floppies, leaving about 800k actually usable on a disk. The PPC era was very Zip drive based; indeed PR2 - the R5 PE of PPC - was recommended to be run off a Zip drive. So really they have never been that important in the BeOS world.
The usual Patches Welcome line applies here - if someone wants to provide a conventional floppy driver that works with the current driver architecture, and meets the requirements to be committed, I’m sure it’ll be accepted
Because at some point it became broken by an indirect change, and after that people either a) didn’t care to fix it; or b) those who cared didn’t have a floppy drive to test their fix on.
So while I haven’t tried to get regular 34-pin floppy drives to work I have gotten usb floppies to basically work. Unfortunately BFS formatted floppies from BeOS don’t work. Looking at the bfs file system comments indicate a minimum block size of 1k so that’s probably the reason why it doesn’t work. You can format a floppy BFS and that will work but like you said the amount of free space you get is pretty small when you do this.
Forgot to mention that I mean an external USB floppy drive. I got one not working here with Haiku.
Previously tested with Linux and it’s fully working.
I still use floppy 5.25 in and 3-5 inch drives and floppy disks because I have retro-PCs. I still use DOS, Windows 98SE, and Zeta OS. Even Windows 11 still supports and format floppy disks, I find it interesting that Haiku removed its floppy drive and disk support. I wish Haiku did support floppy disks.
With jscipione’s patchset on Gerrit, USB floppy drives do work under Haiku and can read/write to at least FAT formatted floppy disks, though technically it should be able to handle other filesystems as per his comment above about testing BFS. I had been helping him test and can confirm that it does work, though it still has some issues like with using it on an ECHI port, XHCI seems to work fine though.
The patchset is here. I’m sure he would welcome people testing it and providing feedback:
Ahoy Artur @Ostrowski !
What changed is around floppy drive is more about its connectivity and its availability in a computer.
Connection type from IDE!ATAPI and legacy SCSI changed to USB, it was removed from the system firmware as a boot device.
As Windows moved to NT kernel even the firmware update moved from DOS/floppy requirement slowly - of course there was a little period (except Japan, where the floppy still official way to use in officials as input device media) where the DOS bootable floppy still required in a basically new machine to upgrade firmware (the BIOS, I mean) but finally it was done under Windows.
Haiku floppy driver was unique, and worked differently - you may search for other forum threads to understand that.
As there were no more cross-section cover the developer who has a machine with floppy drive and developer who can write floppy driver to extend floppy driver usage - the code became broken. It comes from Haiku developers’ affinity.
Some do maintain code to have the original goal to be completed – reach R5 compatibility.
However with new 64 bit architecture, and new hardwarea possibilities, this goal has altered a bit. Now has an effort to have a better support to actual hardware.
Unfortunately there is few increase in number of developers in case contribution to the OS - howevere it is fortunate for users as more new contributors came to fix enhance/port old/new apps for Haiku.
We need a few C/C++ developers with experience in supporting legacy hardware – people who would also be willing to learn how to develop hardware-level or operating-system-level components for Haiku.
This work would primarily target the 32-bit version of Haiku, as some legacy devices were rarely found on 64-bit systems (with the possible exception of 64-bit servers – for instance, the floppy disk drive).
Of course, if 64-bit Haiku were to support 32-bit operation – either natively or through built-in compatibility – then these legacy drivers would become relevant for 64-bit systems as well. After all, there were 64-bit workstation-class machines that still included such older hardware; in those cases, having corresponding drivers for a 64-bit environment would be quite useful.
For a long time, the floppy disk remained in industrial use as a storage or input medium.
For example, as late as the mid-2010s, there were embroidery machines that required programs to be loaded via floppy disk. By that time, however, floppy disks were no longer available in retail stores here in Hungary (or elsewhere in Europe) and could only be purchased online. I suspect these machines originated from Japan. At that point, I suggested to the young lady that they get a floppy drive replacement device—one that accepted a USB thumb drive and could store many floppy disk images, yet connected via a standard floppy cable. It was housed in a casing the same size as a 3.5-inch drive, making it ideal for installation in place of the original floppy drive.
As far as I know/remember, there never was a working driver for floppy drives in Haiku. OpenBeOS does not include drivers from BeOS, it’s a rewrite from scratch.
I wrote the usb floppy driver, then merged it into the generic usb mass storage driver, at that point the separate driver was removed. Then both my usb floppy drives died and I had no reason to replace them. The driver has been unmaintained (but not removed) since.
At no point was any code thrown away.