From 7fa70010daf92f90bf47933e846c0ded239a98f7 Mon Sep 17 00:00:00 2001 From: Robert Jonsson Date: Mon, 14 Feb 2011 18:38:39 +0000 Subject: WillyFoobar patch --- muse2/ChangeLog | 1 + muse2/muse/app.cpp | 4 +++- muse2/muse/dssihost.cpp | 9 +++++++-- muse2/muse/synth.cpp | 5 ++++- muse2/synti/simpledrums2/simpledrums.cpp | 33 +++++++++++++++++++++++++++----- 5 files changed, 43 insertions(+), 9 deletions(-) diff --git a/muse2/ChangeLog b/muse2/ChangeLog index 5019fca3..98c7b170 100644 --- a/muse2/ChangeLog +++ b/muse2/ChangeLog @@ -1,5 +1,6 @@ 14.02.2011: - Fixed midi track info panel layout and spacing. Should be much better now. (Tim) + - Added patch to remove warnings from WillyFoobar (rj) 13.02.2011: - restore toolbar locations for main window and editors (rj) - fixed some layout issues in general settings (rj) diff --git a/muse2/muse/app.cpp b/muse2/muse/app.cpp index c1e86a2c..42f003df 100644 --- a/muse2/muse/app.cpp +++ b/muse2/muse/app.cpp @@ -4539,7 +4539,9 @@ void MusE::bounceToFile(AudioOutput* ao) song->setPos(0,song->lPos(),0,true,true); song->bounceOutput = ao; ao->setRecFile(sf); - printf("ao->setRecFile %d\n", sf); + //willfoobar-2011-02-13 + //old code//printf("ao->setRecFile %d\n", sf); + printf("ao->setRecFile %ld\n", (unsigned long)sf); song->setRecord(true, false); song->setRecordFlag(ao, true); ao->prepareRecording(); diff --git a/muse2/muse/dssihost.cpp b/muse2/muse/dssihost.cpp index d1d599f7..88ad0eed 100644 --- a/muse2/muse/dssihost.cpp +++ b/muse2/muse/dssihost.cpp @@ -2009,7 +2009,9 @@ iMPEvent DssiSynthIF::getData(MidiPort* /*mp*/, MPEventList* el, iMPEvent i, uns // memset(audioInBuffers[k], 0, sizeof(float) * n); // Watch our limits. - np = ports > synth->_outports ? synth->_outports : ports; + //willyfoobar-2011-02-13 + //old code//np = ports > synth->_outports ? synth->_outports : ports; + np = ((unsigned long) ports) > synth->_outports ? synth->_outports : ((unsigned long) ports); const DSSI_Descriptor* dssi = synth->dssi; const LADSPA_Descriptor* descr = dssi->LADSPA_Plugin; @@ -2939,7 +2941,10 @@ int DssiSynthIF::getControllerInfo(int id, const char** name, int* ctrl, int* mi int DssiSynthIF::channels() const { - return synth->_outports > MAX_CHANNELS ? MAX_CHANNELS : synth->_outports; + //willyfoobar-2011-02-13 + //!! either change return type to unsigend long or do this change + //old code //return synth->_outports > MAX_CHANNELS ? MAX_CHANNELS : synth->_outports; + return ((int)synth->_outports) > MAX_CHANNELS ? MAX_CHANNELS : ((int)synth->_outports) ; } int DssiSynthIF::totalOutChannels() const diff --git a/muse2/muse/synth.cpp b/muse2/muse/synth.cpp index f8d21d41..72785c02 100644 --- a/muse2/muse/synth.cpp +++ b/muse2/muse/synth.cpp @@ -941,7 +941,10 @@ iMPEvent MessSynthIF::getData(MidiPort* mp, MPEventList* el, iMPEvent i, unsigne } if (frame > curPos) { - if (frame < pos) + //willyfoobar-2011-02-13 + //!!! comparison of signed with unsigened + //old code//if (frame < pos) + if (frame < (int) pos) printf("should not happen: missed event %d\n", pos -frame); else { diff --git a/muse2/synti/simpledrums2/simpledrums.cpp b/muse2/synti/simpledrums2/simpledrums.cpp index 54db77ef..ecd03d35 100644 --- a/muse2/synti/simpledrums2/simpledrums.cpp +++ b/muse2/synti/simpledrums2/simpledrums.cpp @@ -1041,10 +1041,19 @@ void SimpleSynth::parseInitData(const unsigned char* data) if (SS_DEBUG_INIT) { printf("Channel %d:\n", ch); + //willyfoobar-2011-02-13 + // ptr-data might be long long on 64 bit machine --> cast to "long" + // *(ptr+...) has type byte --> use %hhd as format item + /* old code printf("buffer[%ld] - channels[ch].volume_ctrlval = \t%d\n", ptr-data, *ptr); printf("buffer[%ld] - channels[ch].pan = \t\t%d\n", ptr-data+1, *(ptr+1)); printf("buffer[%ld] - channels[ch].noteoff_ignore = \t%d\n", ptr-data+2, *(ptr+2)); printf("buffer[%ld] - channels[ch].channel_on = \t%d\n", ptr-data+3, *(ptr+3)); + */ + printf("buffer[%ld] - channels[ch].volume_ctrlval = \t%hhd\n", long(ptr-data), *ptr); + printf("buffer[%ld] - channels[ch].pan = \t\t%hhd\n", long(ptr-data+1), *(ptr+1)); + printf("buffer[%ld] - channels[ch].noteoff_ignore = \t%hhd\n", long(ptr-data+2), *(ptr+2)); + printf("buffer[%ld] - channels[ch].channel_on = \t%hhd\n", long(ptr-data+3), *(ptr+3)); } updateVolume(ch, *(ptr)); guiUpdateVolume(ch, *(ptr)); @@ -1117,8 +1126,13 @@ void SimpleSynth::parseInitData(const unsigned char* data) ptr++; for (int i=0; iwriteEvent(ev); for (int j=0; jconvertGuiControlValue(j, *(ptr))); ptr++; } @@ -1271,7 +1290,11 @@ static void* loadSampleThread(void* p) smp->samples = smp->frames * smp->channels; if (SS_DEBUG) { - printf("Resampling from %ld frames to %ld frames - srcration: %lf\n", sfi.frames, smp->frames, srcratio); + //wilyfoobar-2011-02-13 + // arg2 :sfi.frames is of type sf_count_t (== 64 bit) (long long) + // this requires format %lld (twice 'l' in format string (arg1) + // old code//printf("Resampling from %ld frames to %ld frames - srcration: %lf\n", sfi.frames, smp->frames, srcratio); + printf("Resampling from %lld frames to %ld frames - srcration: %lf\n", sfi.frames, smp->frames, srcratio); printf("Nr of new samples: %ld\n", smp->samples); } -- cgit v1.2.3