feat(player): add genesis_plus_gx_wide, bsnes, freeintv, azahar EJS cores#3454
Merged
Conversation
…ores - genesis_plus_gx_wide added alongside genesis_plus_gx for all Sega MD/MS/GG/CD platforms - bsnes added alongside snes9x for SNES platforms - freeintv added for Intellivision - azahar added for Nintendo 3DS (3ds, new-nintendo-3ds) and marked as requiring threads Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds EmulatorJS nightly core support to the player core selection flow, so supported platforms can expose newer cores when the existing netplay/nightly configuration is enabled.
Changes:
- Adds a nightly-only EJS core map with
azahar,freeintv,bsnes, andgenesis_plus_gx_wide. - Passes
EJS_NETPLAY_ENABLEDthrough player and console call sites to select the expanded core map. - Marks
azaharas requiring EJS threads and updates TS/JS config resolution settings.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
frontend/src/utils/index.ts |
Adds nightly core mappings, updates supported-core lookup, and adds azahar to threaded cores. |
frontend/src/views/Player/EmulatorJS/Player.vue |
Uses the config flag when selecting the EJS core. |
frontend/src/views/Player/EmulatorJS/Base.vue |
Uses the config flag when listing selectable EJS cores. |
frontend/src/console/views/Play.vue |
Uses the config flag when selecting the console EJS core. |
frontend/src/console/views/Game.vue |
Uses the config flag when checking console player support. |
frontend/tsconfig.json |
Removes baseUrl from TypeScript config. |
frontend/jsconfig.json |
Updates JS compiler resolution/target settings. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds four newly-supported EmulatorJS cores to the player's core map (
frontend/src/utils/index.ts):genesis_plus_gxfor all Sega MD/Genesis, Master System, Game Gear, and Sega CD platformssnes9xfor all SNES/Super Famicom platforms3ds,new-nintendo-3ds; new entries) and registered inareThreadsRequiredForEJSCoresince 3DS emulation needs SharedArrayBuffer/threadsCore-to-system mappings and the threads requirement were confirmed against the EmulatorJS source (
data/src/consts.js).Test plan
freeintvis offered/loadsazaharis offered (requires COOP/COEP headers for threads)genesis_plus_gx_wideappears as an option for Sega systemsbsnesappears as an option for SNES titles🤖 Generated with Claude Code