GTA: Vice City działa na routerze!

Niemiecki haker o imieniu KittenLabs opublikował na blogu wpis o tym, jak udało mu się zmusić klasyczną grę GTA: Vice City do działania na routerze. Korzystając z nietypowej konfiguracji sprzętowej składającej się z TP-Link TL-WDR4900 i AMD Radeon HD 7470 połączonego jako eGPU, KittenLabs udało się zainstalować Debiana Linux i GTA: Vice City i poszło zaskakująco dobrze, co widać na filmie poniżej.

Oryginalny hack do gry wideo

Historia tego klasycznego hacka do gry jest bardzo interesująca. Router Wi-Fi TP-Link TL-WDR4900 został szczególnie wybrany, ponieważ cieszy się reputacją dzięki dobrej wydajności (według daty premiery w 2013 roku). Sercem wydajności routera jest procesor NXP/Freescale QorIQ P1014, który według KittenLabs jest w rzeczywistości 32-bitowym procesorem PowerPC e500v2.

Oczywiście nawet potężny router nie ma gniazda PCIe przyjaznego dla procesora graficznego komputera PC, więc instalacja eGPU wymagała pewnych manipulacji. KittenLabs zaprojektowało niestandardową płytkę PCB miniPCIe i przymocowało ją do routera po przecięciu ścieżek PCIe prowadzących od procesora do jednego z chipsetów Atheros. Dało im to działający darmowy interfejs PCIe 2.0.

Wyzwania, którym należy sprostać

Następnie konieczne były pewne dostosowania oprogramowania. KittenLabs zainstalował OpenWrt na routerze, ale ze względu na jego oczywiste ograniczenia jako systemu operacyjnego ogólnego przeznaczenia, zdecydował się uruchomić wersję Debian Linux z włączonymi dodatkowymi modułami jądra, wystarczającą dla platformy do gier ze wsparciem sterownika graficznego AMD.

Początkowy eksperyment z procesorem graficznym AMD Radeon RX 570 natrafił na ścianę niekompatybilności, ale przejście na starszą kartę AMD Radeon HD 7470 ze starszym sterownikiem szybko się opłaciło – system zaczął działać.

Rozwiązywanie problemów

Trzeba było pokonać wiele przeszkód, zanim TL-WDR4900 mógł zostać przetestowany pod kątem uruchomienia GTA: Vice City. Co jeszcze ważniejsze, KittenLabs musiało zdobyć wersję gry, która z radością działałaby na systemie Debian/PowerPC. Rozwiązaniem był reVC (odwrócona wersja GTA Vice City z publicznie dostępnym kodem źródłowym), która została skompilowana dla platformy routera. Niestety, gra nadal była jedynie cieniem swojej dawnej postaci, z błędami, gdy w grę wchodzili NPC-e. Problem ten wstrzymał prace nad projektem na kilka miesięcy.

Wersja reVC online na Wii U wzbudziła nową nadzieję, zwłaszcza gdy autor pomógł KittenLabs. Jednak nadal występowały pewne problemy z uszkodzeniem grafiki…

Ostatecznie przełom nastąpił po dostarczeniu aktualizacji biblioteki graficznej Mesa 3D wykorzystywanej przez router w ramach instalacji Linuxa. Nie było to łatwe zadanie, ponieważ należało zaktualizować także wiele zależności, ale kiedy to zrobiono, „renderowanie gracza zaczęło działać poprawnie na prawdziwym sprzęcie (z przyspieszeniem!).” » Z jednej strony dzięki tej aktualizacji projekt odniósł ogromny sukces, co widać na filmie (na górze) i na stronie bloga. Jednakże firma KittenLabs była nieco niezadowolona, ​​ponieważ nie wiedziała dokładnie, w jaki sposób rozwiązano poprzednie problemy.

Blog KittenLabs to ciekawe miejsce na spędzenie czasu. Oprócz nowego artykułu o GTA: Vice City na temat routera, można zapoznać się z wieloma innymi wpisami poświęconymi hackom, technologii, komputerom retro i sztuce. Jednym z naszych ulubionych zarchiwizowanych obiektów jest analogowy syntezator dyskietek, który odtwarza kompozycje muzyczne przy użyciu 3,5-calowego napędu dyskietek.

Źródło: www.tomshardware.com