SDL now supports tuning individual sound channels

This commit is contained in:
shinydoofy 2009-03-22 02:25:04 +00:00
parent e995c941a4
commit 47f8bd0383
4 changed files with 26 additions and 5 deletions

View File

@ -1,4 +1,5 @@
---version 2.0.4 yet to be released---
22-mar-2009 - shinydoofy - sdl - added commandline options for sound channels' volumes
22-mar-2009 - shinydoofy - sdl - updated window title
19-mar-2009 - adelikat - Win32 - make Video - windowed mode - disable hardware accel the default setting. Made high quality sound the default setting.
16-mar-2009 - adelikat - Win32 - GUI Dialog - added an option to disable the context menu

View File

@ -116,6 +116,11 @@ InitConfig()
// sound options
config->addOption('s', "sound", "SDL.Sound", 1);
config->addOption("volume", "SDL.SoundVolume", 100);
config->addOption("trianglevol", "SDL.TriangleVolume", 100);
config->addOption("square1vol", "SDL.Square1Volume", 100);
config->addOption("square2vol", "SDL.Square2Volume", 100);
config->addOption("noisevol", "SDL.NoiseVolume", 100);
config->addOption("pcmvol", "SDL.PCMVolume", 100);
config->addOption("soundrate", "SDL.SoundRate", 11000);
config->addOption("soundq", "SDL.SoundQuality", 1);
config->addOption("soundrecord", "SDL.SoundRecordFile", "");

View File

@ -79,7 +79,7 @@ fillaudio(void *udata,
int
InitSound(FCEUGI *gi)
{
int sound, soundrate, soundbufsize, soundvolume, soundq;
int sound, soundrate, soundbufsize, soundvolume, soundtrianglevolume, soundsquare1volume, soundsquare2volume, soundnoisevolume, soundpcmvolume, soundq;
SDL_AudioSpec spec;
g_config->getOption("SDL.Sound", &sound);
@ -99,6 +99,11 @@ InitSound(FCEUGI *gi)
g_config->getOption("SDL.SoundBufSize", &soundbufsize);
g_config->getOption("SDL.SoundVolume", &soundvolume);
g_config->getOption("SDL.SoundQuality", &soundq);
g_config->getOption("SDL.TriangleVolume", &soundtrianglevolume);
g_config->getOption("SDL.Square1Volume", &soundsquare1volume);
g_config->getOption("SDL.Square2Volume", &soundsquare2volume);
g_config->getOption("SDL.NoiseVolume", &soundnoisevolume);
g_config->getOption("SDL.PCMVolume", &soundpcmvolume);
spec.freq = soundrate;
spec.format = AUDIO_S16SYS;
@ -128,6 +133,11 @@ InitSound(FCEUGI *gi)
FCEUI_SetSoundVolume(soundvolume);
FCEUI_SetSoundQuality(soundq);
FCEUI_Sound(soundrate);
FCEUI_SetTriangleVolume(soundtrianglevolume);
FCEUI_SetSquare1Volume(soundsquare1volume);
FCEUI_SetSquare2Volume(soundsquare2volume);
FCEUI_SetNoiseVolume(soundnoisevolume);
FCEUI_SetPCMVolume(soundpcmvolume);
return(1);
}

View File

@ -80,10 +80,10 @@ char *DriverUsage="\
--fullscreen {0|1} Enables full screen mode.\n\
--clipsides {0|1} Clips left and rightmost 8 columns of pixels.\n\
--noframe {0|1} Hides title bar and window decorations.\n\
--slstart {0 - 239} Sets the first drawn emulated scanline.\n\
--special {1 - 4} Use special video scaling filters\n\
--slstart {0-239} Sets the first drawn emulated scanline.\n\
--special {1-4} Use special video scaling filters\n\
(1 = hq2x 2 = Scale2x 3 = hq3x 4 = Scale3x)\n\
--slend {0 - 239} Sets the last drawn emulated scanline.\n\
--slend {0-239} Sets the last drawn emulated scanline.\n\
--ntsccolor {0|1} Emulates an NTSC TV's colors.\n\
--hue x Sets hue for NTSC color emulation.\n\
--tint x Sets tint for NTSC color emulation.\n\
@ -92,7 +92,12 @@ char *DriverUsage="\
--soundrate x Sets sound playback rate to x Hz.\n\
--soundq {0|1} Enables high sound quality.\n\
--soundbufsize x Sets sound buffer size to x ms.\n\
--volume {0 - 100} Sets volume.\n\
--volume {0-100} Sets volume.\n\
--trianglevol {0-100} Sets Triangle volume.\n\
--square1vol {0-100} Sets Square 1 volume.\n\
--square2vol {0-100} Sets Square 2 volume.\n\
--noisevol {0-100} Sets Noise volume.\n\
--pcmvol {0-100} Sets PCM volume.\n\
--lowpass {0|1} Enables low-pass filter if x is nonzero.\n\
--soundrecord f Records sound to file f.\n\
--input(1,2) d Set the input device for input 1 or 2.\n\