Skip to content

feat(core): expand console identification with multi-phase detection - #6

Merged
Dev-Sams1012 merged 1 commit into
mainfrom
feat/multi-phase-identification
Jul 30, 2026
Merged

Dev-Sams1012 merged 1 commit into
mainfrom
feat/multi-phase-identification

Conversation

@Dev-Sams1012

Copy link
Copy Markdown
Owner
  • Add IdentificationEngineFactory to bootstrap the multi-phase detection engine
  • Introduce IContainerDetector and IContainerResolver interfaces
  • Implement CueSheetResolver to resolve .cue files to underlying binaries
  • Add DreamcastGdiDetector and DreamcastCdiDetector for container matching
  • Add new binary signature detectors for Ps2, Sega CD, and Sega Saturn
  • Update Ps1Detector to accurately differentiate from Ps2 headers using BOOT2
  • Update Console enum to include newly supported platforms
  • Expand header reading size buffer in ConsoleIdentifier to support larger offsets

@Dev-Sams1012 Dev-Sams1012 self-assigned this Jul 30, 2026
@Dev-Sams1012
Dev-Sams1012 force-pushed the feat/multi-phase-identification branch from 60c4206 to 3a81888 Compare July 30, 2026 23:34
- Refactor `ConsoleIdentifier` to implement a 3-phase detection pipeline: container detectors, container resolvers, and binary detectors.
- Add `IContainerDetector` and `IContainerResolver` interfaces for extension-based logic and ambiguity resolution.
- Add `CueSheetResolver` to parse `.cue` sheets and dynamically locate target binary files.
- Implement container detectors for Dreamcast formats (`DreamcastGdiDetector`, `DreamcastCdiDetector`).
- Add binary detectors for PSP, PSP Homebrew (`PbpDetector`), Sega CD, and Saturn.
- Update `Ps1Detector` and implement `Ps2Detector` to safely disambiguate discs using `SYSTEM.CNF` and `BOOT2` signatures.
- Expand `Console` enum with `DreamcastModificado`, `PSP_PBP`, `Saturn`, and `SegaCD`.
- Add `IdentificationEngineFactory` to encapsulate the instantiation and registration of all detectors and resolvers.
@Dev-Sams1012
Dev-Sams1012 force-pushed the feat/multi-phase-identification branch from 3a81888 to c81d3b2 Compare July 30, 2026 23:35
@Dev-Sams1012
Dev-Sams1012 merged commit ffe8841 into main Jul 30, 2026
1 check passed
@Dev-Sams1012
Dev-Sams1012 deleted the feat/multi-phase-identification branch July 30, 2026 23:43
@Dev-Sams1012 Dev-Sams1012 added the enhancement New feature or request label Jul 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant