NABU Internet Adapter

Experience NABU as intended with the NABU Internet Adapter software - including Homebrew channels, Cloud CP/M, Retro On-Line chat, and more! This software emulates the NABU Network Adapter by providing internet access.

DJ Sures created the first official NABU Internet adapter as a software replacement for the Nabu Network Adapter (NA). The NA was a hardware component connected to the Television Coax Cable and NABU PC. It would decode digital information from the analog cable and send it to the Nabu computer.

The NABU Internet Adapter is a text-based menu-driven application that emulates the NABU Servers and NABU Network Adapter, which provide entertainment and family software to the NABU Personal Computers.

1) Look at the bottom of this page for the troubleshooting FAQ.

2) To report issues, submit an issue on the NABU Forum.

RetroNET Cycle Application List


Main window of the Internet Adapter

NABU Channels allows you to select from the original NABU Network Cycles, or homebrew applications written by the community.

The settings menu has many options for customizing and tweaking the behavior for running and creating homebrew apps.

RetroNET Chat is an online chat that runs on your NABU. Using the NABU Computer as intended over a world-wide network!

Use the homebrew Telnet  with vt100 emulation to connect your NABU to BBS's and your Windows/Linux/MacOS computers.

Experience homebrew demos, including Bad Apple with music on the original 3mhz NABU PC!

Witness the epic NABU Intro. The NABU PC inspired to blend in with your existing entertainment units, such as the VCR. 

The Main Menu Cycles are a snapshot from the original NABU Network before it was shut down in 1984.

Many multiplayer family fun games from the original NABU Network of 1984!

NABU Internet Adapter Downloads

Version 2024.05.18.00

Download the version for your operating system and processor type. For installation instructions, scroll down further, and there are details for various operating systems. Further down the page are instructions on making the RS422 cable that connects to the NABU Personal Computer for emulating the NABU Network Adapter.

*Note: If you are experiencing issues getting up and running, there is a trouble-shooting guide below on this page.

Windows Installer


Windows Portable


Windows Portable

Read more







mac OS


mac OS


Windows Installation

For Windows, the download includes an installer to get up and running with less effort.

1) Download the zip file containing the installer to a folder. 

2) Extract the contents of the zip file to a folder.

3) Double-click the installer in the zip file to launch the installer.

4) The application will be installed and available anytime from the Start Menu and Desktop.

Known Issues
 - Read the included README.TXT file in the ZIP if you're installing the portable version.

MacOS Installation

The MacOS edition includes a binary that can be launched from the command line.

1) Unzip the files to a folder

2) In a terminal shell, give the file executable permission
% chmod +x ./NABU-InternetAdapter-84

3) From a terminal shell window, launch the application with the following command:
% ./NABU-Internet-Adapter-84

Known Issues
 - Read the README.TXT included in the ZIP and follow the instructions.

Linux Installation

The Linux edition includes a binary that can be launched from the command line.

Known Issues:
- Read the README.TXT included in the ZIP

Installation Instructions

1) Download the ZIP for your Linux OS and CPU. 

2) Unzip the files into a folder

3) CHMOD the binary to make it executable

$ chmod +x ./NABU-Internet-Adapter-84

4) Execute the binary and run it in a command-line terminal

$ ./NABU-Internet-Adapter-84

Putty and Remote Terminals
If you experience an issue using the Internet Adapter with PUTTY, please configure the correct terminal type in the Putty settings. 

1) In PUTTY settings, go to

2) And enter

Command-line Arguments

The NABU Internet Adapter supports several command-line arguments for different configurations. You can launch NABU-Internet-Adapter-84 -h (with a -h argument) to get a list of the supported command-line arguments. 

The command-line arguments allow for the specification of parameters such as what configuration file to use or to run headless with no display output.

Run As A Service

For a true headless experience on your NABU Computer, you can run the NABU Internet Adapter as a service for both Windows or Linux.

- Follow the instructions in the included SERVICE.TXT file in the installation package.

- Follow the tutorial created by Technically Working in his video HERE.

NABU Network Cable Summary

The RS422 portion of the cable must be as short as possible, or two twisted pairs if possible. Also, keep the RS422 piece of cable away from AC power cords. The cable should be shielded to the GND pin of the DTech RS422 adapter only. Lastly, I advise using a MIDI cable to avoid having to solder the tiny pins of a DIN-5 connector. This cable is the lifeline for your NABU, so do not chance a poor-quality effort. If you use a MIDI cable, it won't be a twisted pair, so keep it short. If you need a longer-distance cable, consider extending the USB portion and not the RS422 portion (unless it is a twisted pair).

*Note: GND should only be connected to the shield on one end. If your cable is grounded on the DTECH connector, do not connect the shield to the outer rim of the DIN connector. Why?

Cable Testing

Ready to see if your NABU's lifeline cable is rock solid?

NetMuse is the most communication-heavy application ever created for the NABU. The best test is running the NetMuse application to see if it locks up. Ideally, a proper setup will run the NetMuse non-stop on repeat overnight. The longer it runs without locking up, the better your cable is.

Find the NetMuse application in one of two locations:

NABU Channel

On the main screen of the Internet Adapter will be a list of NABU Channels. Locate the NetMuse in the list under Demos, and select it. You must double-click to select an item, inwhich the selected item will be displayed in yellow at the top status bar.

Cloud CP/M

Load Cloud CP/M from the NABU Channels list. When Cloud CP/H has loaded, you may type HELP for information on how to use it. For those who are familiar with CPM, you can skip that step.

The NetMuse application is titled NETMUSE.COM and can be found on the A: Drive in User Area 1. So, once you boot into CP/M...

1) Type USER 1 to enter the User Area #1

2) Type DIR to see the list of files on the User Area #1

3) Type NETMUSE to execute the file.

Making The Cable

The NABU computer communicates to the Network Adapter with an RS422 connection. The DTech RS422 adapter will convert USB to the appropriate protocol required for the NABU to load files from your PC or Raspberry Pi.

5 Pin DIN Pinout

This is the pinout of a 5 DIN connector from the solder side of the connector. 

*Note: GND should only be connected to the shield on one end. If your cable is grounded on the DTECH connector, do not connect the shield to the outer rim of the DIN connector. Why?

RS422 Breakout 

If connecting directly to the DTech RS422 adapter breakout, use this image as a reference.

RS422 DB9 Cable

If you have a DB9 cable with wire codes. Well, I'd verify the wires first, but this includes the wire colors to make it easy.

*Note: GND should only be connected to the shield on one end. If your cable is grounded on the DTECH connector, do not connect the shield to the outer rim of the DIN connector. Why?


Note: Before attempting the troubleshooting steps below, verify that you are using the latest Internet Adapter version.

I get timeouts, lockups, and other communication issues

This could mean one of four things...

1) RS422 cable is getting interference and might need to be shielded. Connect the shield of the cable to the GND pin on the RS422 adapter only (find out why). Also, check your solder joints to ensure they are securely connected and not touching the outside plug surround or other wires. An insufficient electrical connection is a bad electrical connection, simple as that. Your cable is the lifeline to the NABU PC; ensure it is reliable and built correctly. 

*Note: GND should only be connected to the shield on one end. If your cable is grounded on the DTECH connector, do not connect the shield to the outer rim of the DIN connector. (find out why)

2) Keep your cable away from power cords and wires carrying AC voltage. Unless your communication cable is twisted pair or has a shielded ground, you may experience issues from AC voltage interference. If the RS422 portion of your cable (not the USB part) is near or touching AC power cords, you will experience a high rate of failure. * This is the most likely cause of issues *. I recommend keeping the RS422 portion of the cable to be short as possible because it is the most affected by interference.

2) The RS422 USB adapter may not have the capacity required on a USB HUB or docking station. Docking stations that share HDMI output, specifically multiple monitors or 4K resolutions, may have bandwidth limitations that prevent the RS422 adapter from performing correctly. Ensure the RS422 adapter is connected directly to a computer USB port.

3) Baudrate is incorrect because you are using a Linux system. The .NET ports library has a bug that does not allow selecting the correct baud rate for the NABU. This is documented in many places on this website, and a link is provided above in the Linux section. Until this bug is fixed in the Linux .NET ports library, you will continue to experience issues if operating at 115,200 bps, which is not the correct baud rate for the NABU

4) Clean the NABU Adapter Connection. The NABU computers are 40+ years old and have not been stored in ideal environments. The connection terminals may have corrosion, dust, or dirt that causes a poor connection. With the power off and unplugged, I sprayed the plugs with 99% alcohol and pushed the mating plugs in and out a few times (that's what she said). 

The log gives me an error for either get 00 and 3E errors.

The cable is connected backward. That means your RX is connected to the TX of the NABU. Also, verify the polarity. We're not sure why many DIN diagrams are incorrect on the internet. So we provided a pinout of the DIN connector on this page above that is correct and from Wikipedia. The image looks at the soldered part of the connector, not the part that goes into the NABU. That means you hold the connector with the soldered part facing you; that way, you can match the pins to the diagram.

I get an error that 00 was received.

The value of 00 means NULL. This means the cable has been connected incorrectly to the RS422 USB adapter. Verify the NABU's positive wires connect to the RS422's positive wires and the NABU's negative wires connect to the RS422's negative wires. Also, ensure the transmit connects to receive and the receive connects to transmit.

There have been reports of 5 Pin DIN connector drawings on the internet as being incorrect. Please reference the correct drawing that we have on this page.

What kind of joystick can I use on the NABU?

Any Atari style joystick will work with the NABU. Simply get an Atari compatible joystick and plug it into the keyboard joystick connections. 

Putty does not display the Internet Adapter correctly

If you experience an issue using the Internet Adapter with PUTTY, please configure the correct terminal type in the Putty settings.

1) In PUTTY settings, go to

2) And enter

Access Denied on COM Port in Linux or MacOS

If you receive Access Denied when attempting to use the COM (/dev/ttySx) port, you may require ROOT. In that case, launch the application with the sudo command.

$ sudo ./NABU-Internet-Adapter-84

Internet Adapter crashes immediately and does not load

Some Linuxes (including Ubuntu) has an issue where Internet Adapter will not load and crash immediately. This can be fixed with a solution found by a user named jefferystone. He suggests the following...

1) Create a symbolic link in the folder where the NABU-Internet-Adapter-84 is
  cd /path/to/NABU-Internet-Adapter-84
  ln -s /lib/x86_64-linux-gnu/

2) If you do a ls -l in the folder, you should see the symlink: -> /lib/x86_64-linux-gnu/

Change Log

- Initial launch of Windows and Mono (Linux/macOS) versions

- Fix in Windows for saving the configuration
- Checks for an available update on startup if there is an internet connection
Clear the PAK Cache option in the File menu. This will clear the local cache of loaded and parsed PAK files, which is helpful if you test homebrew applications.
- Allows local .npak segment files to be loaded, so you do not need an internet connection.

- Display if using the current version and there are no updates
- Fix for not being detected as a virus 

- Option to turn off the progress bar animation for slow SBCs, like the Raspberry Pi Zero
- On Linux, store the configuration file relative to the local binary rather than /usr/share
- Fix segfault when selecting the local folder for local pak files

- Fix for timing by removing the timing as it is no longer needed
- Added experimental TCP Server

- Added option to clear debug window when Nabu sends init (default on)
- Fixes CRC errors in real-time or even real-cycle packets
- Shortcut keys for clearing pak cache for homebrew developers
- Option to clear PAK cache when Nabu sends init for homebrew developers
- Fix for not having a COM port and wanting to use the TCP server. It does not give an error when saving an empty COM port

- Fix for the saving project in Windows
- TCP Server does not stop after every client disconnection
- Baud rate reset for all users to the correct value

- Allows loading custom homebrew NABU Channels
- Added RetroNET online NABU chat

- Added support for homebrew to download assets
- Bug fix for RetroNET chat tunnel, which properly disconnects when Mame clients are closed without disconnection.

- Added additional support for more homebrew internet features (will publish examples in C library shortly)
- TCP Server no longer disables itself when MAME closes/disconnects.

- New NABU Channel dropdown organized by category
- Fix for new NABULIB features of loading assets and making TCP calls
- Merry Christmas!

- Added support for the RetroNET Telnet Client
- Support for the new NABULIB was added (find it in DJ's GitHub). The new NABULIB can request data/files over HTTP (up to 256). The Internet Adapter will store the file and allow the NABULIB HomeBrew application to use the data as needed. This can be code, images, music, or whatever your homebrew application requires.

I added a new parameter in the settings for RetroNet TX Delay because using HCCA Interrupts increased the performance of the RetroNET apps. However, some people were still experiencing issues with missing characters on MAME.
- Clear PAK cache when refreshing the NABU Channel listing
- Fix for TCP MAME Server that would require the Internet Adapter to be restarted

- Added support for new NABULIB file storage handlers.
- Local config file moved in Windows to My Documents (rather than Common Documents)
- Use disable colors for the Nabu channel dropdown when local file support is selected
- Lowered RetroNet delay default to 25ms

- Removed TX delay from serial because the real NABU hardware works with the updated NABU-LIB RX Interrupt buffer. The TX delay option only applies to TCP connections to accommodate MAME, not throttling the HCCA speed. 

- Rewrote the application to work in the command line, which is compatible with Windows, OSX, Linux, and various CPU architectures. The application can now be controlled remotely or locally with an SSH/Telnet terminal. The mouse will also work in terminals that support it.
- Added new file features for NABU-LIB

- Added scrollbars to the debug text display and Nabu channel selection list.
- Bug fix the TCP server start/stop button not refreshing
- Removed the title from the top of the window, as it's unnecessary because, of course, we know what program it is :)

- Support was added for the new homebrew NABU channel format.
- Stopped encrypting the cycles since they've finally been cracked. Good work!
- Added a DJ playground with many new programs, such as F80 Fortran, Cobol-80, MS Basic, and more.

- Whole pile of GUI enhancements and navigation fixes. 
- There is a new error message when using Linux as the default baud rate because the Microsoft dev group is working on a bug with SerialPort on .Net 7.
- Choosing TTY/COM port in Settings swapped Combobox with a Listbox because the term wasn't rendering correctly. Listbox is much easier
- Added scrollbars for stuff
- Handle crash errors better by resetting the term and displaying the full message stack trace

- Busy Friday, the IA has an improved rendering engine, so it should be more responsive and produce correct popup menus
- Fixed a filename/folder separator issue with macOS and Linux when using a remote file system

- Lower cost logging (not as much, so renders faster)
- UI performance improvement 

- Removed detailed logging from the UI
- Added a few new remote filesystem features for Cloud CP/M (rn_fileHandleReadSeq() and rn_fileHandleSeek())
- Modified rn_fileHandleRead() to return the number of bytes read to be more similar to standard C read functions

- Updated logging window so it should not lock up, hopefully; cross your fingers. Oh geez
- The application Settings tab has a new option for maximum log window length
- It displays a log window when the closing file handles it since it does the same for an open file handle. (used in RetroNET remote file systems)

- Updated with a small fix for the remote file system for the Cloud CP/M release.

- This is a fix for recovering when Cloud CP/M requests a drive that does not exist.

- RetroNET temporary downloaded filenames are sanitized rather than hashed. This should make it easier to find specific files.
- There is a new RetroNET option for timeout (hours) of downloaded files. This ensures your server does not constantly download new disk images when you change drives—the default for a 12-hour cache.

- Removed HTTP download cache expiry. Instead, I delete the temp files during NABU INIT.

- Several fixes to improve the Cloud CP/M stability for the remote file system.
- Fix for RetroNET Cloud CP/M apps to exit gracefully (i.e., Telnet and Chat)

- TCP pass-through mode fix for exiting pass-through when Nabu reboots. Waits for 3 0x83 in a row and exits
- Message on settings window under Baudrate for Linux users to use 115200 during Microsoft .Net bug
- Fixed Logging that was in reverse order for multiline items

I changed the default TCP Delay value to 0 because it works on my machine. If you have issues, increase them. 
- Included a README.TXT with details for Linux users who do not check the website for instructions on how to work around any of the bugs from .Net or Ubuntu

- Several bug fixes
A new feature automatically caches all cloud files until they are updated on the server. This means files will only update if they have been updated on the cloud server. Your NABU will be faster and use less bandwidth.
- Changed the default baud rate to 111,861. I got the original baud rate from someone who mentioned it in a YouTube comment. However, I did the calculation today and wondered if this new baud rate is correct. The actual baud rate would be 111,860.78125bps, which is impossible to have decimal values. The baud rate is calculated by the TR1863 datasheet, which is the clock speed divided by 16. So, the clock fed to the TR18 is divided with a flipflop, so it's 3579545 divided by 2 and then by 16. The tr1863 datasheet says CLOCK/16 to get the frequency.
- Removed the TCP Delay option because it's recently been rock solid on MAME.
- Added beta support for the IAControl that allows NABULIB to control settings and UI of the IA.

- Bug fix when attempting to access a remote file that did not exist would crash Cloud CP/M. A proper error is returned instead of halting the machine.

- Support was added for the TCP Client Stream of NABULIB. This is required for the latest Telnet and RetroNET chat.
- There are a few other optimizations and changes, such as better logging messages for errors and less logging for redundant stuff.

- Added support for HTTP compression to make downloading resources faster and use less bandwidth
- Displays in log the download file size and elapsed transfer time
- No longer displays "Ping" in the console window when ping is running on cloud cp/m for testing connection

- The Internet Adapter supports printing to a file from Cloud CP/M. The files are stored in the Storage Folder on the PC. The files can be printed to PUN (punch card) or LST (printer) ports.

- Removed the hardware handshake parameter on the serial port connection per this bug issue

- Added support for RetroNET TCP Server. This allows applications to host TCP server connections, and most notably, it will enable Cloud CP/M to allow TCP to Telnet connections. RDR:=UR1: for input, and CON:=UC1: for output. [example]

- Fix for using cached files downloaded when there is no internet connection.

- Ability to save the default NABU Channel when the Internet Adapter loads

- Added support for new retronet commands. This is needed for the new jukebox CPM application.

- Ability to log all communication to a file between the Nabu and pc

- Ability to log the console to a file

- Added new protocol extensions for things like NABUCAM 
- New headless support where you can choose what headless to use 
- Lots of little changes that you will see because it's rock'n :)

- Bug fix for the NADOOM when hitting the H button for help
- Better resizing of the video feed from the camera for NABUCAM
- Added support for Headless Dev mode

- Added new features for the IA Control protocol used for headless apps. Specifically, the latest update includes a description of the categories when browsing the headless app. You'll have to update the latest headless app in the IA settings to get the feature working.
- In headless mode, the IA will not alternate between headless and the selected Nabu channel on reset. Instead, the IA will always load the headless until a nabu channel has been selected. This avoids the alternating experience during resets.

- CPM Drive is automatic and will create a D drive without manually running the CPM drive program. Any files in your Store folder will appear on the D drive. This setting can be adjusted in the Settings menu.
- Extended the IA Control protocol for new headless features, including news icons and more support for past and present news for an upcoming news app.
- Support has been added to the headless protocol for using the speech synthesis generator when launching apps from the latest headless program. You can specify the latest headless for your IA in the settings menu. (*note: speech synthesis only works on Windows because I'm using a library to generate speech in the IA rather than doing it on the Nabu.)

- In preparation for VCFE, Discord user Henyryryry had asked if he could print from the NABUCAM. Well, yes, yes, you can now!
- A few GUI enhancements, mainly in the settings menu. A description is shown when selecting a headless option.
- A few new extensions to the IA Control protocol, such as support for news images and other stuff.

- Sorts channels alphabetically, which also does it in the headless display
- New IA Control for getting the datetime and specifying the format
- Any .NABU files in your Local Source folder will be displayed in the Local channels category in both headless and the IA

- Automatically scans the Local Source folder for any .NABU files and displays them in the Local Source channel group in the IA and headless. If you add a .NABU file to the Local Source folder, all the .NABU files will be viewed in the Local Source channel group.

- Added new commands for the IA Control (headless) to request the internet adapter version and if there is an update. This information is displayed in the Help window of the headless program when pressing H.

- Support was added for a new digital audio streaming protocol. You can test it in the Demos channel by running "NetMuse". You can also run NETMUSE.COM on Cloud CPM A: User Area 1.
- NABU Internet Adapter.exe accepts command line parameter for specifying the config file

- Bug fix for ARM, Linux, and x64 where the old binary would not execute.
- Enhanced audio processing for programs such as NetMuse and any speech synthesis (as seen in my video)

- Added command-line parameter to run the internet adapter as a service with no console output or input for people running headless configurations.

- Added support for NABU CAM in COLOR! Brilliant TMS9918a 16 colors... well, 15 colors including black, and 1 is transparent so we pretend that one doesn't exist. 

- Brijohn raised an issue that -n headless commandline parameter was using all the cpus. The dummy console driver was looping because it likes to gobble up CPU cycles nom nom nom nom. Fixed
- GTAMP had some issues with his binaries being parsed as NABU files in the local source folder. Fixed

- Added support for new headless which can view more .NABU files in the local source folder