[Coco] lwtools assembler difference

David Ladd davidwladd at gmail.com
Tue Sep 1 16:36:50 EDT 2015


Robert, thank you for verifying this.

On Tuesday, September 1, 2015, Robert Gault <robert.gault at att.net> wrote:

> Dave Philipsen wrote:
>
>> Well, in my comparison of the code generated by the lwtools assembler and
>> the
>> stock OS9 assembler I have found a quirk of the lwtools assembler.  I
>> won't call
>> it an error because it appears that the outcome is not affected and it
>> seems to
>> be a minor thing.  On every other assembler I've used including AS6809,
>> CSC6809,
>> and the stock OS9 assembler the following assembly source:
>>
>> ldb  ,x
>>   or
>> ldb 0,x
>>
>> is assembled in machine code as:
>>
>> E6 84
>>
>> which is the indexed addressing mode with no offset
>> However, the lwtools assembler (evidently) assembles in machine code as:
>>
>> E6 00
>>
>> which is the indexed addressing mode with a 5-bit offset with the offset
>> being
>> zero.
>>
>> I dont have a copy of EDTASM anymore so I can't say how it would assemble
>> it.
>> This just seems to be the case of a smart assembler which determines the
>> given
>> offset to be zero and thus translates it as a "no offset" postbyte as
>> opposed to
>> a "5-bit offset" postbyte.
>>
>> Dave Philipsen
>>
>>
>>
> EDTASM will give you the following results:
>
>  ldb ,x
> get
>  $E6 $84
>
>  ldb 0,x
> get
>  $E6 $00
>
> Robert
>
>
> --
> Coco mailing list
> Coco at maltedmedia.com
> https://pairlist5.pair.net/mailman/listinfo/coco
>


-- 
Sent from Gmail Mobile on iOS.


More information about the Coco mailing list