hi, I love these in terms of archaic low-tech fallback systems
the problem with these though is that they were built from bottom to top for general purpose
there are a lot of optimizations by building top-to-bottom is you make a task-specific machine (think mechanical ASIC, as I write in my linked substack post above perhaps jokingly but not so far from the truth)
for example, in my case of this spiral hashing system I developed over the last 5+ years, instead of rotating a binary string to the right »6, right »11 and then to the left »25, we do the rotation of clockwise »6, then »5 and then counter-clockwise «2, while just keeping track of the mean-result of the XOR
similar things are happening with calculating the w16 part of the input based on the block header, where instead of doing rotations to the right »16, right »17 and then a shift to the right »10, you're doing this algorithm:
- if not in the last 10 bits (which corresponds to the last 10 bottom segments of the spiral), then do: right »6, left »7, left »2
- if in the last 10 bits, then do: up »0, left »1, left »2
- each first rotation to the (right ») requires you to simply "change floors" of the spiral (which equates to changing from the higher order part of the binary string to the lower order part, or vice versa)
I believe this system is a great start for buliding such a machine, which is why I spent so much time on it. it could most likely be optimized even more, but so far its' just me working on it, and I am most definitely not the brightest of minds that can be found in this area
edit: the optimizations I mention are in the amount of work a human or mechanical device needs to do, think more in "joules" and less in high-level lines of code