>_ DevTrendses

Idioma

Inicio

Lenguajes

Secciones

Frontend Backend Móvil DevOps AI / ML GameDev Blockchain Seguridad
C

How to Run Nintendo 64 Classics on Modern Hardware Without Emulators

606 estrellas

Remember how we used to spend hours hunched over bulky CRT TVs, trying to collect all the stars in Super Mario 64? Emulators partially solved the nostalgia problem, but they always came with their own set of drawbacks: input lag, graphical glitches, and endless tinkering with plugins. Recently, I stumbled upon the Ghostship project by the HarbourMasters team, which offers a fundamentally different approach. It's not an emulator, but a full native port of the game to modern platforms.

What's the appeal of a native port

When we run a game through an emulator, the computer spends resources on "pretending" to be a console. Ghostship takes a different route. The developers took the decompiled game code and made it run directly on Windows, Linux, and macOS.

This gives several cool advantages. First, you get proper DirectX 11, OpenGL, and even Metal support for Mac users. Second, the game runs with minimal input lag, which is critical for a platformer. But the most interesting part is the mod and custom asset support, which you enable by simply dropping files into a folder.

What the project can do

Ghostship is built on the libultraship engine. It's a layer that translates Nintendo 64 hardware calls into the language of modern APIs.

Here's what you get out of the box:

  • True widescreen resolution without stretching the image.
  • Modern gamepad support and flexible keyboard configuration.
  • Mod system via .o2r and .otr files.
  • Ability to switch between standard and alternative assets right during gameplay by pressing Tab.

Interestingly, the developers also thought about handheld consoles. There's a build for Nintendo Switch, though you'll still need a PC to generate the game assets.

How to run it without breaking the law

The project authors take copyright very seriously. There's not a single byte of Nintendo's protected content in the repository. To play, you'll need to obtain a game dump (ROM) on your own.

The process looks like this:

  1. Grab your game image in .z64 format (American and Japanese versions are supported).
  2. Verify the SHA-1 checksum. For the US version, it's 9bef1128717f958171a4afac3ed78ee2bb4e86ce.
  3. Launch Ghostship.exe, point it to the ROM, and the program will automatically extract the necessary resources and build a working version.

By the way, if your image is in .n64 format, you'll need to convert it to .z64 first. The README has a link to a simple utility for that.

Technical internals and customization

If you decide to tinker with the settings, take a look at the Ghostship.cfg.json file. There you can manually switch the graphics backend. For example, if the game crashes on Windows, try changing the backend ID to 3 (OpenGL). By default, it uses DirectX 11 (ID 2).

For those who want to go further and create their own mods, the HarbourMasters team offers a whole stack of tools. There's a retro archive generator and even a fast64 plugin for Blender. Meaning you can literally redesign levels or characters in a 3D editor and put them into the game.

Powered by libultraship

Is it worth trying

If you just want to play for five minutes and forget about it, an emulator will be faster. But if you care about comfort, high framerate, and the ability to go all-in on mods — Ghostship is a must-have. The project is alive and well, actively being developed by the community, and the credits list people who have spent decades reverse engineering classics.

Who this is definitely for:

  • Those building their own retro gaming station based on a PC or Steam Deck.
  • Developers interested in seeing how old code is adapted to modern hardware.
  • Mod makers dreaming of working with Mario's engine in Blender.

The only downside is the sparse documentation on building from source for beginners. But pre-built binaries in the Releases section solve this problem for 99% of users.

Check out their Discord if you have trouble with ROM hashes — the folks there are pretty helpful, as long as you don't ask them where to download pirated games.

Proyectos relacionados