From 9d6d84a87fef6398de2714e9709ac484ed4c269c Mon Sep 17 00:00:00 2001 From: tildearrow Date: Fri, 27 May 2022 01:36:05 -0500 Subject: [PATCH] Lynx: sample looping --- src/engine/platform/lynx.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/engine/platform/lynx.cpp b/src/engine/platform/lynx.cpp index ca0444c2..af17053b 100644 --- a/src/engine/platform/lynx.cpp +++ b/src/engine/platform/lynx.cpp @@ -157,8 +157,13 @@ void DivPlatformLynx::acquire(short* bufL, short* bufR, size_t start, size_t len } else { WRITE_OUTPUT(i,(s->data8[chan[i].samplePos++]*chan[i].outVol)>>7); } + if (chan[i].samplePos>=(int)s->samples) { - chan[i].sample=-1; + if (s->loopStart>=0 && s->loopStart<(int)s->samples) { + chan[i].samplePos=s->loopStart; + } else { + chan[i].sample=-1; + } } } }