6 Derwent Drive
Littleborough
Lancs OL15 0BT
+44 1706 378086
s.j.tattersall@cms.salford.ac.uk

This is the docfile for the non-SSI code for the Art Of Noise tracker.
The code is intended as a combined DSP-Operating System and tracker
player, but I have not included any source about the OS because 
you will probably have your own code. The player is quite fast and
can do either 25Khz or 33Khz at 8 bits stereo.

It should be fairly easy to understand how to switch on the music
and switch it off, bu reading the routines at the top of the code.

 


Important Notes
---------------

There is one very important thing if you use this code, that is DO
NOT RESET THE DSP as this will kill the tracker player. Instead you
must find a way to switch your DSP programs in and out (that is why
I have a little OS routine)

The player uses only X memory above X:$3000 and uses as little memory
as possible, so you can use lots for your own routines.

Try not to alter the m0 register either, or do silly pipelining tricks:
this could in extreme circumstances lead to a big crash like in the
Sonolumineszenz demo...


Accessing the Host Port
-----------------------
Because both your DSP routines and the DSP player will use the host port,
you must be very careful how you send data to the DSP and receive data.
This is a design fault of the DSP and is very hard to conquer, but we
try to use a routine to limit the problem: The player routine saves the
data that is in the host port before the player interrupt, then restores
it. But there are things you should know when using the code:-

Please try to access the DSP in only one instruction e.g. CLR.L $FFFFA204.W
and not CLR.B $FFFFA205.W // CLR.W $FFFFA206.W - if the tracker interrupt
occurs between the two instructions.

It also helps to switch the interrupts off with MOVE.W #$2700,SR or
similar when accessing the host port. This is not nice but hinders the
tracker interrupt when sending/receiving data. Don't switch it off for
too long though!  1/3 of a VBL is about the maximum recommended.


Conclusion
----------

So this code is not very easy to use, but making a fast demo with DSP
routines and music never will be... I wish you luck.





Steve Tattersall
tat/avena 21.4.97










