top of page

AI-Assisted Native Ocarina of Time Port Brings Zelda to iOS Without Emulation

OpenAI helped a solo developer move a 1998 Nintendo classic onto iOS without emulation, according to a July 29 report. The unusual OpenAI Tom search phrase now points toward HarkinianPad, a native Ocarina of Time source port built with Codex and GPT-5.6 Sol.

Developer Chris “Kahris” Sotraidis adapted Ship of Harkinian for Apple devices, giving the existing community project an Arm64 application and Metal-based rendering path. His build adds touch controls and supports keyboards, pointing devices, and compatible game controllers.

The result challenges the usual route for running Nintendo 64 games on an iPhone or iPad. However, it does not remove every barrier. Users need their own supported game ROM, an Apple signing method, and enough technical confidence to install an unsigned developer preview.

HarkinianPad also remains unofficial. Nintendo has not endorsed it, and no App Store listing or public TestFlight release exists. That contrast defines the story: AI reduced part of the engineering burden, while distribution, licensing, testing, and ownership remain human problems.

HarkinianPad turns a community port into a native iOS application

The central change is not that an iPhone can run Ocarina of Time. It is that this version runs as an iOS source port instead of a Nintendo 64 emulator.

Emulation recreates the behavior of another hardware system in software. A source port takes reconstructed or available source code, compiles it for a new platform, and connects it to that platform’s native services.

HarkinianPad follows the second route. It packages the Ship of Harkinian codebase as an Arm64 application for iOS and iPadOS 14 or later. Arm64 is the processor instruction architecture used by modern Apple mobile hardware.

According to the project’s native iOS build, graphics pass through Metal, Apple’s low-level graphics API. The application imports a supported Ocarina of Time ROM through the Files app and creates its playable data archive locally.

That design separates the application code from Nintendo’s protected game data. The repository does not contain a ROM, playable Nintendo assets, or a ROM-derived archive. The user must supply a legally acquired, compatible copy.

The underlying journey began long before GPT-5.6 Sol entered the picture. The Zelda Reverse Engineering Team reconstructed Ocarina of Time’s program code in C. That work enabled Harbour Masters to build Ship of Harkinian for several platforms.

Ship of Harkinian already ran on Windows, Linux, macOS, Android, Nintendo Switch, and Wii U. HarkinianPad extends that work to Apple’s mobile operating systems rather than recreating the whole game independently.

That distinction matters when evaluating the AI contribution. Codex did not receive an original Nintendo 64 cartridge and spontaneously generate an iPhone game. Sotraidis started with years of reverse engineering and community-maintained source-port work.

The developer then used Codex with GPT-5.6 Sol to help adapt that foundation. According to the initial native Zelda report, the agent assisted with rebuilding the code for Arm64 and connecting rendering to Metal.

That is still substantial integration work. Desktop assumptions can appear throughout a mature C and C++ codebase. A mobile port must handle application lifecycle changes, touch input, file storage, screen geometry, signing, and device-specific graphics behavior.

HarkinianPad’s current interface provides a landscape touch controller. It includes the control stick, directional pad, shoulder buttons, Start, A, B, Z, and four C buttons.

The touch overlay can be hidden when someone connects a physical controller. A persistent menu button remains visible, allowing users to restore the overlay or adjust settings during play.

The project also supports keyboard and mouse or trackpad input paths inherited through its software stack. However, the repository describes a physical controller as preferable for full analog precision.

Its virtual stick currently uses eight-way input. That approach covers ordinary movement, but it cannot reproduce every subtle position available from the Nintendo 64 controller’s analog stick.

The developer says save creation, save loading, settings, file import, and in-place application updates have worked on tested hardware. Metal rendering has also run in both the simulator and a physical iPad build.

These details make HarkinianPad more than a static technical demonstration. A downloadable developer-preview IPA exists, and the repository contains reproducible build and packaging scripts.

An IPA is the package format used for iPhone and iPad applications. This preview is unsigned, so it lacks the certificate and provisioning information needed for direct installation.

Users must re-sign the package with their own Apple ID through a compatible sideloading process. Alternatively, developers can clone the project, compile it with Xcode, and sign their own build.

That gap between a working application and a consumer-ready release drives the next question. HarkinianPad proves a native route exists, but it does not yet make that route convenient for an ordinary iPhone owner.

Why the OpenAI Tom story matters beyond retro gaming

HarkinianPad illustrates where coding agents can compress platform-porting work without replacing the expertise embedded in an established codebase.

OpenAI describes GPT-5.6 Sol as its flagship model for complex professional work. The model is available through Codex, ChatGPT, and the API, although access varies by product and account.

The company’s GPT-5.6 overview emphasizes longer workflows, software engineering, tool use, and computer interaction. OpenAI also reports improved results across several coding and terminal-based evaluations.

Those benchmark results do not independently validate HarkinianPad. They establish the intended product context: GPT-5.6 Sol is designed to work across repositories, tools, tests, and extended implementation tasks.

A platform port fits that pattern better than a small coding demonstration. The agent must navigate build systems, dependencies, rendering code, input mappings, packaging scripts, and device constraints.

The project also exposes an important limit. Source availability largely determined what the AI could accomplish.

Ocarina of Time’s reconstructed C source and Ship of Harkinian’s mature implementation supplied a detailed map of the game. Without that foundation, an agent would face a much harder reverse-engineering problem with serious legal and technical complications.

Therefore, the real productivity gain comes from combining an agent with accumulated human work. The AI can inspect and modify a large body of code, while the developer defines the target and tests its behavior.

This pattern matters to engineers outside gaming. Companies often have mature desktop software, internal tools, or libraries that never reached mobile because the adaptation cost seemed unjustified.

A coding agent can help identify platform-specific assumptions and propose replacements. It can update build scripts, generate project files, refactor incompatible components, and document installation paths.

However, the developer still needs to decide whether those changes preserve the application’s behavior. A successful compile is only one stage of porting.

Graphics must render correctly across devices. Controls need acceptable latency and ergonomics. Files must survive updates. Audio must recover after interruptions, and backgrounding must not corrupt application state.

These validation tasks become more important when an agent produces changes quickly. Faster code generation can increase the amount of code awaiting review, device testing, and maintenance.

The OpenAI Tom keyword also creates a misleading first impression because “Tom” is not the developer or an OpenAI product. It reflects the source publication, Tom’s Hardware, rather than a new model named Tom.

The actual participants are Sotraidis, OpenAI’s Codex environment, GPT-5.6 Sol, and the communities behind the decompilation and source port. Keeping those roles separate prevents the story from becoming an unsupported claim that AI created Ocarina of Time.

It also gives credit to the less visible infrastructure. Reverse engineers reconstructed program behavior. Harbour Masters turned that work into a portable application. Dependency maintainers supplied graphics, audio, input, and file-handling components.

Sotraidis then brought those layers into Apple’s mobile environment with agent assistance. The project is best understood as the newest link in a long technical chain.

For knowledge workers, the broader lesson concerns context quality. An agent performs better when it can inspect reliable code, requirements, issue histories, and validation results.

Teams considering similar projects need organized local material, not just a broad prompt. A searchable engineering knowledge base can help preserve build decisions, test evidence, and unresolved platform constraints.

HarkinianPad’s repository demonstrates that discipline. It includes build instructions, a release checklist, safety checks, a record of remaining work, and a defined boundary around copyrighted data.

Those materials make the project easier for both humans and agents to reason about. They also create a trail that future contributors can inspect when a dependency changes or a device behaves differently.

This is why the port puts pressure on traditional estimates for adapting community software. An iOS target that once looked too labor-intensive for one contributor now has a functioning preview.

The pressure does not fall on emulator developers alone. It reaches maintainers, companies with neglected ports, and teams carrying platform-specific backlogs.

If agents can reduce integration time, users will ask why capable software remains unavailable on their preferred hardware. Maintainers will need clearer answers about testing, support, rights, and long-term ownership.

OpenAI Tom coverage can obscure the real mechanism

The mechanism is AI-assisted integration, not automated game creation or a direct conversion from Nintendo 64 machine code.

The phrase “AI ported Zelda to iOS” compresses several distinct engineering stages. That shorthand attracts attention, but it makes the result harder to evaluate.

First, the Zelda Reverse Engineering Team produced a matching decompilation. Decompilation reconstructs higher-level source from compiled software through analysis, rather than obtaining the original developer’s source repository.

Second, Harbour Masters used the reconstructed code to create Ship of Harkinian. That source port added modern platform support and separated redistributable application code from the game assets users must provide.

Third, Sotraidis targeted iOS and iPadOS. This stage involved building for Arm64, creating an Apple-compatible application package, connecting rendering to Metal, adapting file import, and adding touch controls.

Fourth, Codex helped carry out changes inside that prepared environment. The public reporting attributes the iOS adaptation to Codex and GPT-5.6 Sol, but it does not provide a complete prompt transcript or audited breakdown of every AI-generated change.

That missing breakdown does not invalidate the project. It means readers should avoid assigning a precise percentage of the work to the model.

Public repositories show the resulting code and documentation, not every decision behind them. A developer can accept, rewrite, reject, or combine an agent’s suggestions throughout a session.

The distinction matters because coding agents operate through iteration. They inspect files, make changes, run commands, observe failures, and revise their approach.

A model’s contribution can include analysis, patches, build troubleshooting, or documentation. It can also introduce errors that the developer later corrects.

HarkinianPad therefore offers evidence of an AI-assisted outcome, not a controlled productivity experiment. There is no published comparison showing how long the same developer needed without Codex.

There is also no independent audit establishing which defects came from the upstream project, the mobile integration, or agent-generated modifications. Those questions would require commit-level review and repeated testing.

Still, the completed architecture suggests why an agent was useful. Porting involves many connected but individually bounded tasks.

A build system must target the correct SDK and architecture. Libraries must compile under Apple’s toolchain. Graphics commands must reach a supported backend. Input events must map to existing game actions.

The application also needs access to user-supplied files without shipping those files itself. HarkinianPad exposes a Files-visible folder, scans for a supported ROM, and creates the required archive inside its sandboxed application container.

A sandboxed container is the private storage area iOS assigns to an application. Keeping the ROM-derived output there reduces the risk of accidentally including game data in a public package.

The project’s scripts also audit packages for prohibited assets. They reject original ROMs, derived gameplay archives, simulator products, and stale signing information before publication.

That safety work shows another role for an agent: it can help encode release rules into repeatable scripts. Such checks are usually more dependable than relying on a contributor to remember every manual step.

However, generated checks still require review. A script that looks for the wrong filename pattern can provide false confidence while allowing sensitive material through.

The same concern applies to graphics and gameplay. A successful Metal frame does not prove every scene, effect, menu, or transition works correctly.

Apple’s Metal framework gives applications direct access to the graphics processor. It can support efficient native rendering, but developers must still verify behavior across supported devices and operating-system versions.

HarkinianPad’s documented physical testing centers on a 12.9-inch sixth-generation iPad Pro running iPadOS 26.5.2. That is meaningful evidence, but it is not a complete iPhone and iPad compatibility matrix.

The repository says iPhone is included in the build. It does not claim that every iPhone layout, thermal profile, controller combination, and interruption case has passed testing.

This difference separates “runs on iOS” from “ready for broad iOS distribution.” The first claim has direct project evidence. The second remains premature.

The mechanism is nevertheless notable. Coding agents can help move an established codebase across a platform boundary where the target APIs and build tools are documented.

That is a narrower claim than autonomous software creation, but it is also more useful. Many real engineering backlogs consist of exactly this integration work.

The native Zelda port still faces distribution and legal limits

HarkinianPad removes the emulator layer, but it does not remove Apple’s signing system, Nintendo’s rights, or the burden of device testing.

The easiest mistake is to treat the GitHub release like an App Store application. It is not one.

The current download is an unsigned developer-preview IPA. Users must re-sign it with their own Apple ID and install it through a sideloading workflow.

No public TestFlight exists. TestFlight is Apple’s managed beta-distribution service, and it still requires a developer to prepare builds within Apple’s system.

The project also says App Store, TestFlight, AltStore PAL, and SideStore distribution are separate efforts. Each route brings its own account, review, signing, and regional requirements.

That means an interested player needs more than an iPhone and a search result. The installation process demands unfamiliar tools and trust in a preview package.

Building locally requires even more. The documented workflow calls for a Mac, Xcode, command-line tools, dependencies, an Apple ID configured for signing, and a compatible ROM.

The ROM requirement creates another significant boundary. HarkinianPad does not include Ocarina of Time, and it does not provide a download source.

Users must supply a legally acquired supported ROM. The software then extracts the assets it needs within the device’s application container.

This bring-your-own-data model has precedent among source ports. It allows maintainers to distribute their own code without packaging Nintendo’s graphics, music, dialogue, and other game content.

It does not guarantee freedom from legal disputes. Copyright owners can challenge projects for several reasons, and Nintendo has historically defended its games and trademarks.

HarkinianPad’s maintainers explicitly describe the project as unofficial and unaffiliated with Nintendo or Harbour Masters. They also state that the repository does not relicense upstream components or game material.

The repository introduces a further licensing caution. Its components retain their respective licenses, while the pinned Shipwright tree and HarkinianPad currently lack one comprehensive top-level project license.

Therefore, describing the complete project as freely redistributable open source would overstate the published position. The source is publicly visible, but redistribution rights depend on the licenses covering each component.

That complexity matters for anyone considering a packaged storefront release. A distributor needs confidence about every dependency, patch, asset boundary, and applicable license.

Technical readiness presents a separate challenge. The developer has exercised gameplay, save loading, settings, file import, and updates on physical iPad hardware.

Audio has reportedly worked through the device speaker during repeated sessions. Headphones, Bluetooth audio, and recovery after interruptions still need broader checks.

Controller code is present, but reconnect behavior, rumble, and motion support require model-specific verification. Touch input works, although the virtual stick currently provides eight-way movement instead of full analog precision.

Those are normal preview-stage limitations. They become serious only when coverage treats the application as a finished consumer product.

Performance claims require similar caution. The report describes full-resolution widescreen output and gameplay at 60 frames per second, compared with the original game’s lower frame rate.

Those enhancements come from the source-port lineage and modern hardware, not simply from replacing emulation with AI-generated code. Ship of Harkinian already supplied modern rendering and gameplay options on other platforms.

A native build can reduce translation overhead and connect directly to platform APIs. Yet an emulator can also perform well on current Apple hardware, depending on the emulator and game.

The primary conflict is therefore not native performance versus unusable emulation. It is native source integration versus the broader compatibility and convenience of a general emulator.

An emulator can run many titles once its virtual hardware works. HarkinianPad supports one game because it contains game-specific reconstructed logic.

That focus allows deeper enhancements, platform integration, and mod support. It also means Majora’s Mask cannot be substituted, despite its close relationship to Ocarina of Time.

A separate source-port effort would be needed for that title. This reveals the scalability tradeoff behind native preservation projects.

AI can reduce the labor required for each port. It does not automatically turn a game-specific codebase into a general solution for an entire console library.

The biggest uncertainty is not whether the preview launches. It is whether contributors can sustain testing, upstream synchronization, signing guidance, and user support after the first wave of attention.

A mature mobile application needs repeated maintenance as iOS, Xcode, dependencies, and upstream Ship of Harkinian code change. Generated patches can accelerate updates, but someone must still own the results.

What to watch after the native Ocarina of Time preview

Three signals will determine whether HarkinianPad becomes a durable port or remains an impressive developer demonstration.

The first signal is a broader physical-device test matrix. The project currently documents successful use on a recent 12.9-inch iPad Pro, along with simulator support.

Evidence from several iPhone sizes, older supported devices, and additional iPads would strengthen the claim that this is a practical universal application. Thermal behavior and sustained performance also deserve attention.

Audio tests should cover wired or USB accessories where applicable, Bluetooth devices, calls, alarms, and background interruptions. Controller testing should include reconnection, rumble, motion data, and several common models.

If contributors publish reproducible results across those combinations, the project’s native-iOS claim will become more meaningful. Persistent device-specific defects would weaken the case for broad adoption.

The second signal is a less technical distribution route. A public TestFlight, approved storefront listing, or maintained alternative-store package would reduce the installation barrier.

No such release has been announced. Apple review and licensing questions can remain difficult even when the program itself works correctly.

An easier distribution route would show that AI-assisted porting can move beyond repository-level engineering. Continued dependence on personal re-signing would keep HarkinianPad within an enthusiast audience.

The third signal is maintenance after upstream changes. Ship of Harkinian will continue evolving, and Apple will update its SDKs and operating systems.

HarkinianPad uses pinned upstream source and maintained iOS patches. That structure makes builds reproducible, but every major upstream change can create integration work.

Watch whether the developer can update those pins, replay the patches, and preserve ROM-free packaging without extended breakage. A healthy contributor community would make that work less dependent on one person.

This is also where Codex faces its most meaningful test. Producing the first working build attracts attention, while maintaining it across changing dependencies determines lasting value.

If GPT-5.6 Sol helps the developer repeatedly diagnose regressions, adapt APIs, and expand tests, the project will support a stronger claim about long-running AI engineering.

If maintenance stalls, HarkinianPad will still remain an interesting proof of concept. It simply will not demonstrate that agent-assisted ports are sustainable.

The OpenAI Tom search trend has surfaced a compelling result, but the headline needs careful boundaries. Codex helped a developer extend a mature community source port to Apple devices.

It did not eliminate the need for reverse engineers, maintainers, device testing, legal judgment, or a user-owned copy of the game. It also did not create an official Nintendo release.

For developers, that narrower result is worth studying. It suggests that coding agents can lower the cost of revisiting platform work that small teams previously postponed.

The best next step is to inspect the repository’s evidence rather than treating the first gameplay video as the final verdict. Follow its device tests, distribution status, upstream updates, and unresolved licensing boundary.

Would you trust an AI-assisted port for a long playthrough today, or wait for broader hardware testing and a simpler installation path? That answer will shape whether projects like HarkinianPad remain preservation experiments or become dependable software.

Get started for free

A local first AI Assistant w/ Personal Knowledge Management

remio only supports Windows 10+ (x64) and M-Chip Macs currently.

Your AI Partner at Work
Get more done with remio

Plan. Create. Deliver.
All in one place.

bottom of page