rtoss - Blame information for rev 79

Subversion Repositories:
Rev:
Rev Author Line No. Line
79 roytam 1 #ifndef AY8910_H
2 #define AY8910_H
3  
4 #include "fm_def.h"
5  
6 #define MAX_8910 5
7 #define ALL_8910_CHANNELS -1
8  
9 struct AY8910interface
10 {
11         int num;        /* total number of 8910 in the machine */
12         int baseclock;
13         mem_read_handler portAread[MAX_8910];
14         mem_read_handler portBread[MAX_8910];
15         mem_write_handler portAwrite[MAX_8910];
16         mem_write_handler portBwrite[MAX_8910];
17         void (*handler[MAX_8910])(int irq);     /* IRQ handler for the YM2203 */
18 };
19  
20 void AY8910_reset(int chip);
21  
22 void AY8910Update(int chip,INT16 **buffer,int length);
23 void AY8910_set_clock(int chip,int _clock);
24  
25 void AY8910Write(int chip,int a,int data);
26 int AY8910Read(int chip);
27  
28 int AY8910_sh_start(const struct MachineSound *msound, int sample_rate);
29 void AY8910_sh_stop(void);
30 void AY8910_sh_reset(void);
31  
32 /*********** An interface for SSG of YM2203 ***********/
33  
34 /* When both of AY8910 and YM2203 or YM2608 or YM2610 are used.      */
35 /* It must be called AY8910_sh_start () before AY8910_sh_start_ym()  */
36  
37 extern int ay8910_index_ym;
38  
39 void AY8910_sh_stop_ym(void);
40 int AY8910_sh_start_ym(const struct MachineSound *msound, int sample_rate);
41 #endif