Hi all, first time posting :)
I think I'm having some sort of problem where my signals from the bus are very noisy and I'm realising I'm out of my depth trying to figure out why.
A bit of background first. I have the eventual goal of interfacing my SC130 to a Raspberry Pi so the Pi can provide storage. I've gone down the rabbit hole of sticking a Raspberry Pi Pico between the two as I decided the GPIO pins on the Pi are too slow. The Pico on the other hand has the new PIO state machines which are very quick and a lot fun to tinker with :)
I have the Pico connected to the bus via three 74LVC245 chips to provide translation from 5V to 3.3V. The first chip is handling IORQ, RD, and WR. The second a0-a7, and the third d0-d7.
I've reached the point where I have the Pico recognising the IO requests (either IORQ + WR + address or IORQ + RD + address). Reading from the bus (e.g. z80 OUT) seems pretty reliable but writing to the bus is proving a bit flaky (e.g. z80 IN). I'm testing from mbasic with simple OUT and INP commands. I'm able to crash mbasic intermittently with the INP commands which I suspect is the Pico/74LVC245 not giving the data pins back quick enough after the IO request finishes.
Trying to establish where I'm going wrong I've stuck a scope on the IORQ pin (the 3.3V side of the 74LVC245, shown in red) and the direction pin of the 74LVC245 that is connecting the Pico to the data pins (shown in blue). When the Pico sees the request it pulls the direction pin high before writing the answer to the bus. I'm using this as my trigger.

I've also connected a couple of the digital pins to the same points with the software set to TTL mode which seems to use 1.5V as it's threshold.
I don't know what these signals should look like, but my guess here is that is far noisier than it should be. I'm testing this on a breadboard with lots of unshielded cables so I'm wondering if I'm asking too much of it?

I've got 0.1uF caps as close to the power supply pins as I can get them. I've tied the unused inputs on the 74LVC245's to ground (after initially forgetting). I've tried an alternative power supply for the 3.3V wondering if I'm picking up noise from the switch-mode regulator in the Pico. None of this has made any significant difference.
I have a Raspberry Pi 4 very close to the board providing me SSH over WIFI to serial for controlling the SC130. Could I be picking up interference from the Pi?
I have the software almost working but I can't tell if my remaining issues are software or hardware so I'm reluctant to go to the next step of making a PCB until I have some idea what's going on.
Any thoughts or suggestions would be much appreciated.
Thanks,
Dylan