[ { "id": "soh", "name": "Ocarina of Time (Ship of Harkinian)", "repo": "Cogential/Shipwright-frame", "asset": "soh-steam-frame-arm64.zip", "type": "zip", "gameid": "Ocarina_of_Time_SoH", "launch": "run.sh", "keep": [ "*.z64", "*.n64", "*.v64" ], "data": "~/.local/share/soh", "rom_hint": "Send your Ocarina of Time ROM with Frame Inbox, or put a .z64 in ~/.local/share/soh.", "prereleases": true, "mode": "game", "icon_url": "https://raw.githubusercontent.com/Cogential/Shipwright-frame/steam-frame/soh/macosx/sohIcon.png" }, { "id": "soh3d", "name": "Ocarina of Time 3D (Ship of Harkinian, experimental)", "repo": "Cogential/Shipwright-frame", "asset": "soh-steam-frame-3d-arm64.zip", "type": "zip", "gameid": "Ocarina_of_Time_SoH_3D", "launch": "run.sh", "keep": [ "*.z64", "*.n64", "*.v64" ], "data": "~/.local/share/soh", "rom_hint": "Send your Ocarina of Time ROM with Frame Inbox, or put a .z64 in ~/.local/share/soh.", "prereleases": true, "mode": "game", "icon_url": "https://raw.githubusercontent.com/Cogential/Shipwright-frame/steam-frame/soh/macosx/sohIcon.png" }, { "id": "2ship", "name": "Majora's Mask (2 Ship 2 Harkinian)", "repo": "Cogential/2ship2harkinian-frame", "asset": "*arm64.appimage", "type": "appimage", "gameid": "Majoras_Mask_2Ship", "launch": "run.sh", "keep": [ "*.z64" ], "data": "~/.local/share/2ship", "rom_hint": "Send your Majora's Mask ROM with Frame Inbox, or put a .z64 in ~/.local/share/2ship.", "run_sh": [ "#!/bin/sh", "# Steam Frame launcher for 2 Ship 2 Harkinian (written by Frametanium). Data, saves and the built mm.o2r", "# live in ~/.local/share/2ship, so reinstalling this folder keeps them.", "D=\"$(cd \"$(dirname \"$0\")\" && pwd)\"", "export SHIP_HOME=\"${SHIP_HOME:-$HOME/.local/share/2ship}\"", "mkdir -p \"$SHIP_HOME\"", "# Hand a ROM shipped next to this script to the extractor until mm.o2r exists.", "if [ ! -f \"$SHIP_HOME/mm.o2r\" ]; then", " for rom in \"$D\"/*.z64; do [ -f \"$rom\" ] && cp -n \"$rom\" \"$SHIP_HOME/\"; done", "fi", "chmod +x \"$D/usr/bin/2s2h.elf\" 2>/dev/null", "cd \"$D/usr/bin\" && exec ./2s2h.elf \"$@\"" ], "prereleases": true, "mode": "game", "icon_url": "https://raw.githubusercontent.com/Cogential/2ship2harkinian-frame/claude/focused-brahmagupta-sylmhh/mm/linux/2s2hIcon.png" }, { "id": "starship", "name": "Star Fox 64 (Starship)", "repo": "Cogential/Starship-frame", "asset": "starship-steam-frame-arm64.zip", "type": "zip", "gameid": "Star_Fox_64_Starship", "launch": "run.sh", "keep": [ "*.z64", "*.n64", "*.v64" ], "data": "~/.local/share/starship", "rom_hint": "Send your Star Fox 64 ROM (US) with Frame Inbox, or put a .z64 in ~/.local/share/starship.", "prereleases": true, "mode": "game", "icon_url": "https://raw.githubusercontent.com/Cogential/Starship-frame/steam-frame/logo.png" }, { "id": "halo", "name": "Halo: Combat Evolved (OpenCE)", "repo": "Cogential/OpenCE-frame", "asset": "halo-steam-frame-arm64.zip", "type": "zip", "gameid": "Halo_CE", "launch": "run.sh", "keep": [ "*.iso", "*.xiso" ], "data": "~/.local/share/halo-ce", "rom_hint": "Needs your Halo: Combat Evolved Xbox disc image: put the .iso in ~/.local/share/halo-ce (or send it with Frame Inbox) and the first start copies its maps out.", "prereleases": true, "mode": "game", "icon_url": "https://raw.githubusercontent.com/Cogential/OpenCE-frame/steam-frame/port/android/art/android-icon.png" }, { "id": "banjo", "name": "Banjo-Kazooie (Lighthouse)", "repo": "Cogential/Lighthouse", "asset": "lighthouse-steam-frame-arm64.zip", "type": "zip", "gameid": "Banjo_Kazooie", "launch": "run.sh", "keep": [ "*.z64" ], "data": "~/.local/share/Lighthouse", "rom_hint": "Send your Banjo-Kazooie ROM (US) with Frame Inbox, or put a .z64 in ~/.local/share/Lighthouse.", "icon_url": "https://raw.githubusercontent.com/Cogential/Lighthouse/android/logo.png", "prereleases": true, "mode": "game" }, { "id": "frametanium", "name": "Frametanium", "repo": "Cogential/frametanium", "asset": "frametanium-steam-frame-arm64.tar.gz", "type": "tar", "prereleases": false, "mode": "installer", "description": "This app. Updating it reinstalls the service and the headset app, then restarts the service." } ]