10
10
tecmosys_state(const machine_config &mconfig, device_type type, const char *tag)
11
: driver_device(mconfig, type, tag) { }
11
: driver_device(mconfig, type, tag) ,
12
m_spriteram(*this, "spriteram"),
13
m_tilemap_paletteram16(*this, "tmap_palette"),
14
m_bg2tilemap_ram(*this, "bg2tilemap_ram"),
15
m_bg1tilemap_ram(*this, "bg1tilemap_ram"),
16
m_bg0tilemap_ram(*this, "bg0tilemap_ram"),
17
m_fgtilemap_ram(*this, "fgtilemap_ram"),
18
m_bg0tilemap_lineram(*this, "bg0_lineram"),
19
m_bg1tilemap_lineram(*this, "bg1_lineram"),
20
m_bg2tilemap_lineram(*this, "bg2_lineram"),
21
m_a80000regs(*this, "a80000regs"),
22
m_b00000regs(*this, "b00000regs"),
23
m_c00000regs(*this, "c00000regs"),
24
m_c80000regs(*this, "c80000regs"),
25
m_880000regs(*this, "880000regs"){ }
14
UINT16* m_tilemap_paletteram16;
15
UINT16* m_bg2tilemap_ram;
16
UINT16* m_bg1tilemap_ram;
17
UINT16* m_bg0tilemap_ram;
18
UINT16* m_fgtilemap_ram;
19
UINT16* m_bg0tilemap_lineram;
20
UINT16* m_bg1tilemap_lineram;
21
UINT16* m_bg2tilemap_lineram;
27
required_shared_ptr<UINT16> m_spriteram;
28
required_shared_ptr<UINT16> m_tilemap_paletteram16;
29
required_shared_ptr<UINT16> m_bg2tilemap_ram;
30
required_shared_ptr<UINT16> m_bg1tilemap_ram;
31
required_shared_ptr<UINT16> m_bg0tilemap_ram;
32
required_shared_ptr<UINT16> m_fgtilemap_ram;
33
required_shared_ptr<UINT16> m_bg0tilemap_lineram;
34
required_shared_ptr<UINT16> m_bg1tilemap_lineram;
35
required_shared_ptr<UINT16> m_bg2tilemap_lineram;
36
required_shared_ptr<UINT16> m_a80000regs;
37
required_shared_ptr<UINT16> m_b00000regs;
38
required_shared_ptr<UINT16> m_c00000regs;
39
required_shared_ptr<UINT16> m_c80000regs;
40
required_shared_ptr<UINT16> m_880000regs;
28
42
bitmap_ind16 m_sprite_bitmap;
29
43
bitmap_ind16 m_tmp_tilemap_composebitmap;
36
50
UINT8 m_device_status;
37
51
const struct prot_data* m_device_data;
38
52
UINT8 m_device_value;
53
DECLARE_READ16_MEMBER(sound_r);
54
DECLARE_WRITE16_MEMBER(sound_w);
55
DECLARE_WRITE16_MEMBER(unk880000_w);
56
DECLARE_READ16_MEMBER(unk880000_r);
57
DECLARE_WRITE8_MEMBER(tecmosys_z80_bank_w);
58
DECLARE_WRITE8_MEMBER(tecmosys_oki_bank_w);
59
DECLARE_READ16_MEMBER(tecmosys_prot_status_r);
60
DECLARE_WRITE16_MEMBER(tecmosys_prot_status_w);
61
DECLARE_READ16_MEMBER(tecmosys_prot_data_r);
62
DECLARE_WRITE16_MEMBER(tecmosys_prot_data_w);
63
DECLARE_WRITE16_MEMBER(bg0_tilemap_w);
64
DECLARE_WRITE16_MEMBER(bg1_tilemap_w);
65
DECLARE_WRITE16_MEMBER(bg2_tilemap_w);
66
DECLARE_WRITE16_MEMBER(fg_tilemap_w);
67
DECLARE_WRITE16_MEMBER(tilemap_paletteram16_xGGGGGRRRRRBBBBB_word_w);
68
DECLARE_WRITE16_MEMBER(bg0_tilemap_lineram_w);
69
DECLARE_WRITE16_MEMBER(bg1_tilemap_lineram_w);
70
DECLARE_WRITE16_MEMBER(bg2_tilemap_lineram_w);
44
76
void tecmosys_prot_init(running_machine &machine, int which);
46
READ16_HANDLER(tecmosys_prot_status_r);
47
WRITE16_HANDLER(tecmosys_prot_status_w);
48
READ16_HANDLER(tecmosys_prot_data_r);
49
WRITE16_HANDLER(tecmosys_prot_data_w);
52
80
/*----------- defined in video/tecmosys.c -----------*/
54
WRITE16_HANDLER( bg0_tilemap_w );
55
WRITE16_HANDLER( bg1_tilemap_w );
56
WRITE16_HANDLER( bg2_tilemap_w );
57
WRITE16_HANDLER( fg_tilemap_w );
58
WRITE16_HANDLER( tilemap_paletteram16_xGGGGGRRRRRBBBBB_word_w );
59
WRITE16_HANDLER( bg0_tilemap_lineram_w );
60
WRITE16_HANDLER( bg1_tilemap_lineram_w );
61
WRITE16_HANDLER( bg2_tilemap_lineram_w );
63
83
SCREEN_UPDATE_RGB32(tecmosys);
64
84
VIDEO_START(tecmosys);