GTA: ¡Vice City se ejecuta en un enrutador!

Un hacker alemán llamado KittenLabs ha publicado una entrada en su blog sobre cómo consiguió que el clásico GTA: Vice City funcionara en un router. Utilizando una inusual configuración de hardware compuesta por un TP-Link TL-WDR4900 y una AMD Radeon HD 7470 conectados como eGPU, KittenLabs logró instalar Debian Linux y GTA: Vice City y funcionó sorprendentemente bien, como puedes ver en el vídeo. abajo.

Un hack de videojuego original

La historia detrás de este truco de juego clásico es muy interesante. Se eligió especialmente el enrutador Wi-Fi TP-Link TL-WDR4900 porque tiene reputación de buen rendimiento (para su fecha de lanzamiento en 2013). En el corazón del rendimiento del enrutador se encuentra un procesador NXP/Freescale QorIQ P1014 que, según explica KittenLabs, es en realidad un procesador PowerPC e500v2 de 32 bits.

Por supuesto, incluso un enrutador potente no tiene una ranura PCIe compatible con GPU de PC, por lo que fue necesario realizar algunos ajustes para instalar una eGPU. KittenLabs diseñó una PCB miniPCIe personalizada y la conectó al enrutador después de cortar los rastros PCIe que van desde la CPU a uno de los conjuntos de chips Atheros. Esto les dio una interfaz PCIe 2.0 gratuita y funcional.

Los retos a afrontar

A continuación, fueron necesarios algunos ajustes de software. KittenLabs instaló OpenWrt en el enrutador, pero debido a sus limitaciones obvias como sistema operativo de propósito general, decidió iniciar una versión de Debian Linux, con módulos de kernel adicionales habilitados, suficientes para una plataforma de juegos compatible con el controlador de gráficos AMD.

Un experimento inicial con una GPU AMD Radeon RX 570 chocó contra un muro de incompatibilidad, pero cambiar a una tarjeta AMD Radeon HD 7470 heredada con un controlador más antiguo rápidamente dio sus frutos: el sistema comenzó a funcionar.

Solución de problemas

Se tuvieron que superar muchos obstáculos antes de poder probar el TL-WDR4900 para ejecutar GTA: Vice City. Aún más urgente, KittenLabs tenía que conseguir una versión del juego que se ejecutara felizmente en el sistema Debian/PowerPC. La solución residía en reVC (una versión de ingeniería inversa de GTA Vice City, con el código fuente disponible públicamente) que se compiló para la plataforma del enrutador. Desafortunadamente, el juego todavía era solo una sombra de lo que era antes, con errores cuando estaban involucrados NPC. Este problema paralizó el proyecto durante varios meses.

Una versión para Wii U de reVC en línea generó nuevas esperanzas, especialmente cuando el autor ayudó a KittenLabs. Sin embargo, todavía había algunos problemas de corrupción de gráficos…

En última instancia, el gran avance se produjo después de entregar una actualización de la biblioteca de gráficos Mesa 3D utilizada por el enrutador como parte de su instalación de Linux. Esto no fue tarea fácil, ya que también era necesario actualizar varias dependencias, pero una vez hecho, «el renderizado del reproductor comenzó a funcionar correctamente en hardware real (¡con aceleración!)». » Por un lado, esta actualización hizo que el proyecto fuera un gran éxito, como puedes ver en el vídeo (arriba) y en la página del blog. Sin embargo, KittenLabs estaba un poco insatisfecho por no saber exactamente cómo se resolvieron los problemas anteriores.

El blog KittenLabs es un lugar interesante para pasar el tiempo. Además del nuevo artículo de GTA: Vice City sobre un enrutador, hay muchos otros trucos, tecnología, informática retro y publicaciones centradas en el arte que puedes consultar. Uno de nuestros elementos archivados favoritos es el sintetizador de disquete analógico que reproduce composiciones musicales utilizando una unidad de disquete de 3,5 pulgadas.

Fuente: www.tomshardware.com