mirror of
https://github.com/holub/mame
synced 2025-05-31 18:11:50 +03:00
(nw) grchamp : output finder
This commit is contained in:
parent
099be8ad33
commit
da2a6868b1
@ -95,6 +95,7 @@
|
||||
|
||||
void grchamp_state::machine_start()
|
||||
{
|
||||
m_digits.resolve();
|
||||
m_soundlatch_data = 0x00;
|
||||
m_soundlatch_flag = false;
|
||||
save_item(NAME(m_cpu0_out));
|
||||
@ -245,7 +246,7 @@ WRITE8_MEMBER(grchamp_state::led_board_w)
|
||||
|
||||
case 0x0c:
|
||||
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[1] & 0x0f = score
|
||||
@ -533,6 +534,9 @@ static GFXDECODE_START( grchamp )
|
||||
GFXDECODE_ENTRY( "gfx3", 0x0000, tile_layout, 0, 2 )
|
||||
GFXDECODE_ENTRY( "gfx4", 0x0000, tile_layout, 0, 2 )
|
||||
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
|
||||
|
||||
|
||||
|
@ -30,46 +30,9 @@ public:
|
||||
m_spriteram(*this, "spriteram"),
|
||||
m_leftram(*this, "leftram"),
|
||||
m_rightram(*this, "rightram"),
|
||||
m_centerram(*this, "centerram") { }
|
||||
|
||||
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;
|
||||
m_centerram(*this, "centerram"),
|
||||
m_digits(*this, "digit%u", 0U)
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(cpu0_outputs_w);
|
||||
DECLARE_WRITE8_MEMBER(led_board_w);
|
||||
@ -102,10 +65,6 @@ public:
|
||||
TILEMAP_MAPPER_MEMBER(get_memory_offset);
|
||||
|
||||
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(cpu1_interrupt);
|
||||
TIMER_CALLBACK_MEMBER(main_to_sub_comm_sync_w);
|
||||
@ -118,6 +77,51 @@ public:
|
||||
void sound_map(address_map &map);
|
||||
void sub_map(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 */
|
||||
|
Loading…
Reference in New Issue
Block a user