Hi Lawrence,
With the new SP and TA, one would use SP to call a
subroutine, and the
first instruction of any subroutine would be TA to save the return
address into the final location of the subroutine. (TA only modified
the low 11 bits of the 16 bit location)
Before these instructions, a subroutine call would require one
additional memory location, to hold the return address for each point
of call, and one additional instruction, one to load the return
address into the accumulator and one to store it into the code at the
end of the subroutine. (The latter could be the first instruction of
the subroutine.)
So before SP and TA, would the ‘latter’ instruction at the start of the
subroutine, which stores the accumulator holding the return address, be
modifying all sixteen bits of the location unlike TA which only modifies
the bottom eleven?
If so, did the accumulator's top bits hold the ‘return’ op-code or was
there another instruction near the subroutine's end which loaded the
11-bit address before a second instruction jumped to it?
--
Cheers, Ralph.