1 // license:BSD-3-Clause 2 // copyright-holders:David Haywood 3 /* Sega SP (Spider) 4 5 Naomi derived platform 6 7 */ 8 9 #include "naomi.h" 10 11 class segasp_state : public naomi_state 12 { 13 public: segasp_state(const machine_config & mconfig,device_type type,const char * tag)14 segasp_state(const machine_config &mconfig, device_type type, const char *tag) 15 : naomi_state(mconfig, type, tag), 16 m_sp_eeprom(*this, "sp_eeprom") 17 { } 18 19 void segasp(machine_config &config); 20 21 void init_segasp(); 22 23 private: 24 required_device<eeprom_serial_93cxx_device> m_sp_eeprom; 25 26 uint64_t sp_eeprom_r(offs_t offset, uint64_t mem_mask = ~0); 27 void sp_eeprom_w(offs_t offset, uint64_t data, uint64_t mem_mask = ~0); 28 uint64_t sp_rombdflg_r(); 29 uint64_t sp_io_r(offs_t offset, uint64_t mem_mask = ~0); 30 uint64_t sn_93c46a_r(); 31 void sn_93c46a_w(uint64_t data); 32 uint64_t sp_bank_r(offs_t offset, uint64_t mem_mask = ~0); 33 void sp_bank_w(offs_t offset, uint64_t data, uint64_t mem_mask = ~0); 34 uint16_t m_sp_bank; 35 36 void onchip_port(address_map &map); 37 void segasp_map(address_map &map); 38 }; 39