2 ms·
> This was done (memory is fuzzy here) by preloading the return address onto a register pair and then calling the function. When the function was done, it would
by RiverCrochet 3y ago
> This was done (memory is fuzzy here) by preloading the return address onto a register pair and then calling the function. When the function was done, it would do an indirect jump to the location held in that register pair, which would return to the next instruction after the call.
This is pretty much what the MIPS `jal` and ARM `BL` do. TMS9900 also did something similar (edit: it had a `BL` instruction too.)
I was fascinated by the fact the Signetics 2650 that had an 8-byte internal stack.
- HeyLaughingBoy 3y agoMC68xx series also had a 16-bit indexed jump. It's a very useful instruction.