This is an example of the classic algorithmic fire. Written to see how easy (or difficult) it is to manipulate an image in memory, it proved to be an excellent testbed for a comparative review of the GCC and CodeWarrior compilers, the effects of the various optimisation levels, and for testing the effect of the 1K data cache on performance. This is a good example to use because calculating each new frame is so processor intensive that removing even a couple of instructions or memory accesses from the inner loop can have spectacular results.
If you're interested in the optimisations I've made in order to get a frame rate of 50 fps., and a comparison of the execution times of the programs generated by CodeWarrior and by GCC they are available separately. |