libretro / libretro/RetroArch

RunAhead Use Second Instance prevents disks from changing properly.

Open
#10,070 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug: runahead
Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Description

When RunAhead Use Second Instance is enabled, when changing the disk through the user interface, it doesn't actually change. The log says it changes, but the disk remains the same in the emulator. I've tested this with the Beetle Saturn core and the BlueMSX core.

I've tried using an m3u then Eject Disk, changing the disk index, and then Insert Disk. I've also tried Load New Disk. Always the disk stays the same as the one that was initially loaded.

If you leave runahead off you can change disks once and then turn runahead on, but afterward you will not be able to change disks again.

I was able to diagnose the problem in this thread: #10044

Expected behavior

The disk should change.

Actual behavior

The disk appears to change in log, but does not change

Steps to reproduce the bug
  1. Enable runahead with second instance
  2. load up an m3u or disk for a multidisk game
  3. try to change the disk
Bisect Results

This might have started happening with 1.8.4, but I'm not entirely certain

Version/Commit
  • RetroArch: 1.8.4 Git version f425d8d
Environment information
  • OS: Windows 10 1903 x64

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no source files, tests, or entry points. Start by reproducing the problem with RunAhead Use Second Instance enabled and a multidisk game, then trace the disk-change path; done means changing, ejecting, or loading a disk updates the disk used by the emulator rather than only the log.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.