Jump to content

Design

From jabara Wiki
Revision as of 05:59, 25 March 2026 by Mako (talk | contribs) (Created page with "This page is a living document that details the design and development process of jabara. == Purpose == jabara is a Nintendo Switch (codename '''NX''') emulator designed to provide robust tool-assisted speedrun and superplay (generally, '''TAS''') functionality for Switch games. Its use case differs from existing NX emulators (e.g. [https://eden-emu.dev Eden], [https://ryujinx.app Ryujinx]) in that i...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This page is a living document that details the design and development process of jabara.

Purpose

jabara is a Nintendo Switch (codename NX) emulator designed to provide robust tool-assisted speedrun and superplay (generally, TAS) functionality for Switch games. Its use case differs from existing NX emulators (e.g. Eden, Ryujinx) in that it is designed primarily for TAS creation and playback with optimized real-time gameplay as a secondary target.

jabara is not a cheating tool and is not intended to give unfair advantages to real-time attack (RTA) speedrunners. jabara is not a tool for piracy or copyright violation and may only be used with legally extracted ("dumped") copies of owned NX software.

Scope

jabara cannot be used to emulate the Nintendo Switch 2.

jabara can be used on x86-64 and AArch64 machines running any modern version of most Linux distributions, Windows, and macOS. Support for mobile devices is not planned.

jabara aims to provide a wide variety of tools for creating and replaying TASes. Among others, tools offered for TAS developers (TASers) include frame advance, savestates, input manipulation, memory viewing, system state and random number generation (RNG) manipulation, and debugging. All information that uniquely identifies a particular TAS may be recorded to a movie file that can be used to deterministically replay the TAS on any instance of jabara, assuming all necessary game data are present and unchanged.

Support for physical input devices such as controllers or keyboards is an eventual goal to make jabara viable for real-time gameplay.