From 1dd217de2196b2c0fbd0f93c0f38a3af78367116 Mon Sep 17 00:00:00 2001 From: cam900 Date: Sat, 29 Oct 2022 22:07:48 +0900 Subject: [PATCH] Fix sample position command --- src/engine/platform/es5506.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/engine/platform/es5506.cpp b/src/engine/platform/es5506.cpp index 42ce685a..c781aa3e 100644 --- a/src/engine/platform/es5506.cpp +++ b/src/engine/platform/es5506.cpp @@ -643,8 +643,9 @@ void DivPlatformES5506::tick(bool sysTick) { if (chan[i].pcm.index>=0 && chan[i].pcm.indexsong.sampleLen) { unsigned int startPos=chan[i].pcm.reversed?chan[i].pcm.end:chan[i].pcm.start; if (chan[i].pcm.nextPos) { + const unsigned int start=chan[i].pcm.start; const unsigned int end=chan[i].pcm.length; - startPos+=(chan[i].pcm.reversed?(end-chan[i].pcm.nextPos):chan[i].pcm.nextPos)<<11; + startPos=start+((chan[i].pcm.reversed?(end-chan[i].pcm.nextPos):(chan[i].pcm.nextPos))<<11); chan[i].pcm.nextPos=0; } chan[i].k1Prev=0xffff;