summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/sound/3812intf.h
blob: d635eee652b4551802702136274bcfae99db7df8 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#pragma once

#ifndef __3812INTF_H__
#define __3812INTF_H__


typedef struct _ym3812_interface ym3812_interface;
struct _ym3812_interface
{
	void (*handler)(running_machine *machine, int linestate);
};

#define ym3526_interface ym3812_interface

typedef struct _y8950_interface y8950_interface;
struct _y8950_interface
{
	void (*handler)(running_machine *machine, int linestate);

	read8_space_func keyboardread;
	write8_space_func keyboardwrite;
	read8_space_func portread;
	write8_space_func portwrite;
};


/* YM3812 */
READ8_HANDLER ( ym3812_status_port_0_r );
WRITE8_HANDLER( ym3812_control_port_0_w );
READ8_HANDLER( ym3812_read_port_0_r );
WRITE8_HANDLER( ym3812_write_port_0_w );

READ8_HANDLER ( ym3812_status_port_1_r );
WRITE8_HANDLER( ym3812_control_port_1_w );
READ8_HANDLER( ym3812_read_port_1_r );
WRITE8_HANDLER( ym3812_write_port_1_w );

SND_GET_INFO( ym3812 );

/* YM3526 */
READ8_HANDLER ( ym3526_status_port_0_r );
WRITE8_HANDLER( ym3526_control_port_0_w );
READ8_HANDLER( ym3526_read_port_0_r );
WRITE8_HANDLER( ym3526_write_port_0_w );

READ8_HANDLER ( ym3526_status_port_1_r );
WRITE8_HANDLER( ym3526_control_port_1_w );
READ8_HANDLER( ym3526_read_port_1_r );
WRITE8_HANDLER( ym3526_write_port_1_w );

SND_GET_INFO( ym3526 );

/* Y8950 */
READ8_HANDLER ( y8950_status_port_0_r );
WRITE8_HANDLER( y8950_control_port_0_w );
READ8_HANDLER ( y8950_read_port_0_r );
WRITE8_HANDLER( y8950_write_port_0_w );

READ8_HANDLER ( y8950_status_port_1_r );
WRITE8_HANDLER( y8950_control_port_1_w );
READ8_HANDLER ( y8950_read_port_1_r );
WRITE8_HANDLER( y8950_write_port_1_w );

SND_GET_INFO( y8950 );

#endif /* __3812INTF_H__ */