Skip to content

Feature Request: Support for .zip archives containing .cue + multi-track .bin files #58

@lucasfcnunes

Description

@lucasfcnunes

Description

Currently, the Beetle Saturn core only supports loading content with the following extensions:

  • .cue
  • .toc
  • .m3u
  • .ccd
  • .chd

However, it does not support loading .zip archives that contain a .cue file and multiple .bin tracks (e.g., Game Title (Track 01).bin, Game Title (Track 02).bin, etc.).

Use Case

Many users organize their Saturn disc images in .zip format for portability and compression. A typical archive might contain:

  • Game Title.cue – the cue sheet describing the layout of the disc
  • Game Title (Track 01).bin – the data track
  • Game Title (Track 02).bin – an audio track
  • Game Title (Track 03).bin – another audio track
  • ...and so on

This format is common among Saturn redump sets and is often used to preserve the original disc structure while reducing file clutter.

Proposed Feature

Enable the Beetle Saturn core to load .zip archives that include:

  • A valid .cue file
  • One or more .bin files referenced by the .cue
  • Optional .sbi or .sub files for copy protection support

The core should extract the archive in memory or to a temporary location, parse the .cue, and load the referenced tracks accordingly.

Benefits

  • 🗜️ Improved portability: Easier to manage and transfer games as single compressed files.
  • 📁 Cleaner library organization: Reduces the need for multiple loose files per game.
  • 💾 Storage savings: Compression can significantly reduce disk usage.
  • 🕹️ User convenience: Aligns with how many users already store their Saturn games.

Considerations

  • Ensure compatibility with .zip archives containing non-standard naming conventions.
  • Validate that all referenced .bin files exist within the archive.
  • Handle multi-disc .m3u playlists referencing zipped games.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions