mirror of
https://github.com/libretro/scummvm.git
synced 2025-01-31 16:03:24 +00:00
Changed Apple IIGS sample playing frequency multiplier from 1076.0 to C6 (i.e. about 1046.5). Commented out a warning that comes too often.
svn-id: r28657
This commit is contained in:
parent
d862dc430d
commit
a777b3e64f
@ -639,7 +639,7 @@ void SoundMgr::playSound() {
|
||||
if (playingSound != -1) {
|
||||
if (_vm->_game.sounds[playingSound]->type() == AGI_SOUND_MIDI) {
|
||||
/* play_midi_sound (); */
|
||||
warning("playSound: Trying to play an Apple IIGS MIDI sound. Not yet implemented!");
|
||||
//warning("playSound: Trying to play an Apple IIGS MIDI sound. Not yet implemented!");
|
||||
playing = 0;
|
||||
} else if (_vm->_game.sounds[playingSound]->type() == AGI_SOUND_SAMPLE) {
|
||||
//debugC(3, kDebugLevelSound, "playSound: Trying to play an Apple IIGS sample");
|
||||
@ -687,8 +687,11 @@ uint32 SoundMgr::mixSound(void) {
|
||||
//double hertz = 8.175798915644 * pow(SEMITONE, fracToDouble(chn.note));
|
||||
// double step = getRate() / hertz;
|
||||
// chn.posAdd = doubleToFrac(step);
|
||||
|
||||
double hertz = 1076.0 * pow(SEMITONE, fracToDouble(chn.note));
|
||||
|
||||
// Frequency multiplier was 1076.0 based on tests made with MESS 0.117.
|
||||
// Tests made with KEGS32 averaged the multiplier to around 1045.
|
||||
// So this is a guess but maybe it's 1046.5... i.e. C6's frequency?
|
||||
double hertz = C6_FREQ * pow(SEMITONE, fracToDouble(chn.note));
|
||||
chn.posAdd = doubleToFrac(hertz / getRate());
|
||||
chn.vol = doubleToFrac(fracToDouble(chn.envVol) * fracToDouble(chn.chanVol) / 127.0);
|
||||
double tempVol = fracToDouble(chn.vol)/127.0;
|
||||
|
@ -66,6 +66,10 @@ struct IIgsEnvelope {
|
||||
// 2**(1/12) i.e. the 12th root of 2
|
||||
#define SEMITONE 1.059463094359295
|
||||
|
||||
// C6's frequency is A4's (440 Hz) frequency but one full octave and three semitones higher
|
||||
// i.e. C6_FREQ = 440 * pow(2.0, 15/12.0)
|
||||
#define C6_FREQ 1046.502261202395
|
||||
|
||||
// Size of the SIERRASTANDARD file (i.e. the wave file i.e. the sample data used by the instruments).
|
||||
#define SIERRASTANDARD_SIZE 65536
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user