summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/sound/t6w28.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/sound/t6w28.c')
-rw-r--r--src/emu/sound/t6w28.c53
1 files changed, 26 insertions, 27 deletions
diff --git a/src/emu/sound/t6w28.c b/src/emu/sound/t6w28.c
index 9f5d52cdc21..b0ace77119f 100644
--- a/src/emu/sound/t6w28.c
+++ b/src/emu/sound/t6w28.c
@@ -54,16 +54,16 @@ WRITE8_MEMBER( t6w28_device::write )
m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x3f0) | (data & 0x0f);
}
else
- {
+ {
r = m_last_register[offset];
}
c = r/2;
switch (r)
{
- case 0: /* tone 0 : frequency */
- case 2: /* tone 1 : frequency */
- case 4: /* tone 2 : frequency */
- if ((data & 0x80) == 0) m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x0f) | ((data & 0x3f) << 4);
+ case 0: /* tone 0 : frequency */
+ case 2: /* tone 1 : frequency */
+ case 4: /* tone 2 : frequency */
+ if ((data & 0x80) == 0) m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x0f) | ((data & 0x3f) << 4);
m_period[offset * 4 + c] = STEP * m_register[offset * 8 + r];
if (m_period[offset * 4 + c] == 0) m_period[offset * 4 + c] = STEP;
if (r == 4)
@@ -73,21 +73,21 @@ WRITE8_MEMBER( t6w28_device::write )
m_period[offset * 4 + 3] = 2 * m_period[offset * 4 + 2];
}
break;
- case 1: /* tone 0 : volume */
- case 3: /* tone 1 : volume */
- case 5: /* tone 2 : volume */
- case 7: /* noise : volume */
+ case 1: /* tone 0 : volume */
+ case 3: /* tone 1 : volume */
+ case 5: /* tone 2 : volume */
+ case 7: /* noise : volume */
m_volume[offset * 4 + c] = m_vol_table[data & 0x0f];
if ((data & 0x80) == 0) m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x3f0) | (data & 0x0f);
break;
- case 6: /* noise : frequency, mode */
+ case 6: /* noise : frequency, mode */
{
- if ((data & 0x80) == 0) m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x3f0) | (data & 0x0f);
+ if ((data & 0x80) == 0) m_register[offset * 8 + r] = (m_register[offset * 8 + r] & 0x3f0) | (data & 0x0f);
n = m_register[offset * 8 + 6];
m_noise_mode[offset] = (n & 4) ? 1 : 0;
/* N/512,N/1024,N/2048,Tone #3 output */
m_period[offset * 4 + 3] = ((n&3) == 3) ? 2 * m_period[offset * 4 + 2] : (STEP << (5+(n&3)));
- /* Reset noise shifter */
+ /* Reset noise shifter */
m_rng[offset] = m_feedback_mask; /* this is correct according to the smspower document */
//m_rng = 0xF35; /* this is not, but sounds better in do run run */
m_output[offset * 4 + 3] = m_rng[offset] & 1;
@@ -199,29 +199,29 @@ void t6w28_device::sound_stream_update(sound_stream &stream, stream_sample_t **i
m_count[3] -= nextevent;
if (m_count[3] <= 0)
{
- if (m_noise_mode[0] == 1) /* White Noise Mode */
- {
- if (((m_rng[0] & m_whitenoise_taps) != m_whitenoise_taps) && ((m_rng[0] & m_whitenoise_taps) != 0)) /* crappy xor! */
+ if (m_noise_mode[0] == 1) /* White Noise Mode */
+ {
+ if (((m_rng[0] & m_whitenoise_taps) != m_whitenoise_taps) && ((m_rng[0] & m_whitenoise_taps) != 0)) /* crappy xor! */
{
- m_rng[0] >>= 1;
- m_rng[0] |= m_feedback_mask;
+ m_rng[0] >>= 1;
+ m_rng[0] |= m_feedback_mask;
}
else
{
- m_rng[0] >>= 1;
+ m_rng[0] >>= 1;
}
m_output[3] = m_whitenoise_invert ? !(m_rng[0] & 1) : m_rng[0] & 1;
}
else /* Periodic noise mode */
{
- if (m_rng[0] & 1)
+ if (m_rng[0] & 1)
{
- m_rng[0] >>= 1;
- m_rng[0] |= m_feedback_mask;
+ m_rng[0] >>= 1;
+ m_rng[0] |= m_feedback_mask;
}
else
{
- m_rng[0] >>= 1;
+ m_rng[0] >>= 1;
}
m_output[3] = m_rng[0] & 1;
}
@@ -269,7 +269,7 @@ void t6w28_device::set_gain(int gain)
/* increase max output basing on gain (0.2 dB per step) */
out = MAX_OUTPUT / 3;
while (gain-- > 0)
- out *= 1.023292992; /* = (10 ^ (0.2/20)) */
+ out *= 1.023292992; /* = (10 ^ (0.2/20)) */
/* build volume table (2dB per step) */
for (i = 0;i < 15;i++)
@@ -278,7 +278,7 @@ void t6w28_device::set_gain(int gain)
if (out > MAX_OUTPUT / 3) m_vol_table[i] = MAX_OUTPUT / 3;
else m_vol_table[i] = out;
- out /= 1.258925412; /* = 10 ^ (2/20) = 2dB */
+ out /= 1.258925412; /* = 10 ^ (2/20) = 2dB */
}
m_vol_table[15] = 0;
}
@@ -303,7 +303,7 @@ void t6w28_device::device_start()
for (i = 0;i < 8;i+=2)
{
m_register[i] = 0;
- m_register[i + 1] = 0x0f; /* volume = 0 */
+ m_register[i + 1] = 0x0f; /* volume = 0 */
}
for (i = 0;i < 8;i++)
@@ -349,7 +349,6 @@ const device_type T6W28 = &device_creator<t6w28_device>;
t6w28_device::t6w28_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
: device_t(mconfig, T6W28, "T6W28", tag, owner, clock),
- device_sound_interface(mconfig, *this)
+ device_sound_interface(mconfig, *this)
{
}
-