Skip to content

VMManager: Basic .m3u playlist support#14271

Open
nfriedly wants to merge 2 commits intoPCSX2:masterfrom
nfriedly:m3u
Open

VMManager: Basic .m3u playlist support#14271
nfriedly wants to merge 2 commits intoPCSX2:masterfrom
nfriedly:m3u

Conversation

@nfriedly
Copy link
Copy Markdown

@nfriedly nfriedly commented Apr 7, 2026

Description of Changes

This gives PCSX2 the ability to parse .m3u files for multidisc games. It automatically loads the first disc, and lists all discs in the System -> Change Disc menu.

Rationale behind Changes

I want this for Batocera, where .m3u files are the correct way to group multidisc games.

Fixes #6696

Suggested Testing Steps

I tested a Windows build, both via the System -> Start File menu in PCSX2, and by right-clicking a .m3u file in explorer and choosing Open with, then finding the executable for my modified pcsx2 build.

I tested the second commit by switching discs a few times.

I have not yet tested it in Batocera, but I think it will work.

I have also not yet tested how it handles save states where your on a subsequent disc. I'm moderately concerned that the "just load the first disk" behavior I chose could cause trouble there. (I don't have any save files beyond the first disk of any multidisc games.)

Did you use AI to help find, test, or implement this issue or feature?

Yes, I had copilot plan this out, then I tweaked the plan a bit, then had it implement it. I reviewed the code and was fairly happy with it, so I'd didn't make any changes.

For the second commit, I did a similar process, except I made some changes to clean it up a little bit.

Future work

I think these ideas would make sense, but I'm not sure if any of them belong in this PR:

  • Add every file in the playlist to the System -> Change Disc menu
    • done in the second commit, could be moved to a new PR if requested
  • Add every file in the playlist to the in-game Pause Menu -> Change Disc
  • Remember which file of the playlist was last loaded, at least when automatically loading savestates
  • Maybe make a hotkey to switch to the next disk(?)
  • Maybe add .m3u support to the main "all games" list(?)

Copy link
Copy Markdown
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for submitting a contribution to PCSX2

As this is your first pull request, please be aware of the contributing guidelines.

Additionally, as per recent changes in GitHub Actions, your pull request will need to be approved by a maintainer before GitHub Actions can run against it. You can find more information about this change here.

Please be patient until this happens. In the meantime if you'd like to confirm the builds are passing, you have the option of opening a PR on your own fork, just make sure your fork's master branch is up to date!

When loading a .m3u playlist, parse the list and load the first file instead.
@Deozaan
Copy link
Copy Markdown

Deozaan commented Apr 9, 2026

I have also not yet tested how it handles save states where your on a subsequent disc. I'm moderately concerned that the "just load the first disk" behavior I chose could cause trouble there. (I don't have any save files beyond the first disk of any multidisc games.)

I did a search for online saves and found some that might work, such as this one for Xenosaga 3: https://hippyj3.blogspot.com/2019/09/pcsx2-full-save-collection-xenosaga.html

I'm sure other files are available on that site or other sites for disc-2 saves for various games that could be used for testing.

(I am not affiliated with that site. I have never heard of it until today. It was among the top search results when I searched for save files for PS2 games that had multiple discs.)

@nfriedly nfriedly changed the title Basic .m3u playlist support VMManager: Basic .m3u playlist support Apr 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request]: Playlists/m3u files

2 participants