summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/audio/gridlee.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/audio/gridlee.cpp')
-rw-r--r--src/mame/audio/gridlee.cpp162
1 files changed, 0 insertions, 162 deletions
diff --git a/src/mame/audio/gridlee.cpp b/src/mame/audio/gridlee.cpp
deleted file mode 100644
index 5f73a22fc45..00000000000
--- a/src/mame/audio/gridlee.cpp
+++ /dev/null
@@ -1,162 +0,0 @@
-// license:BSD-3-Clause
-// copyright-holders:Aaron Giles
-/*************************************************************************
-
- Basic Gridlee sound driver
-
-*************************************************************************/
-
-#include "emu.h"
-#include "includes/gridlee.h"
-
-
-// device type definition
-DEFINE_DEVICE_TYPE(GRIDLEE, gridlee_sound_device, "gridlee_sound", "Gridlee Custom Sound")
-
-
-//**************************************************************************
-// LIVE DEVICE
-//**************************************************************************
-
-//-------------------------------------------------
-// gridlee_sound_device - constructor
-//-------------------------------------------------
-
-gridlee_sound_device::gridlee_sound_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : device_t(mconfig, GRIDLEE, tag, owner, clock),
- device_sound_interface(mconfig, *this),
- m_tone_step(0),
- m_tone_fraction(0),
- m_tone_volume(0),
- m_stream(nullptr),
- m_samples(*this, ":samples"),
- m_freq_to_step(0.0)
-{
- memset(m_sound_data, 0, sizeof(uint8_t)*24);
-}
-
-
-//-------------------------------------------------
-// device_start - device-specific startup
-//-------------------------------------------------
-
-void gridlee_sound_device::device_start()
-{
- /* allocate the stream */
- m_stream = stream_alloc(0, 1, machine().sample_rate());
-
- m_freq_to_step = (double)(1 << 24) / (double)machine().sample_rate();
-}
-
-
-//-------------------------------------------------
-// sound_stream_update - handle a stream update
-//-------------------------------------------------
-
-void gridlee_sound_device::sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples)
-{
- stream_sample_t *buffer = outputs[0];
-
- /* loop over samples */
- while (samples--)
- {
- /* tone channel */
- m_tone_fraction += m_tone_step;
- *buffer++ = (m_tone_fraction & 0x0800000) ? (m_tone_volume << 6) : 0;
- }
-}
-
-
-
-WRITE8_MEMBER( gridlee_sound_device::gridlee_sound_w )
-{
- uint8_t *sound_data = m_sound_data;
-
- m_stream->update();
-
- switch (offset)
- {
- case 0x04:
- if (data == 0xef && sound_data[offset] != 0xef)
- m_samples->start(4, 1);
- else if (data != 0xef && sound_data[offset] == 0xef)
- m_samples->stop(4);
-// if (!(data & 0x01) && (sound_data[offset] & 0x01))
-// m_samples->start(5, 1);
-// else if ((data & 0x01) && !(sound_data[offset] & 0x01))
-// m_samples->stop(5);
- break;
-
- case 0x0c:
- case 0x0d:
- case 0x0e:
- case 0x0f:
- if ((data & 1) && !(sound_data[offset] & 1))
- m_samples->start(offset - 0x0c, 1 - sound_data[offset - 4]);
- else if (!(data & 1) && (sound_data[offset] & 1))
- m_samples->stop(offset - 0x0c);
- break;
-
- case 0x08+0x08:
- if (data)
- m_tone_step = m_freq_to_step * (double)(data * 5);
- else
- m_tone_step = 0;
- break;
-
- case 0x09+0x08:
- m_tone_volume = data;
- break;
-
- case 0x0b+0x08:
-// m_tone_volume = (data | sound_data[0x0c+0x08]) ? 0xff : 0x00;
- break;
-
- case 0x0c+0x08:
-// m_tone_volume = (data | sound_data[0x0b+0x08]) ? 0xff : 0x00;
- break;
-
- case 0x0d+0x08:
-// if (data)
-// m_tone_step = freq_to_step * (double)(data * 11);
-// else
-// m_tone_step = 0;
- break;
- }
- sound_data[offset] = data;
-
-
-
-#if 0
- static int first = 1;
- FILE *f = fopen("sound.log", first ? "w" : "a");
- first = 0;
- fprintf(f, "[%02x=%02x] %02x %02x %02x %02x %02x %02x %02x %02x - %02x %02x %02x %02x %02x %02x %02x %02x - %02x %02x %02x %02x %02x %02x %02x %02x\n",
- offset,data,
- sound_data[0],
- sound_data[1],
- sound_data[2],
- sound_data[3],
- sound_data[4],
- sound_data[5],
- sound_data[6],
- sound_data[7],
- sound_data[8],
- sound_data[9],
- sound_data[10],
- sound_data[11],
- sound_data[12],
- sound_data[13],
- sound_data[14],
- sound_data[15],
- sound_data[16],
- sound_data[17],
- sound_data[18],
- sound_data[19],
- sound_data[20],
- sound_data[21],
- sound_data[22],
- sound_data[23]);
- fclose(f);
-#endif
-}