In a remarkable display of technical prowess and dedication, coding wizard FrenkelS has successfully ported his Doom64KB engine to the venerable Neo Geo system, demonstrating two fully functional levels, E1M1 and E1M8, within a Neo Geo emulator environment. This achievement stands as a significant milestone in the realm of retro gaming homebrew development, challenging long-held assumptions about the capabilities of SNK’s iconic 2D powerhouse and adding another fascinating chapter to the enduring legacy of id Software’s seminal first-person shooter, Doom.
The announcement, initially shared by RetroRGB, highlights FrenkelS’s expertise in porting classic titles like Doom and Wolfenstein to various platforms. His Doom64KB engine, a meticulously crafted recreation or demake of the Doom 64 engine designed for constrained environments, now breathes new life into the Neo Geo, a console primarily celebrated for its stunning 2D sprite-based graphics and arcade-perfect conversions. The successful execution of two levels, complete with texture-mapped walls and the characteristic verticality of the original Doom engine, has generated considerable excitement within the retro gaming community.
The Neo Geo’s Technical Landscape and the "Can It Run Doom?" Conundrum
To fully appreciate the magnitude of FrenkelS’s accomplishment, it is crucial to understand the technical architecture and historical context of the Neo Geo. Released by SNK in 1990, the Neo Geo MVS (Multi Video System) for arcades and AES (Advanced Entertainment System) for home consumers was a marvel of its time. Positioned as a premium console, it boasted specifications that allowed it to deliver unparalleled arcade-quality gaming experiences directly into homes. Its core components included a Motorola 68000 CPU running at 12 MHz, a Zilog Z80A CPU at 4 MHz for sound processing, and custom graphics chips. The system was renowned for its ability to handle large sprites, extensive tilemaps, and a rich color palette, making it a powerhouse for 2D fighting games, run-and-guns, and platformers. However, its architecture was inherently optimized for two-dimensional graphics, lacking dedicated hardware acceleration for 3D rendering, a feature that would become standard in later console generations.

This 2D-centric design led many to believe that running a true 3D game like Doom on the Neo Geo would be an insurmountable challenge. The Doom engine, originally released in 1993, utilized a groundbreaking 2.5D rendering technique, often referred to as a "raycasting" engine, to simulate a three-dimensional environment. While not true 3D polygons, its method of drawing walls and floors, combined with varying floor and ceiling heights, created a compelling illusion of depth and verticality. Porting such an engine to a system like the Neo Geo, without significant compromises, was considered highly improbable. This sentiment was notably articulated in a video by popular retro gaming content creator Modern Vintage Gamer (MVG), who provided a detailed technical analysis of why the Neo Geo would likely struggle to run a faithful rendition of Doom. MVG’s analysis underscored the Neo Geo’s limited RAM, relatively slow main CPU for complex 3D calculations, and the absence of hardware support for rendering texture-mapped polygons or raycasting efficiently in software.
The Evolution of Doom Ports and the Significance of Doom64KB
The phenomenon of porting Doom to various devices has become a cornerstone of both gaming history and technical benchmarks. Since its debut, Doom has been ported to an astonishing array of platforms, from calculators and digital cameras to smartwatches and even pregnancy tests, giving rise to the popular internet meme, "Can it run Doom?" Each port, successful or otherwise, serves as a testament to the versatility of id Software’s original design and the ingenuity of programmers in optimizing complex code for diverse hardware.
Some notable ports include the Super Nintendo Entertainment System (SNES) version, which famously suffered from frame rate issues, simplified textures, and a small viewport due to the console’s limited processing power and the necessity of utilizing expansion chips. In contrast, the PlayStation port offered a more robust experience, leveraging its 3D capabilities. The Nintendo 64, released years after the original Doom, received Doom 64, a unique and distinct title developed by Midway Games, featuring a new engine, levels, and art style, rather than a direct port of the PC original. Doom 64 is often celebrated for its darker, more atmospheric tone.
FrenkelS’s Doom64KB engine is a fascinating entry in this lineage. It is not a direct port of the original Doom engine but rather a recreation or demake specifically inspired by Doom 64. This distinction is critical because Doom 64 had its own set of graphical enhancements and design philosophies, which Doom64KB aims to replicate within often restrictive hardware parameters. The fact that FrenkelS’s Neo Geo version "appears to correctly use Doom maps and assets" and "incorporates the verticality that the Doom engine introduced" distinguishes it significantly from simpler "raycast based versions" that might only simulate a basic maze-like environment without faithful asset rendering or complex level geometry. This suggests a deeper level of engine translation and optimization, moving beyond mere visual approximation to a more authentic Doom experience.

A Deeper Look at FrenkelS’s Technical Triumph
FrenkelS’s success on the Neo Geo likely involved a myriad of highly specialized optimizations. The Motorola 68000 CPU, while powerful for its time, was not designed for the intensive floating-point calculations or pixel-level manipulation required for software-rendered 3D. The absence of a dedicated frame buffer in the Neo Geo’s standard architecture means that all graphics are drawn directly to video RAM as sprites or tilemaps. A Doom-style engine, by contrast, typically renders a full screen of pixels. This implies that FrenkelS might have employed clever techniques such as:
- Fixed-Point Arithmetic: Replacing floating-point calculations with faster fixed-point equivalents, a common optimization for systems without dedicated floating-point units.
- Aggressive Code Optimization: Writing highly efficient assembly language routines for critical rendering loops.
- Palette Swapping/Color Management: Given the Neo Geo’s limited palette per scanline, managing color look-up tables effectively would be crucial to render Doom’s distinct visual style.
- Custom Video RAM Management: Devising a method to write rendered "pixels" or segments of the screen to the Neo Geo’s video memory in a way that the system can display them, possibly by treating them as dynamic tile updates or carefully managed sprites.
- Resolution and Frame Rate Compromises: While not explicitly detailed, it is likely that the port operates at a resolution and frame rate carefully chosen to balance visual fidelity with performance, typical of such challenging ports.
The demonstration of E1M1 (Hangar) and E1M8 (Phobos Anomaly) is particularly telling. E1M1 is iconic as the first level of Doom, featuring varied environments, enemies, and interactive elements. E1M8, on the other hand, is the boss level of the first episode, showcasing more complex geometry and often a higher enemy count. Successfully rendering these levels indicates a robust engine foundation capable of handling a significant portion of the game’s assets and mechanics. The accompanying video demonstration further validates the texture-mapped walls and the sense of verticality, confirming that this is far from a simplistic raycaster.
Chronology of a Challenging Port
- 1990: SNK releases the Neo Geo MVS and AES, establishing itself as a 2D arcade powerhouse.
- 1993: id Software releases Doom, revolutionizing the FPS genre with its pseudo-3D engine.
- 1997: Midway Games releases Doom 64 for the Nintendo 64, offering a unique take on the Doom universe with a distinct engine and atmosphere.
- Early 2020s (Approximate): Modern Vintage Gamer (MVG) publishes a video detailing the technical reasons why Doom would be exceedingly difficult to run faithfully on the Neo Geo, solidifying common perception.
- Ongoing: FrenkelS, known for his prowess in porting classic games, develops and refines his Doom64KB engine, targeting various constrained environments.
- Present Day: FrenkelS successfully ports Doom64KB to the Neo Geo emulator, demonstrating two working levels and providing a GitHub repository for the project.
Implications and Future Horizons

FrenkelS’s achievement carries significant implications for several facets of the gaming world:
- For the Retro Gaming Community: This port injects renewed vigor into the Neo Geo homebrew scene. It serves as an inspirational example of what dedicated developers can achieve on aging hardware, potentially encouraging more ambitious projects that push the boundaries of what was previously thought possible. It also reignites discussion and appreciation for the Neo Geo’s under-explored technical capabilities beyond its celebrated 2D strengths.
- For FrenkelS: This project undoubtedly solidifies his reputation as a master of retro code and engine optimization. His ability to dissect, understand, and adapt complex game logic to vastly different hardware architectures is a rare and valuable skill.
- For the "Can It Run Doom?" Legacy: The Neo Geo now officially joins the eclectic list of systems capable of running a recognizable version of Doom. This adds a fascinating entry, particularly given the console’s strong 2D identity and the specific technical hurdles involved. It provides a compelling counter-narrative to previous technical analyses, not by disproving them, but by demonstrating that human ingenuity can sometimes find a way around seemingly insurmountable obstacles.
- Broader Impact on Preservation and Emulation: Such projects contribute to the broader effort of game preservation and understanding retro hardware. By porting and analyzing how these engines function on different systems, developers gain deeper insights into the original game’s design and the target hardware’s nuances. This knowledge can also feed back into improved emulation accuracy and the development of new tools for the retro community.
While the current port runs on an emulator, the existence of a build script for Neo Geo within the Doom64KB GitHub repository suggests the potential for future development towards running on actual Neo Geo hardware, perhaps through flash carts or other modern interfacing methods. The challenges there would involve not just rendering but also input, sound integration, and managing the Neo Geo’s specific hardware quirks without the abstraction layer of an emulator.
This project underscores a fundamental truth in computing: with enough talent, time, and dedication, seemingly impossible feats can often be realized. FrenkelS has not just ported a game; he has expanded our understanding of a classic console’s latent potential and delivered a compelling new reason to revisit the glorious, pixelated hellscapes of Doom on an unexpected platform. The open-source nature of the project, with its GitHub repository available to the public, ensures that this technical marvel can be studied, built upon, and appreciated by a global community of enthusiasts. For those wishing to support the platform that brought this news to light, RetroRGB, through ezgoodnight, offers a Patreon for ongoing contributions to retro gaming coverage and insights.
