summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/equites.h
blob: 057819ac9ecb913a5f5c930150aecae589321699 (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
#define POPDRUMKIT 0


typedef struct _equites_state equites_state;
struct _equites_state
{
	/* memory pointers */
	UINT16 *  bg_videoram;
	UINT8  *  fg_videoram;	// 8bits
	UINT16 *  spriteram;
	UINT16 *  spriteram_2;
	UINT16 *  workram;
	UINT8  *  mcu_ram;	// 8bits
//  UINT16 *  nvram;    // currently this uses generic nvram handling

	/* video-related */
	tilemap   *fg_tilemap, *bg_tilemap;
	int       fg_char_bank;
	UINT8     bgcolor;
	UINT16    splndrbt_bg_scrollx, splndrbt_bg_scrolly;

	/* misc */
	int       sound_prom_address;
	UINT8     dac_latch;
	UINT8     eq8155_port_b;
	UINT8     eq8155_port_a,eq8155_port_c,ay_port_a,ay_port_b,eq_cymbal_ctrl;
	emu_timer *nmi_timer, *adjuster_timer;
	float     cymvol,hihatvol;
	int       timer_count;
	int       unknown_bit;	// Gekisou special handling
#if POPDRUMKIT
	int       hihat,cymbal;
#endif

	/* devices */
	const device_config *mcu;
	const device_config *audio_cpu;
	const device_config *msm;
	const device_config *dac_1;
	const device_config *dac_2;
};


/*----------- defined in video/equites.c -----------*/

extern READ16_HANDLER(equites_fg_videoram_r);
extern WRITE16_HANDLER(equites_fg_videoram_w);
extern WRITE16_HANDLER(equites_bg_videoram_w);
extern WRITE16_HANDLER(equites_scrollreg_w);
extern WRITE16_HANDLER(equites_bgcolor_w);
extern WRITE16_HANDLER(splndrbt_selchar0_w);
extern WRITE16_HANDLER(splndrbt_selchar1_w);
extern WRITE16_HANDLER(equites_flip0_w);
extern WRITE16_HANDLER(equites_flip1_w);
extern WRITE16_HANDLER(splndrbt_flip0_w);
extern WRITE16_HANDLER(splndrbt_flip1_w);
extern WRITE16_HANDLER(splndrbt_bg_scrollx_w);
extern WRITE16_HANDLER(splndrbt_bg_scrolly_w);

extern PALETTE_INIT( equites );
extern VIDEO_START( equites );
extern VIDEO_UPDATE( equites );
extern PALETTE_INIT( splndrbt );
extern VIDEO_START( splndrbt );
extern VIDEO_UPDATE( splndrbt );