summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/audio/snk6502.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/audio/snk6502.h')
-rw-r--r--src/mame/audio/snk6502.h195
1 files changed, 0 insertions, 195 deletions
diff --git a/src/mame/audio/snk6502.h b/src/mame/audio/snk6502.h
deleted file mode 100644
index 244e6218b19..00000000000
--- a/src/mame/audio/snk6502.h
+++ /dev/null
@@ -1,195 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Nicola Salmoria, Dan Boris
-/*************************************************************************
-
- rokola hardware
-
-*************************************************************************/
-#ifndef MAME_AUDIO_SNK6502_H
-#define MAME_AUDIO_SNK6502_H
-
-#pragma once
-
-#include "sound/discrete.h"
-#include "sound/samples.h"
-#include "sound/sn76477.h"
-
-class snk6502_sound_device : public device_t, public device_sound_interface
-{
-public:
- snk6502_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- DECLARE_READ_LINE_MEMBER(music0_playing);
-
- void set_music_freq(int freq);
- void set_music_clock(double clock_time);
- void set_channel_base(int channel, int base, int mask = 0xff);
- void mute_channel(int channel);
- void unmute_channel(int channel);
- void set_sound0_stop_on_rollover(int value) { m_sound0_stop_on_rollover = value; }
- void reset_offset(int channel) { m_tone_channels[channel].offset = 0; }
-
- void speech_w(uint8_t data, const uint16_t *table, int start);
-
- void build_waveform(int channel, int mask);
- void sasuke_build_waveform(int mask);
- void satansat_build_waveform(int mask);
-
-protected:
- // device-level overrides
- virtual void device_start() override;
-
- // sound stream update overrides
- virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) override;
-
-private:
- static constexpr unsigned NUM_CHANNELS = 3;
-
- struct tone_t
- {
- int mute;
- int offset;
- int base;
- int mask;
- int32_t sample_rate;
- int32_t sample_step;
- int32_t sample_cur;
- int16_t form[16];
- };
-
- // internal state
- tone_t m_tone_channels[NUM_CHANNELS];
- int32_t m_tone_clock_expire;
- int32_t m_tone_clock;
- sound_stream * m_tone_stream;
-
- optional_device<samples_device> m_samples;
- required_memory_region m_rom;
- int m_sound0_stop_on_rollover;
-
- int m_hd38880_cmd;
- uint32_t m_hd38880_addr;
- int m_hd38880_data_bytes;
- double m_hd38880_speed;
-
- void validate_tone_channel(int channel);
-};
-
-
-class vanguard_sound_device : public device_t
-{
-public:
- vanguard_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- DECLARE_WRITE8_MEMBER( sound_w );
- DECLARE_WRITE8_MEMBER( speech_w );
-
-protected:
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_start() override;
- virtual void device_reset() override;
-
-private:
- required_device<snk6502_sound_device> m_custom;
- required_device<sn76477_device> m_sn76477_2;
- required_device<samples_device> m_samples;
-
- uint8_t m_last_port1;
-};
-
-
-class fantasy_sound_device : public device_t
-{
-public:
- fantasy_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- DECLARE_WRITE8_MEMBER( sound_w );
- DECLARE_WRITE8_MEMBER( speech_w );
-
-protected:
- fantasy_sound_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
-
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_start() override;
- virtual void device_reset() override;
-
- required_device<snk6502_sound_device> m_custom;
-
-private:
- required_device<discrete_sound_device> m_discrete;
-
- uint8_t m_last_port1;
-};
-
-
-class nibbler_sound_device : public fantasy_sound_device
-{
-public:
- nibbler_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
-protected:
- virtual void device_add_mconfig(machine_config &config) override;
-};
-
-
-class pballoon_sound_device : public fantasy_sound_device
-{
-public:
- pballoon_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
-protected:
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_reset() override;
-};
-
-
-class sasuke_sound_device : public device_t
-{
-public:
- sasuke_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- DECLARE_WRITE8_MEMBER(sound_w);
-
-protected:
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_start() override;
- virtual void device_reset() override;
-
-private:
- required_device<snk6502_sound_device> m_custom;
- required_device<samples_device> m_samples;
-
- uint8_t m_last_port1;
-};
-
-
-class satansat_sound_device : public device_t
-{
-public:
- satansat_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
-
- DECLARE_WRITE8_MEMBER(sound_w);
-
-protected:
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_start() override;
- virtual void device_reset() override;
-
-private:
- required_device<snk6502_sound_device> m_custom;
- required_device<samples_device> m_samples;
-
- uint8_t m_last_port1;
-};
-
-
-DECLARE_DEVICE_TYPE(SNK6502_SOUND, snk6502_sound_device)
-
-DECLARE_DEVICE_TYPE(VANGUARD_SOUND, vanguard_sound_device)
-DECLARE_DEVICE_TYPE(FANTASY_SOUND, fantasy_sound_device)
-DECLARE_DEVICE_TYPE(NIBBLER_SOUND, nibbler_sound_device)
-DECLARE_DEVICE_TYPE(PBALLOON_SOUND, pballoon_sound_device)
-DECLARE_DEVICE_TYPE(SASUKE_SOUND, sasuke_sound_device)
-DECLARE_DEVICE_TYPE(SATANSAT_SOUND, satansat_sound_device)
-
-#endif // MAME_AUDIO_SNK6502_H