Dekompilacja, reimplementacja czy rekompilacja?
Autor: DecompHub · Aktualizacja: · Polski
Wybierz według oczekiwanego rezultatu. Odtworzony kod, zgodny zamiennik i natywny program odpowiadają na różne potrzeby. Wspólny tytuł gry nie czyni procentów porównywalnymi.
Dekompilacja zgodna binarnie
Celem są źródła generujące ten sam kod maszynowy co określona oryginalna kompilacja. Ważne są kompilator, opcje i rewizja. FAQ decomp.me wyjaśnia porównania funkcji; pojedynczy sukces nie mierzy całości.
To droga do poznania struktury oryginału lub wkładu w matching. Sprawdź, czy raport liczy bajty, funkcje, moduły czy inny zakres.
Reimplementacja i zgodność
Odtwarzają zachowania lub interfejsy bez wymogu identycznego pliku wykonywalnego. Sprawdza się je przez funkcje i testy. ScummVM zastępuje obsługiwane programy gier, korzystając z ich danych. Zgodność dotyczy konkretnego celu i wersji.
Wybierz tę drogę dla użytecznego zamiennika lub poprawy działania. Deklaracja zgodności nie jest procentem matchingu.
Rekompilacja statyczna
Tłumaczy instrukcje przed wykonaniem na inne środowisko. N64Recomp opisuje proces dla N64; pełny port wymaga jeszcze integracji otoczenia kodu.
Może umożliwić natywne działanie przed ukończeniem ręcznej rekonstrukcji. Nie objaśnia automatycznie pierwotnego projektu źródeł ani nie zapewnia obsługi dowolnej gry bez dodatkowej pracy.
Deasemblacja i porty
Deasemblacja przedstawia instrukcje maszynowe w asemblerze, niekoniecznie tworząc C lub C++. Port dostosowuje program do innej platformy i może opierać się na pozostałych metodach. Pojęcia nakładają się, bo opisują różne etapy.
Traktuj typy w katalogu jako wskazówki i sprawdź cel autorów. Poradnik o postępie pomaga porównywać pomiary bez mieszania pojęć.