The 6809 has 59 instructions, as compared with 78 on the 6800. So far as I can see, the 6809 lacks instructions that the 6800 has, such as `aba`, `eorb` and the transfer instructions (`tba`, `tap` and the like).

Still, Wikipedia claims:

> 
> The 6809 is assembler source-compatible with the 6800, though the 6800 has 78 instructions to the 6809's 59. Some instructions were replaced by more general ones which the assembler translated into equivalent operations and some were even replaced by addressing modes. 
> 
> 
> 

I can imagine that an assembler might have replaced the instructions I mentioned by a code-sequence that involved a temporary memory location. But this would have sacrificed some compatibility with programs that happen to use the same location.

How was source-compatibility with the 6800 achieved?

(An aside, that's not really part of the question, but if you feel like elaborating on this in your answer, if you know how useful this feature was For example, how compatible was it really? Were any software titles known to have been built for both processors? etc. etc.)