-
Notifications
You must be signed in to change notification settings - Fork 0
Sam Coupe song player library
License
Deltafire/SCPlayer
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
SAM Coupé song replayer library =============================== Background: The SAM Coupé is an 8-bit British home computer that was first released in late 1989. It is commonly considered a clone of the Sinclair ZX Spectrum computer, since it features a compatible screen mode and emulated compatibility, and it was marketed as a logical upgrade from the Spectrum. Six channel, 8 octave stereo sound is provided by a Philips SAA 1099 chip. Purpose: The purpose of this library is to replay SAM Coupé song files (these generally have the extension .sng or .cop). This is achieved by the use of a Z80 CPU emulator coupled to a SAA1099 audio chip emulator, with some RAM thrown in. The Z80 replayer routine is either included with the song files, or the E-Tracker replayer is used (this is stored in the library itself). It is intended that this library is used to develop input plugins for multi-format media players. However, a simple SDL test player (scplay) is included for reference and to test playback. Installation: This project uses the cmake build system. Typical build steps are as follows: $ mkdir build $ cd build $ cmake .. $ make $ make install (optional) The command line player 'scplay' is built only if SDL is detected. Usage: For the command-line player (if installed and in the path): scplay <filename> The following command line arguments are accepted: -d <duration> stop playback after 'duration' seconds -n disable looping when playing eTracker songs -o write audio to stdout, raw S16 stereo For use of the replayer library in your own projects, you will need the header file "SCPlayer.h" and the libscplayer library file. If you have installed the package, these should be available in PREFIX/include and PREFIX/lib. Please refer to the source code of scplay.cpp for an example usage of this library. 1. Include "SCPlayer.h" 2. Create a SCPlayer object (named player for the purpose of these directions). 3. player.load(<filename>) 4. player.init(<Mixer frequency>) 5. Call player.generate(<pointer to buffer>, <length in bytes>) to generate audio samples. 6. Link with libscplayer. Credits: SAASound library: Dave Hooper <[email protected]> http://sourceforge.net/projects/saasound/ Z80 CPU emulator: Marat Fayzullin http://fms.komkon.org/ E-Tracker replayer (Z80 binary): Ethanol Software Inc (ESI) Maciej J. Woloszyk (Mat) Andrzej Siuda (Ziutek) This package/library: Christopher O'Neill <[email protected]> Thanks to Spot / Up Rough for the idea, motivation and beta testing.
About
Sam Coupe song player library
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published