GTA: Vice City roda em roteador!

Um hacker alemão chamado KittenLabs publicou uma postagem no blog sobre como conseguiu fazer o clássico GTA: Vice City funcionar em um roteador. Usando uma configuração de hardware incomum que consiste em um TP-Link TL-WDR4900 e uma AMD Radeon HD 7470 conectada como uma eGPU, KittenLabs conseguiu instalar o Debian Linux e GTA: Vice City e funcionou surpreendentemente bem, como você pode ver no vídeo abaixo.

Um hack original de videogame

A história por trás desse hack clássico de jogo é muito interessante. O roteador Wi-Fi TP-Link TL-WDR4900 foi escolhido especialmente porque tem reputação de bom desempenho (para sua data de lançamento em 2013). No centro do desempenho do roteador está um processador NXP/Freescale QorIQ P1014 que KittenLabs explica ser na verdade um processador PowerPC e500v2 de 32 bits.

É claro que mesmo um roteador poderoso não possui um slot PCIe compatível com GPU de PC, portanto, foram necessários alguns ajustes para instalar um eGPU. KittenLabs projetou uma PCB breakout miniPCIe personalizada e a conectou ao roteador depois de cortar os traços PCIe que vão da CPU a um dos chipsets Atheros. Isso deu a eles uma interface PCIe 2.0 gratuita e funcional.

Os desafios a serem enfrentados

Em seguida, foram necessários alguns ajustes de software. KittenLabs instalou o OpenWrt no roteador, mas devido às suas óbvias limitações como sistema operacional de uso geral, decidiu inicializar uma versão do Debian Linux, com módulos de kernel adicionais habilitados, suficientes para uma plataforma de jogos com suporte ao driver gráfico AMD.

Um experimento inicial com uma GPU AMD Radeon RX 570 atingiu um muro de incompatibilidade, mas mudar para uma placa AMD Radeon HD 7470 herdada com um driver mais antigo rapidamente valeu a pena – o sistema começou a funcionar.

Solução de problemas

Muitos obstáculos tiveram que ser superados antes que o TL-WDR4900 pudesse ser testado para rodar GTA: Vice City. Ainda mais urgente, a KittenLabs precisava obter uma versão do jogo que funcionasse perfeitamente no sistema Debian/PowerPC. A solução estava no reVC (uma versão de engenharia reversa do GTA Vice City, com código-fonte disponível publicamente) que foi compilado para a plataforma do roteador. Infelizmente, o jogo ainda era apenas uma sombra do que era, com bugs quando NPCs estavam envolvidos. Esse problema paralisou o projeto por vários meses.

Uma versão Wii U do reVC online despertou novas esperanças, especialmente quando o autor ajudou o KittenLabs. No entanto, ainda havia alguns problemas de corrupção gráfica…

No final das contas, a inovação veio após a entrega de uma atualização para a biblioteca gráfica Mesa 3D usada pelo roteador como parte de sua instalação do Linux. Isso não foi tarefa fácil, já que uma série de dependências também precisavam ser atualizadas, mas uma vez feito isso, “a renderização do player começou a funcionar corretamente em hardware real (com aceleração!)”. » Por um lado, esta atualização tornou o projeto um grande sucesso, como você pode ver no vídeo (topo) e na página do blog. No entanto, a KittenLabs ficou um pouco insatisfeita por não saber exatamente como os problemas anteriores foram resolvidos.

O blog KittenLabs é um lugar interessante para passar o tempo. Além do novo artigo de GTA: Vice City sobre um roteador, há muitos outros hacks, tecnologia, computação retro e postagens com foco em arte para conferir. Um de nossos itens arquivados favoritos é o sintetizador de disquete analógico que reproduz composições musicais usando hardware de unidade de disquete de 3,5 polegadas.

Fonte: www.tomshardware.com