5
#define BUILD_YMF262 (HAS_YMF262)
8
/* select number of output bits: 8 or 16 */
9
#define OPL3_SAMPLE_BITS 16
11
/* compiler dependence */
14
typedef unsigned char UINT8; /* unsigned 8bit */
15
typedef unsigned short UINT16; /* unsigned 16bit */
16
typedef unsigned int UINT32; /* unsigned 32bit */
17
typedef signed char INT8; /* signed 8bit */
18
typedef signed short INT16; /* signed 16bit */
19
typedef signed int INT32; /* signed 32bit */
22
#if (OPL3_SAMPLE_BITS==16)
23
typedef INT16 OPL3SAMPLE;
25
#if (OPL3_SAMPLE_BITS==8)
26
typedef INT8 OPL3SAMPLE;
30
typedef void (*OPL3_TIMERHANDLER)(int channel,double interval_Sec);
31
typedef void (*OPL3_IRQHANDLER)(int param,int irq);
32
typedef void (*OPL3_UPDATEHANDLER)(int param,int min_interval_us);
38
int YMF262Init(int num, int clock, int rate);
39
void YMF262Shutdown(void);
40
void YMF262ResetChip(int which);
41
int YMF262Write(int which, int a, int v);
42
unsigned char YMF262Read(int which, int a);
43
int YMF262TimerOver(int which, int c);
44
void YMF262UpdateOne(int which, INT16 **buffers, int length);
46
void YMF262SetTimerHandler(int which, OPL3_TIMERHANDLER TimerHandler, int channelOffset);
47
void YMF262SetIRQHandler(int which, OPL3_IRQHANDLER IRQHandler, int param);
48
void YMF262SetUpdateHandler(int which, OPL3_UPDATEHANDLER UpdateHandler, int param);