Decompilazione, reimplementazione o ricompilazione?

Di DecompHub · Aggiornato il · Italiano

Scegli in base al risultato. Sorgenti ricostruiti, sostituto compatibile ed eseguibile nativo rispondono a esigenze diverse. Lo stesso titolo non rende confrontabili le percentuali.

Decompilazione con corrispondenza

Mira a sorgenti che producano lo stesso codice macchina di una build originale specifica. Contano compilatore, opzioni e revisione. Le FAQ di decomp.me spiegano i confronti per funzione: un esperimento riuscito non misura l’intero programma.

È un percorso per studiare la struttura originale o contribuire codice corrispondente. Verifica se il rapporto conta byte, funzioni, moduli o altro.

Reimplementazione e compatibilità

Ricreano comportamento o interfacce senza richiedere un eseguibile identico. Si valutano con funzionalità documentate e test. ScummVM sostituisce eseguibili supportati usando i dati dei giochi; la compatibilità dipende da titolo e versione.

Questo approccio serve per un sostituto utilizzabile o comportamenti migliori. La compatibilità non è una percentuale di matching.

Ricompilazione statica

Traduce istruzioni prima dell’esecuzione per un altro ambiente. N64Recomp documenta il processo per N64; un port completo richiede comunque integrazione attorno al codice tradotto.

Può consentire esecuzione nativa prima della ricostruzione manuale completa. Non spiega automaticamente il progetto dei sorgenti originali e non garantisce che qualsiasi gioco funzioni senza lavoro aggiuntivo.

Disassemblaggio e port

Il disassemblaggio rappresenta istruzioni macchina in assembly, senza necessariamente produrre C o C++. Un port adatta un programma a un’altra piattaforma e può basarsi sugli altri metodi. I termini si sovrappongono perché descrivono fasi diverse.

Usa i tipi del catalogo come orientamento, poi verifica lo scopo ufficiale. La guida ai progressi aiuta a confrontare misure equivalenti.