diff options
Diffstat (limited to 'src/devices/machine/spg2xx.h')
-rw-r--r-- | src/devices/machine/spg2xx.h | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/src/devices/machine/spg2xx.h b/src/devices/machine/spg2xx.h index c4967efdaf8..e851531693f 100644 --- a/src/devices/machine/spg2xx.h +++ b/src/devices/machine/spg2xx.h @@ -9,6 +9,30 @@ - I2C - SPI + Known SunPlus SPG2xx/u'nSP-based systems: + + D - SPG240 - Radica Skateboarder (Sunplus QL8041C die) + ND - SPG243 - Some form of Leapfrog "edutainment" system + ND - SPG243 - Star Wars: Clone Wars + ND - SPG243 - Toy Story + ND - SPG243 - Animal Art Studio + ND - SPG243 - Finding Nemo + D - SPG243 - The Batman + D - SPG243 - Wall-E + D - SPG243 - KenSingTon / Siatronics / Jungle Soft Vii + Partial D - SPG200 - VTech V.Smile + ND - unknown - Zone 40 + D - SPG243 - Zone 60 + D - SPG243 - Wireless 60 + ND - unknown - Wireless Air 60 + ND - Likely many more + + Also on this hardware: + + name PCB ID ROM width TSOP pads ROM size SEEPROM die markings + Radica Play TV Football 2 L7278 x16 48 not dumped no Sunplus + Dream Life ? x16 48 not dumped no Sunplus + **********************************************************************/ #ifndef MAME_MACHINE_SPG2XX_H @@ -20,8 +44,6 @@ #include "sound/okiadpcm.h" #include "screen.h" -#define SPG2XX_VISUAL_AUDIO_DEBUG (0) - class spg2xx_device : public device_t, public device_sound_interface { public: @@ -48,10 +70,6 @@ public: void uart_rx(uint8_t data); uint32_t screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); -#if SPG2XX_VISUAL_AUDIO_DEBUG - void advance_debug_pos(); - uint32_t debug_screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect); -#endif DECLARE_WRITE_LINE_MEMBER(vblank); protected: @@ -438,6 +456,10 @@ protected: uint16_t m_audio_curr_beat_base_count; uint16_t m_io_regs[0x200]; + uint8_t m_uart_rx_fifo[8]; + uint8_t m_uart_rx_fifo_start; + uint8_t m_uart_rx_fifo_end; + uint8_t m_uart_rx_fifo_count; bool m_uart_rx_available; uint16_t m_video_regs[0x100]; @@ -472,12 +494,6 @@ protected: required_shared_ptr<uint16_t> m_paletteram; required_shared_ptr<uint16_t> m_spriteram; -#if SPG2XX_VISUAL_AUDIO_DEBUG - std::unique_ptr<uint8_t[]> m_audio_debug_buffer; - uint16_t m_audio_debug_x; - required_device<screen_device> m_audio_screen; -#endif - static const uint32_t s_rampdown_frame_counts[8]; static const uint32_t s_envclk_frame_counts[16]; }; @@ -485,20 +501,12 @@ protected: class spg24x_device : public spg2xx_device { public: -#if SPG2XX_VISUAL_AUDIO_DEBUG - template <typename T, typename U, typename V> - spg24x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&cpu_tag, U &&screen_tag, V &&debug_screen_tag) -#else template <typename T, typename U> spg24x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&cpu_tag, U &&screen_tag) -#endif : spg24x_device(mconfig, tag, owner, clock) { m_cpu.set_tag(std::forward<T>(cpu_tag)); m_screen.set_tag(std::forward<U>(screen_tag)); -#if SPG2XX_VISUAL_AUDIO_DEBUG - m_audio_screen.set_tag(std::forward<V>(debug_screen_tag)); -#endif } spg24x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); @@ -507,20 +515,12 @@ public: class spg28x_device : public spg2xx_device { public: -#if SPG2XX_VISUAL_AUDIO_DEBUG - template <typename T, typename U, typename V> - spg28x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&cpu_tag, U &&screen_tag, V &&debug_screen_tag) -#else template <typename T, typename U> spg28x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock, T &&cpu_tag, U &&screen_tag) -#endif : spg28x_device(mconfig, tag, owner, clock) { m_cpu.set_tag(std::forward<T>(cpu_tag)); m_screen.set_tag(std::forward<U>(screen_tag)); -#if SPG2XX_VISUAL_AUDIO_DEBUG - m_audio_screen.set_tag(std::forward<V>(debug_screen_tag)); -#endif } spg28x_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); |