[Coco] assembly questions?

KnudsenMJ at aol.com KnudsenMJ at aol.com
Fri Jul 23 11:52:45 EDT 2004


Thanks -- I myself have always wondered why TFR and EXG were so slow!
Part of the problem seem s to be always treating them as 16-bit operations, 
so TFR A,B takes as long as TFR X,Y.

And the other is using that internal temp reg, which turns out not to be 
needed -- see below.

In a message dated 7/23/04 7:53:52 AM Eastern Daylight Time, 
jdaggett at gate.net writes:

> with the TFR instrtruction the third and fourth cycle write R1 to a temp 
> register internally. On cycle 5 and 6 the temp register is written to R2.

This sounds like an explanation I heard years ago, but below we see the temp 
wasn't needed. . .

>  With the EXG instruction the third and fourth cycle writes R1 to the temp 
> register. 
>  On the fifth and six instruction the contents of R2 is written to R1. On 
the 
> seventh  and eighth cycles the temp register is sritten to R2.

Since R2 was written directly to R1, the TFR instruction could have bypassed 
the intermediate register too.  But I guess this implementation simplified the 
control sequencing.  Remember, the 6809 was, and remains, the most 
sophisticated 8/16-bit micro ever made -- or darn close to it.

Thanks again for the details.  BTW, does the 6309 cut out any of these 
intermediate steps?  Maybe use a 16-bit internal bus?!?  --Mike K.




More information about the Coco mailing list