So the very first A500 I had been testing on since the beginning of the project had a Bug Katcher installed. It turns out that I wasn’t really using it, but I left it plugged in anyways.
I’m not sure electrically what the exact effects of having that installed are, but removing it caused all of my instability and boot issues to disappear.
I was able to boot the amiga (10) times in a row from a cold start without an associated hang.
I still want to reconnect the logic analyzer, and verify that the race condition(which was/is a separate issue) has truly been addressed.
There was an issue where /CE could get asserted low prior to the latched addresses being clocked (or stabilizing) into the SRAM. I solved this by using slower logic(LS instead of ACT) on the logic path of /CE. While not ideal, I think it’s pretty effective.
I’m going to verify that those setup times for the SRAM are being respected, and I have a sufficient design margin.