1 #ifndef tms5220_h
2 #define tms5220_h
3 
4 void tms5200_init();
5 void tms5220_init();
6 void tms5220c_init();
7 void tms5200_init(INT32 (*pCPUCyclesCB)(), INT32 nCpuMHZ); // init for buffered.
8 void tms5220_init(INT32 (*pCPUCyclesCB)(), INT32 nCpuMHZ); // init for buffered.
9 void tms5220c_init(INT32 (*pCPUCyclesCB)(), INT32 nCpuMHZ); // ""
10 void tms5220_exit();
11 void tms5220_reset();
12 void tms5220_scan(INT32 nAction, INT32 *pnMin);
13 void tms5220_volume(double vol);
14 
15 void tms5220_write(UINT8 data);
16 void tms5220_rsq_w(UINT8 state);
17 void tms5220_wsq_w(UINT8 state);
18 
19 UINT8 tms5220_status(); // read
20 UINT8 tms5220_ready();  // read
21 UINT8 tms5220_cycles(); // to ready
22 UINT8 tms5220_irq(); // read interrupt state
23 
24 void tms5220_set_frequency(UINT32 freq);
25 void tms5220_update(INT16 *buffer, INT32 samples_len); // render samples
26 
27 #endif
28