53 const std::string m_name { PACKAGE_NAME };
54 const std::string m_version { PACKAGE_VERSION };
55 std::vector<std::string> m_credits
57 PACKAGE_NAME
" V" PACKAGE_VERSION
" Engine:\n"
58 "\tCopyright (C) 2000 Simon White\n"
59 "\tCopyright (C) 2007-2010 Antti Lankila\n"
60 "\tCopyright (C) 2010-2026 Leandro Nini\n"
64 std::vector<SidTuneInfo::model_t> m_sidModels;
66 std::string m_speedString;
68 std::string m_kernalDesc;
69 std::string m_basicDesc;
70 std::string m_chargenDesc;
72 uint_least16_t m_driverAddr = 0;
73 uint_least16_t m_driverLength = 0;
75 uint_least16_t m_powerOnDelay = 0;
79 SidInfoImpl(
const SidInfoImpl&) =
delete;
80 SidInfoImpl& operator=(SidInfoImpl&) =
delete;
85 const char *getName()
const override {
return m_name.c_str(); }
86 const char *getVersion()
const override {
return m_version.c_str(); }
88 unsigned int getNumberOfCredits()
const override {
return m_credits.size(); }
89 const char *getCredits(
unsigned int i)
const override {
return i<m_credits.size()?m_credits[i].c_str():
""; }
91 uint_least16_t getDriverAddr()
const override {
return m_driverAddr; }
92 uint_least16_t getDriverLength()
const override {
return m_driverLength; }
94 uint_least16_t getPowerOnDelay()
const override {
return m_powerOnDelay; }
96 const char *getSpeedString()
const override {
return m_speedString.c_str(); }
98 const char *getKernalDesc()
const override {
return m_kernalDesc.c_str(); }
99 const char *getBasicDesc()
const override {
return m_basicDesc.c_str(); }
100 const char *getChargenDesc()
const override {
return m_chargenDesc.c_str(); }
102 unsigned int getNumberOfSIDs()
const override {
return m_sidModels.size(); }
103 SidTuneInfo::model_t getSidModel(
unsigned int i)
const override
105 return i<m_sidModels.size() ? m_sidModels[i] : SidTuneInfo::model_t::SIDMODEL_UNKNOWN;