Analogue 3D's new firmware fixes GameShark and HDR brightness
Analogue has released firmware 1.2.3 for the Analogue 3D. The update brings CPU improvements and finally fixes physical GameShark compatibility.
Analogue has released firmware version 1.2.3 for the Analogue 3D console. The update dropped today and brings a handful of core CPU improvements alongside fixes for GameShark compatibility and HDR brightness.
I have an Analogue 3D sitting on my desk right now. People love to dunk on the Nintendo 64 library. They point out that the original PlayStation had thousands of games while the N64 barely broke 300 releases in North America. That is factually true, but there are some great games in there. You do not need thousands of games when you have Ocarina of Time, F-Zero X, Mischief Makers or Bomberman Hero. The system also defined local multiplayer for an entire generation with GoldenEye 007 and Mario Kart 64.
Playing those original cartridges in 4K on a modern OLED display is exactly why I bought this $250 FPGA box when it launched last November. Early polygonal 3D games usually look like a muddy mess on flat panels. The Analogue 3D uses hardware level recreation to output a pristine digital signal that software emulators still struggle to match perfectly.
CPU tweaks and RSP timing
According to the official patch notes, version 1.2.3 tackles a few specific hardware quirks. The development team improved the cartridge detection routine. They also fixed an issue where the operating system brightness would behave erratically when HDR was enabled.
On the emulation side, the update includes core improvements to both the main CPU and the RSP (Reality Signal Processor) behavior. The Nintendo 64 is a notoriously complex machine with unified memory and co-processors that constantly talk to each other. Getting the RSP timing exactly right is usually the hardest part of any N64 project.
Intercepting the boot sequence
The most requested fix in this patch is probably the GameShark support. Earlier firmware versions struggled to boot games when passed through the classic cheat device.
The GameShark works by physically sitting between the console and the game cartridge. It intercepts the boot sequence to inject its own code into the system memory before handing control back to the game. This kind of hardware level interruption is very difficult to handle on an FPGA board that is already trying to perfectly mimic the original silicon. Version 1.2.3 finally smooths out that handshake.
Choosing between ROMs and bug fixes
This brings us to the most annoying part of owning an Analogue console. Like the Super Nt and Mega Sg before it, the Analogue 3D has an unofficial jailbroken firmware floating around that lets you boot ROMs directly from an SD card. The problem is that the jailbreak developer usually takes a few weeks or months to port these official updates over to the rooted branch.
I now have to make a choice. Do I keep my current rooted firmware so I can play patched English translations of Custom Robo, or do I flash official version 1.2.3 so my physical GameShark works properly? It is a frustrating waiting game.
It is a minor complaint for a piece of hardware that otherwise feels like magic. Christopher Taber and his team at Analogue have spent the last decade building these high-fidelity FPGA recreations. The 3D is their most ambitious project yet. Replicating the N64 circuit by circuit was considered nearly impossible just a few years ago. Seeing them push out core CPU timing updates four months after launch shows they are still actively refining the accuracy of the board.
Comments ()