The First Gui? Volscan Controls The Air

In the 1950s,  computers were, for the most part, ponderous machines. But one machine offered a glimpse of the future. The Volscan was probably the first real air traffic computer designed to handle high volumes of military aircraft operations. It used a light gun that looked more like a soldering gun than a computer input device. There isn’t much data about Volscan, but it appears to have been before its time, and had arguably the first GUI on a computer system ever.

The Air Force had a problem. The new — in the 1950s — jets needed long landing approaches and timely landings since they burned more fuel at lower altitudes. According to the Air Force, they could land 40 planes in an hour, but they needed to be able to do 120 planes an hour. The Whirlwind computer had proven that computers could process radar data — although Whirlwind was getting the data over phone lines from a distance. So the Air Force’s Cambridge Research Center started working on a computerized system to land planes called Volscan, later known as AN/GSN-3.

Continue reading “The First Gui? Volscan Controls The Air”

A PCB with an Arduino Micro Pro, RCA connectors and a sub-D connector

Odd Inputs And Peculiar Peripherals: Using A Commodore Light Pen On A Modern(ish) Computer

If you worked with computers back in the 1970s, there’s a good chance you used a light pen at some point: a simple input device that you’d point at the CRT screen to highlight text, choose menu options or manipulate graphic objects. Although ubiquitous in those days, the light pen lost the battle for ergonomics to the humble mouse and was all but extinct by the late 1980s. Touchscreen styluses implement a similar function today, but touching the screen somehow doesn’t feel the same as simply pointing at it.

We therefore applaud [Maciej Witkowiak]’s efforts to bring the light pen into the 21st century by building a USB interface for a Commodore 64/128 light pen. At its heart is an Arduino Micro Pro that implements the USB HID protocol to communicate with any modern computer. It connects to the classic light pen as well as to the computer’s analog display signal and uses those to calculate the delay between the video synchronization pulses and the light pen’s output. The sync pulses are extracted from the video signal by an LM1881, a sync separator chip that will be familiar to anyone who’s worked with analog video signals.

The Arduino calculates the light pen’s position based on the measured timing intervals and reports it to the computer, using the absolute positioning mode that’s also used by things like drawing pads. [Maciej] demonstrates his system in the video embedded below, in which he uses it to operate the menus on an X window system. A great success then, although there’s one catch: light pens only work on CRT displays, so you’ll need to drag one of those big glass beasts out of storage if you want to try this yourself.

We’ve featured the Commodore light pen before in this odd gaming input device. A similar device built with a discrete LED matrix is a good illustration of the light pen’s working principle.

Continue reading “Odd Inputs And Peculiar Peripherals: Using A Commodore Light Pen On A Modern(ish) Computer”

Light Pen Draws On LED Matrix


Who needs a 1920×1080 OLED display when you can have an 8×8 matrix of LED goodness? That’s the question [Kathy] asked when she built this LED matrix light pen project. It looks simple enough – a 64-LED matrix illuminates as the pen draws shapes. But how does the circuit know which LED is under the pen? Good old fashioned matrix scanning is the answer. Only one LED is lit up at any time.

[Kathy] used a pair of 74LS138 3-to-8 line decoders to scan the matrix. The active low outputs on the ‘138 would be perfect for a common cathode matrix. Of course [Kathy] only had a common anode matrix, so 8 PNP transistors were pressed into service as inverters.

The pen itself is a phototransistor. [Kathy] originally tried a CdS photoresistor, but found it was a bit too slow for matrix scanning. An LM358 op-amp is used to get the signal up to a reasonable level for an Arduino Uno to detect.

The result is impressive for such a simple design. We’d love to see someone use this platform as the start of an epic snake game.