mirror of
https://github.com/holub/mame
synced 2025-05-23 06:08:48 +03:00
Removed old index-based DISCRETE_ADJUSTMENT, and renamed
DISCRETE_ADJUSTMENT_TAG to replace it. Updated all callers. Removed input_port_by_index, as it is no longer needed.
This commit is contained in:
parent
6f4ff3c823
commit
de3ffd84b3
@ -770,25 +770,6 @@ const input_port_config *input_port_by_tag_slow(const input_port_list *portlist,
|
||||
}
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
input_port_by_index - return a pointer to the
|
||||
port_config associated with the given port
|
||||
index
|
||||
-------------------------------------------------*/
|
||||
|
||||
const input_port_config *input_port_by_index(const input_port_list *portlist, int index)
|
||||
{
|
||||
const input_port_config *port;
|
||||
|
||||
/* loop over ports until we hit the index or run out */
|
||||
for (port = portlist->head; port != NULL; port = port->next)
|
||||
if (index-- == 0)
|
||||
return port;
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
input_field_by_tag_and_mask - return a pointer
|
||||
to the first field that intersects the given
|
||||
|
@ -1041,9 +1041,6 @@ void input_port_list_deinit(input_port_list *portlist);
|
||||
/* return the config that matches the given tag */
|
||||
const input_port_config *input_port_by_tag_slow(const input_port_list *portlist, const char *tag);
|
||||
|
||||
/* return the config that matches the given tag */
|
||||
const input_port_config *input_port_by_index(const input_port_list *portlist, int index);
|
||||
|
||||
/* return the field that matches the given tag and mask */
|
||||
const input_field_config *input_field_by_tag_and_mask(const input_port_list *portlist, const char *tag, input_port_value mask);
|
||||
|
||||
|
@ -174,14 +174,9 @@ static DISCRETE_RESET(dss_adjustment)
|
||||
|
||||
double min, max;
|
||||
|
||||
if (node->custom)
|
||||
{
|
||||
context->port = input_port_by_tag(&node->info->device->machine->portlist, (const char *)node->custom);
|
||||
if (context->port == NULL)
|
||||
fatalerror("DISCRETE_ADJUSTMENT_TAG - NODE_%d has invalid tag", NODE_BLOCKINDEX(node));
|
||||
}
|
||||
else
|
||||
context->port = input_port_by_index(&node->info->device->machine->portlist, DSS_ADJUSTMENT__PORT);
|
||||
context->port = input_port_by_tag(&node->info->device->machine->portlist, (const char *)node->custom);
|
||||
if (context->port == NULL)
|
||||
fatalerror("DISCRETE_ADJUSTMENT - NODE_%d has invalid tag", NODE_BLOCKINDEX(node));
|
||||
|
||||
context->lastpval = 0x7fffffff;
|
||||
context->pmin = DSS_ADJUSTMENT__PMIN;
|
||||
|
@ -187,9 +187,8 @@
|
||||
* DISCRETE_SOUND_START(STRUCTURENAME)
|
||||
* DISCRETE_SOUND_END
|
||||
*
|
||||
* DISCRETE_ADJUSTMENT(NODE,MIN,MAX,LOGLIN,PORT)
|
||||
* DISCRETE_ADJUSTMENT_TAG(NODE,MIN,MAX,LOGLIN,TAG)
|
||||
* DISCRETE_ADJUSTMENTX(NODE,MIN,MAX,LOGLIN,PORT,PMIN,PMAX)
|
||||
* DISCRETE_ADJUSTMENT(NODE,MIN,MAX,LOGLIN,TAG)
|
||||
* DISCRETE_ADJUSTMENTX(NODE,MIN,MAX,LOGLIN,TAG,PMIN,PMAX)
|
||||
* DISCRETE_CONSTANT(NODE,CONST0)
|
||||
* DISCRETE_INPUT_DATA(NODE)
|
||||
* DISCRETE_INPUTX_DATA(NODE,GAIN,OFFSET,INIT)
|
||||
@ -336,9 +335,6 @@
|
||||
***********************************************************************
|
||||
*
|
||||
* DISCRETE_ADJUSTMENT - Adjustable constant set by the UI [~] menu.
|
||||
* DISCRETE_ADJUSTMENT_TAG - Same as above but referenced by a tag.
|
||||
*
|
||||
* Note: DISCRETE_ADJUSTMENT_TAG is prefered over DISCRETE_ADJUSTMENT.
|
||||
*
|
||||
* .----------.
|
||||
* | |
|
||||
@ -351,13 +347,7 @@
|
||||
* static minimum value the node can take,
|
||||
* static maximum value the node can take,
|
||||
* log/linear scale 0=Linear !0=Logarithmic,
|
||||
* input port number of the adjuster)
|
||||
*
|
||||
* DISCRETE_ADJUSTMENT_TAG(name of node,
|
||||
* static minimum value the node can take,
|
||||
* static maximum value the node can take,
|
||||
* log/linear scale 0=Linear !0=Logarithmic,
|
||||
* port tag name of the adjuster)
|
||||
* port tag name of the adjuster)
|
||||
*
|
||||
* Note: When using DISC_LOGADJ, the min/max values must be > 0.
|
||||
* If they are <=0, they will be forced to 1.
|
||||
@ -366,10 +356,10 @@
|
||||
*
|
||||
* Example config line
|
||||
*
|
||||
* DISCRETE_ADJUSTMENT(NODE_01,0.0,5.0,DISC_LINADJ,0,5)
|
||||
* DISCRETE_ADJUSTMENT(NODE_01,0.0,5.0,DISC_LINADJ,0,"pot")
|
||||
*
|
||||
* Define an adjustment slider that takes a 0-100 input from input
|
||||
* port #5, scaling between 0.0 and 5.0. Adjustment scaling is Linear.
|
||||
* port "pot", scaling between 0.0 and 5.0. Adjustment scaling is Linear.
|
||||
*
|
||||
* DISC_LOGADJ 1.0
|
||||
* DISC_LINADJ 0.0
|
||||
@ -4385,9 +4375,8 @@ enum
|
||||
#define DISCRETE_SOUND_END { NODE_00, DSS_NULL , 0, { NODE_NC }, { 0 } ,NULL ,"DISCRETE_SOUND_END" } };
|
||||
|
||||
/* from disc_inp.c */
|
||||
#define DISCRETE_ADJUSTMENT(NODE,MIN,MAX,LOGLIN,PORT) { NODE, DSS_ADJUSTMENT , 7, { NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC }, { MIN,MAX,LOGLIN,PORT,0 ,100 }, NULL , "DISCRETE_ADJUSTMENT" },
|
||||
#define DISCRETE_ADJUSTMENT_TAG(NODE,MIN,MAX,LOGLIN,TAG) { NODE, DSS_ADJUSTMENT , 7, { NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC }, { MIN,MAX,LOGLIN,0 ,0 ,100 }, TAG , "DISCRETE_ADJUSTMENT_TAG" },
|
||||
#define DISCRETE_ADJUSTMENTX(NODE,MIN,MAX,LOGLIN,PORT,PMIN,PMAX) { NODE, DSS_ADJUSTMENT , 7, { NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC }, { MIN,MAX,LOGLIN,PORT,PMIN,PMAX }, NULL , "DISCRETE_ADJUSTMENTX" },
|
||||
#define DISCRETE_ADJUSTMENT(NODE,MIN,MAX,LOGLIN,TAG) { NODE, DSS_ADJUSTMENT , 7, { NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC }, { MIN,MAX,LOGLIN,0 ,0 ,100 }, TAG , "DISCRETE_ADJUSTMENT" },
|
||||
#define DISCRETE_ADJUSTMENTX(NODE,MIN,MAX,LOGLIN,TAG,PMIN,PMAX) { NODE, DSS_ADJUSTMENT , 7, { NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC,NODE_NC }, { MIN,MAX,LOGLIN,0 ,PMIN,PMAX }, TAG , "DISCRETE_ADJUSTMENTX" },
|
||||
#define DISCRETE_CONSTANT(NODE,CONST) { NODE, DSS_CONSTANT , 1, { NODE_NC }, { CONST } ,NULL ,"DISCRETE_CONSTANT" },
|
||||
#define DISCRETE_INPUT_DATA(NODE) { NODE, DSS_INPUT_DATA , 3, { NODE_NC,NODE_NC,NODE_NC }, { 1,0,0 }, NULL, "DISCRETE_INPUT_DATA" },
|
||||
#define DISCRETE_INPUTX_DATA(NODE,GAIN,OFFSET,INIT) { NODE, DSS_INPUT_DATA , 3, { NODE_NC,NODE_NC,NODE_NC }, { GAIN,OFFSET,INIT }, NULL, "DISCRETE_INPUTX_DATA" },
|
||||
|
@ -442,10 +442,10 @@ DISCRETE_SOUND_START(polaris)
|
||||
|
||||
/* We will cheat and just use the controls to scale the amplitude. */
|
||||
/* It is the same as taking the (0 to 50k)/50k */
|
||||
DISCRETE_ADJUSTMENT_TAG(POLARIS_ADJ_VR1, 0, 1, DISC_LINADJ, "VR1")
|
||||
DISCRETE_ADJUSTMENT_TAG(POLARIS_ADJ_VR2, 0, 1, DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT(POLARIS_ADJ_VR1, 0, 1, DISC_LINADJ, "VR1")
|
||||
DISCRETE_ADJUSTMENT(POLARIS_ADJ_VR2, 0, 1, DISC_LINADJ, "VR2")
|
||||
/* Extra cheating for VR3. We will include the resistor scaling. */
|
||||
DISCRETE_ADJUSTMENT_TAG(POLARIS_ADJ_VR3, 0, 0.5376, DISC_LINADJ, "VR3")
|
||||
DISCRETE_ADJUSTMENT(POLARIS_ADJ_VR3, 0, 0.5376, DISC_LINADJ, "VR3")
|
||||
|
||||
/******************************************************************************
|
||||
*
|
||||
@ -737,9 +737,9 @@ DISCRETE_SOUND_START(schaser)
|
||||
/* We will set them to adjust the realitive */
|
||||
/* gains. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(SCHASER_VR1, 0, RES_K(50)/(RES_K(50) + RES_K(470)), DISC_LINADJ, "VR1")
|
||||
DISCRETE_ADJUSTMENT_TAG(SCHASER_VR2, 0, RES_K(50)/(RES_K(50) + 560 + RES_K(6.8) + RES_K(2)), DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT_TAG(SCHASER_VR3, 0, RES_K(50)/(RES_K(50) + 560 + RES_K(6.8) + RES_K(10)), DISC_LINADJ, "VR3")
|
||||
DISCRETE_ADJUSTMENT(SCHASER_VR1, 0, RES_K(50)/(RES_K(50) + RES_K(470)), DISC_LINADJ, "VR1")
|
||||
DISCRETE_ADJUSTMENT(SCHASER_VR2, 0, RES_K(50)/(RES_K(50) + 560 + RES_K(6.8) + RES_K(2)), DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT(SCHASER_VR3, 0, RES_K(50)/(RES_K(50) + 560 + RES_K(6.8) + RES_K(10)), DISC_LINADJ, "VR3")
|
||||
|
||||
/************************************************/
|
||||
/* Dot selection just selects between 4V and 8V */
|
||||
|
@ -292,7 +292,7 @@ static DISCRETE_SOUND_START(bzone)
|
||||
DISCRETE_BITS_DECODE(NODE_10, BZ_INPUT, 0, 7, 1) /* IC M2, bits 0 - 7 */
|
||||
|
||||
/* the pot is 250K, but we will use a smaller range to get a better adjustment range */
|
||||
DISCRETE_ADJUSTMENT_TAG(BZ_R11_POT, RES_K(75), RES_K(10), DISC_LINADJ, "R11")
|
||||
DISCRETE_ADJUSTMENT(BZ_R11_POT, RES_K(75), RES_K(10), DISC_LINADJ, "R11")
|
||||
|
||||
|
||||
/************************************************/
|
||||
|
@ -123,7 +123,7 @@ DISCRETE_SOUND_START(canyon)
|
||||
/* 0k = 214Hz. 250k = 4416Hz */
|
||||
/************************************************/
|
||||
DISCRETE_RCFILTER(NODE_20, CANYON_MOTOR1_DATA, 123000, 1e-6)
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_21, (214.0-27.0)/12/15, (4416.0-27.0)/12/15, DISC_LOGADJ, "MOTOR1")
|
||||
DISCRETE_ADJUSTMENT(NODE_21, (214.0-27.0)/12/15, (4416.0-27.0)/12/15, DISC_LOGADJ, "MOTOR1")
|
||||
DISCRETE_MULTIPLY(NODE_22, NODE_20, NODE_21)
|
||||
|
||||
DISCRETE_MULTADD(NODE_23, NODE_22, 2, 27.0/6) /* F1 = /12*2 = /6 */
|
||||
@ -146,7 +146,7 @@ DISCRETE_SOUND_START(canyon)
|
||||
/* it to sound different from motor 1. */
|
||||
/************************************************/
|
||||
DISCRETE_RCFILTER(NODE_40, CANYON_MOTOR2_DATA, 123000, 1e-6)
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_41, (214.0-27.0)/12/15, (4416.0-27.0)/12/15, DISC_LOGADJ, "MOTOR2")
|
||||
DISCRETE_ADJUSTMENT(NODE_41, (214.0-27.0)/12/15, (4416.0-27.0)/12/15, DISC_LOGADJ, "MOTOR2")
|
||||
DISCRETE_MULTIPLY(NODE_42, NODE_40, NODE_41)
|
||||
|
||||
DISCRETE_MULTADD(NODE_43, NODE_42, 2, 27.0/6) /* F1 = /12*2 = /6 */
|
||||
@ -187,13 +187,13 @@ DISCRETE_SOUND_START(canyon)
|
||||
/* frequency, then decays at the rate set by */
|
||||
/* a 68k resistor and 22uf capacitor. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_70, 50000, 100000, DISC_LINADJ, "WHISTLE1") /* R59 */
|
||||
DISCRETE_ADJUSTMENT(NODE_70, 50000, 100000, DISC_LINADJ, "WHISTLE1") /* R59 */
|
||||
DISCRETE_MULTADD(NODE_71, CANYON_WHISTLE1_EN, 3.05-0.33, 0.33)
|
||||
DISCRETE_RCDISC2(NODE_72, CANYON_WHISTLE1_EN, NODE_71, 1.0, NODE_71, 68000.0, 2.2e-5) /* CV */
|
||||
DISCRETE_555_ASTABLE_CV(NODE_73, CANYON_WHISTLE1_EN, 33000, NODE_70, 1e-8, NODE_72, &canyonWhistl555)
|
||||
DISCRETE_MULTIPLY(CANYON_WHISTLESND1, NODE_73, 519.4/3.3)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_75, 50000, 100000, DISC_LINADJ, "WHISTLE2") /* R69 */
|
||||
DISCRETE_ADJUSTMENT(NODE_75, 50000, 100000, DISC_LINADJ, "WHISTLE2") /* R69 */
|
||||
DISCRETE_MULTADD(NODE_76, CANYON_WHISTLE2_EN, 3.05-0.33, 0.33)
|
||||
DISCRETE_RCDISC2(NODE_77, CANYON_WHISTLE2_EN, NODE_76, 1.0, NODE_76, 68000.0, 2.2e-5) /* CV */
|
||||
DISCRETE_555_ASTABLE_CV(NODE_78, CANYON_WHISTLE2_EN, 33000, NODE_75, 1e-8, NODE_77, &canyonWhistl555)
|
||||
|
@ -122,8 +122,8 @@ DISCRETE_SOUND_START(crash)
|
||||
DISCRETE_INPUT_LOGIC(CRASH_MUSIC_BIT)
|
||||
DISCRETE_INPUT_PULSE(CRASH_BEEPER_EN, 1)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(CRASH_R63, 0, 5.0*RES_K(100)/(RES_K(47+100))-0.5, DISC_LINADJ, "R63")
|
||||
DISCRETE_ADJUSTMENT_TAG(CRASH_R39, 0, 1, DISC_LINADJ, "R39")
|
||||
DISCRETE_ADJUSTMENT(CRASH_R63, 0, 5.0*RES_K(100)/(RES_K(47+100))-0.5, DISC_LINADJ, "R63")
|
||||
DISCRETE_ADJUSTMENT(CRASH_R39, 0, 1, DISC_LINADJ, "R39")
|
||||
|
||||
/************************************************/
|
||||
/* Music is just a 1 bit DAC */
|
||||
|
@ -97,8 +97,8 @@ static DISCRETE_SOUND_START(crbaloon)
|
||||
DISCRETE_INPUT_LOGIC(CRBALOON_MUSIC_EN)
|
||||
DISCRETE_INPUT_DATA (CRBALOON_MUSIC_DATA)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(CRBALOON_VR2, 0, 0.5, DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT_TAG(CRBALOON_VR3, 0, 1, DISC_LINADJ, "VR3")
|
||||
DISCRETE_ADJUSTMENT(CRBALOON_VR2, 0, 0.5, DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT(CRBALOON_VR3, 0, 1, DISC_LINADJ, "VR3")
|
||||
|
||||
/************************************************
|
||||
* Laugh is a VCO modulated by a constant
|
||||
|
@ -451,7 +451,7 @@ static DISCRETE_SOUND_START(dkong2b)
|
||||
|
||||
DISCRETE_TASK_START(1)
|
||||
/* Mixing - DAC */
|
||||
DISCRETE_ADJUSTMENT_TAG(DS_ADJ_DAC, 0, 1, DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT(DS_ADJ_DAC, 0, 1, DISC_LINADJ, "VR2")
|
||||
|
||||
/* Buffer DAC first to input stream 0 */
|
||||
DISCRETE_INPUT_BUFFER(DS_DAC, 0)
|
||||
@ -647,7 +647,7 @@ static DISCRETE_SOUND_START(radarscp)
|
||||
//DISCRETE_INPUT_DATA(DS_DAC)
|
||||
|
||||
/* Mixing - DAC */
|
||||
DISCRETE_ADJUSTMENT_TAG(DS_ADJ_DAC, 0, 1, DISC_LINADJ, "VR2")
|
||||
DISCRETE_ADJUSTMENT(DS_ADJ_DAC, 0, 1, DISC_LINADJ, "VR2")
|
||||
|
||||
/************************************************/
|
||||
/* SIGNALS */
|
||||
|
@ -92,7 +92,7 @@ DISCRETE_SOUND_START(dragrace)
|
||||
/* NOTE: freqs are ripped from Sprint for now. */
|
||||
/************************************************/
|
||||
DISCRETE_RCFILTER(NODE_20, DRAGRACE_MOTOR1_DATA, 119898, 2.2e-6)
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_21, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR1")
|
||||
DISCRETE_ADJUSTMENT(NODE_21, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR1")
|
||||
DISCRETE_MULTIPLY(NODE_22, NODE_20, NODE_21)
|
||||
|
||||
DISCRETE_MULTADD(NODE_23, NODE_22, 2, 27.0/6) /* F1 = /12*2 = /6 */
|
||||
@ -115,7 +115,7 @@ DISCRETE_SOUND_START(dragrace)
|
||||
/* it to sound different from car1. */
|
||||
/************************************************/
|
||||
DISCRETE_RCFILTER(NODE_40, DRAGRACE_MOTOR2_DATA, 119898, 2.2e-6)
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_41, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR2")
|
||||
DISCRETE_ADJUSTMENT(NODE_41, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR2")
|
||||
DISCRETE_MULTIPLY(NODE_42, NODE_40, NODE_41)
|
||||
|
||||
DISCRETE_MULTADD(NODE_43, NODE_42, 2, 27.0/6) /* F1 = /12*2 = /6 */
|
||||
|
@ -206,7 +206,7 @@ DISCRETE_SOUND_START(firetrk)
|
||||
/* drive a modulo 12 counter, with div6 & div12 */
|
||||
/* summed as the output of the circuit. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
RES_K(260), // R26 + R27 @ max
|
||||
RES_K(10), // R26 + R27 @ min
|
||||
DISC_LOGADJ, "R27")
|
||||
@ -409,7 +409,7 @@ DISCRETE_SOUND_START(superbug)
|
||||
/* latch (4 bit). This freqency is then used to */
|
||||
/* drive a modulo 12 counter. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
RES_K(260), // R12 + R62 @ max
|
||||
RES_K(10), // R12 + R62 @ min
|
||||
DISC_LOGADJ, "R62")
|
||||
@ -593,7 +593,7 @@ DISCRETE_SOUND_START(montecar)
|
||||
/* driver a modulo 12 counter, with div6, 4 & 3 */
|
||||
/* summed as the output of the circuit. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
RES_K(260), // R87 + R89 @ max
|
||||
RES_K(10), // R87 + R89 @ min
|
||||
DISC_LOGADJ, "R89")
|
||||
@ -628,7 +628,7 @@ DISCRETE_SOUND_START(montecar)
|
||||
/************************************************/
|
||||
DISCRETE_COMP_ADDER(NODE_30, MONTECAR_DRONE_LOUD_DATA, &montecar_drone_vol_res) // make sure to change the node value in the mixer table if you change this node number
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_40,
|
||||
DISCRETE_ADJUSTMENT(NODE_40,
|
||||
RES_K(260), // R85 + R88 @ max
|
||||
RES_K(10), // R85 + R88 @ min
|
||||
DISC_LOGADJ, "R88")
|
||||
|
@ -42,7 +42,7 @@ DISCRETE_SOUND_START(hitme)
|
||||
DISCRETE_INPUT_PULSE(HITME_OUT1, 0)
|
||||
|
||||
/* This represents the resistor at R3, which controls the speed of the sound effects */
|
||||
DISCRETE_ADJUSTMENT_TAG(HITME_GAME_SPEED,0.0,25000.0,DISC_LINADJ,"R3")
|
||||
DISCRETE_ADJUSTMENT(HITME_GAME_SPEED,0.0,25000.0,DISC_LINADJ,"R3")
|
||||
|
||||
/* The clock for the main downcounter is a "404", or LS123 retriggerable multivibrator.
|
||||
* It is clocked by IPH2 (8.945MHz/16 = 559kHz), then triggers a pulse which is adjustable
|
||||
|
@ -759,7 +759,7 @@ static DISCRETE_SOUND_START(boothill)
|
||||
/* The low value of the pot is set to 75000. A real 1M pot will never go to 0 anyways.
|
||||
This will give the control more apparent volume range.
|
||||
The music way overpowers the rest of the sounds anyways. */
|
||||
DISCRETE_ADJUSTMENT_TAG(BOOTHILL_MUSIC_ADJ, RES_M(1), 75000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
DISCRETE_ADJUSTMENT(BOOTHILL_MUSIC_ADJ, RES_M(1), 75000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
|
||||
/************************************************
|
||||
* Tone generator
|
||||
@ -963,8 +963,8 @@ static DISCRETE_SOUND_START(checkmat)
|
||||
/* This is needed because the original controls are infinite, but the UI only gives 100 steps. */
|
||||
/* Also real variable resistors never hit 0 ohms. There is always some resistance. */
|
||||
/* R309 mostly just increases the Boom clipping, making it sound bassier. */
|
||||
DISCRETE_ADJUSTMENT_TAG(CHECKMAT_R309, RES_K(100), 1000, DISC_LOGADJ, "R309")
|
||||
DISCRETE_ADJUSTMENT_TAG(CHECKMAT_R411, RES_M(1), 1000, DISC_LOGADJ, "R411")
|
||||
DISCRETE_ADJUSTMENT(CHECKMAT_R309, RES_K(100), 1000, DISC_LOGADJ, "R309")
|
||||
DISCRETE_ADJUSTMENT(CHECKMAT_R411, RES_M(1), 1000, DISC_LOGADJ, "R411")
|
||||
|
||||
/************************************************
|
||||
* Boom Sound
|
||||
@ -1204,7 +1204,7 @@ static DISCRETE_SOUND_START(desertgu)
|
||||
/* The low value of the pot is set to 75000. A real 1M pot will never go to 0 anyways. */
|
||||
/* This will give the control more apparent volume range. */
|
||||
/* The music way overpowers the rest of the sounds anyways. */
|
||||
DISCRETE_ADJUSTMENT_TAG(DESERTGU_MUSIC_ADJ, RES_M(1), 75000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
DISCRETE_ADJUSTMENT(DESERTGU_MUSIC_ADJ, RES_M(1), 75000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
|
||||
/************************************************
|
||||
* Tone generator
|
||||
@ -1472,7 +1472,7 @@ static DISCRETE_SOUND_START(dplay)
|
||||
/* The low value of the pot is set to 1000. A real 1M pot will never go to 0 anyways. */
|
||||
/* This will give the control more apparent volume range. */
|
||||
/* The music way overpowers the rest of the sounds anyways. */
|
||||
DISCRETE_ADJUSTMENT_TAG(DPLAY_MUSIC_ADJ, RES_M(1), 1000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
DISCRETE_ADJUSTMENT(DPLAY_MUSIC_ADJ, RES_M(1), 1000, DISC_LOGADJ, "MUSIC_ADJ")
|
||||
|
||||
/************************************************
|
||||
* Music and Tone Generator
|
||||
@ -1876,7 +1876,7 @@ static DISCRETE_SOUND_START(clowns)
|
||||
/* The low value of the pot is set to 7000. A real 1M pot will never go to 0 anyways. */
|
||||
/* This will give the control more apparent volume range. */
|
||||
/* The music way overpowers the rest of the sounds anyways. */
|
||||
DISCRETE_ADJUSTMENT_TAG(CLOWNS_R507_POT, RES_M(1), 7000, DISC_LOGADJ, "R507")
|
||||
DISCRETE_ADJUSTMENT(CLOWNS_R507_POT, RES_M(1), 7000, DISC_LOGADJ, "R507")
|
||||
|
||||
/************************************************
|
||||
* Tone generator
|
||||
@ -2213,7 +2213,7 @@ DISCRETE_GAIN(NODE_RELATIVE(SPACWALK_SPRINGBOARD_HIT1_SND, _num - 1),
|
||||
/* The low value of the pot is set to 7000. A real 1M pot will never go to 0 anyways. */
|
||||
/* This will give the control more apparent volume range. */
|
||||
/* The music way overpowers the rest of the sounds anyways. */
|
||||
DISCRETE_ADJUSTMENT_TAG(SPACWALK_R507_POT, SPACWALK_R507, 7000, DISC_LOGADJ, "R507")
|
||||
DISCRETE_ADJUSTMENT(SPACWALK_R507_POT, SPACWALK_R507, 7000, DISC_LOGADJ, "R507")
|
||||
|
||||
/************************************************
|
||||
* Tone generator
|
||||
|
@ -80,7 +80,7 @@ DISCRETE_SOUND_START(nitedrvr)
|
||||
/* 0k = 214Hz. 250k = 4416Hz */
|
||||
/************************************************/
|
||||
DISCRETE_RCFILTER(NODE_20, NITEDRVR_MOTOR_DATA, 123037, 2.2e-6)
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_21, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR")
|
||||
DISCRETE_ADJUSTMENT(NODE_21, (214.0-27.0)/12/31, (4416.0-27.0)/12/31, DISC_LOGADJ, "MOTOR")
|
||||
DISCRETE_MULTIPLY(NODE_22, NODE_20, NODE_21)
|
||||
|
||||
DISCRETE_MULTADD(NODE_23, NODE_22, 2, 27.0/6) /* F1 = /12*2 = /6 */
|
||||
|
@ -123,14 +123,14 @@ DISCRETE_SOUND_START(skydiver)
|
||||
/* frequency, then decays at the rate set by */
|
||||
/* a 68k resistor and 22uf capacitor. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_30, 250000, 50000, DISC_LINADJ, "WHISTLE1") /* R66 */
|
||||
DISCRETE_ADJUSTMENT(NODE_30, 250000, 50000, DISC_LINADJ, "WHISTLE1") /* R66 */
|
||||
DISCRETE_MULTADD(NODE_31, SKYDIVER_WHISTLE1_EN, 3.05-0.33, 0.33)
|
||||
DISCRETE_RCDISC2(NODE_32, SKYDIVER_WHISTLE1_EN, NODE_31, 1.0, NODE_31, 68000.0, 2.2e-5) /* CV */
|
||||
DISCRETE_SWITCH(NODE_33, 1, SKYDIVER_OCT1_EN, 1e-8, 1e-8 + 3.3e-9) /* Cap C73 & C58 */
|
||||
DISCRETE_555_ASTABLE_CV(NODE_34, SKYDIVER_WHISTLE1_EN, 100000, NODE_30, NODE_33, NODE_32, &skydiverWhistl555)
|
||||
DISCRETE_MULTIPLY(SKYDIVER_WHISTLE1_SND, NODE_34, 228.5/3.3)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_35, 250000, 50000, DISC_LINADJ, "WHISTLE2") /* R65 */
|
||||
DISCRETE_ADJUSTMENT(NODE_35, 250000, 50000, DISC_LINADJ, "WHISTLE2") /* R65 */
|
||||
DISCRETE_MULTADD(NODE_36, SKYDIVER_WHISTLE2_EN, 3.05-0.33, 0.33)
|
||||
DISCRETE_RCDISC2(NODE_37, SKYDIVER_WHISTLE2_EN, NODE_36, 1.0, NODE_36, 68000.0, 2.2e-5) /* CV */
|
||||
DISCRETE_SWITCH(NODE_38, 1, SKYDIVER_OCT2_EN, 1e-8, 1e-8 + 3.3e-9) /* Cap C72 & C59 */
|
||||
|
@ -121,7 +121,7 @@ DISCRETE_SOUND_START(sprint2)
|
||||
/* and are output thru a DAC */
|
||||
/************************************************/
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
RES_K(260), // R21 + R23 @ max
|
||||
RES_K(10), // R21 + R23 @ min
|
||||
DISC_LOGADJ, "MOTOR1")
|
||||
@ -159,7 +159,7 @@ DISCRETE_SOUND_START(sprint2)
|
||||
/************************************************/
|
||||
/* Car2 motor sound */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_40,
|
||||
DISCRETE_ADJUSTMENT(NODE_40,
|
||||
RES_K(260), // R21 + R23 @ max
|
||||
RES_K(10), // R21 + R23 @ min
|
||||
DISC_LOGADJ, "MOTOR2")
|
||||
@ -244,7 +244,7 @@ DISCRETE_SOUND_START(sprint1)
|
||||
/* and are output thru a DAC */
|
||||
/************************************************/
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
RES_K(260), // R21 + R23 @ max
|
||||
RES_K(10), // R21 + R23 @ min
|
||||
DISC_LOGADJ, "MOTOR")
|
||||
@ -368,7 +368,7 @@ DISCRETE_SOUND_START(dominos)
|
||||
DISCRETE_INPUT_DATA (DOMINOS_AMP_DATA) // IC C4
|
||||
DISCRETE_INPUT_LOGIC(DOMINOS_ATTRACT_EN)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(DOMINOS_R23,
|
||||
DISCRETE_ADJUSTMENT(DOMINOS_R23,
|
||||
RES_K(60), // R21 + R23 @ max
|
||||
RES_K(10), // R21 + R23 @ min
|
||||
DISC_LINADJ, "R23")
|
||||
|
@ -172,7 +172,7 @@ static const discrete_mixer_desc sprint4_mixer =
|
||||
SPRINT4_MOTOR_DATA_##_plr, /* DATA */ \
|
||||
DEFAULT_TTL_V_LOGIC_1, /* VDATA */ \
|
||||
&sprint4_motor_freq_DAC) /* LADDER */ \
|
||||
DISCRETE_ADJUSTMENT_TAG(SPRINT4_PLAYER_MOTOR_NODE(2, _plr), \
|
||||
DISCRETE_ADJUSTMENT(SPRINT4_PLAYER_MOTOR_NODE(2, _plr), \
|
||||
RES_K(10) + RES_K(250), /* MIN */ \
|
||||
RES_K(10), /* MAX */ \
|
||||
DISC_LOGADJ, /* LOGLIN */ \
|
||||
|
@ -182,7 +182,7 @@ DISCRETE_SOUND_START( sprint8 )
|
||||
DISCRETE_INPUTX_LOGIC(SPRINT8_MOTOR8_EN, DEFAULT_TTL_V_LOGIC_1, 0, 0)
|
||||
|
||||
DISCRETE_TASK_START(0)
|
||||
DISCRETE_ADJUSTMENT_TAG(SPRINT8_R132_POT, 0, SPRINT8_R132, DISC_LINADJ, "R132")
|
||||
DISCRETE_ADJUSTMENT(SPRINT8_R132_POT, 0, SPRINT8_R132, DISC_LINADJ, "R132")
|
||||
|
||||
/************************************************
|
||||
* Noise Generator, Crash, Screech
|
||||
|
@ -247,7 +247,7 @@ DISCRETE_SOUND_START(tank8)
|
||||
DISCRETE_ADDER2(NODE_125, 1 , NODE_122, NODE_124 )
|
||||
DISCRETE_MULTIPLY(NODE_126, NODE_120, NODE_125 )
|
||||
DISCRETE_RCFILTER(NODE_127, NODE_126, RES_K(47), CAP_U(0.1))
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_128,
|
||||
DISCRETE_ADJUSTMENT(NODE_128,
|
||||
1.0, // min gain of E5
|
||||
1.0 + 100.0/22, // max gain of E5 = 1 + r132/r101
|
||||
DISC_LINADJ, "CRASH")
|
||||
|
@ -130,7 +130,7 @@ DISCRETE_SOUND_START(triplhnt)
|
||||
/************************************************/
|
||||
/* Bear Roar is a VCO with noise mixed in. */
|
||||
/************************************************/
|
||||
DISCRETE_ADJUSTMENT_TAG(NODE_20,
|
||||
DISCRETE_ADJUSTMENT(NODE_20,
|
||||
10000, // R86 + R88 @ 0
|
||||
260000, // R86 + R88 @ max
|
||||
DISC_LOGADJ, "BEAR")
|
||||
|
@ -73,7 +73,7 @@ static DISCRETE_SOUND_START(frogs)
|
||||
DISCRETE_INPUT_NOT(FROGS_CAPTURE_EN)
|
||||
DISCRETE_INPUT_NOT(FROGS_SPLASH_EN)
|
||||
|
||||
DISCRETE_ADJUSTMENT_TAG(FROGS_R93, RES_M(1), RES_K(10), DISC_LOGADJ, "R93")
|
||||
DISCRETE_ADJUSTMENT(FROGS_R93, RES_M(1), RES_K(10), DISC_LOGADJ, "R93")
|
||||
|
||||
DISCRETE_555_MSTABLE(NODE_30, 1, FROGS_TONGUE_EN, RES_K(100), CAP_U(1), &frogsZip555m)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user