From: <sag...@us...> - 2012-01-03 23:45:04
|
Revision: 1158 http://modplug.svn.sourceforge.net/modplug/?rev=1158&view=rev Author: saga-games Date: 2012-01-03 23:44:56 +0000 (Tue, 03 Jan 2012) Log Message: ----------- [Ref] Changed parameter types of PlayNote/StopNote. [Mod] Two envelope points may not share the same tick anymore in non-compatible mode as well. Since there is no interpolation being done between two envelope points, this won't limit the sounds that can be produced using envelopes. Modified Paths: -------------- trunk/OpenMPT/mptrack/AbstractVstEditor.cpp trunk/OpenMPT/mptrack/Ctrl_ins.cpp trunk/OpenMPT/mptrack/Ctrl_smp.cpp trunk/OpenMPT/mptrack/Moddoc.cpp trunk/OpenMPT/mptrack/Moddoc.h trunk/OpenMPT/mptrack/View_ins.cpp trunk/OpenMPT/mptrack/View_pat.cpp trunk/OpenMPT/mptrack/View_smp.cpp trunk/OpenMPT/mptrack/View_tre.cpp Modified: trunk/OpenMPT/mptrack/AbstractVstEditor.cpp =================================================================== --- trunk/OpenMPT/mptrack/AbstractVstEditor.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/AbstractVstEditor.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -320,7 +320,7 @@ { CModDoc* pModDoc = m_pVstPlugin->GetModDoc(); CMainFrame* pMainFrm = CMainFrame::GetMainFrame(); - pModDoc->PlayNote(wParam - kcVSTGUIStartNotes + 1 + pMainFrm->GetBaseOctave() * 12, m_nInstrument, 0, FALSE); + pModDoc->PlayNote(wParam - kcVSTGUIStartNotes + 1 + pMainFrm->GetBaseOctave() * 12, m_nInstrument, 0, false); } return wParam; } @@ -330,7 +330,7 @@ { CModDoc* pModDoc = m_pVstPlugin->GetModDoc(); CMainFrame* pMainFrm = CMainFrame::GetMainFrame(); - pModDoc->NoteOff(wParam - kcVSTGUIStartNoteStops + 1 + pMainFrm->GetBaseOctave() * 12, FALSE, m_nInstrument); + pModDoc->NoteOff(wParam - kcVSTGUIStartNoteStops + 1 + pMainFrm->GetBaseOctave() * 12, false, m_nInstrument); } return wParam; } Modified: trunk/OpenMPT/mptrack/Ctrl_ins.cpp =================================================================== --- trunk/OpenMPT/mptrack/Ctrl_ins.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/Ctrl_ins.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -738,7 +738,7 @@ //---------------------------------- { if(m_nPlayingNote >= 0) return; //no polyphony in notemap window - m_pModDoc->PlayNote(note, m_nInstrument, 0, FALSE); + m_pModDoc->PlayNote(note, m_nInstrument, 0, false); m_nPlayingNote = note; } @@ -749,7 +749,7 @@ if(note < 0) note = m_nPlayingNote; if(note < 0) return; - m_pModDoc->NoteOff(note, TRUE, m_nInstrument); + m_pModDoc->NoteOff(note, true, m_nInstrument); m_nPlayingNote = -1; } @@ -1075,7 +1075,7 @@ void CCtrlInstruments::OnDeactivatePage() //--------------------------------------- { - if (m_pModDoc) m_pModDoc->NoteOff(0, TRUE); + if (m_pModDoc) m_pModDoc->NoteOff(0, true); CChildFrame *pFrame = (CChildFrame *)GetParentFrame(); if ((pFrame) && (m_hWndView)) SendViewMessage(VIEWMSG_SAVESTATE, (LPARAM)pFrame->GetInstrumentViewState()); } @@ -1802,10 +1802,10 @@ { if (m_pModDoc->IsNotePlaying(NOTE_MIDDLEC, 0, m_nInstrument)) { - m_pModDoc->NoteOff(NOTE_MIDDLEC, TRUE, m_nInstrument); + m_pModDoc->NoteOff(NOTE_MIDDLEC, true, m_nInstrument); } else { - m_pModDoc->PlayNote(NOTE_MIDDLEC, m_nInstrument, 0, FALSE); + m_pModDoc->PlayNote(NOTE_MIDDLEC, m_nInstrument, 0, false); } } SwitchToView(); Modified: trunk/OpenMPT/mptrack/Ctrl_smp.cpp =================================================================== --- trunk/OpenMPT/mptrack/Ctrl_smp.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/Ctrl_smp.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -222,7 +222,7 @@ m_SpinVolume.SetRange(0, 64); m_SpinGlobalVol.SetRange(0, 64); //rewbs.fix36944 - if (m_pSndFile->m_nType == MOD_TYPE_XM) + if (m_pSndFile->GetType() == MOD_TYPE_XM) { m_SpinPanning.SetRange(0, 255); } else @@ -411,7 +411,7 @@ { CChildFrame *pFrame = (CChildFrame *)GetParentFrame(); if ((pFrame) && (m_hWndView)) SendViewMessage(VIEWMSG_SAVESTATE, (LPARAM)pFrame->GetSampleViewState()); - if (m_pModDoc) m_pModDoc->NoteOff(0, TRUE); + if (m_pModDoc) m_pModDoc->NoteOff(0, true); } @@ -521,7 +521,7 @@ case IDC_EDIT5: case IDC_SPIN5: case IDC_COMBO_BASENOTE: - if ((m_pSndFile) && (m_pSndFile->m_nType & (MOD_TYPE_XM|MOD_TYPE_MOD)) && (m_nSample)) + if ((m_pSndFile) && (m_pSndFile->GetType() & (MOD_TYPE_XM | MOD_TYPE_MOD)) && (m_nSample)) { const MODSAMPLE &sample = m_pSndFile->GetSample(m_nSample); UINT nFreqHz = CSoundFile::TransposeToFrequency(sample.RelativeTone, sample.nFineTune); @@ -663,7 +663,7 @@ // File Name memcpy(s, sample.filename, MAX_SAMPLEFILENAME); s[21] = 0; - if (m_pSndFile->m_nType & (MOD_TYPE_MOD|MOD_TYPE_XM)) s[0] = 0; + if (m_pSndFile->GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM)) s[0] = 0; SetDlgItemText(IDC_SAMPLE_FILENAME, s); // Volume SetDlgItemInt(IDC_EDIT7, sample.nVolume >> 2); @@ -672,15 +672,17 @@ // Panning CheckDlgButton(IDC_CHECK1, (sample.uFlags & CHN_PANNING) ? MF_CHECKED : MF_UNCHECKED); //rewbs.fix36944 - if (m_pSndFile->m_nType == MOD_TYPE_XM) { + if (m_pSndFile->GetType() == MOD_TYPE_XM) + { SetDlgItemInt(IDC_EDIT9, sample.nPan); //displayed panning with XM is 0-256, just like MPT's internal engine - } else { - SetDlgItemInt(IDC_EDIT9, sample.nPan>>2); //displayed panning with anything but XM is 0-64 so we divide by 4 + } else + { + SetDlgItemInt(IDC_EDIT9, sample.nPan / 4); //displayed panning with anything but XM is 0-64 so we divide by 4 } //end rewbs.fix36944 // FineTune / C-4 Speed / BaseNote int transp = 0; - if (m_pSndFile->m_nType & (MOD_TYPE_S3M|MOD_TYPE_IT|MOD_TYPE_MPT)) + if (m_pSndFile->GetType() & (MOD_TYPE_S3M | MOD_TYPE_IT | MOD_TYPE_MPT)) { wsprintf(s, "%lu", sample.nC5Speed); m_EditFineTune.SetWindowText(s); @@ -689,7 +691,7 @@ { int ftune = ((int)sample.nFineTune); // MOD finetune range -8 to 7 translates to -128 to 112 - if(m_pSndFile->m_nType & MOD_TYPE_MOD) ftune >>= 4; + if(m_pSndFile->GetType() & MOD_TYPE_MOD) ftune >>= 4; SetDlgItemInt(IDC_EDIT5, ftune); transp = (int)sample.RelativeTone; } @@ -836,7 +838,7 @@ memset(szFullFilename, 0, 32); strcpy(szFullFilename, szName); - if (m_pSndFile->m_nType & (MOD_TYPE_MOD|MOD_TYPE_XM)) + if (m_pSndFile->GetType() & (MOD_TYPE_MOD | MOD_TYPE_XM)) { // MOD/XM strcat(szFullFilename, szExt); @@ -852,7 +854,7 @@ szFullFilename[21] = 0; memcpy(sample.filename, szFullFilename, MAX_SAMPLEFILENAME); } - if ((m_pSndFile->m_nType & MOD_TYPE_XM) && (!(sample.uFlags & CHN_PANNING))) + if ((m_pSndFile->GetType() & MOD_TYPE_XM) && (!(sample.uFlags & CHN_PANNING))) { sample.nPan = 128; sample.uFlags |= CHN_PANNING; @@ -877,7 +879,7 @@ m_pSndFile->DestroySample(m_nSample); m_pSndFile->ReadSampleFromSong(m_nSample, pSndFile, nSample); MODSAMPLE &sample = m_pSndFile->GetSample(m_nSample); - if ((m_pSndFile->m_nType & MOD_TYPE_XM) && (!(sample.uFlags & CHN_PANNING))) + if ((m_pSndFile->GetType() & MOD_TYPE_XM) && (!(sample.uFlags & CHN_PANNING))) { sample.nPan = 128; sample.uFlags |= CHN_PANNING; @@ -966,7 +968,7 @@ { if (Reporting::Confirm("This sample is not used by any instrument. Do you want to create a new instrument using this sample?") == cnfYes) { - UINT nins = m_pModDoc->InsertInstrument(smp); + INSTRUMENTINDEX nins = m_pModDoc->InsertInstrument(smp); m_pModDoc->UpdateAllViews(NULL, (nins << HINT_SHIFT_INS) | HINT_INSTRUMENT | HINT_INSNAMES | HINT_ENVELOPE); m_pParent->InstrumentChanged(nins); } @@ -1029,7 +1031,7 @@ SwitchToView(); return; } - if (m_pSndFile->m_nType & (MOD_TYPE_S3M|MOD_TYPE_IT|MOD_TYPE_MPT)) + if (m_pSndFile->GetType() & (MOD_TYPE_S3M|MOD_TYPE_IT|MOD_TYPE_MPT)) { strncpy(szFileName, m_pSndFile->GetSample(m_nSample).filename, min(CountOf(m_pSndFile->GetSample(m_nSample).filename), CountOf(szFileName) - 1)); } else @@ -1124,10 +1126,10 @@ // if ((m_pSndFile->IsPaused()) && (m_pModDoc->IsNotePlaying(0, m_nSample, 0))) if (m_pModDoc->IsNotePlaying(0, m_nSample, 0)) { - m_pModDoc->NoteOff(0, TRUE); + m_pModDoc->NoteOff(0, true); } else { - m_pModDoc->PlayNote(NOTE_MIDDLEC, 0, m_nSample, FALSE); + m_pModDoc->PlayNote(NOTE_MIDDLEC, 0, m_nSample, false); } } SwitchToView(); @@ -1152,13 +1154,12 @@ return; iMinSample = 1; iMaxSample = m_pSndFile->m_nSamples; - } else { - SAMPLEVIEWSTATE viewstate; - memset(&viewstate, 0, sizeof(viewstate)); - SendViewMessage(VIEWMSG_SAVESTATE, (LPARAM)&viewstate); + } else + { + SELECTIONPOINTS selection = GetSelectionPoints(); - iStart = viewstate.dwBeginSel; - iEnd = viewstate.dwEndSel; + iStart = selection.nStart; + iEnd = selection.nEnd; } @@ -1180,9 +1181,10 @@ } else { //one sample: correct the boundaries, if needed - if (iEnd > sample.nLength) iEnd = sample.nLength; - if (iStart > iEnd) iStart = iEnd; - if (iStart == iEnd) { + LimitMax(iEnd, sample.nLength); + LimitMax(iStart, iEnd); + if(iStart == iEnd) + { iStart = 0; iEnd = sample.nLength; } @@ -1190,9 +1192,9 @@ m_pModDoc->GetSampleUndo().PrepareUndo(iSmp, sundo_update, iStart, iEnd); - if (sample.uFlags & CHN_STEREO) { iStart *= 2; iEnd *= 2; } + if(sample.uFlags & CHN_STEREO) { iStart *= 2; iEnd *= 2; } - if (sample.uFlags & CHN_16BIT) + if(sample.uFlags & CHN_16BIT) { int16 *p = (int16 *)sample.pSample; int max = 1; @@ -1444,9 +1446,9 @@ smplsize = sample.GetBytesPerSample(); newsmplsize = sample.GetNumChannels() * 2; // new sample is always 16-Bit pOriginal = sample.pSample; - dwNewLen = sample.nLength + (dwEnd-dwStart); + dwNewLen = sample.nLength + (dwEnd - dwStart); pNewSample = NULL; - if (dwNewLen+4 <= MAX_SAMPLE_LENGTH) pNewSample = CSoundFile::AllocateSample((dwNewLen+4)*newsmplsize); + if (dwNewLen + 4 <= MAX_SAMPLE_LENGTH) pNewSample = CSoundFile::AllocateSample((dwNewLen + 4)*newsmplsize); if (pNewSample) { m_pModDoc->GetSampleUndo().PrepareUndo(m_nSample, sundo_replace); @@ -1454,7 +1456,7 @@ const UINT nCh = sample.GetNumChannels(); for (UINT iCh=0; iCh<nCh; iCh++) { - int len = dwEnd-dwStart; + int len = dwEnd - dwStart; int maxndx = sample.nLength; if (sample.uFlags & CHN_16BIT) { @@ -1598,7 +1600,7 @@ dwNewLen = sample.nLength - dwRemove; dwEnd = dwStart+dwRemove*2; pNewSample = NULL; - if ((dwNewLen > 32) && (dwRemove)) pNewSample = CSoundFile::AllocateSample((dwNewLen+4)*smplsize); + if ((dwNewLen > 32) && (dwRemove)) pNewSample = CSoundFile::AllocateSample((dwNewLen + 4) * smplsize); if (pNewSample) { Modified: trunk/OpenMPT/mptrack/Moddoc.cpp =================================================================== --- trunk/OpenMPT/mptrack/Moddoc.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/Moddoc.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -884,8 +884,8 @@ } -UINT CModDoc::PlayNote(UINT note, UINT nins, UINT nsmp, BOOL bpause, LONG nVol, LONG loopstart, LONG loopend, CHANNELINDEX nCurrentChn, const uint32 nStartPos) //rewbs.vstiLive: added current chan param -//------------------------------------------------------------------------------------------------------------------------------------------------------------- +UINT CModDoc::PlayNote(UINT note, INSTRUMENTINDEX nins, SAMPLEINDEX nsmp, bool pause, LONG nVol, SmpLength loopStart, SmpLength loopEnd, CHANNELINDEX nCurrentChn, const SmpLength sampleOffset) //rewbs.vstiLive: added current chan param +//---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- { CMainFrame *pMainFrm = CMainFrame::GetMainFrame(); UINT nChn = GetNumChannels(); @@ -896,7 +896,7 @@ { //kill notes if required. - if ( (bpause) || (m_SndFile.IsPaused()) || pMainFrm->GetModPlaying() != this) + if ( (pause) || (m_SndFile.IsPaused()) || pMainFrm->GetModPlaying() != this) { CriticalSection cs; @@ -976,13 +976,13 @@ // Handle sample looping. // Changed line to fix http://forum.openmpt.org/index.php?topic=1700.0 //if ((loopstart + 16 < loopend) && (loopstart >= 0) && (loopend <= (LONG)pChn->nLength)) - if ((loopstart + 16 < loopend) && (loopstart >= 0) && (pChn->pModSample != nullptr)) + if ((loopStart + 16 < loopEnd) && (loopStart >= 0) && (pChn->pModSample != nullptr)) { - pChn->nPos = loopstart; + pChn->nPos = loopStart; pChn->nPosLo = 0; - pChn->nLoopStart = loopstart; - pChn->nLoopEnd = loopend; - pChn->nLength = min(UINT(loopend), pChn->pModSample->nLength); + pChn->nLoopStart = loopStart; + pChn->nLoopEnd = loopEnd; + pChn->nLength = min(UINT(loopEnd), pChn->pModSample->nLength); } // Handle extra-loud flag @@ -995,12 +995,12 @@ } // Handle custom start position - if(nStartPos != uint32_max && pChn->pModSample) + if(sampleOffset > 0 && pChn->pModSample) { - pChn->nPos = nStartPos; + pChn->nPos = sampleOffset; // If start position is after loop end, set loop end to sample end so that the sample starts // playing. - if(pChn->nLoopEnd < nStartPos) + if(pChn->nLoopEnd < sampleOffset) pChn->nLength = pChn->nLoopEnd = pChn->pModSample->nLength; } @@ -1020,7 +1020,7 @@ if ((nPlugin) && (nPlugin <= MAX_MIXPLUGINS)) { - IMixPlugin *pPlugin = m_SndFile.m_MixPlugins[nPlugin - 1].pMixPlugin; + IMixPlugin *pPlugin = m_SndFile.m_MixPlugins[nPlugin - 1].pMixPlugin; if (pPlugin) { @@ -1035,19 +1035,19 @@ { CriticalSection cs; m_SndFile.NoteChange(nChn, note); - if (bpause) m_SndFile.m_dwSongFlags |= SONG_PAUSED; + if (pause) m_SndFile.m_dwSongFlags |= SONG_PAUSED; } return nChn; } -BOOL CModDoc::NoteOff(UINT note, BOOL bFade, UINT nins, CHANNELINDEX nCurrentChn) //rewbs.vstiLive: added chan and nins -//------------------------------------------------------------------------------- +BOOL CModDoc::NoteOff(UINT note, bool fade, INSTRUMENTINDEX nins, CHANNELINDEX nCurrentChn) //rewbs.vstiLive: added chan and nins +//----------------------------------------------------------------------------------------- { CriticalSection cs; //rewbs.vstiLive - if((nins > 0) && (nins <= m_SndFile.GetNumInstruments()) && (note >= NOTE_MIN) && (note <= NOTE_MAX)) + if((nins != INSTRUMENTINDEX_INVALID) && (nins <= m_SndFile.GetNumInstruments()) && (note >= NOTE_MIN) && (note <= NOTE_MAX)) { MODINSTRUMENT *pIns = m_SndFile.Instruments[nins]; @@ -1061,7 +1061,7 @@ if ((nPlugin) && (nPlugin <= MAX_MIXPLUGINS)) { - IMixPlugin *pPlugin = m_SndFile.m_MixPlugins[nPlugin-1].pMixPlugin; + IMixPlugin *pPlugin = m_SndFile.m_MixPlugins[nPlugin - 1].pMixPlugin; if (pPlugin) { pPlugin->MidiCommand(GetPlaybackMidiChannel(pIns, nCurrentChn), pIns->nMidiProgram, pIns->wMidiBank, pIns->NoteMap[note - 1] + NOTE_KEYOFF, 0, MAX_BASECHANNELS); @@ -1071,9 +1071,9 @@ } //end rewbs.vstiLive - const DWORD mask = (bFade) ? CHN_NOTEFADE : (CHN_NOTEFADE|CHN_KEYOFF); + const DWORD mask = (fade ? CHN_NOTEFADE : (CHN_NOTEFADE | CHN_KEYOFF)); MODCHANNEL *pChn = &m_SndFile.Chn[m_SndFile.m_nChannels]; - for (UINT i=m_SndFile.m_nChannels; i<MAX_CHANNELS; i++, pChn++) if (!pChn->nMasterChn) + for (CHANNELINDEX i = m_SndFile.GetNumChannels(); i < MAX_CHANNELS; i++, pChn++) if (!pChn->nMasterChn) { // Fade all channels > m_nChannels which are playing this note. @@ -1082,7 +1082,7 @@ { m_SndFile.KeyOff(i); if (!m_SndFile.m_nInstruments) pChn->dwFlags &= ~CHN_LOOP; - if (bFade) pChn->dwFlags |= CHN_NOTEFADE; + if (fade) pChn->dwFlags |= CHN_NOTEFADE; if (note) break; } } Modified: trunk/OpenMPT/mptrack/Moddoc.h =================================================================== --- trunk/OpenMPT/mptrack/Moddoc.h 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/Moddoc.h 2012-01-03 23:44:56 UTC (rev 1158) @@ -268,9 +268,10 @@ bool RemovePattern(PATTERNINDEX nPat); bool RemoveSample(SAMPLEINDEX nSmp); bool RemoveInstrument(INSTRUMENTINDEX nIns); - UINT PlayNote(UINT note, UINT nins, UINT nsmp, BOOL bpause, LONG nVol=-1, LONG loopstart=0, LONG loopend=0, CHANNELINDEX nCurrentChn = CHANNELINDEX_INVALID, const uint32 nStartPos = uint32_max); //rewbs.vstiLive: added current chan param - BOOL NoteOff(UINT note, BOOL bFade=FALSE, UINT nins=-1, CHANNELINDEX nCurrentChn = CHANNELINDEX_INVALID); //rewbs.vstiLive: add params + UINT PlayNote(UINT note, INSTRUMENTINDEX nins, SAMPLEINDEX nsmp, bool pause, LONG nVol=-1, SmpLength loopStart = 0, SmpLength loopEnd = 0, CHANNELINDEX nCurrentChn = CHANNELINDEX_INVALID, const SmpLength sampleOffset = 0); //rewbs.vstiLive: added current chan param + BOOL NoteOff(UINT note, bool fade = false, INSTRUMENTINDEX nins = INSTRUMENTINDEX_INVALID, CHANNELINDEX nCurrentChn = CHANNELINDEX_INVALID); //rewbs.vstiLive: add params + BOOL IsNotePlaying(UINT note, UINT nsmp=0, UINT nins=0); bool MuteChannel(CHANNELINDEX nChn, bool bMute); bool UpdateChannelMuteStatus(CHANNELINDEX nChn); Modified: trunk/OpenMPT/mptrack/View_ins.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_ins.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/View_ins.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -278,7 +278,7 @@ int maxtick = envelope->Ticks[nPoint + 1]; if (nPoint + 1 == (int)envelope->nNodes) maxtick = ENVELOPE_MAX_LENGTH; // Can't have multiple points on same tick - if(nPoint > 0 && GetDocument()->GetSoundFile()->IsCompatibleMode(TRK_IMPULSETRACKER|TRK_FASTTRACKER2) && mintick < maxtick - 1) + if(nPoint > 0 && mintick < maxtick - 1) { mintick++; if (nPoint + 1 < (int)envelope->nNodes) maxtick--; @@ -905,7 +905,8 @@ // and then BitBlt it to the destination "pDC" //check for window resize - if (m_dcMemMain.GetSafeHdc()) { + if (m_dcMemMain.GetSafeHdc()) + { m_dcMemMain.SelectObject(oldBitmap); m_dcMemMain.DeleteDC(); m_bmpMemMain.DeleteObject(); @@ -1958,7 +1959,7 @@ const size_t sizeofS = sizeof(s) / sizeof(s[0]); if (note >= 0xFE) { - pModDoc->NoteOff(0, (note == NOTE_NOTECUT) ? TRUE : FALSE, m_nInstrument); + pModDoc->NoteOff(0, (note == NOTE_NOTECUT), m_nInstrument); pMainFrm->SetInfoText(""); } else if (m_nInstrument && !m_baPlayingNote[note]) @@ -1980,7 +1981,7 @@ MODINSTRUMENT *pIns = pModDoc->GetSoundFile()->Instruments[m_nInstrument]; if ((!pIns) || (!pIns->Keyboard[note-1] && !pIns->nMixPlug)) return; m_baPlayingNote[note] = true; //rewbs.instViewNNA - m_nPlayingChannel = pModDoc->PlayNote(note, m_nInstrument, 0, FALSE); //rewbs.instViewNNA + m_nPlayingChannel = pModDoc->PlayNote(note, m_nInstrument, 0, false); //rewbs.instViewNNA s[0] = 0; if ((note) && (note <= NOTE_MAX)) { @@ -2184,11 +2185,11 @@ midiByte2 = 0; case MIDIEVENT_NOTEON: // Note On - pModDoc->NoteOff(nNote, FALSE, m_nInstrument); + pModDoc->NoteOff(nNote, false, m_nInstrument); if (midiByte2 & 0x7F) { nVol = ApplyVolumeRelatedMidiSettings(dwMidiData, midivolume); - pModDoc->PlayNote(nNote, m_nInstrument, 0, FALSE, nVol); + pModDoc->PlayNote(nNote, m_nInstrument, 0, false, nVol); } break; @@ -2302,8 +2303,8 @@ if (wParam>=kcInstrumentStartNoteStops && wParam<=kcInstrumentEndNoteStops) { int note =wParam-kcInstrumentStartNoteStops+1+pMainFrm->GetBaseOctave()*12; - m_baPlayingNote[note]=false; - pModDoc->NoteOff(note, FALSE, m_nInstrument); + m_baPlayingNote[note] = false; + pModDoc->NoteOff(note, false, m_nInstrument); return wParam; } @@ -2583,12 +2584,12 @@ return false; } // Can't move left of previous point - if((step < 0) && (pEnv->Ticks[envPoint] - pEnv->Ticks[envPoint - 1] >= -step + GetDocument()->GetSoundFile()->IsCompatibleMode(TRK_IMPULSETRACKER|TRK_FASTTRACKER2) ? 0 : 1)) + if((step < 0) && (pEnv->Ticks[envPoint] - pEnv->Ticks[envPoint - 1] <= -step)) { return false; } // Can't move right of next point - if((step > 0) && (envPoint < pEnv->nNodes - 1) && (pEnv->Ticks[envPoint + 1] - pEnv->Ticks[envPoint] >= step + GetDocument()->GetSoundFile()->IsCompatibleMode(TRK_IMPULSETRACKER|TRK_FASTTRACKER2) ? 0 : 1)) + if((step > 0) && (envPoint < pEnv->nNodes - 1) && (pEnv->Ticks[envPoint + 1] - pEnv->Ticks[envPoint] <= step)) { return false; } Modified: trunk/OpenMPT/mptrack/View_pat.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_pat.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/View_pat.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -4222,11 +4222,11 @@ if(bChordMode == true) { m_dwStatus &= ~PATSTATUS_CHORDPLAYING; - pModDoc->NoteOff(0, TRUE, ins, GetChanFromCursor(m_dwCursor)); // XXX this only gets one chord channel! + pModDoc->NoteOff(0, true, ins, GetChanFromCursor(m_dwCursor)); // XXX this doesn't stop VSTi notes! } else { - pModDoc->NoteOff(note, ((CMainFrame::GetSettings().m_dwPatternSetup & PATTERN_NOTEFADE) || pSndFile->GetNumInstruments() == 0) ? TRUE : FALSE, ins, GetChanFromCursor(m_dwCursor)); + pModDoc->NoteOff(note, ((CMainFrame::GetSettings().m_dwPatternSetup & PATTERN_NOTEFADE) || pSndFile->GetNumInstruments() == 0), ins, GetChanFromCursor(m_dwCursor)); } } @@ -4623,8 +4623,8 @@ } } } - BOOL bNotPlaying = ((pMainFrm->GetModPlaying() == pModDoc) && (pMainFrm->IsPlaying())) ? FALSE : TRUE; - pModDoc->PlayNote(newcmd.note, nPlayIns, 0, bNotPlaying, 4 * vol, 0, 0, nChn); + bool isPlaying = ((pMainFrm->GetModPlaying() == pModDoc) && (pMainFrm->IsPlaying())); + pModDoc->PlayNote(newcmd.note, nPlayIns, 0, !isPlaying, 4 * vol, 0, 0, nChn); } } @@ -4849,13 +4849,13 @@ } } } - BOOL bNotPlaying = ((pMainFrm->GetModPlaying() == pModDoc) && (pMainFrm->IsPlaying())) ? FALSE : TRUE; - pModDoc->PlayNote(p->note, nPlayIns, 0, bNotPlaying, -1, 0, 0, nChn); //rewbs.vstiLive - added extra args + bool isPlaying = ((pMainFrm->GetModPlaying() == pModDoc) && (pMainFrm->IsPlaying())); + pModDoc->PlayNote(p->note, nPlayIns, 0, !isPlaying, -1, 0, 0, nChn); //rewbs.vstiLive - added extra args for (UINT kplchrd=0; kplchrd<nPlayChord; kplchrd++) { if (chordplaylist[kplchrd]) { - pModDoc->PlayNote(chordplaylist[kplchrd], nPlayIns, 0, FALSE, -1, 0, 0, nChn); //rewbs.vstiLive - - added extra args + pModDoc->PlayNote(chordplaylist[kplchrd], nPlayIns, 0, false, -1, 0, 0, nChn); //rewbs.vstiLive - - added extra args m_dwStatus |= PATSTATUS_CHORDPLAYING; } } Modified: trunk/OpenMPT/mptrack/View_smp.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_smp.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/View_smp.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -2172,26 +2172,22 @@ { if (note >= NOTE_MIN_SPECIAL) { - pModDoc->NoteOff(0, (note == NOTE_NOTECUT) ? TRUE : FALSE); + pModDoc->NoteOff(0, (note == NOTE_NOTECUT)); } else { CHAR s[64]; if (m_dwStatus & SMPSTATUS_KEYDOWN) - pModDoc->NoteOff(note, TRUE); + pModDoc->NoteOff(note, true); else - pModDoc->NoteOff(0, TRUE); + pModDoc->NoteOff(0, true); DWORD loopstart = m_dwBeginSel, loopend = m_dwEndSel; if (loopend - loopstart < (UINT)(4 << m_nZoom)) loopend = loopstart = 0; // selection is too small -> no loop - if(nStartPos != uint32_max) - pModDoc->PlayNote(note, 0, m_nSample, FALSE, -1, loopstart, loopend, CHANNELINDEX_INVALID, nStartPos); - else - pModDoc->PlayNote(note, 0, m_nSample, FALSE, -1, loopstart, loopend); + pModDoc->PlayNote(note, 0, m_nSample, false, -1, loopstart, loopend, CHANNELINDEX_INVALID, nStartPos); - m_dwStatus |= SMPSTATUS_KEYDOWN; s[0] = 0; if ((note) && (note <= NOTE_MAX)) wsprintf(s, "%s%d", szNoteNames[(note-1)%12], (note-1)/12); Modified: trunk/OpenMPT/mptrack/View_tre.cpp =================================================================== --- trunk/OpenMPT/mptrack/View_tre.cpp 2012-01-03 19:06:22 UTC (rev 1157) +++ trunk/OpenMPT/mptrack/View_tre.cpp 2012-01-03 23:44:56 UTC (rev 1158) @@ -125,7 +125,7 @@ //------------------- { vector<ModTreeDocInfo *>::iterator iter; - for (iter = DocInfo.begin(); iter != DocInfo.end(); iter++) + for(iter = DocInfo.begin(); iter != DocInfo.end(); iter++) { delete (*iter); } @@ -1245,11 +1245,11 @@ if (!nParam) nParam = NOTE_MIDDLEC; if (nParam & 0x80) { - pModDoc->NoteOff(nParam & 0x7F, TRUE); + pModDoc->NoteOff(nParam & 0x7F, true); } else { - pModDoc->NoteOff(0, TRUE); // cut previous playing samples - pModDoc->PlayNote(nParam & 0x7F, 0, modItemID, FALSE); + pModDoc->NoteOff(0, true); // cut previous playing samples + pModDoc->PlayNote(nParam & 0x7F, 0, modItemID, false); } } return TRUE; @@ -1260,11 +1260,11 @@ if (!nParam) nParam = NOTE_MIDDLEC; if (nParam & 0x80) { - pModDoc->NoteOff(nParam, TRUE); + pModDoc->NoteOff(nParam, true); } else { - pModDoc->NoteOff(0, TRUE); - pModDoc->PlayNote(nParam, modItemID, 0, FALSE); + pModDoc->NoteOff(0, true); + pModDoc->PlayNote(nParam, modItemID, 0, false); } } return TRUE; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |