ascii art

9 Articles

We all have our favorite text editor, and are willing to defend its superiority above all other editors by any means necessary. And then there’s Notepad. But what Notepad may lack in text manipulation features, it compensates with its inconspicuous qualities as a gaming platform. Yes, you read that correctly, and [Sheepolution] delivers the proof with a text-based adventure game running within Notepad.

What started out with [Sheepolution] jokingly wondering what such a game may look like, ended up as an actual implementation as answer to it. Behind the scenes, a script written in Lua using the LÖVE framework — for which he also created an extensive tutorial — monitors the state of several text files that make up the game world. Each location is a separate text file to open in Notepad, showing the current state of the game, telling the story with text and ASCII art, and offering choices to the player. The game is played by modifying and saving those text files, which the script then processes to push the gameplay forward by simply updating the content of those files with the new state. Check out the game’s trailer after the break to get a feel of what that looks like.

Unfortunately, Notepad itself doesn’t automatically reload the file when its content changes, so to provide a smoother gaming experience, [Sheepolution] modified the open source implementation Notepad2 to work around this, and bundled it as part of the game’s executable. Initially, he even added animations to the ASCII graphics, but in the end decided against most of them to avoid constant disk writes and race conditions caused by them.

Such was the lesson learned by [CuriousMarc] with his recently restored Model 15 Teletype; we covered a similar Model 19 restoration that he tackled. The essential problem is that the five-bit Baudot code that they speak predates the development of ASCII by several decades, making a converter necessary. A task like that is a perfect job for an Arduino — [Marc] put a Mega to work on that — but the interface of the Teletype proved a bit more challenging. Designed to connect two or more units together over phone lines, the high-voltage 60-mA current loop interface required some custom hardware. The testing process was fascinating, depending as it did on an old Hewlett-Packard serial signal generator to throw out a stream of five-bit serial pulses.

The big moment came when he used the Teletype to log into Linux on a (more or less) modern machine. After sorting out the mysteries of the stty command, he was able to log in, a painfully slow process at 45.5 bps but still a most satisfying hack. The ASCII art — or is it Baudot art? — is a nice bonus.

We love restorations like these, and can practically smell the grease and the faint tang of ozone around this device. We’re not thrilled by the current world situation, but we’re glad [CuriousMarc] was able to use the time to bring off a great hack that honors another piece of our computing history.

Readers of a certain age may fondly remember ASCII art emerging from line printers in a long-gone era of computing; for others, it’s just wonderfully retro. Well, when [Emily Velasco] found a vintage Kodak Diconix 150 inkjet at a local thrift store for $4, she knew what she had to do: turn it into a dedicated ASCII-art machine.

Dating to the mid-1980s, the diminutive printer she scored was an early example of consumer inkjet technology; with only 12 “jets,” it sported a resolution roughly equivalent to the dot-matrix impact printers of the day. [Emily] notes that this printer would have cost around $1000 in today’s money — this is from a time before printer companies started selling the printer itself as a loss leader to make revenue on the back end selling consumables. It seems you can’t escape the razor-and-blades model, though: [Emily] had to pay $16 for a new ink cartridge to revive the $4 printer.

With the new ink in place, and some tractor-feed paper acquired, [Emily] started work on the art generator. The concept is something that might have been sold on late-night TV ads: a “cartridge” you plug into your printer to make ASCII masterpieces. Starting with a stripped-down Centronics printer cable that matches the printer’s port, she added an Arduino nano to store and serve up the art. The user interface is foolproof: a single button press causes a random selection from one of ten ASCII images to be printed. The whole thing is ensconced within a slick 3D printed case.

One of the coolest aspects of this project is the lack of power supply. When she first hooked the Arduino to the printer’s parallel port, [Emily] noticed that it powered right up with no external supply, and in true hacker fashion, just ran with it. Upon reflection, it seems that power is being supplied by the printer status lines, Busy and/or Ack, through the input protection diodes of the Atmega328 on the nano.

We really like this project, and are more than a little bummed we tossed those old printers that were kicking around the Hackaday labs for years. If you still have yours, and would like turn out some rad ASCII art, the code for this project is up on GitHub.

Pixelated RPGs are pretty standard in games like Legend of Zelda and Pokemon, but have you ever seen anything like ASCIICKER? It’s a full-color three-dimensional world rendered with ASCII art and playable in your browser.

For the time being, the game exists as an experiment. There’s no storyline or goals other than exploring the world, although you can meet up with (or follow) others exploring the game — although all of the sprites look the same, so it may be difficult to have interactions. The game was created by [Gumix] and built entirely in JavaScript without using any other game engines.

All of the previous iterations have also been published online and are accessible by adding X1 up to X13 to the end of the URL. With game development beginning in 2017, it has since been through a considerable amount of change. There’s an entire subreddit dedicated to the game with regular updates from the creator on the development of an open-source dev tool for building new levels and features for the environment. The current engine is capable of rendering objects as thin as fences as well as reflections in bodies of water.

So, a little hard to choose a topic, but we asked Simon to talk a bit about his recent Enigma watches. He has managed to put an electronic emulation of the Enigma cypher machine from World War II into both a wristwatch and, more recently, a pocket watch. They’re both gorgeous builds that required a raft of skills to complete. We’ll start there and see where the conversation takes us!

Please join us for this Hack Chat, where we’ll discuss:

Where the fascination with Enigma came from;

Tools, techniques, and shop setup;

Melding multiple, disparate skill sets; and

What sorts of new projects might we see soon?

You are, of course, encouraged to add your own questions to the discussion. You can do that by leaving a comment on the All Things Enigma Hack Chat and we’ll put that in the queue for the Hack Chat discussion.

Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io. You don’t have to wait until Wednesday; join whenever you want and you can see what the community is talking about.

Human beings like pictures which is probably why there’s the old adage “A picture’s worth a thousand words.” We take computer graphic output for granted now, but even in the earliest days for Teletypes and line printers, there was artwork made from characters ranging from Snoopy to Spock. [Wenting Z] continues the tradition by creating an FPGA that converts VGA video to ASCII art and outputs it via DVI.

The device uses a Xilinx Virtex device and uses about 500 LUT (look up tables) which is not much at all. You can see a video (that includes an overlay of the source video) of the device in action below.

In fact, we think of art like this as a computer phenomenon, but [Flora Stacey] created a butterfly on a typewriter in 1898 and ham radio operators were doing art using paper tape for the last half of the twentieth century. Even before that, In 1865, Alice in Wonderland had a certain passage that was typeset to suggest a mouse’s tail. Perhaps the pinnacle is the famous ASCII version of Star Wars.

Computer graphics have come a long way. Some video games today exceed what would have passed for stunning cinema animation only a few years ago. However, it hasn’t always been like this. One of the earliest forms of computer-generated graphics used text characters to draw on printers.

Early computer rooms were likely to have a Snoopy character on green and white fan-fold paper. Calendars with some artwork were also popular (see left, and find out about the FORTRAN that created it, if you like). Ham radio operators who use teletypes (RTTY, in ham parlance) often had vast collections of punched tape that held artwork. Given that most hams in the 1950s and 1960s were men and the times were different, a lot of them were more or less “R” rated.

Not all of them were, though. For example, Richard Nixon was decidedly “G” rated (see right). Simple pictures would use single characters, but sophisticated ones would use the backspace character to overprint multiple characters.

Ham Radio Art

You often hear this described as ASCII art, today, although hams usually use 5-bit BAUDOT code, so that’s a misnomer for those images, at least. Of course, today, people aren’t keen on storing roll after roll of paper tape (or even owning a tape reader) so there have been several projects to capture this art in a more modern format.

Although there is still some RTTY art activity, picture sending has been mostly replaced by slow scan TV (SSTV) which sends actual still images or other modes like FAX. Some of the newer digital modes even have the ability to send pictures. You can be discussing your radio for example, and then show the other ham a photo of the radio.