Skip to content

feat(mister): add .chd extension to 3DO launcher#786

Merged
wizzomafizzo merged 1 commit into
mainfrom
feat/mister-3do-chd
May 6, 2026
Merged

feat(mister): add .chd extension to 3DO launcher#786
wizzomafizzo merged 1 commit into
mainfrom
feat/mister-3do-chd

Conversation

@wizzomafizzo
Copy link
Copy Markdown
Member

@wizzomafizzo wizzomafizzo commented May 6, 2026

Summary

  • Add .chd to the MiSTer 3DO launcher's recognised extensions alongside .iso and .cue.

Summary by CodeRabbit

  • Bug Fixes
    • Added support for .chd extension in the 3DO launcher, enabling proper handling of 3DO disc/image files.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 6, 2026

📝 Walkthrough

Walkthrough

The 3DO launcher in the MiSTer platform is updated to recognize .chd disc image files in addition to existing .iso and .cue file formats.

Changes

3DO Launcher File Extension Support

Layer / File(s) Summary
Launcher Configuration
pkg/platforms/mister/launchers.go
3DO launcher Extensions list adds .chd to existing .iso and .cue formats for disc image file recognition.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 A carrot of code, a sprout of extension,
.chd joins the fold without tension,
Three formats now bloom where two did before,
The 3DO launcher opens a wider door! 🎮

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main change: adding the .chd extension to the 3DO launcher, which aligns perfectly with the changeset's purpose.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/mister-3do-chd

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@pkg/platforms/mister/launchers.go`:
- Around line 607-611: New .chd support for systemdefs.System3DO (the Launch
entry using launch(pl, systemdefs.System3DO)) lacks a regression test; add a
test that verifies files with a .chd extension are matched to
systemdefs.System3DO by the launcher matcher. Create a unit test following
pkg/testing/README.md patterns that constructs a launcher registry or calls the
matcher used by pkg/platforms/mister/launchers.go (the Launch/matching logic for
System3DO), supplies sample filenames including "game.chd" and asserts the
matcher returns systemdefs.System3DO (and that other extensions like .iso/.cue
still match), and place it alongside related tests to satisfy the TESTING.md
guidelines.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 224bf43a-8766-40cc-aaf7-2002b95ac1dc

📥 Commits

Reviewing files that changed from the base of the PR and between 35ac834 and 614e030.

📒 Files selected for processing (1)
  • pkg/platforms/mister/launchers.go

Comment on lines 607 to 611
ID: systemdefs.System3DO,
SystemID: systemdefs.System3DO,
Folders: []string{"3DO"},
Extensions: []string{".iso", ".cue"},
Extensions: []string{".iso", ".cue", ".chd"},
Launch: launch(pl, systemdefs.System3DO),
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major | ⚡ Quick win

Add a regression test for 3DO .chd matching.

Line 610 introduces new launcher matching behavior, but there’s no accompanying test proving .chd files are recognized for systemdefs.System3DO.

As per coding guidelines, "**/*.go: Write tests for all new code — follow TESTING.md and pkg/testing/README.md patterns".

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@pkg/platforms/mister/launchers.go` around lines 607 - 611, New .chd support
for systemdefs.System3DO (the Launch entry using launch(pl,
systemdefs.System3DO)) lacks a regression test; add a test that verifies files
with a .chd extension are matched to systemdefs.System3DO by the launcher
matcher. Create a unit test following pkg/testing/README.md patterns that
constructs a launcher registry or calls the matcher used by
pkg/platforms/mister/launchers.go (the Launch/matching logic for System3DO),
supplies sample filenames including "game.chd" and asserts the matcher returns
systemdefs.System3DO (and that other extensions like .iso/.cue still match), and
place it alongside related tests to satisfy the TESTING.md guidelines.

@sentry
Copy link
Copy Markdown

sentry Bot commented May 6, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@wizzomafizzo wizzomafizzo merged commit 36cc2f3 into main May 6, 2026
13 checks passed
@wizzomafizzo wizzomafizzo deleted the feat/mister-3do-chd branch May 6, 2026 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant