The Situation
Although the core software underlying the PiDP-8/I software distribution is broadly portable, the dominance of Raspberry Pi OS on Pi hardware means we focus on making it work there first when it comes to final testing. However, we actually develop the software on regular desktop platforms, so it does remain fairly portable, if not quite as much as the union of the individual components in the distribution.
The remainder of this article lists the platforms where the software is known to work and the limitations that prevent it from working on others.
If you need the software to work on some platform where it currently doesn't, we accept patches! You can also send problem reports to our development forum, file a bug report, or discuss it on the users' mailing list.
Debian Derivatives
Raspberry Pi OS is the official OS for the Raspberry Pi, so that is our primary deployment target. However, because it doesn't deviate much from the underlying Debian OS it's based on, the software should work on Debian, Ubuntu, and other sufficiently close derivatives. All instructions given for the PiDP-8/I software assume that you're running one of these where not otherwise stated.
The current stable release of this software successfully runs on the stable release of Raspberry Pi OS as of the time of its release, v13 — a.k.a. Trixie — released in early 2026. Older binary release versions remain available for those who need them.
Building and running on an x86_64 Debian desktop should work. The software should detect the absence of the PiDP-8/I front panel hardware and bypass all the GPIO stuff it needs.
macOS
This project's current primary maintainers use macOS at home, so the PiDP-8/I software is frequently built and tested on macOS while we are working on features that do not require the PiDP-8/I front panel hardware.
Why? Because it builds many times faster than the even fastest Pi!
Stock macOS doesn't have everything you need to make it work. We recommend installing Homebrew, then using that to install the third-party dependencies that the PiDP-8/I software needs:
GNU Coreutils: macOS ships with BSD versions of common Unix utilities. This project requires GNU coreutils for full compatibility (e.g.,
realpath,readlink).Python Compatibility: This project requires setuptools < 70 because it uses
pkg_resourcesfor version checking. Modern setuptools (70+) removedpkg_resourcesin favor ofimportlib.metadata. We maintain compatibility with Raspberry Pi OS Bookworm (Python 3.9) as our baseline platform.We use the
--break-system-packages --userflags with pip3 when python is installed with homebrew. It safely installs Python packages to your user directory without modifying Homebrew's Python installation.
FreeBSD
Because of our regular testing on macOS, the software should work well on x86 FreeBSD, though the last version it was tried on was version 12, where we needed to add the following prereqs:
$ sudo pkg install coreutils gmake perl5 python py37-pip
Note that we preferentially target Python 3 now, which means if you're still using FreeBSD 11 or older, which included Python 2 instead, things may or may not work. We think we're still compatible with Python 2, but we haven't tested it recently.
The configuration process will fail if you do not give the --prefix option because /opt isn't present on FreeBSD by default. Rather than create that subtree, a more "native" FreeBSD configuration would be:
$ ./configure --prefix=/usr/local/pidp8i
There is a FreeBSD build for the Pi, but we believe it will not work with the front-panel hardware. You are more than welcome to fix this and send us a patch.
Windows
The PiDP-8/I software's build system requires a POSIX type environment. There are several ways to add that to Windows:
Linux VM
Currently, for maximum compatibility, your best option is to install some sort of Linux virtual machine on your Windows box.
Windows 10 Pro and up include Hyper-V, which runs Linux VMs quite well.
For those running Home class versions of Windows, the best free option is Oracle's VirtualBox.
Windows Subsystem for Linux
As long as you're using WSL2, the new Windows Terminal, and a Debian type OS, it should all work. Problems occur when deviating from this happy path. WSL1 in particular has huge weaknesses in terminal handling which matter for our project.
Cygwin
This works, and appears to work well besides, each time we've tried it. The most recent test was on 2019.05.11 with 64-bit Cygwin 3.0.7 on Windows 10.
You will have to install the libncurses-devel and python2-pip packages as well as standard Unix build tools: GCC, GNU Make, etc. Having done all that, the software will build and run.
License
Copyright © 2017-2026 by Warren Young. This document is licensed under the terms of the SIMH license.