00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef SIDCONFIG_H
00024 #define SIDCONFIG_H
00025
00026 #include <stdint.h>
00027
00028 #include "sidplayfp/siddefs.h"
00029
00030
00031 class sidbuilder;
00032
00039 class SID_EXTERN SidConfig
00040 {
00041 public:
00042 typedef enum {MONO = 1, STEREO} playback_t;
00043 typedef enum {MOS6581, MOS8580} sid_model_t;
00044 typedef enum {PAL, NTSC, OLD_NTSC, DREAN} c64_model_t;
00045 typedef enum {INTERPOLATE, RESAMPLE_INTERPOLATE} sampling_method_t;
00046
00047 public:
00053 static const uint_least16_t MAX_POWER_ON_DELAY = 0x1FFF;
00054 static const uint_least16_t DEFAULT_POWER_ON_DELAY = MAX_POWER_ON_DELAY + 1;
00055
00056 static const uint_least32_t DEFAULT_SAMPLING_FREQ = 44100;
00057
00058 public:
00066 c64_model_t defaultC64Model;
00067
00071 bool forceC64Model;
00072
00078 sid_model_t defaultSidModel;
00079
00083 bool forceSidModel;
00084
00090 playback_t playback;
00091
00095 uint_least32_t frequency;
00096
00100 uint_least16_t secondSidAddress;
00101
00106 sidbuilder *sidEmulation;
00107
00111 uint_least32_t leftVolume;
00112
00116 uint_least32_t rightVolume;
00117
00121 uint_least16_t powerOnDelay;
00122
00128 sampling_method_t samplingMethod;
00129
00134 bool fastSampling;
00135
00136 public:
00137 SidConfig();
00138 };
00139
00140 #endif // SIDCONFIG_H