FPGA Emulates A PDP-1, Breathes New Life Into Classic Video Game

If you’ve ever wanted to sit at the console of the machine that started the revolution in interactive computing, your options are extremely limited. Of the 53 PDP-1 machines that Digital Equipment Corporation made, only three are known to still exist, and just one machine is still in working order at the Computer History Museum. So a rousing game of Spacewar! on the original hardware is probably not something to put on your bucket list.

But thanks to [Hrvoje], there’s now an FPGA emulation of the PDP-1 that lets you play the granddaddy of all video games without breaking into the CHM. The project was started simply to give [Hrvoje] a sandbox for learning FPGAs and Verilog, but apparently went much further than that. The emulation features the complete PDP-1 instruction set, 4kB of core memory, and representations of the original paper tape reader, teletype, operator’s console, and the classic Type 30 CRT. All the hardware is displayed on a standard HDMI monitor, but it’s the CRT implementation that really sells this. The original Type 30 monitor used a CRT from a radar set, and had long-persistence phosphors that gave the display a very distinctive look. [Hrvoje] replicated that by storing each pixel as three values (X, Y, and brightness) in a circle of four chained shift registers. As the pixels move through the shift registers, the brightness value is decreased so it slowly fades. [Hrvoje] thinks it doesn’t look quite right, but we’ll respectfully disagree on that point.

We’ve argued before that the PDP-1 is the machine that started hacker culture, and we think this project is a fitting tribute to the machine as we enter the year in which it will turn sixty. Having the chance to play with it through this emulation is just icing on its birthday cake.

Continue reading “FPGA Emulates A PDP-1, Breathes New Life Into Classic Video Game” →

Vintage IBM 1403 Printer Problem Evades An Easy Fix

The Computer History Museum in Mountain View has two operational IBM 1401 mainframes, which use IBM 1403 high-speed printers. They aren’t some decades-old notion of “high speed” that barely looks sluggish today, either. These monsters slam out ten lines per second thanks to a rotating chain of type slugs and an array of electromagnetic hammers. Every 11.1 microseconds, a character in the chain would be lined up with a hammer, and if the control circuitry identified it as a character that needed to be printed, the hammer behind the paper would drive the paper into the print ribbon and the slug, putting an imprint of the character onto the paper. When one of these printers failed with a sync error, it kicked off some serious troubleshooting to diagnose the problem.

The IBM 1403’s type chain has a repeating set of characters that spins around at high speed. Unlike a typewriter or label maker, the hammers are not inside this unit. The hammers are on the outside, and work by pressing the paper onto the type slugs as the required characters line up.

Investigation of the problem ultimately led to an intermittent connection in a driver card due to a broken PCB trace, but by then some fuses had been blown as well. In the end the printer was brought back online, but possibly with a slightly damaged coil on one of the hammers.

[Ken]’s writeup on the repair process is highly detailed and walks through the kind of troubleshooting and repairs involved when solving problems with vintage electronics. Electrical fundamentals might be the same, but a deep understanding of not only the architecture but also the failure modes of vintage hardware is needed in order to troubleshoot effectively.

If IBM 1401 mainframes and fixing 1403 printers sounds familiar, it’s because a printer fix has been done before. That was due to a different problem, but still a challenging task to narrow down and fix.

Bootstrapping An MSDOS Assembler With Batch Files

You have a clean MSDOS system, and you need to write some software for it. What do you do? You could use debug, of course. But there are no labels so while you can get machine code from mnemonics, you’ll still need to figure out the addresses on your own. That wasn’t good enough for [mniip], who created an assembler using mostly batch files. There are a few .COM files and it looks as if the first time you use debug to create those, but there’s also source you can assemble on subsequent builds with the assembler.

Why? We aren’t entirely sure. But it is definitely a hack. The technique sort of reminded us of our own universal cross assembler — sort of.

Continue reading “Bootstrapping An MSDOS Assembler With Batch Files” →

A Scratch-Built Forgotten Classic Of The Early PC Age

All the retrocomputer love for Commodore machines seems to fall on the C64 and Amiga, with a little sprinkling left over for the VIC-20. Those machines were truly wonderful, but what about the Commodore machine that paved their way? What about the machine that was one of the first to be gobbled up in the late 1970s by school districts eager to convert a broom closet into the new “computer lab”?

The PET 2001 might be a little hard to fall in love with given its all-in-one monitor, cassette recorder, and horrible chiclet keyboard, but some still hold a torch for it. [Glen] obviously felt strongly enough about the machine to build a PET from current production parts, and the results are pretty neat. When trying to recreate a 40-year old machine from scratch, some concessions must be made, of course. The case doesn’t attempt to replicate the all-in-one design, and the original keyboard was mercifully replaced by a standard PS/2 keyboard. But other than that the architecture is faithfully replicated using new production 65xx chips and 74HCT family logic chips. [Glen] had to jump through some hoops to get there, but as the video below shows, the finished machine plays a decent game of Space Invaders.

We’ve seen a PET brought back from the grave by FPGA and a C64 emulated on a Raspberry Pi, but going back to basics and building this from scratch was a fitting homage to an important machine in PC history.

Continue reading “A Scratch-Built Forgotten Classic Of The Early PC Age” →

1970s Lab Equipment Turned Retro Pi Terminal

When it was released, the Beckman Model 421 CRT controller represented the latest and greatest in liquid chromatography technology. Its 12 inch screen would allow the operator to view critical information such as flow rate and concentration, and its integrated keyboard simplified system control. It made liquid chromatography faster and easier, allowing lab technicians to focus on analysis rather than the complexities of operating the equipment.

But none of that matters right now. What matters is that [Igor Afanasyev] found one of these gloriously vintage devices at a local swap meet and decided it deserved a second chance at life. With a Raspberry Pi and a surprising amount of support hardware, he was able to turn this roughly 40 year old piece of scientific equipment into a multipurpose device that does everything from classic gaming to multimedia playback. It’s got a few quirks, but overall this is a gadget that any hacker would love to have kicking around their modern-day lab.

[Igor] explains that the Model 412 is essentially just a dumb terminal with no internal logic, so in theory it should have been possible to just hang the thing on a serial port and be done with it. But unfortunately the display drive board was dead, so a full rebuild was in order. This meant that there’s little left of the original device other than the keyboard and the case itself, but since it isn’t exactly a “vintage computer” in the traditional sense, we think the purists will allow it.

For the display, [Igor] used an LCD he salvaged from an old digital picture frame. It was the right size to fit the opening, and thanks to an unpopulated VGA header on the board, wasn’t too difficult to get connected to the Pi with an HDMI adapter. He also added a hardware VGA scanline generator board so that no matter what the Pi shows it will have that classic old-school look; a fantastic detail we don’t usually see on builds like this.

The keyboard on the Model 412 was more of a control panel than a traditional input device, so not only does it have keycaps which say things like “FLOW RATE” and “WRITE TAPE”, but it has a fairly weird layout. After reverse engineering the somewhat unusual key matrix, he spun up a custom firmware for the Arduino Pro Micro using QMK which would let him use the board on the Pi as a standard USB input device. But rather than replace the keys, [Igor] created a little cheat-sheet overlay that he could put over the board to see what keys translate to which letters. It’s awkward for sure, but we really appreciate that he preserved the unique nature and look of the Model 412.

Like the Heathkit H19 that was brought back to life with an internal Raspberry Pi or the DEC VT100 with a BealeBone inside there’s something about the visual aesthetic and no-nonsense approach of these vintage terminals which continue to make them compelling into the 21st century.

Apple II Megademo Is Countin’ Cycles And Takin’ Names

The demoscene is an active place to this day, with enthusiasts around the world continuing to push the envelope as far as the capabilities of machines are concerned. [Deater], along with a skilled team, produced this Apple II Megademo which won first place at Demosplash 2018.

The demo starts with an intentional tease, with an emulated C64 BASIC startup screen which splits to reveal the title card. White-on-blue text isn’t the easiest on the Apple II, due to palette limitations, but it’s necessary for the joke to work. The following scenes make heavy use of mode-switching techniques in the middle of drawing the screen. Single screens are made up of various sections in LORES, HIRES, and even text modes. The term “cycle-counting” refers to the fact that the demo is written to operate in a cycle-exact fashion. This is necessary to achieve the mode-switching effects and to make the most of the limited resources of the Apple II.

It’s a demo that, like many others, does the right things in the wrong way to achieve its impressive results, and is a worthy competition winner. [Deater] has kindly provided an FAQ and source code for those who wish to study it further.

If you’ve written a mindblowing demo yourself, be sure to notify the tips line. Video after the break.

Continue reading “Apple II Megademo Is Countin’ Cycles And Takin’ Names” →

Custom Joystick For An Old Commodore Finds An Unlikely Home

Retro hardware is getting harder and harder to come by, with accessories such as joysticks and mice dropping out of the market the fastest. So if your old machine needs a new joystick, you may find yourself whipping it up yourself. While you’re at it, you might as well have some fun as [Tom Tilley] did when he built a C-64 joystick inside a replica disk drive case for his rare SX-64 luggable.

Anyone who remembers the amount of desk space the classic Commodore 1541 disk drive occupied might wonder why someone would want such an enormous base for a joystick. But rest assured that no actual 1541s were harmed in the making of this joystick; rather, [Tom] created a smaller replica of the drive case from MDF. The face of the case is about 80% original size, and the depth is cut down to about half the original, so the joystick actually ends up being a manageable size while offering a nice, broad wrist support. The drive door is 3D-printed and painted, and adorned with the original green and red LEDs. Decorations like the front badge and even replicas of the original rear panel labels, connectors, and switches were printed from files off a website devoted to recreating Commodore hardware from paper. Because Commodore love knows no bounds.

It’s silly, but it works, and we love the attention to detail. Hat’s off to [Tom] for not settling for yet another joystick build, and for keeping the Commodore flame burning. They may be tough machines, but they won’t be around forever.

Continue reading “Custom Joystick For An Old Commodore Finds An Unlikely Home” →