On Mon, 12 Mar 2012, Marc-Andr? Lureau wrote: > Combine output volume with Master and PCM registers values. > Use default values in mixer_reset (). > Set volume on post-load to update backend values. > --- > hw/ac97.c | 79 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 files changed, 79 insertions(+), 0 deletions(-) > > diff --git a/hw/ac97.c b/hw/ac97.c > index f7866ed..227233c 100644 > --- a/hw/ac97.c > +++ b/hw/ac97.c > @@ -436,6 +436,63 @@ static void reset_voices (AC97LinkState *s, uint8_t > active[LAST_INDEX]) > AUD_set_active_in (s->voice_mc, active[MC_INDEX]); > } > > +static void get_volume (uint16_t vol, uint16_t mask, int inverse, > + int *mute, uint8_t *lvol, uint8_t *rvol) > +{ > + *mute = (vol >> MUTE_SHIFT) & 1; > + *rvol = (255 * (vol & mask)) / mask; > + *lvol = (255 * ((vol >> 8) & mask)) / mask; > + if (inverse) { > + *rvol = 255 - *rvol; > + *lvol = 255 - *lvol; > + } > +}
Indentation is off here. [..snip..] -- mailto:av1...@comtv.ru