Another Gigatron Instruction Set Question.
Posted: 01 Apr 2019, 22:51
Some aspects of the Gigatron remind me of the 6502, which shouldn't be a shock since they're both eight bit CPU's with three registers. One similarity is that it is possible to load X or Y with a load instruction, or to move a value from the accumulator into them. For example, I think this:
ld [$17] ; load AC with RAM test and count
st [$17],y ; store AC into y (tay on the 6502)
loads y with the value in ac, and the [$17] is basically ignored, while this:
ld [$17],y ; load contents of $17 into y.
directly loads the contents of $17 into Y.
Is my understanding correct?
Given that this kind of duplicates functionality between load and store. I'm curious if this fell out of the design for free, or was effort required to include it? if you omitted one of these modes could you have re-purposed an addressing mode for another purpose?
Register shift instructions are handy, and I think you can shift left by adding the accumulator to the accumulator, but I'm not sure how a right shift is achieved.
ld [$17] ; load AC with RAM test and count
st [$17],y ; store AC into y (tay on the 6502)
loads y with the value in ac, and the [$17] is basically ignored, while this:
ld [$17],y ; load contents of $17 into y.
directly loads the contents of $17 into Y.
Is my understanding correct?
Given that this kind of duplicates functionality between load and store. I'm curious if this fell out of the design for free, or was effort required to include it? if you omitted one of these modes could you have re-purposed an addressing mode for another purpose?
Register shift instructions are handy, and I think you can shift left by adding the accumulator to the accumulator, but I'm not sure how a right shift is achieved.