I built a small 4-bit CPU that is really hard to program, because it heavily relies on swapping registers. It's basically a river-crossing puzzle. :)
If you want to try it out here's the Github link: https://github.com/gschwaer/Swappy/blob/main/Readme.md