Last month, we passed along Modern Vintage Gamer’s (MVG) confident assertion that Doom is functionally impossible to run on the Neo Geo, owing to the console’s sprite-based display hardware and lack of a frame buffer. We all should have known better than to tell a dedicated group of hackers that something is “impossible,” though, as two recent projects have made great progress toward functional Doom ports on stock Neo Geo hardware
Both of these projects have significant graphical compromises that limit howport, as MVG lays out in a new video. Still, they stand as a testament to the surprising results that clever, determined coders can coax out of legacy hardware
It looks like Doom if you squint
To create the Doom64KB project for the Neo Geo, coder FrenkelS adapted an earlier Doom port they designed to run on 16-bit PC processors like the 8088 and 286. Using that engine, the Neo Geo code then makes a kind of proto-frame-buffer out of the console’s fix layer, an area of display memory that’s usually used to display menus and HUD information on top of gameplay
Credit:
Doom64KB
Credit:
Doom64KB
Meanwhile, the Doom-NG project operates similarly to the sprite-strip raycaster that MVG discussed as a potential option in his original Neo Geo Doom video. While that raycaster only worked on simple, Wolfenstein 3D-style 90-degree-angled grids, though, Doom-NG’s VSlice renderer handles more complex geometry by stepping through a Doom map’s BSP tree to determine what walls and other objects are visible from the player’s perspective. The renderer then uses the Neo Geo hardware to efficiently scale sprites into 16-pixel-wide strips, simulating the wall’s size and position in that column of the screen.
Credit:
MVG / Doom-NG
Credit:
MVG / Doom-NG
The result is an accurate, if stripey, visual representation of a Doom player’s perspective that can be navigated freely at a relatively high frame rate. But the graphical limits of this rendering method are pretty apparent in walls and doors with distractingly repetitive textures and angled surfaces that show awkward “stairstep” edges, especially at close range
Both of these projects are still quite early and will need further refinements to add important elements like enemy logic, music, and weapon selection. Even in this unrefined state, though, the porting community has shown just how efficiently it can tackle a problem once an “impossible” gauntlet is laid down
Kyle OrlandSenior Gaming Editor
Kyle OrlandSenior Gaming Editor
Kyle Orland has been the Senior Gaming Editor at Ars Technica since 2012, writing primarily about the business, tech, and culture behind video games. He has journalism and computer science degrees from University of Maryland. He once wrote a whole book about Minesweeper.
