Skip to content

Releases: Blizz127/xenogears-decomp-port

Xenogears Linux port r5 (early test build)

Choose a tag to compare

@Blizz127 Blizz127 released this 30 Sep 01:35

Native Linux port of Xenogears (PS1). Requires your own Xenogears disc 1; no BIOS needed; no game assets included (see the data note below). Plays title → prologue → Lahan → Gear battle; stops at map 15 en route to Black Moon Forest. Tested on SteamOS/Bazzite.

Early test build (r5, build xeno-r5-e1625759).

What you need

  • A Linux x86-64 system with glibc 2.34 or newer (SteamOS and Bazzite work). SDL2, OpenAL and the other libraries are bundled.
  • Your own copy of Xenogears (USA) Disc 1 (SLUS-00664) as a raw BIN image (Redump, sha1 12db8ccb93516c391630f046a143762337cc21f4), plus six files extracted from it: SLUS_006.64, field.bin, menu.bin, shop_menu.bin, member_change_menu.bin and world_map.bin. README-TEST.txt in the archive lists every file with its size and SHA-256, and says how to extract them. The port checks each file on start and names any that are missing or different.

Running

tar xzf xenogears-port-linux-x86_64-r5-e1625759.tar.gz
cd xeno-r5-e1625759
./xenogears.sh /path/to/your/xenogears/files   # first run; remembered afterwards

It runs fullscreen by default; XENOGEARS_WINDOWED=1 opens a window instead. On Steam Deck, SteamOS or Bazzite, add xenogears.sh as a non-Steam game with the folder as its argument. Saves, memory cards and the F7/F8 quick checkpoint are stored in ~/.local/share/xenogears-port/.

How far it plays

Boot, the title screen, New Game, the prologue, and Lahan, including the opening Gear battle. Battles run the retail battle code. The Black Moon Forest route loads map 15 (Mountain Path) and does not yet reach map 16.

Known issues

  • Attacking in on-foot battles may crash (fix in progress). Choosing Attack in a normal (on-foot) battle can close the game. The scripted opening Gear battle is not affected. Use F7 to quick-save in the field before battles.
  • Always pass the data folder on the first run. Without it, this build exits straight away ("pass the folder…"), which some launchers show as a runtime error. The next build finds a Banshee/launcher disc/ folder by itself and shows the reason in a dialog.
  • Movies can flicker under gamescope fullscreen (Steam Deck / Bazzite game mode). A fix is in progress.
  • Some host-toolbar labels have missing letters (e.g. "ATTLES"). Fixed in the next build.
  • Some world-map states and sound-bank switches are incomplete or silent.
  • Widescreen, 60 fps and volume settings are not implemented.
  • The memory-card file manager shows an "unsupported" notice.
  • A few menus run port code that has not yet been checked against retail. Every known difference is listed in docs/port/RETAIL_DIVERGENCES.md in the repository.

Checks on this build

  • SHA256SUMS: ba2e4e60310097d30bd853ac4ad1bde087be43b3b32b3b0f1fac51a0b60474ca.
  • No game assets: the archive holds no disc image, extracted game file, audio, movie, texture or BIOS; no_bios: true.
  • Data note (corrected after release): a byte scan of the linked binary found that this build contains about 6.6 KB of transcribed retail data tables (sound, memory and animation tables compiled from the decompiled C). They are removed in v0.6.0, which loads them from your own disc. The build also carries about 17.5 KB of sine and arctangent tables from the third-party PsyCross library (MIT); these are mathematically identical to the PlayStation SDK's tables. The contains_game_data: false flag in build-info.json did not account for the transcribed tables.
  • The binary passes the Psy-Q guard (tools/analysis/psyq_port_guard.py --binary, strict: no Psy-Q SDK code or tables, table scan run against the retail executable).
  • The text files pass the retail-data guard (strict, against the retail files and the BIOS).
  • Matching build: rom-check 10/10. Every pinned retail artifact rebuilds byte-identical.

Credits

This port is built on the Xenogears decompilation started by ladysilverberg: ladysilverberg/xenogears-decomp. Thanks to its contributors: ladysilverberg, Kat, Jonathan Peros (jperos, jdperos), Nora Strong, devperson7, Valentin Robert, GigaGoji, Aku Kotkavuo, James Brown and Akshay Gopinath. The upstream project has not published a license. This build includes code compiled from it, which remains its authors' work, and those parts are being re-derived independently. Full credits, including the Jiskan 16 font authors and the tools and libraries, are in CREDITS.md. Bundled libraries keep their own licenses (THIRD_PARTY.md in the archive).

License and disclaimer

The MIT license in this repository covers only its original work. Xenogears and all of its code, data and trademarks are owned by Square Enix. This project is not affiliated with or endorsed by Square Enix or Sony Interactive Entertainment. No game assets, BIOS or Sony SDK code are included (this build does contain about 6.6 KB of transcribed retail data tables, removed in v0.6.0); you need your own legally obtained disc. See NOTICE.md.