Core 15 with HDMI and other improvements
It's been a while since core 14 was released, which was the core that introduced booting from the AppleSqueezer's built-in SD card with the help of Antoine Vignau's driver:
5.25" drive issue
For quite some time already, 5.25" disk access wasn't reliable. For most people, who use modern disk solutions such as CFFA3000 or Floppy Emu (or better yet, AppleSqueezer's built in SD card!), this isn't really an issue, but some people - for good reason - kept asking me to fix this. Then suddenly, on July 17th, Daniel Quittman posted something in the Apple IIGS Facebook group about another post, by Rob Perissi, regarding something called "phantom" bus accesses. Here's part of his post:
"I suspected at the time that there was some crucial timing difference with the AS in place that was disrupting the delicate timing windows in the RWTS routines that need to be in perfect sync between the CPU and IWM (or discrete implementation on DISK ][ controller).
And it looks like Rob Perissi found exactly the culprit in his CoGS testing! He says that the AppleSqueezer doesn't seem to put the "phantom" bus accesses on the bus after certain instructions like "STA abs, X" which are exactly the instructions the RWTS uses to synchronize disk controller writes.
I recall reading about some conversations around either the 65C02 or 65C816 development where Woz and Bill Mensch of WDC were discussing changes and improvements in the new CPU vs. the 6502, and Woz essentially made WDC keep an existing "flaw" from the 6502 in the later CPU because the Disk II / IWM timing required it and I'm pretty sure that "phantom bus cycle" we're talking about is it."
I made the following comment to that post:
"I wasn't actually aware of this phantom read, and especially its significance to the IWM, but if during the phantom reads, the VDA (valid data address) and VPA (valid program address) pins are both 0 (I presume they are?), the AppleSqueezer indeed won't put it in the bus. I did this as it seemed the logical thing to do, given that it's not a valid address, and so why waste precious time on reading from the (relatively, to the AS) slow bus if it's not used. I wasn't considering that, if the address is considered invalid, things would actually rely on that anyway"
I finally got around to hopefully fixing this: the CPU's dummy bus cycles in the I/O area now reach the IIGS bus, as with the original CPU. But that still needs to be confirmed by someone who had this issue before, so it would be really nice if someone would like to help me test this!
HDMI improvements
Another thing I worked on for Core 15 is fixing a few HDMI issues, namely:
Mixed mode support (this is when, in the older Apple II graphics modes, you have 4 lines of text at the bottom)
Support for 3200-colour images
No more wrong colours during palette fades
Flashing characters
Page 2 and 80STORE are handled correctly, including text page 2
Improvements to some colour issues and off-by-one issues
Border colour support (previously, the border was just black)
Screen centering: Text, Lo-Res, Hi-Res and Double Hi-Res are now centered on screen (by popular request! :)
Various other HDMI related fixes
Speed improvements
While I was at it, I also made a few acceleration improvements, so you may notice that the AppleSqueezer is a little bit faster than before.




Comments