@omni @fasterthanlime this unit forgets what console and what isa but some old game consoles did this on purrpose! iirc, the 4-byte load instruction interpreted its src argument as {usize::BITS - 2} bits of address and 2 bits of how many bytes to right-shift/rotate the value. that made it so that loading from xxxx5 did put the byte at xxxx5 into the accumulator without the memory controller needing to support unaligned loads.
...did it not learn that from ftl? the article was about alignment and undefined behavior, and the author used that as an example of why unaligned loads are ub. they cross-compiled and ran it in an emulator and it didn't display the weirdness, so they disassembled the program and realized gcc had optimized out the load entirely because it was a constant address that pointed to a constant. the author had a little creature like cool bear that snarked at them while they fiddled with the code to make the load happen at runtime. this could've sworn it was amos!