NES Radar brings real time aircraft tracking to Nintendo’s 8-bit console

An original Nintendo Entertainment System can now track aircraft flying near airports around the globe. Yes, an NES. NES Radar takes live ADS-B flight data from a modern computer and feeds it into Nintendo’s 8-bit console, where nearby aircraft appear on a compact radar display. Pick an airport, wait for fresh traffic data and little aircraft markers begin moving across the screen. It’s a strange pairing on paper. Modern aviation data meets a machine launched in the 1980s. In practice, the setup makes technical sense. A computer handles internet access and data processing. The NES handles the display. No browser. No network stack on the console. No attempt to make 1980s hardware perform jobs far beyond its limits.

An original Nintendo Entertainment System can now track aircraft flying near airports around the globe. Yes, an NES. NES Radar takes live ADS-B flight data from a modern computer and feeds it into Nintendo’s 8-bit console, where nearby aircraft appear on a compact radar display. Pick an airport, wait for fresh traffic data and little aircraft markers begin moving across the screen. It’s a strange pairing on paper. Modern aviation data meets a machine launched in the 1980s. In practice, the setup makes technical sense. A computer handles internet access and data processing. The NES handles the display. No browser. No network stack on the console. No attempt to make 1980s hardware perform jobs far beyond its limits.

Pick an airport and start tracking

NES Radar starts by asking for a four-letter ICAO airport code. You enter it using a controller plugged into controller port one, press Start and the software begins displaying aircraft within nine nautical miles of your chosen airport.

The airport can be anywhere supported by the flight-data service. Pick a major international hub and the screen can fill quickly. Choose a smaller airport and traffic may arrive at a calmer pace. NES Radar can display up to eight aircraft at once. If more planes enter the selected area, the software prioritises nearby traffic.

Select an aircraft and extra information appears, including altitude, speed, vertical rate and distance from the airport. It’s enough data to make the display useful rather than leaving aircraft as anonymous dots moving around an 8-bit screen.

The NES isn’t secretly connecting to the internet

The clever part sits outside the console. A companion application runs on macOS, Windows or Linux. It retrieves live ADS-B aircraft information, filters the incoming data and converts it into a format suitable for the NES.

Communication runs at 9,600 baud over a serial connection. Data travels both ways. The computer sends aircraft information to the console, and the NES sends airport selections and control data to the computer.

This split keeps each machine doing work suited to its capabilities. The PC deals with web connections, data requests and processing. Nintendo’s console receives a much smaller stream of prepared information and draws it. Simple idea. Rather neat execution.

Eight aircraft is a hardware limit, not a design accident

Trying to display live aviation traffic on an NES brings a few restrictions. The console’s Picture Processing Unit has tight sprite limits, including restrictions on how many sprites can appear across one horizontal scanline. NES Radar represents each aircraft using paired 16 × 16 pixel markers, so crowded sections of the display can quickly put pressure on available graphics resources.

The software deals with this using sprite priority rotation and controlled flickering. Aircraft remain visible without pretending the NES has graphics hardware from a later console generation. Eight aircraft might sound tiny next to a modern flight-tracking website capable of showing thousands of flights across a continent. On an NES, eight moving targets complete with live data present a very different technical problem.

The program keeps users informed about the data connection too. Status information shows whether the console is idle, receiving a fresh packet or waiting for new information. If no valid update arrives for ten seconds, NES Radar keeps the previous traffic display on screen and switches to a waiting state. Numbered error messages can identify rejected packets and communication problems.

Controller port two becomes the data connection

Getting NES Radar running on real hardware takes more than copying software onto a cartridge. The setup uses controller port two for serial communication with the host computer. A 5 V FTDI USB-to-TTL serial adapter provides the connection, with separate 1 kΩ resistors used on the signal lines.

Controller port one stays free for normal input. You’ll need a compatible flash cartridge to run NES Radar on original hardware, plus the serial hardware, wiring and a computer connected to the internet. NTSC NES systems have been tested. PAL support isn’t currently claimed.

There are software differences between platforms too. macOS gets a self-contained application, with Windows and Linux using a Python-based server setup. Testing has concentrated mainly on macOS, so the other platforms remain the less established option.

It’s a flight tracker running where you wouldn’t expect one

NES Radar doesn’t try to turn Nintendo’s console into a miniature modern PC. Its approach is much more practical. A current computer gathers and processes live aircraft information. The NES receives a trimmed data stream and turns it into an 8-bit radar screen. Each side handles a manageable part of the job.

The limits remain obvious. Nine nautical miles. Eight aircraft. A 9,600-baud serial link. Yet those limits are part of how the project works. NES Radar takes current flight information, reduces it to something an NES can process and presents the result on original Nintendo hardware.

It’s not pretending to be a replacement for a full flight-tracking service. It’s a working technical experiment with a very clear purpose: put live aircraft traffic on an NES screen and make the whole thing genuinely usable.

Spread the love
error: