From ee58af488db8eee96c5a90ff07f0cc78e7af30a3 Mon Sep 17 00:00:00 2001 From: Sergey Stepanov Date: Thu, 20 Apr 2023 22:54:35 +0300 Subject: [PATCH] Advance 1 frame only with Mupen --- pkg/worker/emulator/libretro/frontend.go | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkg/worker/emulator/libretro/frontend.go b/pkg/worker/emulator/libretro/frontend.go index be399d98..b9640a86 100644 --- a/pkg/worker/emulator/libretro/frontend.go +++ b/pkg/worker/emulator/libretro/frontend.go @@ -141,10 +141,12 @@ func (f *Frontend) Start() { // start time for the first frame lastFrameTime = time.Now().UnixNano() - // 1 frame in order for Mupen save state load to work - f.mu.Lock() - run() - f.mu.Unlock() + // advance 1 frame for Mupen save state + if usesLibCo { + f.mu.Lock() + run() + f.mu.Unlock() + } if err := f.LoadGameState(); err != nil { f.log.Error().Err(err).Msg("couldn't load a save file")