PlayTrack V1.0 by Stuart A. MacLean IMPORTANT: Distribution of PlayTrack PlayTrack is FREEWARE. The author gives permission for PlayTrack to be freely distributed providing that no commercial gain is made from its distribution, and no modification is made either to the code or this document. DISCLAIMER This software is provided "as-is" and the author accepts no responsibility for damage and/or loss of data/equipment resulting from the use of this software. (This is not very likely as I have tested this software very extensively on my system ;-) ) This archive should contain the following files. PlayTrack : main program. PlayTrack.prefs : preference program. PlayTrack.doc : this documentation file. Source/PlayTrack.s : source code for this program. Source/Resource.h : C include file for resource functions. Source/Resource.i : assembler file for resource functions. Source/Resource.s : a copy of my resource function source code. Source/Resource.o : a link file of Resource.s I have decided to include the source code so that you may use some its functions in your own programs if you wish. PlayTrack is (C) 1997 by Stuart A. MacLean of X-Reality Software Ltd. WHAT IS PLAYTRACK? PlayTrack is a CDDA player which works via a simple command line interface which allow the you to select what tracks you want to listen to from your CD. PlayTrack works by sampleing the audio information from the CD-ROM and playing it back through the Amiga's sound hardware using a recoded rendition of Christian Buchner's 14-bit audio device. Unfortunately however PlayTrack will only work on CD-ROM drives which have the ability to read samples from CDDA formated CD-ROMs. Such drives that I know that have this ability are: TOSHIBA-3401 APPLE CD-150 APPLE CD-300 PLEXTOR 4x+ (this is the one I use) From what I can I understand it is only some SCSI-II CD-ROMs which have this ability (but then again I maybe wrong) - If this program works on your CD-ROM and it is not one of the above mentioned then drop me an e-mail and tell me about it. INSTALLATION: The first thing you will need to is configure the preferences file which called (obviously) "PlayTrack.prefs" which should be copied into your S: directory. There are three attributes present in this file DEVICE,UNIT,QUALITY. DEVICE should be set to the device name of which your Amiga uses to talk to your CD-ROM driver. e.g. To use "gvpscsi.device" : DEVICE=gvpscsi.device UNIT is the unit number of your CD-ROM driver is set to. e.g. If your CD-ROM is unit number 3 : UNIT=3 QUALITY is the playback quality that the 14-bit playback routine will use. With 1 being the highest quality (but also 1 might be physically impossible to playback through your audio hardware at the correct playback speed) with the number increaseing as the quality decreases. I personally recommending setting this to '2' but if you don't have the CPU speed to handle 14-bit conversion then use a higher numerical setting. e.g. Setting quality to 2 : QUALITY=2 Example of prefs file put together: DEVICE=gvpscsi.device UNIT=3 QUALITY=2 The preference file should then be saved in your S: directory. Now copy PlayTrack to where you want to put it (most likely C:) and ya-bing you are ready to go. REQUIREMENTS: The minimum requirements are: Kickstart 2.04 MC68020-processor and A CD-ROM drive capable of reading CDDA samples from disk. USAGE: The usage couldn't be any more simpler. To run type "PlayTrack" and this is followed by the number's of the different tracks that you want to play. e.g. To play tracks 1, 3, 4 and 7 type. PlayTrack 1 3 4 7 When playing CTRL-D can be used to skip a track and CTRL-C can be used to exit the program. HOW DOES PLAYTRACK WORK? PlayTrack deviates greatly from the standard CD-ROM player in that it doesn't play the CD back by using the CD-ROM drive exactly as a HI-FI CD player would play back CDs, in which only the hardware inside the CD-ROM is used. Instead the sample information is read from the CD-ROM into memory from which it can then be replayed back through the Amiga's audio hardware using a 14-bit player. So the main program contains two parts which work together in a continous loop: 1)Reading the sample information from the CD-ROM into memory. 2)Taking the sample and playing it back through the 14-bit player. This cycle uses 3 buffers in memory which are continously recycled around and around, to give the full effect of a continously playing sample. On top of this I have used a series of resource and error handlers which can deal with allocating and freeing any resources which are used by the program. Also it detects any errors which occurs due to failer to allocate the appropriate resource. At this point I should give a big thank you to Christain Buchner for his work on his CyberSound program without which I would not have been able to write this program. BUGS: Please report all bugs to me if you find any. The fact that playtrack will is crackle and seem to be scratched when you are doing heavy disk accessing, processor or blitter intensive operations is due to the fact that the CD-ROM is not able to get the information from the CD-ROM effectively enough due to other hardware interference. HISTORY: PlayTrack is a desendant of an old but still on going project which I have come back to again after a peroid of leaving it to rest - This is AudioCD which you may have heard about as I did released a beta-test back in Autumn 1996. The program caused to many crashes and failures so I left but when I came back to this I wrote this program first before going back to rework on AudioCD as test programming to see if I could improve the code. This I did and I was so pleased with the result I decided to release it. HOW TO CONTACT ME: I can be contacted across e-mail via or you can telephone me on (Britain) 01360-770388.