Floppy Emu Update: Smartport and More
Hello! I’m Alice, the engineering intern here at Big Mess o’ Wires. I’m a math with computer science major at UC San Diego, and throughout the summer I’ve been working on some fixes and improvements for BMOW products. I started out on the ADB-USB Wombat, but most of my work has been on Floppy Emu development.
Today, I’m excited to finally share what I’ve been doing! Here is a collection of some of the new Floppy Emu improvements. They’re mostly related to Smartport and Unidisk 3.5 emulation for the Apple II, but there’s some other good stuff too.
Smartport Hard Disk and Unidisk 3.5 emulation:
– Control commands are now handled better. This resolves GS/OS freezes during shutdown or restart, and related problems with other software.
– A NAK/retry mechanism was added for cases where there’s a checksum failure on a Read or Status command. It will provide more robustness against signal noise.
– Status commands that request invalid or unsupported status types will now receive a proper error reply.
Unidisk 3.5 emulation:
– Emulation now continues to run even while displaying the disk selection menu. It will respond to commands as an empty drive, instead of not responding at all. This resolves some potential problems when booting from other disks and when swapping disks.
– Handling of disk ejection has been improved. Disks can now be ejected and replaced through the GS/OS Finder menu and other methods of software-controlled disk eject, as well as through the Floppy Emu menu interface.
– The disk icon that’s displayed in GS/OS has been updated to look like a 3.5 inch floppy disk.
General improvements:
– Occasional errors CHECK PIN CLKO-L and CHECK PIN RESET should no longer occur.
– Hidden system directories on the SD card will not be displayed in the disk selection menu, including Windows 10’s “System Volume Information” directory.
– OLED screen dimming behavior is now more consistent.
These improvements are available in firmware versions 0.2T-F30, 0.2S-F29-SPDC, 0.2S-F26, and 0.2H-F15 (depending on the Floppy Emu model and the type of computer it’s used with). You can download the new firmware files on the Floppy Emu page. Let us know if you run into any issues, and have fun!
Read 6 comments and join the conversation6 Comments so far
Leave a reply. For customer support issues, please use the Customer Support link instead of writing comments.
A few features I’d like to see, if practical:
1. A means of specifying from the front panel that a disk image should be opened “read-only”.
2. The ability to disable the generation of random 1 bits after runs of two or more zeroes, allowing arbitrary bit patterns to be encoded.
3. The ability to use the 500kbps data rate when emulating a “standard” floppy. Combined with #1, it would be possible to have a disk image where the first sector is written with zeroes interspersed with data bits so that it could read at normal speed by the $FF ROM, but a custom boot loader could then switch to high-speed mode and process everything else faster.
4. An increase in the maximum track length, at least in read-only mode, and bounds checking to ensure that an attempt to use a disk image with a track longer than the unit can support will result in a diagnostic rather than memory corruption.
I think the .woz format already has defined ways of specifying the above; I have no idea how amenable the design of the FloppyEmu would be to supporting them. I think the memory-corruption behavior should be fixed regardless of whether any of the others are considered, but otherwise support or not at your leisure.– John
Thanks for this. This update seems to have fixed an intermittent (or possibly constant bug) when installing GSOS from floppy to a 32mb file on the FE.
If new features are being considered, I’d vote to port over some of the features that the 5.25″ drive has to the 3.5″ drive. Such as the recently added dual drive support. WOZ support for 3.5″ and Unidisk 3.5″ would be welcome, as earlier this year WOZ images of 3.5″ floppies began showing up for both IIgs and legacy Apple II software. Also, the Unidisk 3.5″ still has the slow menu scrolling, where the 3.5/5.25 is much faster.
Also, I think there may still be some kind of bug in smartport hard drives. In the last two releases of Total Replay (4.0 RC1 and 4.0.1), FE throws a checksum error if you try and launch World Games. It had this issue on previous firmwares as well, but I hoped maybe this new one would fix it. It could be an issue with the .HDV file itself. But MAME and AppleWin both launch the game fine from Total Replay. This happens on both my //c and IIgs.
If it can be proven the FE is handling it correctly, I can pass the info back to the guys working on Total Replay. I did mention it to one of them in the past, but they don’t see anything wrong on their end. But maybe if specific details could be provided as to why FE doesn’t like it, they could find something.
Excellent list of updates. I look forward to updating my Floppy Emus to check them out. (Funny how Floppy Emus seem to multiply on their own. Hm.)
Thank you for your hard work.
awesome Alice! If you are ever looking for a job when you are done with your degree, let me know. I have a team in SD. 🙂
I’m wondering if you have any insight into a smartport issue I seem to have. Directly connected to my iic and configured for smartport, my brand new floppyemu works fine as an 800k. It will even boot properly. However, if I daisychain it to my smartport unidisk 3.5″ drive, it gets selected, but the disk catalog is always empty with an error.
Any thoughts?