Tweakers · Technologie
Hobbyisten moderniseren retrogames met decompilatie en recompilatie
Retrogaming wint aan populariteit, wat leidt tot een toename van decompilaties en recompilaties van klassieke games. Deze projecten stellen hobbyisten in staat om games native op pc te draaien, vaak met verbeteringen zoals 4K-resolutie en mod-ondersteuning.

Fans zetten gecompileerde gamecode om naar leesbare code, wat resulteert in pc-ports van games als Mario Kart 64 en Super Mario 64. Dit gebeurt via decompilatie (reverse-engineeren van de hele game tot leesbare broncode) of recompilatie (omzetten van de programmeertaal naar een moderne taal).
Decompilatie is arbeidsintensief en levert schone broncode op voor diepgaande aanpassingen zoals mods. Ontwikkelaars gebruiken tools als Ghidra om de binaire code functie voor functie te analyseren.
Recompilatie is sneller, maar de resulterende code is minder leesbaar, wat diepgaande aanpassingen bemoeilijkt. Hogere resolutie en framerates zijn echter vaak wel mogelijk.
Een port is het speelbare eindproduct van decompilatie of recompilatie, een uitvoerbaar programma voor moderne hardware. Een voorbeeld is de port van Super Smash Bros. voor pc, die ook een co-opmodus en extra levels bevat.
Het debuggen van ports, met name visuele en audiofouten, is complex. Ontwikkelaars gebruiken AI-assistenten en logs, maar ook kennis van de originele hardware is cruciaal.
Audiofouten bleken het hardnekkst, vaak veroorzaakt door problemen met de audiomixer of synchronisatie. Een specifieke bug werd opgelost door een simpel teken in de code aan te passen.
Succesvol debuggen vereist diepgaande kennis. Ontwikkelaars worden aangemoedigd om ports te maken als leerervaring en open te zijn over hun werk, wat leidt tot bevredigende resultaten.
AI-samenvatting op basis van de bron.
Tweakers