Analogue Pocket
The Analogue Pocket is a field-programmable gate array (FPGA) handheld that plays Game Boy, Game Boy Color, and Game Boy Advance cartridges by simulating the hardware. It can also be extended to simulate other generation 1-4 consoles & handheld hardware with Analogue's openFPGA.
These other hardware simulations are called "cores," and they each expect their ROMs in a very specific directory on the Analogue Pocket's SD card.
Tip
You can install openFPGA cores easily with utilities such as Matt Pannella's pocket_updater
.
BIOS
Most Pocket updater utilities will download BIOS files required for each core for you automatically, so you shouldn't need to source & sort them yourself.
ROMs
Igir has support for replaceable "tokens" in the --output <path>
option. This makes it easier to sort ROMs on devices that have an expected directory structure. The {pocket}
token exists to help sort ROMs on the Analogue pocket. See the replaceable tokens page for more information.
This token can be used to reference each core's specific directory in the SD card's Assets
directory. ROMs go in the Assets/{pocket}/common
directory.
Replace the E:\
drive letter with wherever your SD card is:
Replace the /Volumes/POCKET
drive name with whatever your SD card is named:
Replace the /media/POCKET
path with wherever your SD card is mounted:
Note
The --dat-name-regex-exclude "/headerless/i"
option in the above examples is to exclude any "headered" No-Intro DATs. Some consoles such as NES have separate "headered" and "headerless" DATs, and they have duplicated ROM filenames, so we want to avoid writing different input files to the same output location.
Note
The --dir-letter-limit 1000
option in the above example is because some cores won't read more than a certain number of files in one directory. See output path options for other options available.
Note
The --clean-exclude <path>
option in the above examples is so we don't accidentally "clean" (delete) the BIOS files for each core.
Your SD card should look like this, likely with more cores:
├── Assets
│ ├── genesis
│ │ └── common
│ │ ├── ROM1.md
│ │ ├── ROM2.md
│ │ └── ROM3.md
│ ├── nes
│ │ └── common
│ │ ├── ROM1.nes
│ │ ├── ROM2.nes
│ │ └── ROM3.nes
│ ├── sms
│ │ └── common
│ │ ├── ROM1.sms
│ │ ├── ROM2.sms
│ │ └── ROM3.sms
│ └── snes
│ └── common
│ ├── ROM1.snes
│ ├── ROM2.snes
│ └── ROM3.snes
├── Cores
├── Platforms
└── Presets