diff --git a/src/gui/osc.cpp b/src/gui/osc.cpp index 6de7ddc2d..285d7a1fd 100644 --- a/src/gui/osc.cpp +++ b/src/gui/osc.cpp @@ -58,10 +58,12 @@ void FurnaceGUI::readOsc() { float* sincITable=DivFilterTables::getSincIntegralTable(); float posFrac=0.0; - int posInt=oscReadPos; + int posInt=oscReadPos-8; float factor=(float)oscWidth/(float)winSize; - for (int i=0; ioscBuf[ch][posInt&0x7fff]; + for (int i=-8; i=0 && ioscBuf[ch][posInt&0x7fff]; + } posFrac+=1.0; while (posFrac>=1.0) {