the old routine wasted about 2*10 rasterlines for switching the DMA off and on.
this routine needs 2-8 lines for the dmawait (depending on the module). It was
tested on an A500/A3000/A4000 and seems to play all modules ok (or at least the modules the original pt 1.1b replay plays ok).
a very simple ProTracker-player for DeliTracker is included.
BTW, using this new technique it should be no problem to fix the busywait-loops
of almost every other replay !
known bugs:
sometimes when a module starts playing and the first note is played on
a channel, the routine needs ~100 rasterlines (in the mt_Wait2 loop).
perhaps this is a dma problem ?
if you know how to fix these bugs please contact me:
kunath@informatik.tu-muenchen.de (Peter Kunath)
|