ay8910.c:

* change DC offset for AY-3-8910 to 0.2V
* tones are now distinguishable again
galaxian.c:
* adjust "konami" sound volume
gyruss.c:
* adjust sound volume
This commit is contained in:
Couriersud 2008-04-23 23:31:14 +00:00
parent 45c24298af
commit b4fd76f158
3 changed files with 38 additions and 15 deletions

View File

@ -176,7 +176,6 @@ static ay_ym_param ay8910_param =
4120, 2512, 1737, 1335, 1005, 747, 586, 451 }, 4120, 2512, 1737, 1335, 1005, 747, 586, 451 },
}; };
#endif
/* /*
* RL = 3000, Hacker Kay normalized pattern, 1.5V to 2.8V * RL = 3000, Hacker Kay normalized pattern, 1.5V to 2.8V
* These values correspond with guesses based on Gyruss schematics * These values correspond with guesses based on Gyruss schematics
@ -190,10 +189,36 @@ static ay_ym_param ay8910_param =
4189, 2557, 1772, 1363, 1028, 766, 602, 464 }, 4189, 2557, 1772, 1363, 1028, 766, 602, 464 },
}; };
/*
* RL = 1000, Hacker Kay normalized pattern, 0.75V to 2.05V
* These values correspond with guesses based on Gyruss schematics
* They work well with scramble as well.
*/
static ay_ym_param ay8910_param =
{
1371, 313,
16,
{ 93399, 33289, 25808, 19285, 13940, 9846, 7237, 4493,
3814, 2337, 1629, 1263, 962, 727, 580, 458 },
};
#endif
/*
* RL = 1000, Hacker Kay normalized pattern, 0.2V to 1.5V
*/
static ay_ym_param ay8910_param =
{
5806, 300,
16,
{ 118996, 42698, 33105, 24770, 17925, 12678, 9331, 5807,
4936, 3038, 2129, 1658, 1271, 969, 781, 623 }
};
static void AY8910_write_reg(struct AY8910 *PSG, int r, int v) static void AY8910_write_reg(struct AY8910 *PSG, int r, int v)
{ {
//if (r != 4 && r !=5) printf("%d %x %02x\n", PSG->index, r, v);
PSG->regs[r] = v; PSG->regs[r] = v;
/* A note about the period of tones, noise and envelope: for speed reasons,*/ /* A note about the period of tones, noise and envelope: for speed reasons,*/

View File

@ -1544,7 +1544,7 @@ GFXDECODE_END
static struct AY8910interface frogger_ay8910_interface = static struct AY8910interface frogger_ay8910_interface =
{ {
AY8910_DISCRETE_OUTPUT, AY8910_DISCRETE_OUTPUT,
AY8910_DEFAULT_LOADS, {RES_K(5.1), RES_K(5.1), RES_K(5.1)},
soundlatch_r, soundlatch_r,
frogger_sound_timer_r, frogger_sound_timer_r,
NULL, NULL,
@ -1554,7 +1554,7 @@ static struct AY8910interface frogger_ay8910_interface =
static struct AY8910interface konami_ay8910_interface_1 = static struct AY8910interface konami_ay8910_interface_1 =
{ {
AY8910_DISCRETE_OUTPUT, AY8910_DISCRETE_OUTPUT,
AY8910_DEFAULT_LOADS, {RES_K(5.1), RES_K(5.1), RES_K(5.1)},
NULL, NULL,
NULL, NULL,
NULL, NULL,
@ -1564,7 +1564,7 @@ static struct AY8910interface konami_ay8910_interface_1 =
static struct AY8910interface konami_ay8910_interface_2 = static struct AY8910interface konami_ay8910_interface_2 =
{ {
AY8910_DISCRETE_OUTPUT, AY8910_DISCRETE_OUTPUT,
AY8910_DEFAULT_LOADS, {RES_K(5.1), RES_K(5.1), RES_K(5.1)},
soundlatch_r, soundlatch_r,
konami_sound_timer_r, konami_sound_timer_r,
NULL, NULL,
@ -1632,8 +1632,6 @@ static const discrete_mixer_desc konami_sound_mixer_desc =
CAP_U(0.15), CAP_U(0.15),
0, 1}; 0, 1};
#define AY_INTERNAL (500)
static DISCRETE_SOUND_START( konami_sound ) static DISCRETE_SOUND_START( konami_sound )
DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0) DISCRETE_INPUTX_STREAM(NODE_01, 0, 1.0, 0)
@ -1652,13 +1650,13 @@ static DISCRETE_SOUND_START( konami_sound )
DISCRETE_INPUT_DATA(NODE_15) DISCRETE_INPUT_DATA(NODE_15)
DISCRETE_INPUT_DATA(NODE_16) DISCRETE_INPUT_DATA(NODE_16)
DISCRETE_RCFILTER_SW(NODE_21, 1, NODE_01, NODE_11, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_21, 1, NODE_01, NODE_11, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_RCFILTER_SW(NODE_22, 1, NODE_02, NODE_12, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_22, 1, NODE_02, NODE_12, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_RCFILTER_SW(NODE_23, 1, NODE_03, NODE_13, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_23, 1, NODE_03, NODE_13, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_RCFILTER_SW(NODE_24, 1, NODE_04, NODE_14, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_24, 1, NODE_04, NODE_14, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_RCFILTER_SW(NODE_25, 1, NODE_05, NODE_15, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_25, 1, NODE_05, NODE_15, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_RCFILTER_SW(NODE_26, 1, NODE_06, NODE_16, AY_INTERNAL+1000, CAP_U(0.22), CAP_U(0.047), 0, 0) DISCRETE_RCFILTER_SW(NODE_26, 1, NODE_06, NODE_16, AY8910_INTERNAL_RESISTANCE+1000, CAP_U(0.22), CAP_U(0.047), 0, 0)
DISCRETE_MIXER6(NODE_30, 1, NODE_21, NODE_22, NODE_23, NODE_24, NODE_25, NODE_26, &konami_sound_mixer_desc) DISCRETE_MIXER6(NODE_30, 1, NODE_21, NODE_22, NODE_23, NODE_24, NODE_25, NODE_26, &konami_sound_mixer_desc)
@ -1666,7 +1664,7 @@ static DISCRETE_SOUND_START( konami_sound )
/* This is handled with sound_global_enable but */ /* This is handled with sound_global_enable but */
/* belongs here. */ /* belongs here. */
DISCRETE_OUTPUT(NODE_30, 1.5 ) DISCRETE_OUTPUT(NODE_30, 12.0 )
DISCRETE_SOUND_END DISCRETE_SOUND_END

View File

@ -508,8 +508,8 @@ static DISCRETE_SOUND_START( gyruss_sound )
/* left channel */ /* left channel */
DISCRETE_MIXER5(NODE_51, 1, NODE_34, NODE_35, NODE_36, NODE_42, NODE_16, &konami_left_mixer_desc) DISCRETE_MIXER5(NODE_51, 1, NODE_34, NODE_35, NODE_36, NODE_42, NODE_16, &konami_left_mixer_desc)
DISCRETE_OUTPUT(NODE_50, 3.5 / 2 ) DISCRETE_OUTPUT(NODE_50, 6.0)
DISCRETE_OUTPUT(NODE_51, 3.5 / 2) DISCRETE_OUTPUT(NODE_51, 6.0)
DISCRETE_SOUND_END DISCRETE_SOUND_END