# HG changeset patch # User Matti Hamalainen # Date 1131499684 0 # Node ID 3e55874170eb6277be0dce84536a3e9ac61c18c9 # Parent 8338cc14bbdbe436eb99677652f01ceace6c5e80 Cleanups, additional engine NULL check. diff -r 8338cc14bbdb -r 3e55874170eb src/xs_sidplay1.cc --- a/src/xs_sidplay1.cc Tue Nov 08 11:21:05 2005 +0000 +++ b/src/xs_sidplay1.cc Wed Nov 09 01:28:04 2005 +0000 @@ -142,28 +142,6 @@ } - /* Clockspeed settings */ - switch (xs_cfg.clockSpeed) { - case XS_CLOCK_NTSC: - myEngine->currConfig.clockSpeed = SIDTUNE_CLOCK_NTSC; - break; - - case XS_CLOCK_PAL: - default: - myEngine->currConfig.clockSpeed = SIDTUNE_CLOCK_PAL; - xs_cfg.clockSpeed = XS_CLOCK_PAL; - break; - } - - - /* Configure rest of the emulation */ - myEngine->currConfig.mos8580 = xs_cfg.mos8580; - myEngine->currConfig.emulateFilter = xs_cfg.emulateFilters; - myEngine->currConfig.filterFs = xs_cfg.filterFs; - myEngine->currConfig.filterFm = xs_cfg.filterFm; - myEngine->currConfig.filterFt = xs_cfg.filterFt; - - /* Audio parameters sanity checking and setup */ myEngine->currConfig.bitsPerSample = myStatus->audioBitsPerSample; tmpFreq = myStatus->audioFrequency; @@ -218,6 +196,31 @@ break; } + /* Clockspeed settings */ + switch (xs_cfg.clockSpeed) { + case XS_CLOCK_NTSC: + myEngine->currConfig.clockSpeed = SIDTUNE_CLOCK_NTSC; + break; + + case XS_CLOCK_PAL: + default: + myEngine->currConfig.clockSpeed = SIDTUNE_CLOCK_PAL; + xs_cfg.clockSpeed = XS_CLOCK_PAL; + break; + } + + myEngine->currConfig.forceSongSpeed = xs_cfg.forceSpeed; + + + /* Configure rest of the emulation */ + /* if (xs_cfg.forceModel) */ + myEngine->currConfig.mos8580 = xs_cfg.mos8580; + myEngine->currConfig.emulateFilter = xs_cfg.emulateFilters; + myEngine->currConfig.filterFs = xs_cfg.filterFs; + myEngine->currConfig.filterFm = xs_cfg.filterFm; + myEngine->currConfig.filterFt = xs_cfg.filterFt; + + /* Now set the emulator configuration */ if (!myEngine->currEng->setConfig(myEngine->currConfig)) { XSERR("Emulator engine configuration failed!\n"); @@ -297,8 +300,9 @@ assert(myStatus); myEngine = (t_xs_sidplay1 *) myStatus->sidEngine; + if (!myEngine) return FALSE; - /* Try to get the tune */ + /* Try to load the file/tune */ if (!pcFilename) return FALSE; newTune = new sidTune(pcFilename); @@ -318,8 +322,7 @@ assert(myStatus); myEngine = (t_xs_sidplay1 *) myStatus->sidEngine; - if (!myEngine) - return; + if (!myEngine) return; if (myEngine->currTune) { delete myEngine->currTune;