The Tandy 1000, among other contemporary computers and consoles of the 1980s, used the Texas Instruments SN76489 for its sound and musical output. This venerable sound chip can now be used on virtually any DOS machine, as long as it has a parallel port – thanks to the TNDLPT adapter!
The adapter consists of the SN76489, hooked up to the parallel port so that it can be addressed by the host computer via a DOS Terminate and Stay Resident program acting as a driver. With the TSR loaded, classic DOS games can be used with the TNDLPT sound output by simply selecting the Tandy 1000 soundcard at install. It can also be used in a variety of other ways, such as with the TNDY tracker for music creation, or the SBVGM soundtrack player.
Most modern equipment is connected over USB, and generally speaking we’re all the better for it. But that’s not to say there aren’t some advantages to using serial and parallel ports. For example, the slower and less complex protocols can be a bit easier to debug when devices aren’t communicating, which [Jeremy Cook] demonstrates in his latest project.
Looking to troubleshoot some communications problems he was having between his computer and CNC router, [Jeremy] came up with a handy little gadget that will allow him to visualize data passing through each pin of the parallel port in real-time. Even from across the room he can tell at a glance if communication is active, and with a keen eye, determine if he’s getting bi-directional traffic or not.
From a technical standpoint, this is a pretty simple project. The custom PCB is essentially just a pass-through, with an array of 3 mm LEDs and matching 10K resistors hanging off the data lines. But [Jeremy] found it to be an excellent excuse to brush up his KiCad skills. As he explains in the video after the break, this project certainly won’t impress the folks that do PCB design on a daily basis; but if you’re still learning the ropes, these are precisely the kind of projects you should be looking for.
Dance and house music exploded in a big way at the end of the 1980s. Typically the product of well-equipped studios with samplers and mixers worth thousands of dollars, it was difficult for the home gamer to get involved. That was, until the advent of the glorious Amiga, as [cTrix] ably demonstrates.
The video explains the history of both the music and the hardware, and highlights just why the Amiga was so special. Packing stereo audio and a four-channel sound chip, it had the grunt to pump out the tunes. All it was lacking was an audio input – which is where third-party hardware stepped in. Parallel-port analog-to-digital converters hit the market in a big way, letting users sample audio on their home computer without breaking the bank.
[cTrix] then proceeds to demonstrate how one would go about producing a dance track on an Amiga way back in 1990. A home stereo is used to play records, hooked up to a Stereo Master parallel port sampler. With a bunch of drum, piano, and synth samples recorded and saved on disk, a tracker is then used to assemble the track. It’s then compared with other music from the era as a great example of how things used to be done.
If you’re looking for a small, benchtop CNC machine for PCBs and light milling the ubiquitous Sherline CNC machine is a good choice. There’s a problem with it, though: normally, the Sherline CNC controller runs off the parallel port. While some of us still have a Windows 98 battlestation sitting around, [David] doesn’t. Instead, he built a USB dongle and wrote the software to turn this mini CNC into something usable with a modern computer.
First up, the hardware. The core of this build is the rt-stepper dongle based around the PIC18F2455 microcontroller. With a bare minimum of parts, this chip converts USB into a parallel port for real-time control. It’s fast — at least as fast as the parallel port in the ancient laptops we have sitting around and plugs right into the CNC controller box for the Sherline.
The software is where this really shines. the application used to control this dongle is a hack of the EMC/LinuxCNC project written in nice, portable Python. This application generates the step pulses, but the timing is maintained by the dongle; no real-time kernel needed.
There are a lot of choices out there for a desktop CNC machine made for routing copper clad board, wood, brass, and aluminum. The Othermill is great, and Inventables X-Carve and Carvey are more than up for the task. Still, for something small and relatively cheap, the Sherline is well-regarded, and with this little dongle you can actually use it with a modern computer. Check out the demo video below.
You don’t need fancy ICs and DACs to build a sound card for a PC. As [serdef]’s build over on hackaday.io shows, all you really need is a bunch of resistors. [serdef] built a clone of a sound card released for PC in the 80s, but with a few improvements. This mess of resistors features the best 8-bit sound you can get with a low-pass filter, volume divider, and a handy DB-25 connector.
The design of this LPT0 sound card is pretty much the same as when it was introduced to the world as the Covox Speech Thing. This ‘sound card’ was designed to clip onto the parallel port of a computer and send the 8-bit I/O of this port through a resistor ladder. Plug a pair of speakers into this thing, and you have a sound card that is completely made out of resistors. It was cheap, and in the demoscene it was popular.
There are a lot of amazing demos out there using this resistor DAC thing, and [serdef] has videos of his project playing a lot of them. You can check that out below.
With the continuing manufacture of new computers, there is a clear and obvious trend of the parallel port becoming less and less common. For our younger readers; the parallel port is an interface standard used for bi-directional communication between a computer and a variety of peripherals. The parallel port’s demise is partially due to the invention of the USB standard.
If tinkering with CNC Machines is one of your hobbies then you are familiar with the parallel port interface being fairly popular for CNC control board connections. So what do you do if your new fancy computer doesn’t have a parallel port but you still want to run your CNC Machine? Well, you are certainly not stuck as [Bray] has come up with a USB to Parallel Port Adapter solution specifically for CNC use.
A cheap off-the-shelf USB to DB25 adapter may look like a good idea at first glance but they won’t work for a CNC application. [Bray’s] adapter is Arduino-based and runs GRBL. The GRBL code is responsible for taking the g-code commands sent from the computer, storing them in a buffer until they are ready to be converted to step and direction signals and sent to the CNC controller by way of the parallel port DB25 connector. This is a great solution for people needing to control a CNC Machine but do not have a parallel port available.
The board has been created in Eagle PCB Software and milled out using [Bray’s] CNC Router. The design is single-sided which is great for home-brew PCBs. He’s even made a daughter board for Start, Hold and Reset input buttons. As all great DIYers, [Bray] has made his board and schematic files available for others to download.
If you’ve ever looked into low-level parallel port access you may have learned that it only works with actual parallel port hardware, and not with USB parallel port adapters. But here’s a solution that will change your thinking. It borrows from the way printers communicate to allow USB to parallel port bit banging without a microcontroller (dead link, try Internet Archive).
Sure, adding a microcontroller would make this dead simple. All you need to do is program the chip to emulate the printer’s end of the communications scheme. But that’s not the approach taken here. Instead the USB to RS232 (serial) converter also pictured above is used as a reset signal. The strobe pin on the parallel port drives an inverter which triggers a thyristor connected to the busy pin. Thyristors are bistable switches so this solution alone will never clear the busy pin. That’s where the serial connection comes into play. By alternating the data transmitted from the computer between the bit-bang values sent to LP0 and 0xF0 sent to the serial connector the eight parallel data bits become fully addressable. See the project in action in the clip after the break.