summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/sound/5110intf.h
blob: 8ec02891475ad9bd952263d9819b0d8b70db6b1c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#pragma once

#ifndef __5110INTF_H__
#define __5110INTF_H__

/* clock rate = 80 * output sample rate,     */
/* usually 640000 for 8000 Hz sample rate or */
/* usually 800000 for 10000 Hz sample rate.  */

typedef struct _tms5110_interface tms5110_interface;
struct _tms5110_interface
{
	int (*M0_callback)(const device_config *device);	/* function to be called when chip requests another bit */
	void (*load_address)(int addr);	/* speech ROM load address callback */
};

WRITE8_HANDLER( tms5110_ctl_w );
WRITE8_HANDLER( tms5110_pdc_w );

READ8_HANDLER( tms5110_status_r );
int tms5110_ready_r(void);

void tms5110_set_frequency(int frequency);

SND_GET_INFO( tms5110 );
SND_GET_INFO( tms5100 );
SND_GET_INFO( tms5110a );
SND_GET_INFO( cd2801 );
SND_GET_INFO( tmc0281 );
SND_GET_INFO( cd2802 );
SND_GET_INFO( m58817 );

#define SOUND_TMS5110 SND_GET_INFO_NAME( tms5110 )
#define SOUND_TMS5100 SND_GET_INFO_NAME( tms5100 )
#define SOUND_TMS5110A SND_GET_INFO_NAME( tms5110a )
#define SOUND_CD2801 SND_GET_INFO_NAME( cd2801 )
#define SOUND_TMC0281 SND_GET_INFO_NAME( tmc0281 )
#define SOUND_CD2802 SND_GET_INFO_NAME( cd2802 )
#define SOUND_M58817 SND_GET_INFO_NAME( m58817 )

#endif /* __5110INTF_H__ */