Some notes about 020+
Most of 020 cycletimes are same than on 030; haven't found any differenties.
;-------------------------
...
clr.l -(a0)
clr.l -(a0)
...
is 25% faster than
...
clr.l (a0)+
clr.l (a0)+
...
;-------------------------
move.l (a0,d0.l) is faster than
move.l (a0,d0.w)
same with adda.w <-> adda.l etc.
;-------------------------
move.b d0,-(a7) will decrease a7 with 2!
;-------------------------
Never use those silly #xx,([a0]) new modes, they are slower than
move.l (a0),a0
move.l #xx,(a0)
...case you have no extra spare registers, but... that's rare.
;-------------------------
Time-optimizing on A1200 is more sparing BUS than CPU; the CHIP RAM
is just too slow.. Remember to adjust your WRITES to CHIP; Adjusting
memory READS wont do you no good. (Naturally, how could computer keep
going on without knowing have we read something we're using?)
;--------------------
Interrupts are deadly slow, try to figure out something better.. like
Copper ;-) Just plain movem*2, Trap and RTE will take HUGE amount of
cycles.
movem.l all,-(sp)
movem.l (sp)+,all
rte
will take about 80 Cycles... okey, why use all regs ;-)
HTML Conversion by AG2HTML.pl V2.941126c, perl $RCSfile: notes020+.HTML,v $$Revision: 1.1 $$Date: 1999/09/14 21:14:11 $
Patch level: 36
& witbrock@cs.cmu.edu