The openFPGA Vault is the distribution point for OpenGateware's Analogue Pocket cores. It is not a hardware or game implementation in itself -- it is the single place from which end users and community updater tools obtain packaged, ready-to-install releases of the cores OpenGateware develops. The gateware source for each core lives in its own dedicated repository; this vault collects the built, installable packages so they can be found and deployed from one location.
Notice Regarding ROMs: This repository does not contain any ROMs, BIOS or game files, nor will any links or pre-assembled ROMs be provided by OpenGateware in any form. Users must ensure they have the legal authority to use these titles in their jurisdiction. By using these cores, you agree to supply your own ROMs. We do not condone or support the unauthorized use or distribution of copyrighted or any other intellectual property-protected materials.
openFPGA cores are distributed as self-contained packages. The general procedure on an Analogue Pocket is:
- Download the release archive for the title you want from this repository's Releases.
- Extract the archive to the root of the Pocket's microSD card, allowing it to merge into the
existing
Assets/,Cores/, andPlatforms/directories. - Supply your own ROM/BIOS/game files into the paths the core expects under
Assets/, following that core's own README. - Insert the card, and select the core from the Pocket's openFPGA menu.
Arcade cores do not ship with game data; they load a single .rom file that you assemble from
MAME ROMs you legally own. The MRA recipe files that describe how to build each core's .rom are
provided in the
mra/ directory of this
repository, packaged per system (for example, mra-system_c.zip). Extract the archive for the
system you want to obtain its .mra files.
To turn a recipe into a .rom, use ORCA (Open ROM Conversion Assistant). ORCA merges your MAME
ROM zips into a single .rom per the recipe:
orca -z /PATH/TO/MAME/ZIPS name.mra
Copy the resulting .rom into the path the core expects under Assets/ (see that core's own
README). For many titles at once, loop ORCA over every .mra with a shell script (Linux/macOS) or
PowerShell script (Windows); see the ORCA README for platform-specific examples.
Manual extraction is only one option. Every release published here is indexed by the community openFPGA cores inventory (the OpenFPGA Library), which both major updater tools read to locate a core and pull its release archive. If you would rather not manage the microSD card by hand, use either of the following to install and keep cores up to date automatically:
- Pupdate -- a cross-platform, command-line updater by Matt Pannella. It resolves each core from the inventory and downloads the matching release archive straight to the Pocket's card.
- Pocket Sync -- a graphical desktop app by Neil Morrison. It browses the same inventory,
installs and updates cores from their GitHub releases, and can also install a release
.zipby drag-and-drop onto its window.
Both tools install the exact same packaged releases distributed here, so you can mix approaches: grab an archive manually for a one-off install, or let an updater manage the full set. You still supply your own ROM/BIOS/game files either way (see the note above).
The cores distributed through this vault are the built output of their respective source projects. Each distributed core retains the license of its originating repository. Many OpenGateware cores are combined works incorporating components under multiple licenses; when distributed as a whole (including pre-compiled bitstreams and binaries), such a work is governed by the GNU General Public License v3.0 or later due to the inclusion of GPL components. Refer to each core's own repository and the SPDX headers within its packaged files for the authoritative terms.
The vault's own contents -- packaging scripts, metadata, and documentation authored by OpenGateware -- are provided under the following terms:
- Original scripts and source code authored by Marcus Andrade: Apache License 2.0
- Documentation: Creative Commons Attribution-ShareAlike 4.0 International
- Configuration, metadata, and data files: Creative Commons Zero v1.0 Universal
- Distributed third-party cores: as indicated in their respective source file headers and originating repositories.
OpenGateware and its contributors reserve all other rights, whether under their respective copyrights, patents, or trademarks, whether by implication, estoppel, or otherwise.
Individual files carry SPDX license identifiers as shorthand for the applicable copyright and warranty notices:
SPDX-License-Identifier: Apache-2.0
SPDX-License-Identifier: CC-BY-SA-4.0
SPDX-License-Identifier: CC0-1.0
- Analogue, Analogue Pocket, and openFPGA are trademarks of Analogue, Inc. Their use here is nominative, to identify the platform these cores are built for.
- Each core distributed through this vault may reference the trademarks of the original hardware or software it is compatible with; those marks are the property of their respective owners and are documented in that core's own repository.
OpenGateware, its authors, contributors, and maintainers are not endorsed by, affiliated with, sponsored by, or associated with Analogue, Inc., or any of their respective subsidiaries, parents, successors, or related entities. This project is an independent, open-source distribution created for educational, research, and preservation purposes.
All trademarks, service marks, trade names, trade dress, product names, and logos referenced in this repository are the property of their respective owners. Their use herein is purely nominative -- to identify the original works with which these cores are compatible -- and does not imply any endorsement, partnership, or commercial relationship.