Releases: chrissotraidis/bananapad
Release list
BananaPad v0.1.0-preview.3
BananaPad v0.1.0-preview.3
Developer Preview 3 is a focused response to the physical-iPhone feedback on
Issue #2. It remains a ROM-free unsigned arm64 IPA for iOS and iPadOS 15 or
newer and includes the Preview 2 audio correction.
Assets
BananaPad-v0.1.0-preview.3-unsigned.ipaBananaPad-v0.1.0-preview.3-unsigned.ipa.sha256- SHA-256:
ad8efa113b34d3cb80ca330a9fbb8a67297245b6b5ad78f7e0af9aeb48cd882f - Size: 7,479,560 bytes
- App executable SHA-256:
8d7085f3082ab0647257bd5d2ea785fd47002c6b8d00e111727f7bd6b6e59e40 - Product-source SHA-256:
b4b4fc8dec848055b84ca265094db13be96feaaaaf9a5a4c022062737ce04b1e
The IPA is unsigned and must be re-signed with the user's own Apple Account.
It does not include Donkey Kong 64, a ROM, extracted assets, generated private
inputs, saves, logs, a provisioning profile, or signing material. BananaPad
does not require JIT.
Z-lock timing adjustment
- Engaging Z lock now takes 0.75 seconds instead of one second.
- Releasing an active Z lock now takes 0.35 seconds, making it deliberately
faster than engagement in response to the reporter's feedback. - The default-on Settings switch, visible locked state, light haptic, normal
short taps, and safety clearing behavior are unchanged.
Verification
The adjusted timing and state selection pass the touch-input contract. The
device and Simulator targets compile as build 3. The device app passes the
arm64 iPhoneOS, iOS 15, both-device-family, privacy, ROM/save/private-data,
signing-residue, personal-path, system-dependency, and no-dynamic-code audits.
Two independent deterministic package runs are byte-for-byte identical, and
ZIP integrity passes.
Retest requested
Please test both directions on a physical iPhone: hold Z for 0.75 seconds to
lock it, then hold it for 0.35 seconds to release it. Issue #2 remains open
until the reporter confirms that both timings feel right.
BananaPad v0.1.0-preview.2
BananaPad v0.1.0-preview.2
Developer Preview 2 is a focused iPhone and iPad update for the two issues
reported against Preview 1. It remains a ROM-free unsigned arm64 IPA for iOS
and iPadOS 15 or newer.
Assets
BananaPad-v0.1.0-preview.2-unsigned.ipaBananaPad-v0.1.0-preview.2-unsigned.ipa.sha256- SHA-256:
2ab9265e0a9eb980c5be85cea829bec98c38a790e022b47361c8c9e60ad7c762 - Size: 7,479,552 bytes
- App executable SHA-256:
4849f0d5bcfc1e43ad5ad53452f28c4ef1b0e1b3f0206cc32bd81d98fd912689 - Product-source SHA-256:
e0cf86eca3f0113716b25055d991df31a4b8234181a45270a08a09b60ff8e400
The IPA is unsigned and must be re-signed with the user's own Apple Account.
It does not include Donkey Kong 64, a ROM, extracted assets, generated private
inputs, saves, logs, a provisioning profile, or signing material. BananaPad
does not require JIT.
Fixes
- Added a default-on touch Z lock. Hold Z continuously for one second to lock
it; hold it again for one second to unlock it. The locked button remains
visibly pressed and provides light haptic feedback. - Added Hold Z to Lock under the three-dot menu's Settings sheet. Turning
the setting off restores momentary-only Z behavior. - Corrected the inherited audio queue-duration calculation to use the actual
output device rate. The exercised DK64 path supplies 22.05 kHz audio while
iOS outputs at 48 kHz; the old mismatch could trigger sample dropping at
about 45.94 ms of real queued output instead of the intended 100 ms. - Added bounded audio diagnostics for the requested/obtained format, queue
depth, starvation, submission gaps, sample dropping, block boundaries, and
conversion or queue errors.
Verification
The device app passed the arm64 iPhoneOS, iOS 15, both-device-family, privacy,
ROM/save/private-data, signing-residue, personal-path, system-dependency, and
no-dynamic-code audits. Two independent deterministic package runs were
byte-for-byte identical, and ZIP integrity passed.
An extended Simulator run before the release-number-only rebuild observed 81
two-second audio windows with no sample dropping, no conversion/queue errors,
and no sustained queue starvation. Every window crossed the old effective
45.94 ms threshold, providing direct evidence that the prior calculation could
damage otherwise normal buffering.
Retest requested
The Z-lock gesture and the audio fix still need reporter confirmation on a
physical iPhone. If an audible pop remains, reproduce it and immediately use
••• → Share Diagnostics & Logs… so the new audio telemetry can identify the
next failure mode. Review the report before attaching it, and never share ROMs,
saves, signing files, or other private data.
BananaPad v0.1.0-preview.1
BananaPad v0.1.0-preview.1
Developer Preview 1 is the first public ROM-free unsigned BananaPad IPA for
arm64 iPhone and iPad devices running iOS or iPadOS 15 or newer.
Assets
BananaPad-v0.1.0-preview.1-unsigned.ipaBananaPad-v0.1.0-preview.1-unsigned.ipa.sha256- SHA-256:
a7f3a7a280770644bb175553c2d70c5af032959fd1e425d89b164f721b53d55e - Size: 7,479,430 bytes
- App executable SHA-256:
ee876b51aec617563963ee898c6ec36f87a3dffbfc10c2dc2636182c8a7a0442 - Source rollup commit:
0d509886adc9b2c3b46b8343542d89eeaa383fa5
The IPA is unsigned and must be re-signed with the user's own Apple Account.
It does not include Donkey Kong 64, a ROM, extracted assets, generated private
inputs, saves, logs, a provisioning profile, or signing material. BananaPad
does not require JIT.
Highlights
- Native Metal rendering on Apple Silicon.
- Customizable independent-finger iPhone and iPad touch controls.
- Persistent BananaPad three-dot menu, settings, diagnostics, and private ROM
management. - Physical-controller support, including the iPadOS Xbox A/Start duplication
repair in the pinned SDL2 integration. - CRC-checked private save-slot import tooling for local capture preparation;
no save files are distributed. - Scripted, isolated DK64Recompiled update staging and recoverable rollback.
Verification
Two independent deterministic package runs matched byte-for-byte. The exact
candidate passed ZIP integrity, complete notice/license/install/rights content,
arm64 iPhoneOS 15 metadata, both iPhone/iPad family declarations, privacy,
system-only runtime dependency, no-dynamic-code, ROM/save/private-data, signing,
credential, and personal-build-path audits.
Preview limits
The signed development build installs, launches, renders DK64, and preserves
the private ROM/save/settings on the tested physical iPad. Broader controller
reconnect, audio interruption/route, memory-pressure, sustained-operation, and
physical-iPhone acceptance remain preview work. Build/install proof is not a
claim that every hardware route has completed acceptance.