While testing after work tonight I noticed some strange tearing and graphical errors on the background. Since it only occurred on background tile elements (not sprites) I assumed it was related to the tile ROM; on a friend's recommendation I added some decoupling caps to the board, and reinstalled a bodge capacitor that was across the voltage regulator when I got it initially. That cleared the problem right up - anyone else experiencing a similar issue I'd highly recommend checking decoupling!
Once that was sorted, I worked on the dual-boot. Ran a couple wires out to a small perfboard I made up with a DIP switch; the only non-momentary switches I currently have on hand are these 4-gang DIPs. Placing DIP1 in the ON position pulls down the
PAGE_SELECT pin of the GAL, and switches to Ketsui Arrange. Unfortunately this is just
barely too tall to fit inside a normal PGM cart shell, so I'm currently looking into my options. I think most likely I will simply rewire to a panel-mount switch that I'll install next to the edge connector, but I'll admit there is a lot of convenience to being able to just swap between Ketsui and Ketsui Arrange whenever I want without needing to remove the cart from the motherboard... I'm considering trying to 3D print a modified cart shell with a bit more internal clearance and a cutout for access to the DIPs.
Initially adding this switch caused a lot of garbage graphics and weird behavior, but adding an external pullup (5kOhm) instead of relying on the internal pullup of the GAL (which I think is 100kOhm) cleared that right up.
Here are final pictures of the current state of the PROG board; I still need to run a few credits through to make sure that everything works as expected late-game, but so far it seems like I've overcome all the major functional hurdles and made the improvements I hoped to make. Extremely happy to have a positive result for this project, especially after a few big red herrings. Thanks again to everyone here and elsewhere who helped out and showed their support during the process!
I've attached the JED and PLD files I used for the GAL, along with notes that explain the pinout. It's functionally identical to the Ketsui/Espgaluda GAL Fluffy uses for his boards, but with some different pin assignments to take advantage of the 22v10 and the existing routing on the Lydz board. Note that this
is not a drop-in replacement for the existing GAL, and it requires additional rework to function (100Ohm pullup, bodge to
INT_P_ROM_OE, and adding the
PAx_OUT lines).