Saltar al contenido
PORTSNATIVE.
InicioCatálogo
Juegos WebEmuladoresHerramientasNovedades
PORTSNATIVE.

Un catálogo para descubrir ports y proyectos relacionados. Enlazamos a las fuentes oficiales y no alojamos archivos de los juegos originales.

ExplorarCatálogoMi lista
InformaciónNosotrosProponer un portSoporteApoyo y donacionesAviso legal
© 2026 PortsNative
Volver al catálogo
Crash Twinsanity (PC)
PORTSNATIVE

Crash Twinsanity (PC)

PORT NATIVOPLATAFORMASWINDOWSBETA

Crash Twinsanity (PC)

Crash Twinsanity

OrigenPlayStation 2

TecnologíaPort Nativo C/C++ (Reimplementación de Motor)

Disponible paraWindows

Ver proyecto oficial

Sobre el proyecto

Crash Twinsanity es un videojuego de plataformas desarrollado por Traveller's Tales y publicado por Vivendi Universal Games para PlayStation 2 y Xbox. Es la undécima entrega de la serie Crash Bandicoot y el quinto de la principal. La historia tiene lugar tres años después de los acontecimientos de Crash Bandicoot: la venganza de Cortex y sigue al protagonista y antagonista, Crash Bandicoot y Doctor Neo Cortex, quienes deben trabajar juntos para impedir que los Gemelos Malvados, un par de loros interdimensionales, destruyan la isla N. Sanity.

3 versiones de Crash Twinsanity

Estás viendo: Crash Twinsanity (PC)

Crash Twinsanity (PC)github.com/GioPixelGH/Crash-Twinsanity-Windows
Windows
Actual
Crash Twinsanity (twinsanity-reversed)github.com/Smartkin/twinsanity-reversed
Windows
›
Crash Twinsanity Recompiledgithub.com/menaman123/NativeEE
Windows
›

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗
<div align="center">

Crash Twinsanity for Windows

Crash Twinsanity (PlayStation 2, PAL) running natively on 64-bit Windows, without an emulator.

Latest release Licence: MIT for the port's changes Platform

This is a Windows port of HAB3X's Crash Twinsanity for Mac. The Mac port runs Smartkin's complete C++ decompilation of the game on a native platform layer (SDL3, an OpenGL renderer for the PS2's graphics, sound, movies, saves and a new options screen). This repository adds what Windows needs, makes it run at a steady 60 fps, and fixes the crashes found by playing it.

</div>

Title

[!IMPORTANT] No game data is included. You need your own copy of the PAL game (Europe/Australia, SLES-52568) as a disc image. Crash Twinsanity and Crash Bandicoot are trademarks of Activision. PlayStation is a trademark of Sony Interactive Entertainment. This is a fan project, not affiliated with or endorsed by either. Please don't ask for the game's files or disc images in the issues: such requests are closed.

Download

The latest release has Crash-Twinsanity-Windows.zip for 64-bit Windows 10 and 11: unzip it anywhere, run CrashTwinsanity.exe in the Crash Twinsanity folder and pick your disc image. Version 1.0.8 is the first full release, now that the game has been played from the start to the credits; the ones before were previews. Linux has no download yet: build it yourself (native/LINUX.md).

Requirements

  • 64-bit Windows 10 or 11.
  • A graphics card with OpenGL 3.3 (any from the last ten years).
  • A disc image of your own PAL copy of the game (Europe/Australia, SLES-52568), as an .iso (or .bin/.img).
  • A keyboard and mouse, or a controller: Xbox, PlayStation, Switch and most others work out of the box.

Menu

Is it safe?

  • The zip holds only the program built from this repository's code, the SDL 3 and FFmpeg libraries, two fonts and the licences. There's no installer, and the program has no network code.
  • The release page shows the zip's SHA-256, so you can check your download with Get-FileHash. Here is VirusTotal's report on 1.0.12's download.
  • The program isn't code-signed, so Windows may say "Windows protected your PC" the first time: choose More info, then Run anyway.
  • You can also build it yourself (below).

More in SECURITY.md, including how to report a security problem privately.

autosave

Status

  • Tested on Windows 11 with an NVIDIA GeForce RTX 4070 SUPER, keyboard and mouse, and an Xbox One controller.
  • Played by hand from the start to the credits, in Italian with an Xbox One controller, on the releases up to 1.0.7. Every crash found on the way is fixed (the last ones: Slip Slide Icecapades' mines in 1.0.5, after beating Dingodile in 1.0.7).
  • All 131 of the game's areas were tried with scripted input for 30 seconds each, with no unexpected crash (native/sweep/results_windows.md). 108 played (7 of them until a game over); the other 23 can't be started on their own, because they are parts of hubs or tunnels only entered from a neighbouring area.
  • Known issue: a cutscene in the level after the caverns (Cortex running with the bees) froze once when it was played again after dying, in an early version. It hasn't happened since 1.0.3, and it was never reproduced.
  • Linux: builds and plays on x86-64 (tried on Debian 13), and packs into an AppImage: see native/LINUX.md.
  • macOS: the platform code is HAB3X's and the Windows changes are kept apart (_WIN32), but this fork isn't built or tested on macOS.

beach

What this port adds

On top of HAB3X's port (GPU renderer, widescreen and 21:9, HD texture packs, remappable keyboard, mouse and controller, saves, cutscene skipping, community fixes):

  • Windows support:
    • Windows' calling convention, which passes float arguments differently from the PS2's.
    • The retail code's reads of address 0, emulated on Windows.
    • Frame pacing and file access.
    • A crash report with a backtrace and the area the player was in.
  • Speed: a steady 60 fps everywhere tested. The game, the PS2's vector unit (VU1) and the graphics now run on three threads, and the renderer's hot paths are faster.
  • Frame rates: 50, 60, 120 and 144 Hz, or unlimited, at the same game speed.
  • Anti-aliasing by supersampling: SSAA 2x and 4x (Options > Display > Anti-aliasing) draw the picture 2 or 4 times larger, up to 8x the PS2's, and shrink it to the window: smoother edges, more work for the graphics card.
  • Dithering option: as the PS2 (its 16-bit picture with a fine pattern, the default) or off, for the picture's full colour.
  • Resolution: 1x to 8x the PS2's (6x and 8x added); a buffer the graphics card can't hold at the chosen scale is drawn by the software renderer instead of failing.
  • Draw distance option (from HAB3X's Mac port): short, original (the default), medium, long or unlimited; the farther settings draw the grass and small things before you get close, at a cost on older PCs.
  • Language option: English, French, German, Italian or Spanish texts, voices and movies, chosen in Options.
  • Mods: files in %APPDATA%\Crash Twinsanity\mods replace the disc's, including files inside the game's archive. --list-files and --extract help to start one.
  • Portable mode (Options > Gameplay, off by default): settings, saves and mods in a User folder beside the game, and the disc image found in the game's folder, to carry it on a USB stick.
  • Fixes:
    • The crash entering the first boss's area (a level title picture read wrongly).
    • The crash during the Mecha-Bandicoot fight (a float argument on Windows).
    • Crashes in the caverns (a reference to an object already freed, an animation of zero length).
    • VU1 programs that ran away (two copies of the same data declared with different sizes).
    • The characters drawn as on the PS2 at high resolutions: the game's distance haze and the first boss's sky at the chosen resolution (no more stepped outlines), the colours VU1 writes after sending its vertices (no more patches on the bodies), triangles thinner than a PS2 pixel (no more thin black lines), textures' detail for the chosen resolution.
  • Controllers: a modern controller's round stick is mapped to the PS2 stick's square, so Crash runs on diagonals too.
  • The game's data from your disc: the program carries none of the game's data. It reads the data from your disc image's executable when it starts, checks that it's the PAL release, and says so clearly when the disc image is wrong.

native/WINDOWS.md explains each change, with the reasons and how they were tested. native/PLAYING_WINDOWS.md is the player's guide: options, controls, saves, mods.

cortexdimension

Roadmap

What comes next, roughly from the quickest job to the longest. The game stays the original by default: new game options are off until you turn them on.

  • The characters drawn as on the PS2 at high resolutions (#15, #19, #24): no more stepped outlines, patches on the bodies or thin black lines.
  • 6x and 8x the PS2's resolution in the options (#19), and a safe fallback when the graphics card refuses one of the renderer's buffers.
  • A Dithering option (#24): the PS2 game shows its picture in 16-bit colour with a fine pattern to hide the steps, and the port reproduces it; turned off, the picture would keep its full colour.
  • A Credits page in the PC options, with everyone behind the Windows version.
  • The game closing after the end credits instead of going back to the Iceberg Lab, as reported in #20.
  • A modding guide: the game's files, the community's tools for them, and how to share a mod.
  • The two cutscenes that still end a little differently when skipped than when played (#9).
  • A skip for the cutscenes that have none yet, like those of the first fight with Cortex and of Cavern Catastrophe (#28).
  • The slide's long jump at any moment, as a game option (#11).
  • Draw distance as a PC option (from HAB3X's Mac port): farther than the PS2's draws the grass and small things before you get close, at a cost on older PCs.
  • Level select, as a game option.
  • Anti-aliasing by supersampling (2x, 4x).
  • Eight save slots.
  • Frame rates other than 60 checked through the game: the seal chase at 240 fps (#17), the cannon's bombs below 60 fps (#12).
  • The black screen at start on some AMD PCs (#16).
  • The masks' bugs (#18): those the PS2 game has too become fixes under the bug fixes option.
  • HD texture packs in BC7, and texture upscaling.
  • The characters' shadows drawn at the chosen resolution: they stay at the PS2's, softer than the rest of the picture at high resolutions.
  • A landing shadow (#11).
  • Better speed on older PCs (#23, #12): since 1.1.0 the render thread, measured as the limit there, is about a quarter lighter and VU1's thread about a tenth; more needs deeper changes to the renderer.
  • Achievements in the game, kept on your PC (RetroAchievements doesn't award them for ports).
  • Subtitles for the cutscenes (#11).

Maybe later: fast-forwarding cutscenes as well as skipping them (#9), two-player co-op, some of the NTSC-U release's differences as options on the PAL game (#14), the port's own texts in Brazilian Portuguese if someone translates them (#25), and character packs from the other Crash games (a mod: it needs those games' discs).

Building on Windows

You need about 3 GB of disk space, your PAL disc image and an internet connection for the first build.

  1. Install the tools (PowerShell):

    winget install MartinStorsjo.LLVM-MinGW.UCRT Kitware.CMake Ninja-build.Ninja Python.Python.3.13 Git.Git
    
  2. Get the PS2 toolchain: download ps2dev-windows-latest.tar.gz from ps2dev's latest release and extract it into C:\, which makes C:\ps2dev. The native build uses its headers to lay out the game's data.

    tar -xzf "$HOME\Downloads\ps2dev-windows-latest.tar.gz" -C C:\
    
  3. Clone this repository and make the Python environment (in a new PowerShell, so the tools above are found):

    git clone https://github.com/GioPixelGH/Crash-Twinsanity-Windows.git
    cd Crash-Twinsanity-Windows
    py -3 -m venv .venv
    .venv\Scripts\python.exe -m pip install -r requirements.txt
    .venv\Scripts\python.exe tools\toolchain_dlls.py
    
  4. Take the game's executable out of your disc image, check it, and split it:

    tar -xf "C:\path\to\Crash Twinsanity (Europe).iso" SLES_525.68
    Get-FileHash -Algorithm SHA1 SLES_525.68    # D41B8D53F733F930CF03D8EA944BEC24429FE57C
    .venv\Scripts\python.exe tools\split.py
    
  5. Build (the first time it also downloads SDL3 and builds a small FFmpeg; Git for Windows' Git Bash is used for that):

    .venv\Scripts\python.exe native\tools\build_windows.py
    
  6. Play:

    build\native\cmake\CrashTwinsanity.exe
    

    The first time, it asks for your disc image and remembers it. Settings, saves and texture packs are in %APPDATA%\Crash Twinsanity\.

More on the Windows build: native/WINDOWS.md. The decompilation itself (the PS2 build that matches the retail executable, and its tools): README_DECOMP.md and docs/DEVELOPMENT.md. HAB3X's native layer: native/NATIVE.md, native/GRAPHICS.md, native/AUDIO.md.

dungeon

Texture packs

PCSX2's texture packs for this game work as they are. Put the pack's SLES-52568 folder into %APPDATA%\Crash Twinsanity\textures\ and turn texture packs on in Options. The HD texture pack by CRASHARKI that HAB3X's repository shipped isn't included here: get it from its author.

Credits

Upstream projects (most of the work):

  • Smartkin and everyone behind the Crash Twinsanity decompilation: every function of the game rewritten in C++, with the tools that build and test it.
  • HAB3X: the native port for Mac. This includes the platform layer, the emulation of the PS2's graphics (GS, VIF, VU) and its OpenGL renderer, audio and movies, saves, the options screen and the community fixes.
  • Crash Twinsanity Improved by AlexMollard: the Mac port's optional fixes come from this mod. Its 21:9 mode is TechieSaru's fix, from the mod's PCSX2 patches.
  • CRASHARKI, for the HD texture pack the Mac port was tested with.

Contributors and testers of the Windows port:

  • Gabriel-TwoBits: the Linux build, with its fixes and low memory emulation, named backtraces, and the build script with its AppImage (#1, #2, #3).
  • The players whose reports and tests made it better: NitorikoSkye (the ROG Ally and AMD graphics, the physics past 60 Hz, many suggestions), SSStylishh (played it to the end), APerson7778 (mouse look) and VenezuelanHell (older AMD drivers).

Bug reports, suggestions and pull requests are welcome: see CONTRIBUTING.md.

References:

  • PCSX2: how the PS2's VU, VIF and GS behave, the model of its float maths, and the design of its hardware renderers.
  • Microsoft's documentation of the x64 calling convention, and the System V and MIPS EABI conventions.

Tools:

  • splat, spimdisasm and rabbitizer: split the executable.
  • ps2dev: the PS2 toolchain, GCC 15.2 with PS2SDK.
  • Ghidra: used upstream for the decompilation's symbols.
  • LLVM-MinGW by Martin Storsjö (clang 23, UCRT), CMake and Ninja: build the Windows program.
  • Python 3.13 and Pillow: build tools and test scripts.
  • Git for Windows, MSYS2's make and winget: build FFmpeg and install the tools.

Libraries and fonts bundled with the program:

WhatLicence
SDL 3.4.18zlib
FFmpeg 9.0.2 (libavcodec and libavutil, built with only the MPEG-2 video decoder)LGPL 2.1 or later (native/third_party/ffmpeg)
stb_truetype (one fix of ours, marked in the file)public domain or MIT
Luckiest GuyApache 2.0
FredokaSIL Open Font Licence 1.1

The icon is our own drawing (native/tools/draw_icon.py draws it), under this repository's licence.

AI assistance: this port was written with the help of Claude Code (Anthropic). As the developer, I reviewed and supervised the work. Each commit made with it says so.

Licence

  • Upstream code: Smartkin's decompilation and HAB3X's Mac port are published without a licence: all their rights stay with their authors. They are included here, unchanged in the first commit, with the credit above.
  • This repository's own changes (the commits after the first) are under the MIT licence: see LICENSE.
  • Third-party libraries and fonts keep their own licences (table above).
  • The game (its code, data, art and sound) belongs to Activision. None of the game's files are in this repository: the executable, data, art and sound come from your own disc image.

Gallery

N. Sanity BeachHigh Seas Hi-Jinks
A cutscene with the villainsTwinsanity Island
The pause menu, with an Xbox controller's buttonsThe PC options

Taken from the Windows program at 4× the PS2's resolution, without texture packs. The menus show the buttons of the controller in use, and the PC options have their own screen.

Leer guía oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
PORT NATIVO
Género
Plataformas
Estado
beta
Plataforma de origen
PlayStation 2
Tecnología
Port Nativo C/C++ (Reimplementación de Motor)
Versión
—
Actualización
—

Plataformas de destino 1

Windows
Ver en GitHub
Publicidad