The layout is very neat. I'd be surprised if there was a problem with the layout - assuming the contacts on the breadboards are good enough.
Compare with this:
Attachment:
IMG_20231202_212411_DRO.jpg [ 501.54 KiB | Viewed 2043 times ]
That's a 6507, 8KB RAM chip (only using 4KB), 32KB EEPROM (only using 4KB), a GAL for glue and a latch for output. Also runs at 2Mhz. Those breadboards are the cheapest I could get from a UK retailer.
So if I can get that big mess of wires to run at 2Mhz then your kHz 555 clock should not be the issue. I think i'd be looking at marginal timings on the RAM side of things. Hard to tell though - have you a 'scope?
Other things to try - try cooling the whole thing down if you're in the northern hemisphere just go outside (at least here is Scotland it's 0°C right now!) Often things that might have marginal timings will work when cooler - every hardware engineer I used to work with back in the 90s had a can of freezer spray handy just for that sort of testing... Also the power supply. Do you trust it? do you have a 2nd meter to check? Try taking it up to 5.2v ... My Ruby 816 board really doesn't like anything < 4.9v for some reason (I think the timing for sending commands to the VIA is marginal, but I don't have good enough test equipment to find out - it works at 5V so that's OK for me).
And try resting your hand on it then gently shaking it - see if it crashes - that's as good indication of a loose wire, or bad breadboard track as any.
-Gordon
_________________
--
Gordon Henderson.
See my
Ruby 6502 and 65816 SBC projects here:
https://projects.drogon.net/ruby/