mirror of
https://github.com/holub/mame
synced 2025-06-03 19:36:26 +03:00
(nw) grchamp : output finder
This commit is contained in:
parent
099be8ad33
commit
da2a6868b1
@ -95,6 +95,7 @@
|
|||||||
|
|
||||||
void grchamp_state::machine_start()
|
void grchamp_state::machine_start()
|
||||||
{
|
{
|
||||||
|
m_digits.resolve();
|
||||||
m_soundlatch_data = 0x00;
|
m_soundlatch_data = 0x00;
|
||||||
m_soundlatch_flag = false;
|
m_soundlatch_flag = false;
|
||||||
save_item(NAME(m_cpu0_out));
|
save_item(NAME(m_cpu0_out));
|
||||||
@ -245,7 +246,7 @@ WRITE8_MEMBER(grchamp_state::led_board_w)
|
|||||||
|
|
||||||
case 0x0c:
|
case 0x0c:
|
||||||
m_ledram[m_ledaddr & 0x07] = m_ledlatch;
|
m_ledram[m_ledaddr & 0x07] = m_ledlatch;
|
||||||
output().set_digit_value(m_ledaddr & 0x07, ls247_map[m_ledram[m_ledaddr & 0x07] & 0x0f]);
|
m_digits[m_ledaddr & 0x07] = ls247_map[m_ledram[m_ledaddr & 0x07] & 0x0f];
|
||||||
/*
|
/*
|
||||||
ledram[0] & 0x0f = score LSD
|
ledram[0] & 0x0f = score LSD
|
||||||
ledram[1] & 0x0f = score
|
ledram[1] & 0x0f = score
|
||||||
@ -533,6 +534,9 @@ static GFXDECODE_START( grchamp )
|
|||||||
GFXDECODE_ENTRY( "gfx3", 0x0000, tile_layout, 0, 2 )
|
GFXDECODE_ENTRY( "gfx3", 0x0000, tile_layout, 0, 2 )
|
||||||
GFXDECODE_ENTRY( "gfx4", 0x0000, tile_layout, 0, 2 )
|
GFXDECODE_ENTRY( "gfx4", 0x0000, tile_layout, 0, 2 )
|
||||||
GFXDECODE_ENTRY( "gfx1", 0x0000, sprite_layout, 0, 8 )
|
GFXDECODE_ENTRY( "gfx1", 0x0000, sprite_layout, 0, 8 )
|
||||||
|
GFXDECODE_ENTRY( "gfx5", 0x0000, tile_layout, 0, 2 )
|
||||||
|
GFXDECODE_ENTRY( "gfx6", 0x0000, tile_layout, 0, 2 )
|
||||||
|
GFXDECODE_ENTRY( "gfx7", 0x0000, tile_layout, 0, 2 )
|
||||||
GFXDECODE_END
|
GFXDECODE_END
|
||||||
|
|
||||||
|
|
||||||
|
@ -30,46 +30,9 @@ public:
|
|||||||
m_spriteram(*this, "spriteram"),
|
m_spriteram(*this, "spriteram"),
|
||||||
m_leftram(*this, "leftram"),
|
m_leftram(*this, "leftram"),
|
||||||
m_rightram(*this, "rightram"),
|
m_rightram(*this, "rightram"),
|
||||||
m_centerram(*this, "centerram") { }
|
m_centerram(*this, "centerram"),
|
||||||
|
m_digits(*this, "digit%u", 0U)
|
||||||
required_device<cpu_device> m_maincpu;
|
{ }
|
||||||
required_device<cpu_device> m_audiocpu;
|
|
||||||
required_device<cpu_device> m_subcpu;
|
|
||||||
required_device<watchdog_timer_device> m_watchdog;
|
|
||||||
required_device<discrete_device> m_discrete;
|
|
||||||
required_device<gfxdecode_device> m_gfxdecode;
|
|
||||||
required_device<palette_device> m_palette;
|
|
||||||
required_device<screen_device> m_screen;
|
|
||||||
required_device<input_merger_device> m_soundnmi;
|
|
||||||
|
|
||||||
required_shared_ptr<uint8_t> m_radarram;
|
|
||||||
required_shared_ptr<uint8_t> m_videoram;
|
|
||||||
required_shared_ptr<uint8_t> m_spriteram;
|
|
||||||
required_shared_ptr<uint8_t> m_leftram;
|
|
||||||
required_shared_ptr<uint8_t> m_rightram;
|
|
||||||
required_shared_ptr<uint8_t> m_centerram;
|
|
||||||
|
|
||||||
uint8_t m_cpu0_out[16];
|
|
||||||
uint8_t m_cpu1_out[16];
|
|
||||||
|
|
||||||
uint8_t m_comm_latch;
|
|
||||||
uint8_t m_comm_latch2[4];
|
|
||||||
|
|
||||||
uint16_t m_ledlatch;
|
|
||||||
uint8_t m_ledaddr;
|
|
||||||
uint16_t m_ledram[8];
|
|
||||||
|
|
||||||
uint8_t m_soundlatch_data;
|
|
||||||
bool m_soundlatch_flag;
|
|
||||||
|
|
||||||
uint16_t m_collide;
|
|
||||||
uint8_t m_collmode;
|
|
||||||
|
|
||||||
bitmap_ind16 m_work_bitmap;
|
|
||||||
tilemap_t * m_text_tilemap;
|
|
||||||
tilemap_t * m_left_tilemap;
|
|
||||||
tilemap_t * m_center_tilemap;
|
|
||||||
tilemap_t * m_right_tilemap;
|
|
||||||
|
|
||||||
DECLARE_WRITE8_MEMBER(cpu0_outputs_w);
|
DECLARE_WRITE8_MEMBER(cpu0_outputs_w);
|
||||||
DECLARE_WRITE8_MEMBER(led_board_w);
|
DECLARE_WRITE8_MEMBER(led_board_w);
|
||||||
@ -102,10 +65,6 @@ public:
|
|||||||
TILEMAP_MAPPER_MEMBER(get_memory_offset);
|
TILEMAP_MAPPER_MEMBER(get_memory_offset);
|
||||||
|
|
||||||
DECLARE_PALETTE_INIT(grchamp);
|
DECLARE_PALETTE_INIT(grchamp);
|
||||||
virtual void machine_start() override;
|
|
||||||
virtual void machine_reset() override;
|
|
||||||
virtual void video_start() override;
|
|
||||||
|
|
||||||
INTERRUPT_GEN_MEMBER(cpu0_interrupt);
|
INTERRUPT_GEN_MEMBER(cpu0_interrupt);
|
||||||
INTERRUPT_GEN_MEMBER(cpu1_interrupt);
|
INTERRUPT_GEN_MEMBER(cpu1_interrupt);
|
||||||
TIMER_CALLBACK_MEMBER(main_to_sub_comm_sync_w);
|
TIMER_CALLBACK_MEMBER(main_to_sub_comm_sync_w);
|
||||||
@ -118,6 +77,51 @@ public:
|
|||||||
void sound_map(address_map &map);
|
void sound_map(address_map &map);
|
||||||
void sub_map(address_map &map);
|
void sub_map(address_map &map);
|
||||||
void sub_portmap(address_map &map);
|
void sub_portmap(address_map &map);
|
||||||
|
|
||||||
|
private:
|
||||||
|
uint8_t m_cpu0_out[16];
|
||||||
|
uint8_t m_cpu1_out[16];
|
||||||
|
|
||||||
|
uint8_t m_comm_latch;
|
||||||
|
uint8_t m_comm_latch2[4];
|
||||||
|
|
||||||
|
uint16_t m_ledlatch;
|
||||||
|
uint8_t m_ledaddr;
|
||||||
|
uint16_t m_ledram[8];
|
||||||
|
|
||||||
|
uint8_t m_soundlatch_data;
|
||||||
|
bool m_soundlatch_flag;
|
||||||
|
|
||||||
|
uint16_t m_collide;
|
||||||
|
uint8_t m_collmode;
|
||||||
|
|
||||||
|
bitmap_ind16 m_work_bitmap;
|
||||||
|
tilemap_t * m_text_tilemap;
|
||||||
|
tilemap_t * m_left_tilemap;
|
||||||
|
tilemap_t * m_center_tilemap;
|
||||||
|
tilemap_t * m_right_tilemap;
|
||||||
|
|
||||||
|
virtual void machine_start() override;
|
||||||
|
virtual void machine_reset() override;
|
||||||
|
virtual void video_start() override;
|
||||||
|
|
||||||
|
required_device<cpu_device> m_maincpu;
|
||||||
|
required_device<cpu_device> m_audiocpu;
|
||||||
|
required_device<cpu_device> m_subcpu;
|
||||||
|
required_device<watchdog_timer_device> m_watchdog;
|
||||||
|
required_device<discrete_device> m_discrete;
|
||||||
|
required_device<gfxdecode_device> m_gfxdecode;
|
||||||
|
required_device<palette_device> m_palette;
|
||||||
|
required_device<screen_device> m_screen;
|
||||||
|
required_device<input_merger_device> m_soundnmi;
|
||||||
|
|
||||||
|
required_shared_ptr<uint8_t> m_radarram;
|
||||||
|
required_shared_ptr<uint8_t> m_videoram;
|
||||||
|
required_shared_ptr<uint8_t> m_spriteram;
|
||||||
|
required_shared_ptr<uint8_t> m_leftram;
|
||||||
|
required_shared_ptr<uint8_t> m_rightram;
|
||||||
|
required_shared_ptr<uint8_t> m_centerram;
|
||||||
|
output_finder<8> m_digits;
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Discrete Sound Input Nodes */
|
/* Discrete Sound Input Nodes */
|
||||||
|
Loading…
Reference in New Issue
Block a user