mass:werk / Blog

(Posts tagged “computerhistory“.  All posts. RSS feed: Subscribe.)

IBM Punched Card Typography

The surprising mechanical store for exchangable fonts of the IBM card punches

IBM punched card typography explained
Punched card typography explained.

Another recap from the days before the blog, this time about IBM card punch equipment. You may already know that some of the card punches featured a built-in printer to represent the data in human readable characters on the very top of a card. But did you also know that the font and character set used for printing were exchangable? Or how these electro-mechanical wonders stored them?

In this mini-series you may not only learn all about the astounding intrinsics (including interactive animations of the decoding mechanism), but, if you’re the lucky owner of such an amazing device, you may even design your own font or character set for your IBM 026, 029 or 129 card punch.

Stay at Home Edition: Inside Spacewar!

A Software Archeological Approach to the First Video Game.

Inside Spacewar! teaser.
Some serious software archeology on the first digital video game.

Over the years, before I started this blog, some rather blog-like formats have accumulated on my website, each dedicated to a certain topic or project. Maybe, as many of us are expected to stay at home on their own, this is also an opportunity to point these series of write-ups out and to include them here as links, over the next few days.

For a beginning, there’s a walk through the code of Spacewar!, which is generally considered the first digital video game. We’ll have a look at every single line of code — no instruction is left behind —, learn about the DEC PDP-1 computer, learn how this game was achieved on this early 1960s machine by some ingenious tricks in software. (There are actually some things to be admired, like early object oriented approaches and a JIT compiler.) We’ll even learn about some of the fundamental intrinsics of digital computing, e.g., how basic operations like multiplications and divisions, or integer square roots were solved on this particular machine. Moreover, we’ll have a look at some of the more arcane versions of the game, including a somewhat first person multiplayer version from 1963. — Already intrigued? Then, have a closer look and follow the link, or, maybe, save it for later…

Start reading: “Inside Spacewar!”…

LGP-30 — A Drum Computer of Significance

Affordable computing by rotating bits at 3700 rpm.

In July 1956, when IBM was still considering its answer (which was to become the IBM 1401) to the French challenge that was the Bull Gamma 3 (1952), then posing a serious threat to IBM’s monopolic line-up of punched card appliances, Librazette, Librascope’s employees’ and PR gazette, proudly announced that the company’s new LGP-30 computer had been promoted to production.

The computer had been developed by Stan Frankel as the MINAC at CalTech in 1954 and Librascope had bought Frankel’s design (apparently in the same year), releasing it as the LGP-30 in 1956. (…)

Royal Precicision LGP-30
LGP-30 sales brochure, Royal McBee Corporation, 1956.

The computer generally known as the Royal McBee LGP-30 was a desk-sized appliance and weighed in at about 800 pounds (360 kg). It came with a Flexowriter-style console typewriter and consisted internally of just 113 vaccum tubes, 1,450 solid state diodes, and a magnetic drum for memory (4K of 31-bits words) and 3 registers. It plugged into an ordinary wall socket, from which the combined circuitry drew up to 1500 Watts. All this could be yours for just US$ 47,000 ($433,000 in 2018), which was actually the first viable option for small-to-medium scale computing.

Continue reading…

The Peculiar Case of a Self-Referential Computer Instruction (DEC PDP-7, 1964)

Or, how to lift Kurt Gödel’s hat by −0.

Lifting Gödle's Hat by -0.
Photograph of Kurt Gödel by Richard Arens, 1954,
“Oslo” PDP-7 by Tore Sinding Bekkedal, 2005 (Wikimedia Commons).

A recent discussion on the Retro Computing Forum turned my interest towards the DEC PDP-7 in general and it’s peculiar lack of a dedicated instruction for two’s complement subtraction (or, that is, subtraction at all) in the absence of a two’s complement negate instruction …

Continue reading…

Digital Video Game Firsts — Michigan Pool (1954)

On the origin of digital video games and the complexity of classification.

When it comes to the first known digital video game (i.e. an interactive game implemented on a digital computer communicating its state by some kind of graphical display), it’s always also about a question of definition. Personally, I’d opt for a requirement of a digital computer running a simulation in real-time and providing means of interactive manipulation of said simulation by some kind of user input (without any interruption to the flow of the program). By this, we define a distinctive problem class for this, namely interactive, visual real-time computing. So a turn based game, like OXO, wouldn’t be a member of this class, while, say, Spacewar! would happily fit the definition.

Pool on MIDSAC, 1964
A game of Pool on MIDSAC, 1954.

So I’d like to divert your esteemed attention to a certain, lesser known edge case, “Pool”, implemented by William George Brown and Ted Lewis in 1954 on the one-of-a-kind MIDSAC computer.

Continue reading…

Raster CRT Typography (According to DEC)

A closer look at the glyphs drawn by the DEC terminals VT100 and VT220.

Recently, I engaged in a bit of analog media emulation, namely for the purpose of the reenactment of raster CRT graphics as seen on “glass terminals” like the iconic VT-series by the Digital Equipment Corporation (DEC). An endeavor, which raises a few questions, like, is there anything special to the media, what did the fonts really look like, and can we reconstruct them from specifications?

VT100 Series CRT Typography
(Not a DEC manual.)

Since ROMs are available (and modern TrueType fonts, as well), we may start there, since they are the closest, we may get, to the real thing, aren’t they? What could possibly go wrong?

Continue reading…

Forgotten JavaScript: Object.handleEvent()

Tales of event-handling in JavaScript and some historic oddities of Netscape Navigator 4.

An interesting aspect of web technology is that solutions to specific problems tend to be invented more than once. For some reason or the other, a given solution doesn’t catch on and a new generation of developers will eventually address the wheel by the help of a new proposal. In this case it’s about object isolation and event handling.

code example for object.handleEvent

And while we’re at it, we may have a closer look at some of the (other) oddities of the Netscape Navigator 4 browser, as well…

Continue reading…

Legacy Graphics Range for Char8.js

The Terminals Working Group proposed a new Unicode range earlier this month (Jan. 4, 2019) for the purpose of retrocomputing and emulation. As of version 1.1, the newly proposed glyphs are already included in the Char8.js library for generating 8-bit characters from Unicode.

Here’s a sample, rendering the new glyphs in double height using a 16 × 8 character matrix:

The proposed legacy graphics range, rendered at 8 x 16 using Char8.js

The proposed range incorporates glyphs from various legacy systems, including

Related Links:

Snowflake Archeology (DEC PDP-1)

Software archeology of an early computer animation (1960s) for the DEC PDP-1

Snowflake (compare the post below) is a small graphics program written for DEC PDP-1 somewhen in the early to mid 1960s. In essence, Snowflake is a kaleidoscopic program, mapping a list of moving points multiple times onto the screen in a starlike manner. It may be the first of these programs, at least, it’s an early specimen of the species.

Snowflake for the PDP-1 (montage)

In order to learn how it does its trick, we engage in a bit of serious software archeology. All the fun is provided: PDP-1 assembler code, intricacies of display instructions, disassemblies, we even provide a little hack of our own to demonstrate the algorithm (which happens to be much like an once original form and isn’t without a beauty of its own). However, strap yourself for a lengthy read…

Continue reading…

Snowflake: The Original Virtual Christmas Ornament

Snowflake for the PDP-1

It may be just the right season to remind of one of the first computer animations, “Snowflake” written in the 1960s for the DEC PDP-1. Despite various research efforts, the author of this amazing little program remains still unknown, which is quite a bity, since s/he deserves to be rembered along with the program.

Click the image for an emulation and/or have a look at some images of the real thing as hosted at the DigiBarn museum’s website.

Anatomy of a Random Number Generator

Tales from the realms of software archeology.

DEC PDP-1 at the Computer History Museum

Recently, I returned my interest to Spacewar!, the first digital video game, particularly to differences between early versions, like Spacewar 2B, and the better known, later versions, like 3.1 and thereafter. One of these differences, particularly of interest here, is in the random number generator, implemented by a macro named "random" (what else?).

Continue reading…