Post by ian kim
I have new project for APPLE IIc.
APPLE IIc is compact but there is no sound card and it is one of weakness of APPLE IIc. so, I decided to build a mocking board compatible sound card for APPLE IIc.
To achieve it, It required a slot for mocking board but, APPLE IIc doesn't have any slot and my fist step is trying to make virtual slot for mocking board.
Now, I have good progress and now I can have signals and successfully did mask the slot#4 area.
Nice proof of concept!
I note that you're decoding $C400-$C4FF, which is the slot ROM (/IOSEL) area for slot 4. The IO locations for each slot are actually located at $C080+(slotno * 16) - so for slot 4 that's $C0C0-$C0CF. Those are the locations you'll need to decode to plumb your mockingboard hardware in.
Note that the IIc doesn't actually have any "mouse hardware" per se, but rather a hacked version of the game port, so there is no actual usage of $C0C0-$C0CF in the IIc itself. In practice, this means you should be able to add a Mockingboard to "slot 4" without disabling the mouse firmware at all, since the Mockingboard has no firmware.
In later IIc's (and the IIc plus) that have the memory expansion connector, things are a bit different. The mouse firmware has moved to slot 7, making way for the memory expansion card firmware at slot 4. This should still not present a problem in practice, since it's mechanically impossible to install both a memory expansion card and your mockingboard at the same time.
The IIc plus presents a different challenge, since you're gating the bus at the CPU, which can operate at either 1Mhz or 4Mhz depending on whether the accelerator is active. It's possible your design could be made to work this way, though I suspect it would be much simpler to tap the address bus on the MMU rather than the CPU, this way you're always on the 1Mhz side of the accelerator circuit.