comparison src/xs_sidplayfp.cpp @ 977:d9ad299059a4

Update to be compatible with libsidplayfp 1.0.1 API.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 28 Mar 2013 15:01:40 +0200
parents ae99f7489e79
children 9bd29db2d1bf
comparison
equal deleted inserted replaced
976:56368ab7d282 977:d9ad299059a4
99 #define SID2_RESAMPLE_INTERPOLATE SidConfig::RESAMPLE_INTERPOLATE 99 #define SID2_RESAMPLE_INTERPOLATE SidConfig::RESAMPLE_INTERPOLATE
100 100
101 #define SID2_MOS8580 SidConfig::MOS8580 101 #define SID2_MOS8580 SidConfig::MOS8580
102 #define SID2_MOS6581 SidConfig::MOS6581 102 #define SID2_MOS6581 SidConfig::MOS6581
103 103
104 #define SID2_CLOCK_PAL SidConfig::CLOCK_PAL 104 #define SID2_CLOCK_PAL SidConfig::PAL
105 #define SID2_CLOCK_NTSC SidConfig::CLOCK_NTSC 105 #define SID2_CLOCK_NTSC SidConfig::NTSC
106 106
107 #define SIDTUNE_CLOCK_UNKNOWN SidTuneInfo::CLOCK_UNKNOWN 107 #define SIDTUNE_CLOCK_UNKNOWN SidTuneInfo::CLOCK_UNKNOWN
108 #define SIDTUNE_CLOCK_PAL SidTuneInfo::CLOCK_PAL 108 #define SIDTUNE_CLOCK_PAL SidTuneInfo::CLOCK_PAL
109 #define SIDTUNE_CLOCK_NTSC SidTuneInfo::CLOCK_NTSC 109 #define SIDTUNE_CLOCK_NTSC SidTuneInfo::CLOCK_NTSC
110 #define SIDTUNE_CLOCK_ANY SidTuneInfo::CLOCK_ANY 110 #define SIDTUNE_CLOCK_ANY SidTuneInfo::CLOCK_ANY
137 137
138 /* Initialize SIDPlayFP 138 /* Initialize SIDPlayFP
139 */ 139 */
140 gboolean xs_sidplayfp_init(XSEngineState * state) 140 gboolean xs_sidplayfp_init(XSEngineState * state)
141 { 141 {
142 (void) state;
142 assert(state); 143 assert(state);
143 144
144 XSDEBUG("SIDPlayFP backend initializing.\n"); 145 XSDEBUG("SIDPlayFP backend initializing.\n");
145 146
146 memset(xs_rom_imagedata, 0, sizeof(xs_rom_imagedata)); 147 memset(xs_rom_imagedata, 0, sizeof(xs_rom_imagedata));
250 251
251 /* Clockspeed settings */ 252 /* Clockspeed settings */
252 switch (xs_cfg.clockSpeed) 253 switch (xs_cfg.clockSpeed)
253 { 254 {
254 case XS_CLOCK_NTSC: 255 case XS_CLOCK_NTSC:
256 #ifdef HAVE_SIDPLAYFP_V1
257 engine->config.defaultC64Model = SID2_CLOCK_NTSC;
258 #else
255 engine->config.clockDefault = SID2_CLOCK_NTSC; 259 engine->config.clockDefault = SID2_CLOCK_NTSC;
260 #endif
256 break; 261 break;
257 262
258 default: 263 default:
259 case XS_CLOCK_PAL: 264 case XS_CLOCK_PAL:
260 engine->config.clockDefault = SID2_CLOCK_PAL; 265 #ifdef HAVE_SIDPLAYFP_V1
266 #else
267 engine->config.defaultC64Model = SID2_CLOCK_PAL;
268 #endif
261 xs_cfg.clockSpeed = XS_CLOCK_PAL; 269 xs_cfg.clockSpeed = XS_CLOCK_PAL;
262 break; 270 break;
263 } 271 }
264 272
265 273
266 /* Configure rest of the emulation */ 274 /* Configure rest of the emulation */
275
276 #ifdef HAVE_SIDPLAYFP_V1
277 engine->config.forceC64Model = xs_cfg.forceSpeed;
278 engine->config.defaultSidModel = xs_cfg.mos8580 ? SID2_MOS8580 : SID2_MOS6581;
279 XSDEBUG("init builder #%i, maxsids=%i\n", xs_cfg.sid2Builder, (engine->emu.info()).maxsids());
280 #else
267 engine->config.sidDefault = xs_cfg.mos8580 ? SID2_MOS8580 : SID2_MOS6581; 281 engine->config.sidDefault = xs_cfg.mos8580 ? SID2_MOS8580 : SID2_MOS6581;
268 engine->config.clockForced = xs_cfg.forceSpeed; 282 engine->config.clockForced = xs_cfg.forceSpeed;
269
270 #ifndef HAVE_SIDPLAYFP_V1
271 engine->config.sidSamples = TRUE; 283 engine->config.sidSamples = TRUE;
272 engine->config.sidModel = xs_cfg.forceModel ? engine->config.sidDefault : SID2_MODEL_CORRECT; 284 engine->config.sidModel = xs_cfg.forceModel ? engine->config.sidDefault : SID2_MODEL_CORRECT;
273 engine->config.clockSpeed = xs_cfg.forceSpeed ? engine->config.clockDefault : SID2_CLOCK_CORRECT; 285 engine->config.clockSpeed = xs_cfg.forceSpeed ? engine->config.clockDefault : SID2_CLOCK_CORRECT;
274 286
275 /* Initialize builder object */ 287 /* Initialize builder object */
276 XSDEBUG("init builder #%i, maxsids=%i\n", xs_cfg.sid2Builder, (engine->emu.info()).maxsids); 288 XSDEBUG("init builder #%i, maxsids=%i\n", xs_cfg.sid2Builder, (engine->emu.info()).maxsids);
277 #else
278 XSDEBUG("init builder #%i, maxsids=%i\n", xs_cfg.sid2Builder, (engine->emu.info()).maxsids());
279 #endif 289 #endif
280 290
281 switch (xs_cfg.sid2Builder) 291 switch (xs_cfg.sid2Builder)
282 { 292 {
283 #ifdef HAVE_RESID_BUILDER 293 #ifdef HAVE_RESID_BUILDER