Skip to content
PORTSNATIVE.
HomeCatalog
Web GamesEmulatorsToolsNews
PORTSNATIVE.

A catalog for discovering ports and related projects. We link to official sources and do not host original game files.

ExploreCatalogMy list
InformationAbout usSuggest a portSupportDonationsLegal notice
© 2026 PortsNative
Back to catalog
FaxanaduRecomp
PORTSNATIVE

FaxanaduRecomp

NATIVE PORTACTION / ADVENTUREWINDOWSLINUXMACOSBETA

FaxanaduRecomp

Faxanadu

OriginNintendo Entertainment System

TechnologyStatic recompilation (native C/C++)

Available forWindows, Linux, macOS

View official project

About the project

Faxanadu es el título de un videojuego de la empresa Hudson Soft para la consola NES Nintendo. Fue lanzado al mercado en el año 1987, siendo lanzado en América en 1989 y en Europa en 1990 (distribuido por Mattel. Fue desarrollando por Hudson Soft con licencia de Nihon Falcom.

Official project information

Author's original READMEOpen on GitHub ↗

FaxanaduRecomp

This recompilation is a byproduct of developing nesrecomp — the games are the proving ground, the framework is the goal. These are in-development previews, not finished ports — expect rough edges, and depth will keep landing over months, not days. My time for any one title is limited, so I ask for your patience. Contributions are welcome — testing, issues, and PRs to the game or framework all help and will accelerate this game's polish. More on the why at: Recomp + AI: 5 Months Later »

Static recompilation of Faxanadu (NES) for native PC. Built with the NESRecomp framework.

Status: Playable. The game runs from title screen through credits. No outstanding known bugs. Not 100% playtested — minor edge cases may exist, but normal gameplay is fully functional.

FaxanaduRecomp showcase

Default cycle controls

Default cycle controls: arrows move, Z is A, X is B, Enter is Start and Backslash is Select. Escape opens the menu, Tab fast-forwards, and F8/F9 save/load the cycle state. Use Controls to remap inputs in config.ini. Older keybinds.ini and F5/F6/F7 instructions below apply to the legacy host.

Quick Start

  1. Download FaxanaduRecomp-windows-x64.zip from Releases
  2. Extract and run FaxanaduRecomp.exe
  3. Select your Faxanadu (USA) ROM when prompted — the path is saved for future launches

Optional Play as Link is available in Mods. Select your Zelda II USA ROM, enable the mod, and launch Faxanadu with Link's movement, sword beams, vertical stabs and all eight spells. See controls and details.

Optional Seamless appears first in Mods, marked Experimental and disabled by default. It joins connected rooms, advances neighboring actors, and adapts the world view to your window with Fit to screen. Mouse wheel changes pixel zoom; F4 shows the connected map. Dialogue and pause preserve the expanded view. It passed a preliminary owner playtest; broader gameplay coverage and cross-room combat/projectiles remain incomplete. Seamless and Play as Link are separate local-play modes. See details.

Controls

NES ButtonKeyboard
D-PadArrow keys
AZ
BX
StartEnter
SelectRight Shift

Mantra (Password) Features

Faxanadu uses a mantra system instead of battery-backed saves. FaxanaduRecomp adds convenience features around this:

Auto-load — On startup, the game reads saves.txt (next to the exe) and auto-fills the most recent mantra on the password entry screen. No need to write down or retype passwords.

CLI override — --password STRING overrides the saves.txt mantra for a single session.

FaxanaduRecomp.exe [ROM] --password "k8fPcv?,TwSYzGZQhMIQhCEA"

saves.txt format — One mantra per line, most recent first. Human-readable and copy-pasteable. You can edit this file manually to add or change your saved mantra.

Note: Auto-saving mantras from the priest dialog is not yet implemented. For now, write the mantra shown by the priest into saves.txt manually, or pass it via --password.

Save States

KeyAction
F5Toggle turbo (fast-forward)
F6Save state → C:\temp\quicksave.sav
F7Load state ← C:\temp\quicksave.sav

ROM

FieldValue
TitleFaxanadu (USA)
CRC3257DD23D1 (ROM data only, iNES header excluded)
MD5b3bb9296b5e1e0c83e90b6da9e8a41aa (ROM data only)
SHA-15b05c8859f356013d37f0545f5de5fa1693da5da (ROM data only)

Building from Source

Prerequisites: Windows 10+, Visual Studio 2022, CMake 3.20+ (SDL2 is bundled)

git clone https://github.com/mstan/FaxanaduRecomp
cd FaxanaduRecomp

# Windows
setup.bat

# Linux / macOS
chmod +x setup.sh && ./setup.sh

This initializes the pinned nesrecomp submodule and links the Nestopia oracle core.

Then build:

cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release

Architecture

This is a static recompiler, not an emulator. The 6502 machine code in the ROM has been translated to C by NESRecomp and compiled to native x64.

FilePurpose
extras.cFaxanadu-specific hooks (mantra injection, auto-load)
game.cfgRecompiler config (dispatch tables, trampolines)
baserom_annotations.csvAddress annotations for generated code
generated/faxanadu_full.cRecompiled 6502 code (committed)
generated/faxanadu_dispatch.cDispatch table (committed)
reference/Reference screenshots for visual regression

License

PolyForm Noncommercial 1.0.0 — see LICENSE. Third-party components retain their own licenses.


<p align="center"> <sub><b>R.A.I.D. — Retro AI Development</b> · a Discord for AI-assisted retro reverse-engineering, decomp &amp; recomp</sub> </p> <p align="center"> <a href="https://discord.gg/Ad9BwSzctP"><img src=".github/raid-discord.png" alt="Join the Retro AI Development (R.A.I.D.) Discord" width="200"></a> </p>

Cycle Windows builds use tools/build.ps1 -Rom <original-ROM>. Create a ROM-free ZIP with tools/make_release.ps1 -Rom <original-ROM>; -SkipBuild -BuildDir build-cycle packages an existing production cycle build. Legacy C remains available through explicit CMake selection.

The October 2026 USA coverage pass exercises original entries for all six outside regions and encounters all eight real boss species, including King Grieve and Shadow Eura. Authored screen and sprite metadata were bound by reproducing both complete 16 KiB data banks against the supplied USA ROM. The probes assist screen selection, player health and entrance position; original screen initialization, actors and combat routines still run. These are encounter checks, with some routes ending in player death.

All eight boss routes match native/interpreter machine hashes, pictures and complete states. After adding 958 observed ROM instruction starts, all eight routes and the earlier six region routes replay exactly against their pre-rebuild native and interpreter results on engine 0498965. Earlier intro/region coverage added 1,103 valid starts. Item collection, mantra interactions and the ending require separate qualification. Areas 3 and 4 are the towns/buildings profiles; dungeon screens belong to the surrounding regions. This build uses stock rendering.

Read official guide
CALIFICACIÓN
—
Loading votes…
Advertisement

PROJECT FILE

Project type
NATIVE PORT
Genre
Action / Adventure
Status
beta
Original platform
Nintendo Entertainment System
Technology
Static recompilation (native C/C++)
Version
—
Updated
—

Target platforms 3

Windows
Linux
macOS
View on GitHub
Advertisement