summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/includes/beathead.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/includes/beathead.h')
-rw-r--r--src/mame/includes/beathead.h60
1 files changed, 34 insertions, 26 deletions
diff --git a/src/mame/includes/beathead.h b/src/mame/includes/beathead.h
index f51248e8989..b475a430a9a 100644
--- a/src/mame/includes/beathead.h
+++ b/src/mame/includes/beathead.h
@@ -5,6 +5,10 @@
Atari "Stella on Steroids" hardware
***************************************************************************/
+#ifndef MAME_INCLUDES_BEATHEAD_H
+#define MAME_INCLUDES_BEATHEAD_H
+
+#pragma once
#include "machine/atarigen.h"
#include "machine/timer.h"
@@ -14,8 +18,8 @@
class beathead_state : public atarigen_state
{
public:
- beathead_state(const machine_config &mconfig, device_type type, const char *tag)
- : atarigen_state(mconfig, type, tag),
+ beathead_state(const machine_config &mconfig, device_type type, const char *tag) :
+ atarigen_state(mconfig, type, tag),
m_jsa(*this, "jsa"),
m_nvram(*this, "nvram"),
m_videoram(*this, "videoram"),
@@ -25,12 +29,37 @@ public:
m_rom_base(*this, "rom_base")
{ }
- virtual void machine_reset() override;
+ void beathead(machine_config &config);
+protected:
+ // in drivers/beathead.c
+ virtual void update_interrupts() override;
+ DECLARE_WRITE32_MEMBER( interrupt_control_w );
+ DECLARE_READ32_MEMBER( interrupt_control_r );
+ DECLARE_WRITE32_MEMBER( eeprom_data_w );
+ DECLARE_WRITE32_MEMBER( eeprom_enable_w );
+ DECLARE_WRITE32_MEMBER( sound_reset_w );
+ DECLARE_WRITE32_MEMBER( coin_count_w );
+ DECLARE_READ32_MEMBER( speedup_r );
+ DECLARE_READ32_MEMBER( movie_speedup_r );
+
+ // in video/beathead.c
+ DECLARE_WRITE32_MEMBER( vram_transparent_w );
+ DECLARE_WRITE32_MEMBER( vram_bulk_w );
+ DECLARE_WRITE32_MEMBER( vram_latch_w );
+ DECLARE_WRITE32_MEMBER( vram_copy_w );
+ DECLARE_WRITE32_MEMBER( finescroll_w );
+ DECLARE_READ32_MEMBER( hsync_ram_r );
+ DECLARE_WRITE32_MEMBER( hsync_ram_w );
+ TIMER_DEVICE_CALLBACK_MEMBER(scanline_callback);
+
+ virtual void machine_reset() override;
virtual void video_start() override;
+ void main_map(address_map &map);
uint32_t screen_update(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
+private:
required_device<atari_jsa_iii_device> m_jsa;
required_shared_ptr<uint32_t> m_nvram;
@@ -57,27 +86,6 @@ public:
uint8_t m_irq_state[3];
uint8_t m_eeprom_enabled;
-
- // in drivers/beathead.c
- virtual void update_interrupts() override;
- DECLARE_WRITE32_MEMBER( interrupt_control_w );
- DECLARE_READ32_MEMBER( interrupt_control_r );
- DECLARE_WRITE32_MEMBER( eeprom_data_w );
- DECLARE_WRITE32_MEMBER( eeprom_enable_w );
- DECLARE_WRITE32_MEMBER( sound_reset_w );
- DECLARE_WRITE32_MEMBER( coin_count_w );
- DECLARE_READ32_MEMBER( speedup_r );
- DECLARE_READ32_MEMBER( movie_speedup_r );
-
- // in video/beathead.c
- DECLARE_WRITE32_MEMBER( vram_transparent_w );
- DECLARE_WRITE32_MEMBER( vram_bulk_w );
- DECLARE_WRITE32_MEMBER( vram_latch_w );
- DECLARE_WRITE32_MEMBER( vram_copy_w );
- DECLARE_WRITE32_MEMBER( finescroll_w );
- DECLARE_READ32_MEMBER( hsync_ram_r );
- DECLARE_WRITE32_MEMBER( hsync_ram_w );
- TIMER_DEVICE_CALLBACK_MEMBER(scanline_callback);
- void beathead(machine_config &config);
- void main_map(address_map &map);
};
+
+#endif // MAME_INCLUDES_BEATHEAD_H