Well, here they are the first tracker module players for the Sun
Sparcstations. There are 2 players, one for the 15 sample modules and one for
the 32 sample ones (or should that be 31 :-). The code is not that different,
but I could not be bothered to write an auto detection routine that worked on
Usage is very simple, either give the player the filename of the module, or if
the module is compressed(frozen) you can zcat(fcat) and pipe the result into
the player thus :
zcat module.z | str32
fcat module.F | str32
If you have a new module and are unsure of which player (str15 or str32) to
use then try both. If you choose the wrong one then you may get an error
message or nothing at all will happen (except maybe a core dump :-). For
this reason I keep my trackers in separate directories so that I know which
player to use.
Not many effects are implemented, so the result may not be exactly the same as
an Amiga player, but it is usually OK. The sound quality of the /dev/audio is
not too hot, so some sounds are lost, usually the bass.
The only error not totally self-explanatory is the 'corrupt input file' one.
This sometimes indicates that you have used the wrong player, but
occassionally it may be that the module is too short by a few bytes. I have
only come accross this in a couple of cases and just appending a few null
bytes to the end usually cures this.
I may get around to combining the players into a single program and enhancing
the error detection a bit, but then again I might not :-). If anyone else
wants to add these functions, add more effects or correct any errors there may
be in the current programs then please go ahead - I hope the code is
understandable enough for you.
Most of the code is copyright me. The convert routine is copyright Rich
Gopstein and was borrowed from the iff2ulaw utility. The code is freely
distributable as long as this message and the copyright messages in the source
are included. You are welcome to update the source code.
Liam Corner - University of Warwick - 1st November 1991[email protected][email protected]
Version 1.2 - 3rd November 1991
Thanks to Marc Espie for doing most of the first update. There is now only
one player str15 and a link from str32 to str15, so you will still have to
choose the correct player for a given module. There is now output showing
module name, sample names and progress through the module as it plays. More
effects are implemented and a bug with the sample repeat loop has been fixed.