fix several misc issues

This commit is contained in:
tildearrow 2022-04-14 18:25:59 -05:00
parent 8ff694eb13
commit 68445435f9
9 changed files with 32 additions and 11 deletions

View file

@ -25,13 +25,13 @@
struct SampleRateChangeEvent {
double rate;
SampleRateChangeEvent(double r):
explicit SampleRateChangeEvent(double r):
rate(r) {}
};
struct BufferSizeChangeEvent {
unsigned int bufsize;
BufferSizeChangeEvent(unsigned int bs):
explicit BufferSizeChangeEvent(unsigned int bs):
bufsize(bs) {}
};
@ -183,6 +183,7 @@ class TAAudio {
inBufs(NULL),
outBufs(NULL),
audioProcCallback(NULL),
audioProcCallbackUser(NULL),
sampleRateChanged(NULL),
bufferSizeChanged(NULL),
midiIn(NULL),

View file

@ -763,16 +763,21 @@ class DivEngine {
totalCmds(0),
lastCmds(0),
cmdsPerSecond(0),
globalPitch(0),
extValue(0),
speed1(3),
speed2(3),
view(DIV_STATUS_NOTHING),
haltOn(DIV_HALT_NONE),
audioEngine(DIV_AUDIO_NULL),
exportMode(DIV_EXPORT_MODE_ONE),
midiBaseChan(0),
samp_bb(NULL),
samp_bbInLen(0),
samp_temp(0),
samp_prevSample(0),
samp_bbIn(NULL),
samp_bbOut(NULL),
metroTick(NULL),
metroTickLen(0),
metroFreq(0),
@ -793,6 +798,17 @@ class DivEngine {
qsoundAMem(NULL),
qsoundAMemLen(0),
dpcmMem(NULL),
dpcmMemLen(0) {}
dpcmMemLen(0),
x1_010Mem(NULL),
x1_010MemLen(0) {
memset(isMuted,0,DIV_MAX_CHANS*sizeof(bool));
memset(keyHit,0,DIV_MAX_CHANS*sizeof(bool));
memset(dispatchChanOfChan,0,DIV_MAX_CHANS*sizeof(int));
memset(dispatchOfChan,0,DIV_MAX_CHANS*sizeof(int));
memset(sysOfChan,0,DIV_MAX_CHANS*sizeof(int));
memset(vibTable,0,64*sizeof(short));
memset(reversePitchTable,0,4096*sizeof(int));
memset(pitchTable,0,4096*sizeof(int));
}
};
#endif

View file

@ -876,8 +876,8 @@ DivDataErrors DivInstrument::readInsData(SafeReader& reader, short version) {
reader.readC(); // reserved
}
// more macros
if (version>=76) {
// more macros
std.panLMacro.len=reader.readI();
std.panRMacro.len=reader.readI();
std.phaseResetMacro.len=reader.readI();
@ -922,10 +922,8 @@ DivDataErrors DivInstrument::readInsData(SafeReader& reader, short version) {
reader.read(std.ex6Macro.val,4*std.ex6Macro.len);
reader.read(std.ex7Macro.val,4*std.ex7Macro.len);
reader.read(std.ex8Macro.val,4*std.ex8Macro.len);
}
// FDS
if (version>=76) {
// FDS
fds.modSpeed=reader.readI();
fds.modDepth=reader.readI();
fds.initModTableWithFirstWave=reader.readC();

View file

@ -161,7 +161,7 @@ struct DivInstrumentMacro {
unsigned char len;
signed char loop;
signed char rel;
DivInstrumentMacro(String n, bool initOpen=false):
explicit DivInstrumentMacro(const String& n, bool initOpen=false):
name(n),
mode(0),
open(initOpen),

View file

@ -246,6 +246,7 @@ struct DivSample {
offVOX(0),
offSegaPCM(0),
offQSound(0),
offX1_010(0),
samples(0) {}
~DivSample();
};

View file

@ -23,7 +23,7 @@ class FurnaceGUIFileDialog {
bool render(const ImVec2& min, const ImVec2& max);
String getPath();
String getFileName();
FurnaceGUIFileDialog(bool system):
explicit FurnaceGUIFileDialog(bool system):
sysDialog(system),
opened(false),
saving(false),

View file

@ -644,6 +644,9 @@ struct MIDIMap {
midiClock(false),
midiTimeCode(false),
valueInputStyle(1),
valueInputControlMSB(0),
valueInputControlLSB(0),
valueInputControlSingle(0),
volExp(1.0f),
valueInputCurMSB(0),
valueInputCurLSB(0),

View file

@ -46,7 +46,9 @@ struct LogEntry {
bool ready;
LogEntry():
loglevel(0),
ready(false) {}
ready(false) {
memset(&time,0,sizeof(struct tm));
}
};
int writeLog(int level, const char* msg, fmt::printf_args args);

View file

@ -50,7 +50,7 @@ struct TAParam {
String desc;
bool value;
bool (*func)(String);
TAParam(String sn, String n, bool v, bool (*f)(String), String vn, String d):
TAParam(const String& sn, const String& n, bool v, bool (*f)(String), const String& vn, const String& d):
shortName(sn),
name(n),
valName(vn),