improvements to sysDef and UX changes

- "no undo" in clear option
- only display instrument types depending on current systems
This commit is contained in:
tildearrow 2022-04-27 04:48:56 -05:00
parent 24d60507e7
commit 78bdd98e0b
11 changed files with 518 additions and 4 deletions

View file

@ -220,7 +220,10 @@ struct DivSysDef {
memset(chanNames,0,DIV_MAX_CHANS*sizeof(void*));
memset(chanShortNames,0,DIV_MAX_CHANS*sizeof(void*));
memset(chanTypes,0,DIV_MAX_CHANS*sizeof(int));
memset(chanInsType,0,DIV_MAX_CHANS*2*sizeof(DivInstrumentType));
for (int i=0; i<DIV_MAX_CHANS; i++) {
chanInsType[i][0]=DIV_INS_NULL;
chanInsType[i][1]=DIV_INS_NULL;
}
int index=0;
for (const char* i: chNames) {
@ -317,6 +320,7 @@ class DivEngine {
std::vector<String> midiIns;
std::vector<String> midiOuts;
std::vector<DivCommand> cmdStream;
std::vector<DivInstrumentType> possibleInsTypes;
DivSysDef* sysDefs[256];
DivSystem sysFileMapFur[256];
DivSystem sysFileMapDMF[256];
@ -501,6 +505,9 @@ class DivEngine {
// get channel count
int getTotalChannelCount();
// get instrument types available for use
std::vector<DivInstrumentType>& getPossibleInsTypes();
// get effect description
const char* getEffectDesc(unsigned char effect, int chan, bool notNull=false);