Alok Menghrajani

Security engineer at Square. Previously co-author of Hack and put the 's' in https at Facebook. Maker of CTFs.

Home | Contact me | Github | Twitter | Facebook

I recently came across a piece of assembly code, written by Li-Chen Wang, which displays a Kaleidoscope. This code was written in 1976, and distributed for $15 on a punched tape. It appears this was one of three pieces of code used to demonstrate the capabilities of Cromemco's Dazzler, the first commercial color graphics card for microcomputers.

Stan Veit, owner of the Computer Mart of New York, described the reaction when he displayed the changing patterns of Kaleidoscope on a color television in his store window at the corner of 5th Avenue and 32nd Street in New York City in early 1976. “People driving by began to stop and look – they had never seen anything like it before. In a short time the Dazzler had caused a traffic jam on 5th Avenue!” The police had to contact the building landlord and make him disconnect the television.

Dr. Li-Chen Wang made quite some important contributions resulting in the growth of the computer industry, such as a free and open source BASIC interpreter as well as pioneering the concept of free software.

It turns out running this code from the dawn of computers in a browser isn't too hard. The code is 127 bytes long. I found an existing 8080 emulator. With the help of this technical manual, I wrote the bare minimum amount of code to emulate a Dazzler. Computer manuals back then were very detailed, especially for hardware that came as a kit, requiring a day or two of soldering.

Below is the result of running the code. In a subsequent post, I will cover how the code actually works.