Hardware hacker runs GTA Vice City on a router with a little help from an eGPU and Debian Linux

KittenLabs project work
(Image credit: KittenLabs)

A German hardware hacker by the name of KittenLabs has published a blog post about how they managed to get the classic GTA: Vice City running smoothly on a router. Using an unusual hardware concoction of a TP-Link TL-WDR4900 and an AMD Radeon HD 7470 connected as an eGPU, KittenLabs managed to install Debian Linux and GTA: Vice City and it ran surprisingly well, as you can see in the video below.

The story behind this classic gaming hack is very interesting. The TP-Link TL-WDR4900 Wi-Fi router was singled out for attention as it has a reputation for great performance (for its release date of 2013). Central to the router’s performance is an NXP/Freescale QorIQ P1014 CPU which KittenLabs explains is actually a PowerPC e500v2 32bit processor.

Of course, even a powerful router doesn’t have a PC GPU-friendly PCIe slot, so some hackery was required to install an eGPU. KittenLabs designed a custom miniPCIe breakout PCB and attached it to the router after cutting PCIe traces leading from the CPU to one of the Atheros chipsets. This got them a working spare PCIe 2.0 interface.

Next, some software wrangling was required. KittenLabs installed OpenWrt on the router but due to its obvious limits as a general-purpose OS decided to bootstrap a version of Debian Linux, with additional kernel modules enabled – enough for a gaming platform with AMD graphics driver support.

Initial experiments with an AMD Radeon RX 570 GPU hit an incompatibility wall, but switching to a legacy AMD Radeon HD 7470 card with an older driver quickly paid dividends – the system started working.

(Image credit: KittenLabs)

There were many hurdles to overcome before the TL-WDR4900 could be tested running GTA: Vice City. Most pressingly, KittenLabs had to get a version of the game that would happily run on the Debian / PowerPC system. The answer lay in reVC (a reverse-engineered version of GTA Vice City, with the source code publicly available) which was compiled for the router platform. Sadly, the game was still just a shadow of its fully supported self, with glitches when any NPCs were involved. This issue caused the project to be stuck for several months.

A Wii U port of reVC online sparked new hope, especially when the author helped KittenLabs. However, there were still graphical corruption issues…

Finally, the breakthrough came after delivering an update to the Mesa 3D graphics library used by the router as part of its Linux installation. This wasn’t a breeze, as a number of dependencies to be updated as well, but once done “player rendering started to work fine on real hardware (with acceleration!).” On one hand, this update made the project a resounding success, as you can see from the video (top) and the blog page. However, KittenLabs was a little dissatisfied to not know exactly how the previous issues were resolved.

(Image credit: KittenLabs)

The KittenLabs blog is an interesting place to spend some time. As well as the new GTA: Vice City on a router post, there are plenty of other hacks, computing, retro computing, and art-focused posts to absorb. One of our favorite archived posts is the Analog floppy synthesizer which plays musical compositions using 3.5-inch floppy drive hardware.

Mark Tyson
Freelance News Writer

Mark Tyson is a Freelance News Writer at Tom's Hardware US. He enjoys covering the full breadth of PC tech; from business and semiconductor design to products approaching the edge of reason.

  • danny009
    Still no actual fix for frame rate goes beyond 100 on Steam version, even NVIDIA control panel wasn't able to limit on my rig. Who cares, soundtrack is awesome, no wonder people dislike modern music.

    TYVjDcaiD20View: https://www.youtube.com/watch?v=TYVjDcaiD20
    Reply