diff --git a/src/engine/platform/c64.cpp b/src/engine/platform/c64.cpp index c394b2645..502794bdc 100644 --- a/src/engine/platform/c64.cpp +++ b/src/engine/platform/c64.cpp @@ -624,6 +624,29 @@ DivMacroInt* DivPlatformC64::getChanMacroInt(int ch) { return &chan[ch].std; } +void DivPlatformC64::getPaired(int ch, std::vector& ret) { + if (chan[ch].ring) { + if(ch == 0) + { + ret.push_back(DivChannelPair("ring",2)); + } + else + { + ret.push_back(DivChannelPair("ring",(ch-1)%3)); + } + } + if (chan[ch].sync) { + if(ch == 0) + { + ret.push_back(DivChannelPair("sync",2)); + } + else + { + ret.push_back(DivChannelPair("sync",(ch-1)%3)); + } + } +} + DivChannelModeHints DivPlatformC64::getModeHints(int ch) { DivChannelModeHints ret; ret.count=1; diff --git a/src/engine/platform/c64.h b/src/engine/platform/c64.h index cbc99ebc5..1fa5abd1b 100644 --- a/src/engine/platform/c64.h +++ b/src/engine/platform/c64.h @@ -117,6 +117,7 @@ class DivPlatformC64: public DivDispatch { bool isVolGlobal(); float getPostAmp(); DivMacroInt* getChanMacroInt(int ch); + void getPaired(int ch, std::vector& ret); DivChannelModeHints getModeHints(int chan); void notifyInsDeletion(void* ins); void poke(unsigned int addr, unsigned short val); diff --git a/src/engine/platform/sid2.cpp b/src/engine/platform/sid2.cpp index 274dc7f3b..743152bea 100644 --- a/src/engine/platform/sid2.cpp +++ b/src/engine/platform/sid2.cpp @@ -598,6 +598,29 @@ DivMacroInt* DivPlatformSID2::getChanMacroInt(int ch) { return &chan[ch].std; } +void DivPlatformSID2::getPaired(int ch, std::vector& ret) { + if (chan[ch].ring) { + if(ch == 0) + { + ret.push_back(DivChannelPair("ring",2)); + } + else + { + ret.push_back(DivChannelPair("ring",(ch-1)%3)); + } + } + if (chan[ch].sync) { + if(ch == 0) + { + ret.push_back(DivChannelPair("sync",2)); + } + else + { + ret.push_back(DivChannelPair("sync",(ch-1)%3)); + } + } +} + DivChannelModeHints DivPlatformSID2::getModeHints(int ch) { DivChannelModeHints ret; ret.count=1; diff --git a/src/engine/platform/sid2.h b/src/engine/platform/sid2.h index e44848f11..124f3a505 100644 --- a/src/engine/platform/sid2.h +++ b/src/engine/platform/sid2.h @@ -109,6 +109,7 @@ class DivPlatformSID2: public DivDispatch { bool isVolGlobal(); float getPostAmp(); DivMacroInt* getChanMacroInt(int ch); + void getPaired(int ch, std::vector& ret); DivChannelModeHints getModeHints(int chan); void notifyInsDeletion(void* ins); void poke(unsigned int addr, unsigned short val);