• Stars
    star
    537
  • Rank 80,811 (Top 2 %)
  • Language
    TypeScript
  • License
    GNU Affero Genera...
  • Created over 1 year ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A GUI tool for doing stuff with the Analogue Pocket

pocket-sync

"And fan-created apps let you load up a microSD card quickly and effortlessly."

wired.com - Review: Analogue Pocket

A Windows / Mac / Linux GUI to do stuff with the Analogue Pocket.

The Core ListSNES core details Editing a platformBrowsing Save StatesExporting a screenshot

Features:

  • Browse, configure, & install cores
  • Export corrected & upscalled screenshots
  • Backup & restore save files
  • Quick links to open game file folders
  • Browse & manage (bulk delete) save states

Installation

  • Download the installer for your platform from The Latest Release
  • Note you'll need to click through to allow the application on Windows & right click to allow the application on MacOS since I can't be bothered setting up (& paying yearly for) the signing process
  • The SD card will need to have been initialised by the Pocket to get recognised
  • Plug in your Pocket / put in the SD card, click "Connect to Pocket", select the root folder (the one with Assets & Cores & Saves etc in it) and go
  • It'll slap a pocket_sync.json file on to your pocket to hold config on first run

Philosophy

  • What this purposely isn't is a way to install 100 Cores in 20 seconds without really knowing what any of them are
  • I'll not be adding any sort of "Install All" button to the UI, instead it's a slower process of choosing what cores you're interested in & seeing them, including links to support whoever put the time into getting the core onto the Pocket, in more detail. Also, with the number of cores coming from github now you'll run into rate limiting if you try and pull them all down at once. (If you really want to just download every core at once I'd recommend the mattpannella / RetroDriven updaters for this over this one)
  • I'll not be supporting customising the video.json files (e.g. to add "Full Screen" modes), since I think this should be up to the core authors / users advanced enough to edit their own JSON (and deal with it if they break things). The app'll always allow you to opt out of any incoming video.json file though & if Analogue introduces a way to customise the video out without conflicting with the core author's files then I'll support it.
about_screen.mov

Roadmap

Translations

The app now supports translations into the user's language & locale for most things in the UI.

If you're fluent in another language and feel like helping out you can find the files in https://github.com/neil-morrison44/pocket-sync/tree/main/src/i18n/locales , just add one for the language (e.g. en) then make tweaks on top of it for locale specific things (e.g. en-US).

I'm particuarly looking for Japanese, Chinese, & Spanish - but any language will be accepted if the translation seems good enough.

It's in the ICU message format, which there are some guides available online for, but the main trick is that the brackets create levels of stuff to change vs leave e.g. "Change me {leave me {change me}}" so a "language" which is just english but shouting might have:

{
  "item": {
    "game_count": "THERE ARE {count, plural, =0 {NO GAMES} one {ONE GAME} other {# GAMES}}"
  }
}

Done

  • Hopefully get the saves backups working how I'd planned (close enough)
  • Support for adding custom images from PNGs, editing platform data, etc
  • Improve Search
  • Save State management (search, bulk delete etc)
  • Input viewer
  • Core settings
  • Screenshot bulk delete / save
  • Autobackup saves on connection (if there's changes)
  • Input viewer supporting game specific inputs
  • Settings supporting game specific settings
  • Image packs
  • Manual MiSTer save file sync
  • Installing / Checking for firmware updates (might wait for the real release of 1.1 for this)
  • Newsfeed support
  • Support for i18n translations

Soon

Longer term

  • List new cores / updates since the last Pocket was connected (with, optional, notifications)
  • Library viewing / editing once that's rolled out to OpenFPGA
  • OpenFPGA video filter features (format dependent)

FAQs

Anything about files from the archive

I have no involvement in managing the files on the archive, try the FPGA Gaming discord.

Why doesn't this work on older MacOS version?

The tool I use to make this tauri only supports back to 10.13, so anything before then probably won't even open -- also Apple don't keep the default browser in old OSes up to date (Windows does for a while via service packs & in Linux you can do what you want) so I can only really support / can test on the last 2 major versions, sorry.

Why isn't some core in the list?

Pocket Sync only shows what's available in the inventory which is currently limited to cores released via the github releases system. Other updaters have workarounds for other cores but I've chosen not to since it won't be too long before the inventory supports other release mechanisms. Until then you can install cores by dragging & dropping the .zip onto any running Pocket Sync window and it'll install as if you've downloaded it.

OpenFPGA Validator

I've put together this https://github.com/neil-morrison44/openfpga-validator which can be run by core devs by doing npx openfpga-validator@latest check <path_to_zip>.

It should catch places where any files in the core differ from what's specified on https://www.analogue.co/developer/docs/overview as well as make some warnings / recommendations for things which aren't specified in the Analogue docs but will trip up updaters.

Donations?

Nah, I'm alright - you should donate to the folks porting / building cores over though.

Thanks to