Repository navigation
Releases
Anka Native 0.2.2
Security fix
- The launcher no longer takes control commands from other apps (#7).
- Before this release, any app on the phone could ask Anka Native's launcher to install or pick a GPU driver, add a game, start Prepare, or export or import a pack. These are commands meant for testing over adb.
- The app now ignores them and shows a short message, unless you turn on Settings › ADB control (debug). That switch is off by default and asks before it turns on. Turn it on only while you use adb.
- Starting a game from a frontend works as before.
Everything else is as in 0.2.1. The full list of changes is in CHANGELOG_ANKA_NATIVE.md.
Files
anka-native-0.2.2.apk: the app (dev.ankanative.android), signed with the release key. Certificate SHA-256:4d7443354f53a0aef11bc4df1a34ff3fc5bd6d748bbeb76fd78c80a6841f3bb0. It installs over earlier versions and keeps your saves.SHA256SUMS.txt: checksum of the APK
Anka Native 0.2.1
Fixes
-
Prepare on the phone stopped at the end for Ocarina of Time (#3): "76 of 42346 shaders did not build: no library written".
The same 76 shaders don't build on a computer either, and the game runs without them. Ocarina of Time's profile was missing the list that tells the phone which shaders those are, so the phone counted them as failures. 0.2.1 adds the list.
Checked on a computer with the phone's rule: the library is now written, byte for byte the one a computer makes.
If your Prepare stopped with this message: update to 0.2.1, open the game's card and tap Retry. The shaders already translated are kept, so it only tries the 76 again and then writes the library.
New
- Prepare on a computer on Windows too, besides Linux and the Mac. Setup: android/README.md.
- Discussions are open. Tell us how it runs on your phone in the device reports thread.
The full list of changes is in CHANGELOG_ANKA_NATIVE.md.
Files
anka-native-0.2.1.apk: the app (dev.ankanative.android), signed with the release key. Certificate SHA-256:4d7443354f53a0aef11bc4df1a34ff3fc5bd6d748bbeb76fd78c80a6841f3bb0. It installs over 0.1.x and 0.2.0 and keeps your saves.SHA256SUMS.txt: checksum of the APK
Anka Native 0.2.0
Prepare on the phone (experimental). The app can now make a game's pack from your dump on the phone itself. You no longer need a computer.
How
Copy your dump (or .nup) to the phone, open Anka Native, tap Add game, pick the dump and tap Prepare. The app does three things in the background, with a notification:
- It rewrites the game's code.
- It scans the game's files for shaders.
- It translates the shaders.
When it is done, the game's card says Ready.
- Keep the phone on a charger. For Ocarina of Time, preparing takes about 3 hours and uses the CPU fully.
- If a step fails, the card says why. Its log is in
<title ID>-work/ondevice/logsnext to the dump. Preparing on a computer still works as before.
What was tested
On a POCO F8 Pro with Ocarina of Time:
- Code rewrite: worked, about 3 minutes.
- Shader scan: worked, about 35 minutes for the game's 186,583 files. It found 42,346 shaders, as many as on a computer.
- Shader translation: works. The first 700 shaders were translated with no errors, at about 5 shaders a second, so all 42,346 take about 2 to 2.5 hours. The finished library and starting the game from it are still being tested.
Also in this release
- The code rewrite and the shader scan now show progress from the start. Before, they sat at 0 for minutes.
- The packer can read the zstd-compressed code of newer games such as Ocarina of Time.
Everything else is as in 0.1.0:
- You need your own dump.
- The driver is Anka Turnip 1.0.0.
- The RAM saver is recommended below 16 GB of RAM.
Files
anka-native-0.2.0.apk: the app (dev.ankanative.android), 25 MB with the packer, signed with the release key. Certificate SHA-256:4d7443354f53a0aef11bc4df1a34ff3fc5bd6d748bbeb76fd78c80a6841f3bb0. It installs over 0.1.x and keeps your saves.SHA256SUMS.txt: checksum of the APK
Anka Native 0.1.1
A fix for 0.1.0: Prepare on the phone looked done but made nothing to play.
0.1.0 was built without the on-phone packer. Its Prepare ran a simulated engine: the progress finished, but the pack it made was an empty placeholder with no game code and no shaders, so Play could not start the game.
What changed
- Without the on-phone packer, the app no longer offers Prepare. Home and the game's card now say to prepare the game on a computer (the README's Install steps) and to pick that pack.
- A placeholder pack left by 0.1.0 is no longer shown as ready: the card says "No pack", and Play explains why.
Preparing on the phone itself is being worked on for a later release.
Everything else is as in 0.1.0: your own dump is needed, the driver is Anka Turnip 1.0.0, and the RAM saver is recommended below 16 GB of RAM. Tested only on a POCO F8 Pro with Ocarina of Time.
Files
anka-native-0.1.1.apk: the app (dev.ankanative.android), signed with the release key. Certificate SHA-256:4d7443354f53a0aef11bc4df1a34ff3fc5bd6d748bbeb76fd78c80a6841f3bb0. It installs over 0.1.0 and keeps its saves.SHA256SUMS.txt: checksum of the APK
Anka Native 0.1.0
Note: Prepare on the phone does not work in 0.1.0: it finishes, but the pack it makes is an empty placeholder, so Play cannot start the game. Prepare the game on a computer as the README says, or update to 0.1.1, which says so in the app.
The first release of Anka Native: The Legend of Zelda: Ocarina of Time (the Switch 2 remake, 0400486024DEC000, update v131072) running natively on Android.
Before you start
- You need your own dump of a game you own. This release has no game files, keys or shader library in it.
- Prepare the game once on a computer (Linux or Mac):
scripts/pack_android.pyrewrites the game code and builds the shader library into a pack, as the README explains. A library built from this source has the versionv-0dd4341ae6ce. - Install the driver: Anka Turnip 1.0.0.
- Less than 16 GB of RAM? Turn the RAM saver on: the game's ⋯ › Game settings › RAM saver. It moves the large texture pools into a file in the app's cache folder, which writes about 2 GB to storage each time an area loads.
What was tested
Tested only on a POCO F8 Pro (Adreno 830, 12 GB of RAM) with Anka Turnip and Ocarina of Time. In that test:
- the game booted, loaded the forest and stayed playable for over 18 minutes;
- saving from the pause menu worked;
- game speed held up when the frame rate dropped;
- there were no stalls while walking;
- frame rate at the spawn point was 12–17 fps.
Donkey Kong Bananza and Mario Kart World were not tested again after these changes.
Known issues
- Low internal resolution (683×384) and shimmering. The anti-aliasing pass runs but has no visible effect yet.
- Some leaves render black (mesh shaders).
- Low frame rate: playable, but not smooth.
Files
anka-native-0.1.0.apk: the app (dev.ankanative.android), signed with the release key. Certificate SHA-256:4d7443354f53a0aef11bc4df1a34ff3fc5bd6d748bbeb76fd78c80a6841f3bb0SHA256SUMS.txt: checksum of the APK
The full list of changes is in CHANGELOG_ANKA_NATIVE.md.