musix 0.3.5

Music player library for esoteric audio formats (music from C64,Amiga etc)
Documentation
#include "s98types.h"

enum {
	S98DEVICETYPE_PSG_YM  = 1,
	S98DEVICETYPE_OPN  = 2,
	S98DEVICETYPE_OPN2 = 3,
	S98DEVICETYPE_OPNA = 4,
	S98DEVICETYPE_OPM  = 5,
	S98DEVICETYPE_OPLL = 6,
	S98DEVICETYPE_OPL  = 7,
	S98DEVICETYPE_OPL2 = 8,
	S98DEVICETYPE_OPL3 = 9,
	S98DEVICETYPE_PSG_AY = 15,
	S98DEVICETYPE_SNG  = 16,
	S98DEVICETYPE_NONE = 0
};

typedef Int32 Sample;

class S98DEVICEIF
{
public:
	virtual ~S98DEVICEIF() {};
	virtual void Init(Uint32 clock, Uint32 rate) = 0;
	virtual void Reset(void) = 0;
	virtual void SetReg(Uint32 addr, Uint32 data) = 0;
	virtual void Mix(Sample* buffer, int nsamples) = 0;
	virtual void Disable(void) = 0;
	virtual void SetPan(Uint32 pan) = 0;
};

S98DEVICEIF *CreateS98DevicePSG(bool);
S98DEVICEIF *CreateS98DeviceOPN(void);
S98DEVICEIF *CreateS98DeviceOPN2(void);
S98DEVICEIF *CreateS98DeviceOPNA(void);
S98DEVICEIF *CreateS98DeviceOPM(void);
S98DEVICEIF *CreateS98DeviceOPLL(void);
S98DEVICEIF *CreateS98DeviceSNG(void);
S98DEVICEIF *CreateS98DeviceOPL(void);
S98DEVICEIF *CreateS98DeviceOPL2(void);
S98DEVICEIF *CreateS98DeviceOPL3(void);