[Coco] Quick 6809 Q for night owls in the US
mechacoco at gmail.com
Tue Apr 15 11:09:30 EDT 2014
On Tue, Apr 15, 2014 at 8:26 AM, William Astle <lost at l-w.ca> wrote:
> On 14-04-15 08:16 AM, Mark McDougall wrote:
>> On 16/04/2014 12:04 AM, Mark McDougall wrote:
>> It's late here, and seeing 'dex' in Boisy's Liber809 blog had me really
>>> confused because I couldn't find it in any instruction set listings...
>> Hah! The 'dex' was actually in the 6502 portion of the listing - I used
>> it thinking it was 6809 and turns out it was actually supported on the
>> AS6809 assembler for '6800 compatibility'!!! :O
>> How's that for dumb luck!?! ;)
> There's a whole list of such instructions described in the Leventhal book
> which explains how "the 6809 assembler supports this instruction for
> compatibility with XXXX. …
Motorola advertised the 6809 as being "source compatible" with the 6800. A
compliant assembler for the 09 should be able to accept all 6800
instructions. Incompatibilities involving the Carry flag in TST and
CPX/CMPX instructions can still be an issue.
I relied on this recently while translating the CoCo game "Space Assault"
to run on the MC-10. I took one or two subroutines at a time and converted
them to 6803 equivalents.The whole (mixed instruction) program was then
assembled with AS9 and tested to see if it still worked correctly on the
CoCo. Eventually I ended up with source that would assemble for both the
CoCo and MC-10. Conditional assembler directives were needed only for the
memory map and I/O definitions.
More information about the Coco