Skip to content

Releases: itchio/zitch

v0.3.0

Choose a tag to compare

@leafo leafo released this 06 Oct 20:25
v0.3.0

This release adds a functional "Playable Here" filter, compatibility reporting, an experimental PortMaster build, various performance enhancements for large libraries, and better game details page with screenshots and more.

Requires the dev version of butler (included in .muxapp and the PortMaster zip).

zitch-0 3 0-game-page

Playable Here

The "Playable Here" filter now does something! We have starting a backend task to classify every game page uploaded to itchio to statically tag projects with runtimes and platform support, including things like linux architecture, ROMs, and game engines. This data is now fed down through butler so that zitch is able to determine what projects in your library are likely to be playable.

This data is only available for pages that have been scanned, and we haven't scanned everything yet, so expect entries to become available in the filter as we scan more projects. In the meantime you can turn off the filter if you wish to find something that hasn't been tagged yet for installation.

Any archive you download is scanned locally by butler so it is able to identify what launch targets exist in the game, so you can run them even if they haven't been scanned server-side.

The new settings page also includes a sub page so you can choose what runtimes are considered for "Playable Here", like if you want to exclude certain ROM types. Everything is enabled by default.

zitch-0 3 0-rg40xxh

Compatibility Reports

Even with "Playable here", we can't statically detect everything so we've introduced a new Compatibility Report system. This will enable you to rate how well a game has run on your device, and send the report, along with your device details, to the itchio API. At the moment we don't use this data, but we may use it in the future or share it with game developers.

zitch-0 3 0-report

Your compatibility reports are also saved locally, and will show a badge on each game thumbnail in the app so you can see what works at a glance. The "Playable Here" filter will also exclude things that don't run.

New

  • Add fancy boot and quit animations
  • PortMaster port. zitch-*-portmaster.zip installs through PortMaster. On muOS it's the same app. On other firmwares it's a library and installer for now, since launching is specific to each firmware
  • Create a new settings page for any app customization
  • Game pages now pull screenshots and tag information from the data.json endpoints when you open them when connected to the internet
  • You can use L1/R1 on a game details page to move left in right in the carousel where the game details page is located
  • You can open a QR code on the game details page to easily access a link to the game on itch.io
  • L2/R2 page through a row, Y jumps between the filters and the games, and every list wraps at both ends
  • Collection filters are remembered between runs

Handheld Compatibility

  • SDL shim has been update for FNA games. The SDL shim rewrites shaders that write to two color targets as GLSL ES 3.00, which fixes Anodyne on the H700 and PowerVR GE8300 devices (Ambernic RGXX series, TRIMUI Brick series). Tested for Anodyne
  • Games that link SDL2 into one of their own libraries, rather than the executable, are routed to the firmware's SDL2 too
  • A LÖVE game has to say which LÖVE version it wants before "Playable here" counts it. You can still manually download and attempt to run any love file using the built in 11.5 runtime
  • PICO-8 web exports are no longer offered as runnable carts
  • 3DS added to the ROM systems, and a core that only runs on certain boards is only offered on those boards
  • Launch failures are logged and shown on the game's page with what the game printed
  • The muOS panic combo (R2 + Select + B) works on Linux builds, zitch now names the game's process for it

Fixes and polish

  • Large libraries load in pages with visible progress instead of stalling the interface, and collections on screen are refreshed first
  • Covers load by priority and stop loading once they scroll away
  • Filtering collections happens in butler, so toggling a filter doesn't freeze things
  • zitch recovers if butler dies and can't be reconnected right away, instead of the backend stopping for good
  • Changing user while a confirmation is open no longer leaves it hanging
  • Backing out of the "what do you want to launch" list doesn't flash the screen like a game had run
  • A game doesn't show as queued while you're still picking its download
  • A failed download no longer keeps the screen redrawing until you dismiss it
  • Cover downloads give up on a host that doesn't answer

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@leafo leafo released this 17 Sep 09:05
v0.2.0

This release add support for muOS Andromeda, the next muOS release that's currently in beta. If you're on 0.1.0 you'll have to install this version by manually downloading the muxapp. Once you have this version, zitch can fetch its own updates (see below).

Requires the dev version of butler (included in .muxapp).

muOS Andromeda

  • Fixed launching games. Andromeda moved the files the frontend uses to hand a game off to its launch script (out of /tmp, into /run/muos). zitch now works out which firmware it's on and writes to the right place
  • Emulator launchers are read from the firmware's own system config instead of a list hard-coded in zitch, so a ROM runs with whatever core the firmware assigns to that system
  • The muxapp now ships its own LÖVE 11.5. On muOS, LÖVE only exists inside whichever bundled app happens to be written in it, and Andromeda dropped the one zitch was borrowing. zitch will still look for one on the firmware if the bundled one is missing
  • The glibc version is read from the device (2.38 on Jacaranda, 2.40 on Andromeda) when deciding whether a Linux build can run, instead of being assumed

New

  • Check for zitch update (muOS): new item in the menu drawer. It looks for a newer release on GitHub and downloads the .muxapp into Archive Manager for you to manually install after quitting zitch.
  • Battery indicator in the top right, on devices that have a battery
  • Change user option in the drawer so you can log in with another account
  • The drawer shows the zitch and butler versions
  • Sign in page has a "Send itch.io my device info" checkbox (on by default, uncheck to opt out). It sends the board, muOS release, glibc version, screen resolution and CPU architecture during the exchange for authorization token
  • An icon in the muOS applications list

Fixes and polish

  • A queued download always shows up on the Downloads tab
  • Smaller margins around the edge of the screen and a more compact drawer on handhelds, to make the most of small screens
  • Less battery use. zitch and butler both used to wake up many times a second to poll for things even when nothing was happening, including while a game was running in front of them. They now sleep until there's something to do. butler also gained a --low-power mode that zitch turns on for handhelds, for now it just keeps installs from taking over every core
  • Cancelling a download takes effect right away instead of a few seconds later (butler)

Full Changelog: v0.1.0...v0.2.0

image

Initial release

Choose a tag to compare

@leafo leafo released this 15 Sep 19:32
v0.1.0

Here's the initial release, I've been primarily testing on little handhelds (RG35XXH and Trimui Brick Pro), so don't expect much from the "big picture" experience yet. Requires dev version of butler (included in .muxapp).

Tips for usage: There's no way to browse or search itch.io. I recommend creating collections on your account and filling them with games you want to try. Then you can refresh your library and install what you want to test. I've started a separate project to tag files that will be compatible with handhelds server-side but that's a ways off. Most rom types should work. Love games that can resize and support controller input should work. Pico 8 games should work fine.

Supports

  • QR Code sign in: You must log in to use the app. The app uses your itchio account to access the API to download files
  • Tabs for Library, Collections, and Downloads (Note: "Playable here" filter does not work on muos)
  • You can install stuff, update things, and launch games
    • muos: custom runners to allow launching retroarch supported roms, pico-8, love2d .love, or native linux binaries
  • muxapp: Includes a custom SDL shim zitch applies with SDL_DYNAMIC_API on linux binary launches that remaps the game's SDL2 jump table onto the firmware's libSDL2
  • zitch can be run fully offline once you've synchronized your library and downloaded stuff
image