A bunch of good fixes in this one. Starting off slowly, the IIgs doesn’t trigger the paddle read at any address except $C070 itself (this is different from earlier IIs, as far as I know). This is important because $C071 onward contains the interrupt vector trampolines, and games like Rastan and Gauntlet had interrupts enabled while reading the joystick and hilarity ensued. The IIgs also got better modeling of the infamous 1 MHz slowdown, so the machine’s overall performance should more closely reflect how bad it actually was without an accelerator. And finally, baud rate interrupts for the 8530 SCC chip used in a ton of machines including the IIgs were emulated; this fixed Diversi-Tune not playing music.
Next up, a regression was fixed in turning off DHIRES on the IIe and IIc; this fixed missing hi-res colors in Total Replay after showing a double-hi-res title screen.
Most importantly, MAME’s internal floppy representation changed in a way that makes a lot of code less error-prone. Additionally, some internal floppy representation bugs were smoked out that caused disk corruption issues. And finally, Olivier and I (with an assist from DiskBlitz of Applesauce fame) went on a deep dive into 5.25″ write corruption issues on the IIgs under ProDOS 8 and DOS 3.3 and fixed them. SAVEing your Applesoft programs to a 5.25″ disk now won’t trash the disk.
We’ve heard about but have not been able to reproduce additional floppy write issues on the Apple ///. Several people have insisted that just inserting 2 disks and regenerating the driver file would do it, but that works perfectly for me now (it certainly didn’t in the past).