1 // license:GPL-2.0+ 2 // copyright-holders:Juergen Buchmueller, Frank Palazzolo, Sean Riddle 3 /***************************************************************************** 4 * 5 * includes/channelf.h 6 * 7 ****************************************************************************/ 8 #ifndef MAME_INCLUDES_CHANNELF_H 9 #define MAME_INCLUDES_CHANNELF_H 10 11 #pragma once 12 13 #include "cpu/f8/f8.h" 14 #include "audio/channelf.h" 15 16 #include "bus/chanf/slot.h" 17 #include "bus/chanf/rom.h" 18 19 #include "emupal.h" 20 21 22 class channelf_state : public driver_device 23 { 24 public: channelf_state(const machine_config & mconfig,device_type type,const char * tag)25 channelf_state(const machine_config &mconfig, device_type type, const char *tag) 26 : driver_device(mconfig, type, tag) 27 , m_maincpu(*this, "maincpu") 28 , m_custom(*this,"custom") 29 , m_cart(*this, "cartslot") 30 { } 31 32 uint8_t port_0_r(); 33 uint8_t port_1_r(); 34 uint8_t port_4_r(); 35 uint8_t port_5_r(); 36 void port_0_w(uint8_t data); 37 void port_1_w(uint8_t data); 38 void port_4_w(uint8_t data); 39 void port_5_w(uint8_t data); 40 uint8_t *m_p_videoram; 41 uint8_t m_latch[6]; 42 uint8_t m_val_reg; 43 uint8_t m_row_reg; 44 uint8_t m_col_reg; 45 uint8_t port_read_with_latch(uint8_t ext, uint8_t latch_state); 46 virtual void video_start() override; 47 virtual void machine_start() override; 48 void channelf_palette(palette_device &palette) const; 49 uint32_t screen_update_channelf(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); 50 required_device<cpu_device> m_maincpu; 51 required_device<channelf_sound_device> m_custom; 52 required_device<channelf_cart_slot_device> m_cart; 53 int recalc_palette_offset(int reg1, int reg2); 54 void channelf_cart(machine_config &config); 55 void channelf(machine_config &config); 56 void sabavpl2(machine_config &config); 57 void sabavdpl(machine_config &config); 58 void channlf2(machine_config &config); 59 void channelf_io(address_map &map); 60 void channelf_map(address_map &map); 61 }; 62 63 #endif // MAME_INCLUDES_CHANNELF_H 64