Matrix Digital Rain On The IBM PC With A High Persistence Monitor

Unless you’ve been hiding under a rock for the last 20-odd years, you will have come across The Matrix series of movies, and the cool green ‘digital rain’ effect used frequently. This inspired [Oli Wright] to wonder what it would look like if instead of running the animation on a modern display, using a digitally produced phosphor persistence effect, it was implemented on some retro PC hardware, using an actual high-persistence phosphor Green Monochrome monitor. (Video embedded, below) As luck would have it, [Oli] owns a 40-year-old IBM PC 5150 as well as the matching IBM 5151 monitor, so it was a simple matter to implement the effect in 8088 assembler to create falling sequences of characters. The final binary is less than 256 bytes!

The IBM 5151’s long display persistence was intended to reduce the visibility of display flicker due to the low scan rate, but has the unfortunate side effect of smearing horribly when the image changes. This is exactly what [Oli] needed to implement this effect and we think it looks jolly fine.

[Oli] made use of the excellent PCjs browser-based emulator written by [Jeff Parsons] to demonstrate what the software is doing, without the effect being evident. If you like, you can try it out for yourselves, as the assembly listing is available on the project GitHub.

Of course, we’ve covered the digital rain effect many. many times before, for example, with this Arduino Library, and here’s a custom PC case side panel from way back in December 2021, if you can remember those days.

Continue reading “Matrix Digital Rain On The IBM PC With A High Persistence Monitor”

A computer green screen image of an IRC message of the day

IRC Server For MS-DOS

The recent flurry of projects based around Internet Relay Chat (IRC) should be a fair indication that the beloved protocol is not going anywhere. Now, thanks to [Mike Chambers], you can add to the IRC ecosystem by hosting your very own MS-DOS based IRC server.

This port of ngIRCd (Next Generation IRC Daemon) has already been spun up on 8088-based PCs running at just 4.77MHz, but you’ll still need at least 640KB of RAM. If your vintage IRC server takes off, you might want to think about dropping in an 10MHz V20 for a bit of a performance boost. Even so, it’s impressive that this server can get up on the 40-year-old IBM 5150, and should absolutely scream on an AT-class system.

The limitations of the 16-bit platform means that SSL and ZLIB are unsupported, and Mike has capped total connections at 50 in his port (however, this limitation can be adjusted by rebuilding from source, should you want to find out how far 640KB of RAM can take you). You’ll also need a few other things to get your server up and running, such as a packet driver for your network card and an mTCP configuration file.

Setting up your own IRC server is arguably a right rite of passage for most hackers and tinkerers, but getting this up and running on a decades-old beige box would make for a fun weekend project. [Mike] has all the juicy details on GitHub, and you can check out a test server running the latest build over at irc.xtulator.com.

Also, don’t forget to visit the #hackaday IRC channel over on irc.libera.chat.

[Thanks Sudos for the hot tip]

The Oldest Known Surviving PC Operating System

You’ll all be familiar with the PC, the ubiquitous x86-powered workhorse of desktop and portable computing. All modern PCs are descendants of the original from IBM, the model 5150 which made its debut in August 1981. This 8088-CPU-driven machine was expensive and arguably not as accomplished as its competitors, yet became an instant commercial success.

The genesis of its principal operating system is famous in providing the foundation of Microsoft’s huge success. They had bought Seattle Computer Products’ 86-DOS, which they then fashioned into the first release version of IBM’s PC-DOS. And for those interested in these early PC operating systems there is a new insight to be found, in the form of a pre-release version of PC-DOS 1.0 that has found its way into the hands of OS/2 Museum.

Sadly they don’t show us the diskette itself, but we are told it is the single-sided 160K 5.25″ variety that would have been the standard on these early PCs. We say “the standard” rather than “standard” because a floppy drive was an optional extra on a 5150, the most basic model would have used cassette tape as a storage medium.

The disk is bootable, and indeed we can all have a play with its contents due to the magic of emulation. The dates on the files reveal a date of June 1981, so this is definitely a pre-release version and several months older than the previous oldest known PC-DOS version. They detail an array of differences between this disk and the DOS we might recognise, perhaps the most surprising of which is that even at this late stage it lacks support for .EXE executables.

You will probably never choose to run this DOS version on your PC, but it is an extremely interesting and important missing link between surviving 86-DOS and PC-DOS versions. It also has the interesting feature of being the oldest so-far-found operating system created specifically for the PC.

If you are interested in early PC hardware, take a look at this project using an AVR processor to emulate a PC’s 8088.

Header image: (CC BY-SA 3.0 DE).

Emulating A Hard Drive With The Raspberry Pi

[Chris] recently moved a vintage IBM 5150 – the original PC – into his living room. While this might sound odd to people who are not part of the Hackaday readership, it actually makes a lot of sense; this PC is a great distraction-free writing workstation, vintage gaming machine, and looks really, really cool. It sat unused for a while, simply because [Chris] didn’t want to swap out piles of floppies, and he doesn’t have a hard drive or controller card for this machine. After reviewing what other retrocomputer fans have done in this situation, he emulated a hard drive with a Raspberry Pi.

The traditional solution to the ‘old PC without a hard drive’ problem is the XTIDE project. XTIDE is a controller card that translates relatively new IDE cards (or an emulated drive on another computer) as a hard drive on the vintage PC, just like a controller card would. Since a drive can be emulated by another computer, [Chris] grabbed the closest single board computer he had on hand, in this case a Raspberry Pi.

After burning an EPROM with XTIDE to drive an old network card, [Chris] set to work making the XTIDE software function on the Raspberry Pi side of things. The hardware on the modern side of the is just a Pi and a USB to RS232 adapter, set to a very low bitrate. Although the emulated drive is slow, it is relatively huge for computer of this era: 500 Megabytes of free space. It makes your head spin to think of how many vintage games and apps you can fit on that thing!