YES! Fixed!
I was getting ready to pull the VRAM chip (U31 in this case) but before I put the flux on, I decided to just check each pin/leg one more time. So I went around the chip and used some tweezers to nudge each pin outward. Made my way around the chip nudging each one when finally got to one pin and it moved! It was broken not at the solder joint where it meets the PCB but it broke off where it goes into the chip! I had done this previously across all the chips (VRAM, SQD, SMT, BSRs, basically every chip on the PCB) but clearly either missed this one or didn't nudge enough.
The pin in question was
A0 (pin 19) one of the address inputs.
Fixing it was a bit annoying as it had cleanly broken off right where it enters the chip. I thought perhaps I needed to cut into the outer casing a bit but fortunately after a good number of attempts, I was able to get a small magnet wire bonded with what was remaining and then routed that back down to the PCB. Unfortunately looks ugly as once I got one end bonded, I decided ok, that's it, moving on. One day I will just pick up a replacement VRAM chip.
Then I went back and tried it out, and it works! No more artifacts during hilite mode. No artifacts on mouse cursor movement. Ran my test program and it passed all the tests. Put it back on my logic analyzer and no more strange waffling of the signal on those SDQ output pins on U31 (blue chip 2).
Now that it's resolved and I know the issue... I'm contemplating if I could have done better. I had definitely nudged each pin on each chip but clearly didn't nudge enough or missed this one --- on second thought, I think I missed it as I was nudging at the solder joint with the PCB, not where it meets the chip body. Could have been more thorough. Should I have probed each VRAM chip from the get go? That would have been super annoying. In the end, although calendar-wise it took a while (given lack of spare time to really dig in), I'm glad this July 4th weekend gave me an opportunity to spend more time with this. I think the suggestion
@MacOSMonkey gave me to write a test program months ago was the right call. Finally with time this past weekend, writing code helped reproduce the issue, let me walk through the assembly in MacsBug, narrow down the problem to one chip, and then figure it out.
Learned A LOT on this one.
Next up: return to debugging my last problematic SuperMac video card.. the SuperMac Spectrum 24 Series V which looks to have been stepped on or something.
