Flashing red is usually a sympton of a bad onboard memory chip, as I recall. Certainly some kind of hardware issue with exec not starting up properly... so the processor and ROM are probably good.
I guess in theory a bad keyboard MIGHT do it, but on the A600 the keyboard is just a set of switches on a VERY fiddly cable. Probably no need to unplug it, if a switch is bad, it doesn't stop a boot from happening. So leave that alone, for the time being.
EDIT: Oh yeah, ROMs. The 3.1 version has to specifically be for an A600. They are not very swappable between Amigas, as a rule of thumb.
Red indicates a ROM checksum failure. One of the first things the system does on power up is build a checksum of the entire ROM and compares it to the checksum stored in ROM. If they're different, it throws a red screen. The ROM is usually something that generally works fine or not at all, so most of the time if you have an actual ROM issue, the CPU will end up executing garbage right away, then fail within the first few instructions to the point you'll only ever see a black screen.
Therefore most of the time when you see a red screen, it's often something screwing with the CPU data bus causing the checksum calculation to be wrong.
Agreed, a keyboard fault won't cause this problem.
The 16-bit ROMs are exchangeable between A500, A2000 and A600.
Most of the symptoms so far point to a chip memory problem. Despite popular belief, the power up memory test (which makes the green screen) is not very thorough. It's kept brief in order to keep boot times practically short.
What happens during boot in terms of memory is essentially:
- Write exception vector table (46 words) to bottom of memory
- Read them all back, if any aren't as expected then do a green screen
- Do a single word write+read test of chip memory every 16k, if there's a failure in the first 256(?)k then do a green screen
- Set up exec in chip memory - if something breaks here due to bad memory which wasn't detected in the previous test, you'll usually get a yellow screen (exception error)
I'd suggest replacing either/both DRAM ICs in the A600 and see if that fixes the problem. As I recall, the system should boot normally without U17 fitted, but U16 always needs to be present and working correctly. Failing that look at the 16 CPU data bus lines with an oscilloscope and see if any lines don't have a clean 0-5Vp-p waveform. Could also be a CIA fault, both 8520s live on the CPU data bus and people plugging stupid things into the Centronics port can often damge U7, which can then proceed to mess up the data bus and cause similar symptoms as described here.