[Coco] CoCo 3 MMU test for all
Roger Taylor
operator at coco3.com
Mon Jan 21 21:01:40 EST 2008
At 05:31 PM 1/21/2008, you wrote:
>How? LDB ,X and LDB 0,X should yield the same results from any
>assembler.
>
>Most assemblers should realize that LDB 0,X is indexed mode with no
>offset. Even if it does compute an offset it will either be a 5 or 8
>bit offset of
>zero. The last time a value was added to zero, the value was returned.
>Suggesting that a different value is read would imply that the two
>instructions are reading from different addresses.
>
>james
I remember Robert Gault and I doing a lot of testing in areas like
this when I was first writing my CCASM assembler.
CCASM builds different operands for ,x and 0,x. ,x is a no-offset
mode while 0,x forces an offset of 0 bytes.
The difference in modes like this can be cycles and/operand size.
CCASM also uses 5 bit offsets whenever possible where I think EDTASM
uses 8 bits or even larger sometimes for forward references, but it's
been a while since I dug deep into these matters and I'm a bit foggy
on *all* of the details. Major information overload. :)
More information about the Coco
mailing list