[Coco] CoCo gcc project
John Donaldson
jadonaldson at charter.net
Sun Nov 2 14:58:00 EST 2003
The fastest divide is a shift command. IIRC, one way does multiply by
2 the other does divide
by 2.
John Donaldson
KnudsenMJ at aol.com wrote:
>In a message dated 10/31/03 3:16:59 PM Eastern Standard Time,
>jdaggett at gate.net writes:
>
>
>
>>I wished the 6809 had a DIV instruction!!!! Some base code to implement
>>
>>
>what the
>
>
>> HC11 FDIV and IDIV instructions would be nice. Then you have 16 bit by 16
>>bit divide.
>>
>>
>
>To merge with another thread, the Star Wars arcade game used a 6809 and had
>an outboard hardware divide board, built of 7400-series TTL ICs. Don't recall
>how many clocks it took.
>
>If you look at the stock OS-9 C libraries, you will find various integer and
>floating point math routines, including signed and unsigned divide routines.
>Don't know how optimized they are. From my own gory/glory days of writing
>math routines, ISTR that non-restoring divides are faster, at the expense of a
>few more lines of code, but you don't execute all the code for every bit.
>
>For a different approach to trig and other functions, check out BASIC09's
>math routines, which use CORDIC rotation approximations -- faster than series
>expansion. You'd have to figure out how they work and re-write for C's floating
>point. Oh yes, 6809 C library already includes "double" precision routines,
>no doubt really slow, but what can you expect? And who would use them on a
>6809 anyway? --Mike K.
>
>
>
More information about the Coco
mailing list