summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/audio/asteroid.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/audio/asteroid.c')
-rw-r--r--src/mame/audio/asteroid.c26
1 files changed, 14 insertions, 12 deletions
diff --git a/src/mame/audio/asteroid.c b/src/mame/audio/asteroid.c
index 1a53f752c4d..623c39780a8 100644
--- a/src/mame/audio/asteroid.c
+++ b/src/mame/audio/asteroid.c
@@ -113,7 +113,7 @@ DISCRETE_SOUND_START(asteroid)
/************************************************/
DISCRETE_DAC_R1(NODE_30, ASTEROID_THUMP_DATA, 3.5, &asteroid_thump_dac1) // CMOS
DISCRETE_555_CC(NODE_31, ASTEROID_THUMP_EN, NODE_30, RES_K(22), CAP_U(0.22), 0, 0, RES_K(18), &asteroid_thump_555cc)
- DISCRETE_RCFILTER(NODE_32, 1, NODE_31, RES_K(3.3), CAP_U(0.1))
+ DISCRETE_RCFILTER(NODE_32, NODE_31, RES_K(3.3), CAP_U(0.1))
DISCRETE_GAIN(ASTEROID_THUMP_SND, NODE_32, 30)
/************************************************/
@@ -135,7 +135,7 @@ DISCRETE_SOUND_START(asteroid)
DISCRETE_TRANSFORM4(NODE_42, ASTEROID_SAUCER_SEL, -250, NODE_41, 750, "01*2+3+") // Large saucer is 250hz lower
DISCRETE_TRIANGLEWAVE(NODE_43, ASTEROID_SAUCER_SND_EN, NODE_42, 76.1, 0, 0)
- DISCRETE_RCFILTER(ASTEROID_SAUCER_SND, 1, NODE_43, 1, 1.0e-5)
+ DISCRETE_RCFILTER(ASTEROID_SAUCER_SND, NODE_43, 1, 1.0e-5)
/************************************************/
/* The Ship Fire sound is produced by a 555 */
@@ -147,7 +147,7 @@ DISCRETE_SOUND_START(asteroid)
DISCRETE_ADDER2(NODE_52, 1, NODE_51, 7.0) /* Amplitude */
DISCRETE_TRANSFORM3(NODE_53, 4500, NODE_50, 67, "01/2+") /* Duty */
DISCRETE_SQUAREWAVE(NODE_54, ASTEROID_SHIP_FIRE_EN, NODE_50, NODE_52, NODE_53, 0, 0)
- DISCRETE_RCFILTER(ASTEROID_SHIP_FIRE_SND, 1, NODE_54, 1, 1.0e-5)
+ DISCRETE_RCFILTER(ASTEROID_SHIP_FIRE_SND, NODE_54, 1, 1.0e-5)
/************************************************/
/* The Saucer Fire sound is produced by a 555 */
@@ -159,7 +159,7 @@ DISCRETE_SOUND_START(asteroid)
DISCRETE_ADDER2(NODE_62, 1, NODE_61, 7.0) /* Amplitude */
DISCRETE_TRANSFORM3(NODE_63, 4500, NODE_60, 67, "01/2+") /* Duty */
DISCRETE_SQUAREWAVE(NODE_64, ASTEROID_SAUCER_FIRE_EN, NODE_60, NODE_62, NODE_63, 0, 0)
- DISCRETE_RCFILTER(ASTEROID_SAUCER_FIRE_SND, 1, NODE_64, 2, 1.0e-5)
+ DISCRETE_RCFILTER(ASTEROID_SAUCER_FIRE_SND, NODE_64, 2, 1.0e-5)
/************************************************/
/* Thrust noise is a gated noise source */
@@ -171,11 +171,12 @@ DISCRETE_SOUND_START(asteroid)
DISCRETE_LFSR_NOISE(ASTEROID_NOISE, ASTEROID_NOISE_RESET, ASTEROID_NOISE_RESET, 12000.0, 1.0, 0, 0, &asteroid_lfsr)
DISCRETE_GAIN(NODE_70, ASTEROID_NOISE, 600.0*7.6)
- DISCRETE_RCFILTER(NODE_71, ASTEROID_THRUST_EN, NODE_70, 2200, 1e-6)
+ DISCRETE_RCFILTER(NODE_71, NODE_70, 2200, 1e-6)
+ DISCRETE_MULTIPLY(NODE_72, NODE_71, ASTEROID_THRUST_EN)
/* TBD - replace this line with a Sallen-Key Bandpass macro */
- DISCRETE_FILTER2(NODE_72, 1, NODE_71, 89.5, (1.0 / 7.6), DISC_FILTER_BANDPASS)
+ DISCRETE_FILTER2(NODE_73, 1, NODE_72, 89.5, (1.0 / 7.6), DISC_FILTER_BANDPASS)
/* TBD - replace this line with a Active Lowpass macro */
- DISCRETE_FILTER1(ASTEROID_THRUST_SND, 1, NODE_72, 160, DISC_FILTER_LOWPASS)
+ DISCRETE_FILTER1(ASTEROID_THRUST_SND, 1, NODE_73, 160, DISC_FILTER_LOWPASS)
/************************************************/
/* Explosion generation circuit, pitch and vol */
@@ -195,7 +196,7 @@ DISCRETE_SOUND_START(asteroid)
DISCRETE_SQUAREWFIX(NODE_82, 1, NODE_80, 1.0, NODE_81, 1.0/2, 0) /* Pitch clock */
DISCRETE_SAMPLHOLD(NODE_83, ASTEROID_NOISE, NODE_82, DISC_SAMPHOLD_REDGE)
DISCRETE_MULTIPLY(NODE_84, NODE_83, ASTEROID_EXPLODE_DATA)
- DISCRETE_RCFILTER(ASTEROID_EXPLODE_SND, 1, NODE_84, 3042, 1e-6)
+ DISCRETE_RCFILTER(ASTEROID_EXPLODE_SND, NODE_84, 3042, 1e-6)
/************************************************/
/* Life enable is just 3KHz tone from the clock */
@@ -241,11 +242,12 @@ DISCRETE_SOUND_START(astdelux)
DISCRETE_LFSR_NOISE(ASTEROID_NOISE, ASTEROID_NOISE_RESET, ASTEROID_NOISE_RESET, 12000.0, 1.0, 0, 0, &asteroid_lfsr)
DISCRETE_GAIN(NODE_70, ASTEROID_NOISE, 1000.0*7.6)
- DISCRETE_RCFILTER(NODE_71, ASTEROID_THRUST_EN, NODE_70, 2200, 1e-6)
+ DISCRETE_RCFILTER(NODE_71, NODE_70, 2200, 1e-6)
+ DISCRETE_MULTIPLY(NODE_72, NODE_71, ASTEROID_THRUST_EN)
/* TBD - replace this line with a Sallen-Key Bandpass macro */
- DISCRETE_FILTER2(NODE_72, 1, NODE_71, 89.5, (1.0 / 7.6), DISC_FILTER_BANDPASS)
+ DISCRETE_FILTER2(NODE_73, 1, NODE_72, 89.5, (1.0 / 7.6), DISC_FILTER_BANDPASS)
/* TBD - replace this line with a Active Lowpass macro */
- DISCRETE_FILTER1(ASTEROID_THRUST_SND, 1, NODE_72, 160, DISC_FILTER_LOWPASS)
+ DISCRETE_FILTER1(ASTEROID_THRUST_SND, 1, NODE_73, 160, DISC_FILTER_LOWPASS)
/************************************************/
/* Explosion generation circuit, pitch and vol */
@@ -265,7 +267,7 @@ DISCRETE_SOUND_START(astdelux)
DISCRETE_SQUAREWFIX(NODE_82, 1, NODE_80, 1.0, NODE_81, 1.0/2, 0) /* Pitch clock */
DISCRETE_SAMPLHOLD(NODE_83, ASTEROID_NOISE, NODE_82, DISC_SAMPHOLD_REDGE)
DISCRETE_MULTIPLY(NODE_84, NODE_83, ASTEROID_EXPLODE_DATA)
- DISCRETE_RCFILTER(ASTEROID_EXPLODE_SND, 1, NODE_84, 3042, 1e-6)
+ DISCRETE_RCFILTER(ASTEROID_EXPLODE_SND, NODE_84, 3042, 1e-6)
/************************************************/
/* Combine all 7 sound sources with a double */