Skip to content

Releases: Kenny417/iPodClickWheelRecomps

Mini Golf from the iPod, running on Android and Linux.

Choose a tag to compare

@Kenny417 Kenny417 released this 06 Sep 01:12

What's new in 0.2.0

  • Android. An APK for arm64 handhelds — Retroid, Odin, anything with a physical gamepad should work.
  • Background music on Android. The .m4a tracks decode through the device's own MediaCodec, so the music plays as it does on macOS and Windows.
  • Linux. A native build, packaged for the first time. Not really the point of this fork but I'm including it anyway.
  • The game no longer closes itself after four idle minutes. The iPod put a game away so the device could sleep, and the port was faithfully doing the same — which on a desktop or a handheld meant the window vanishing and taking an unfinished round with it. This may have been included in the 0.1.0 build but I didn't document it in that release.

Which to download

minigolf-0.2.0-android.zip Android 5.0+, arm64 only
minigolf-0.2.0-linux-x86_64.zip needs glibc 2.38 or newer (ldd --version)
ipod-recomps-0.2.0-source.tar.gz the source, see "Building" below

Pre-reqs

You need to provide a decrypted copy of the iPod Mini Golf game files. There are two copies floating around the internet that I found — make sure to grab the decrypted one, even though there's a note in that readme telling you to get the game from a different repo.

The one you might find on a popular archive site for the Internet has a file extension of .ipg, which is really a zip. If yours starts with the four bytes eapp inside Executables/, it's the decrypted one; if it looks like random noise, it isn't and the game will tell you so rather than misbehave.

Nothing in this download contains copyrighted game data, and nothing here will work without it.

Install — Android

  1. Install/sideload the apk however you like, or adb install minigolf.apk.
  2. Rename Mini Golf.ipg to .zip and extract it. You should have a folder called Mini Golf now.
  3. Copy that folder to "/sdcard/Android/data/org.ipodrecomp.minigolf/files/Mini Golf" or the contents of it to /sdcard/Android/data/org.ipodrecomp.minigolf/files/88888. Cx File Explorer should be able to reach that folder but the default Files app on your device probably cannot.

If anything is missing you'll see an error message with the path — and if the files are there but damaged it says which one and why, rather than just "not found".

You can do all of the above on the device. If you'd rather use a computer, you can use adb to push the files:

adb push "Mini Golf" /data/local/tmp/
adb shell "mkdir -p /sdcard/Android/data/org.ipodrecomp.minigolf/files"
adb shell "cp -r '/data/local/tmp/Mini Golf' /sdcard/Android/data/org.ipodrecomp.minigolf/files/"
adb shell "rm -rf '/data/local/tmp/Mini Golf'"

The detour through /data/local/tmp is because with Android 11 adb push often can't write into Android/data directly.

Android may warn you about installing this because it's signed with a debug key, which is the same warning any self-signed app gets. If you've installed an older copy signed with a different key, uninstall it first.

Install — Linux

Simpler: you don't have to rename or extract anything.

  1. sudo dnf install SDL3 zlib-ng-compat (Fedora) or sudo apt install libsdl3-0 zlib1g (Debian/Ubuntu). The program takes these from your system rather than carrying them.
  2. chmod +x minigolf && ./minigolf
  3. The first run asks for the game with a file browser. Rename your .ipg to .zip so the picker will show it, and hand it over as-is — it finds the game's files inside whatever they're wrapped in and puts them where they belong.

Or skip the browser entirely, with any filename:

./minigolf --install-zip="Mini Golf.ipg"

Either way the files land in ~/.local/share/ipod-mini-golf/88888, and your saves go beside them.

Controls

Keyboard Gamepad
Turn the wheel arrow keys D-pad, or the left stick
Select Space A
Menu Escape B

Fullscreen is F or F11. On a handheld the D-pad and A/B are all you need. Holding B leaves the game, as holding Menu left it on the iPod.
Use the left and right dpad buttons to navigate menus. This emulates the click wheel behavior from the iPod. We don't have up and down dpad buttons configured for menus yet.

Known limitations

  • Linux and Android have no settings window. That one is a Cocoa window on macOS and a Win32 one on Windows, and nobody has written a third. The in-game Options and Cheats screens work everywhere, and so do saved settings.
  • No background music on Linux. The .m4a tracks need a decoder, and unlike macOS, Windows and Android there's no obvious system one to borrow. Sound effects work though.
  • Android spells names on the wheel, not with the on-screen keyboard — that keyboard would cover half the game.
  • Android is arm64 only. No x86 Android, no 32-bit ARM.

Building from source

The source tarball builds Mini Golf and nothing else. The other five titles in the tree compile machine-translated code that isn't in the repository and never will be — it's generated on your own machine from your own copy of each game, by tools/funcs.py and tools/emit.py. Mini Golf needs neither: its game logic is hand-written C++ all the way down.

  • Linux: cmake -B build && cmake --build build
  • Android: Mini Golf/android/README.md walks through it from an empty machine — the NDK, the SDK's build-tools and SDL's Android release are the three downloads, and there's no Gradle and no JDK involved.

Checksums

SHA256SUMS is attached.

iPod Mini Golf for Android

Pre-release

Choose a tag to compare

@Kenny417 Kenny417 released this 04 Sep 07:18

Pre-reqs

You need to provide a decrypted version of the iPod Mini Golf game. The folder should be named 88888. If you have a different one, it won't work. There are two copies floating around the internet that I found. Make sure to grab the decrypted one, even though there's a note in that readme that tells you to get the game from a different repo.

The one you might find on a popular archive site for the Internet has a file extension of .ipg which can be renamed to .zip and extracted. Rename the Mini Golf folder to 88888.

Install Instructions

  1. Install/sideload apk however you like, or adb install minigolf.apk.
  2. Copy the game data folder to: /sdcard/Android/data/org.ipodrecomp.minigolf/files/88888 — CX File Explorer can access that folder.

If anything is missing you'll see an error message, with the path — and if the files are there but damaged it says which one and why, rather than just "not found".

You can do all of the above on your device but if you prefer to do it from a command line on a computer, here you go:

Since Android 11, adb push often can't write into Android/data directly. If it refuses:

adb push 88888 /data/local/tmp/ (or some other location)
adb shell "mkdir -p /sdcard/Android/data/org.ipodrecomp.minigolf/files"
adb shell "cp -r /data/local/tmp/88888 /sdcard/Android/data/org.ipodrecomp.minigolf/files/"
adb shell "rm -rf /data/local/tmp/88888"

A file manager on the device works too, if it can reach Android/data.