The Zork Virtual Machine Implemented In Hardware

ZorkHitchhiker’s Guide to the Galaxy, and all the other Infocom text adventures are much more clever than the appear at first glance. They actually run on a virtual machine, with all the code for the game files squirreled away in the Z-machine format. This is great if you’re writing a game for a dozen platforms; once you have an interpreter running on one system, the entire library of games can be shipped out the door.

While the Z-machine has been ported to all the retrocomputers you can imagine and a few different brands of microcontrollers, no one has yet implemented the Z-machine in hardware. There’s a reason for this: it’s crazy. Nevertheless, [Charlie] managed to implement the Z-machine in an FPGA, using only a few extra commands for driving a display.

zork2The circuit is constructed with a $10 eBay special FPGA, the Cyclone II EP2C5. Other than that, it’s just some Flash, some RAM, a display, and a whole lot of wire. The standard Z-machine spec is followed, version 3 specifically, meaning this text adventure on a chip can run nearly every Infocom game ever written. The most popular ones, at least.

This isn’t [Charlie]’s first time in the ring with the Infocom Z-machine. He ported the Z-machine to a freakin’ pen a few years ago.

You can check out [Charlie]’s video demo below. Because there was a bit of extra space in the FPGA, [Charlie] managed to put a Mandelbrot implementation and Space Invaders in as an easter egg.

Continue reading “The Zork Virtual Machine Implemented In Hardware”

ArTICam Interfaces Game Boy Camera With TI Calculators

[Christopher Mitchell] has given Texas Instruments calculators the ability to capture images through a Game Boy Camera with ArTICam. First introduced in 1998, The Game Boy Camera was one of the first low-cost digital cameras available to consumers. Since then it has found its way into quite a few projects, including this early Atmel AT90 based hack, and this Morse code transceiver.

TI calculators don’t include a Game Boy cartridge slot, so [Christopher] used an Arduino Uno to interface the two. He built upon the Arduino-TI Calculator Linking (ArTICL) Library  to create ArTICam. Getting the Arduino to talk with the Game Boy Camera’s M64282FP image sensor turned out to be easy, as there already are code examples available. The interface between the camera sensor and the Arduino is simple enough. 6 digital lines for an oddball serial interface, one analog sense line, power and ground. [Christopher] used a shield to solder everything up, but says you can easily get away with wiring directly the Arduino Uno’s I/O pins. The system is compatible with the TI-83 Plus and TI-84 Plus family of calculators. Grabbing an image is as simple as calling  GetCalc(Pic1) from your calculator program.

So, If you have an old calculator lying around, give it a try to enjoy some 128×123-pixel grayscale goodness!

[Fran]’s New Project: The DSKY

[Fran] has already made a name for herself in some retro cool historical aviation and computer circles by tearing down a flight-ready spare of a Saturn V launch vehicle digital computer, the computer that was responsible for getting all flights to the moon into low earth orbit. Now she’s ready for another project, and again, this is something that hasn’t been done in 40 years. She’s building a DSKY, the control panel for the Apollo Guidance Computer

The Apollo Guidance Computer is a well-documented piece of computing history, with homebrew versions all over the web. The DSKY is only one small part of the AGC, but it is by far the most famous module. Being the only user interface for the AGC, it’s the only part of the AGC that gets all the screen time in Apollo 13, the travesty on BluRay that was Apollo 18, and is the only device that bears any physical resemblance to its real-life counterpart in a number of AGC simulators.

That’s not to say DSKY builds haven’t been attempted before; there are a few out there using LEDs and off-the-shelf buttons for the build, but the DSKY from the mid-60s is much, much cooler than a bunch of LEDs and light pipes. The eery green numbers are actually EL displays. Guess how those displays are controlled? Relays. It’s a masterpiece of technology, made even more impressive in that the folks at MIT who built the thing didn’t have anything better to build the display with.

Because of her deconstruction efforts with the Saturn V LVDC, [Fran] was invited down to the National Air and Space museum in the middle of Washington DC. There, she saw everyones favorite ugliest spacecraft, the Apollo LEM, along with an incredible assortment of paraphernalia from aviation history. The Wright Flyer – yes, the original one – is hanging from the ceiling next to the Spirit of St. Louis, and X-15 rocket plane, right above the command module Columbia from Apollo 11. Copies of probes currently rolling over Mars are on display, and you can walk through a training model of Skylab. If you’ve never been, spend half a day there, then take the metro out to the Udvar-Hazy center, where you’ll find all the stuff they couldn’t fit in the downtown collection like a Space Shuttle and a Concorde.

This is only the first part of [Fran]’s vlog documenting the construction of a copy of the DSKY, and we haven’t even seen the inner guts of the most famous part of the AGC yet. She’s been working on this for a while now, and there’s no doubt she’ll finish the job and come up with the best replica of a DSKY ever.

Anthropomorphizing Microprocessors

Vintage microprocessors usually do something, be it just sitting in an idle loop, calculating something, or simply looking cool in a collector’s cabinet. [Lee] has come up with a vastly cooler use for an old microprocessor: he’s anthropomorphized it by wiring LEDs up to the address lines and arranged those LEDs into a face. After wiring up the right circuit, the face of LEDs slowly changes expressions, making this tiny little board react to random electronic fluctuations.

The CPU used for this project is the RCA 1802, best known for being the smarts in the COSMAC Elf, a very early microprocessor training computer, but still capable of teaching the basics of computing today, albeit on a processor that isn’t made any more with an instruction set that is barely supported by anything modern.

[Lee] apparently has a lot of these 1802s, and to show off how simple a microcomputer can get, he created the strangest use for a CPU we’ve ever seen. You can’t program this face of LEDs; the data bus is left floating so random values are ‘displayed’ on the face. Only one of the data lines is pulled high. This prevents the data bus from ever being 0x00, the HALT instruction.

If you’re looking for something a little more useful to do with an RCA 1802 MPU, [Lee] also has a COSMAC Elf membership card. It’s a reproduction of the famous COSMAC Elf, repackaged into a board the size of an Altoid tin. It has the 1802 onboard, a few switches and blinkenlights,  and a parallel port for interacting with peripherals.

Central European Computer Collecting

During Hackaday’s short trip to Czech, we were lucky enough to run into someone who had recently had one of his projects featured on Hackaday. It’s [Martin]’s multi-target IDE for 8-bit CPUs, written entirely in JavaScript, and a full development suite for anything with a 6502, 6800, 6809, Z80, 8080, and 8085. [Martin] was kind enough to sit down and give us the scoop on why he’s interested in old computers, and why he developed his 8-bit IDE project, ASM80.

[Martin] grew up in the days of computer magazines, and originally wanted to build his own computer. That plan didn’t work out, but his parents did get him a Speccy in 1986, but the love of old hardware is still there. Over the years, this evolved into computer collecting, with the old ZX Spectrum, an Commodore 64, ORICs, and Acorns rounding out his collection. As we learned at the Computeum, there the middle of Europe had computers that just aren’t seen on the English-speaking Internet, and [Martin]’s collection is no exception.

In addition to doing some very cool stuff for some very old computers, [Martin] also donated something to the Hackaday Hackaspace. It’s a PMI-80, a single board computer made for university computer science students, and basically a KIM-1, but based on a Czechoslovak clone of the Intel 8080 made by Tesla. There is 1k of RAM and 1k of ROM on this board, a calculator keypad, and a few seven segment displays. For the time, it was a great ‘student’ computer, and not really rare in Europe, but this is the first one I’ve seen on my side of the Atlantic.

You can see some pics of the PMI-80 below with [Martin]’s interview. [Martin] also promised to write-up a short history of classic central european computers, a subject there isn’t much written about in the anglosphere. We’ll post a link to that when he finishes that up.

Continue reading “Central European Computer Collecting”

Cloning A Board From Pictures On The Internet

[Andrew] was a pretty cool guy in the early 90s with an awesome keyboard synth that did wavetable synthesis, sampling, a sequencer, and an effects processor. This was a strange era for storage; a reasonable amount of Flash memory was unheard of, and floppy disks ruled the land. [Andrew]’s synth, though, had the option to connect SCSI drives. Like all optional add ons for high-end equipment, the current price for the Ensoniq SCSI card is astronomical and [Andrew] figured he could build one of these cards himself.

Poking around eBay, [Andrew] found the card in question – just a few passives, some connectors, a voltage regulator, and an odd chip from AMD. This chip was a 33C93A, a SCSI controller, and a trip down the Chinese vendor rabbit hole netted him one for $7. Can’t do better than that.

With the datasheet for the chip in hand and a few reasonable assumptions on how the circuit worked, [Andrew] tried to figure draw the schematic. After doing that, he found another hobbyist that had attempted the same project a few years earlier. All the nets were identical, and all that was left to do was sending a board off to the fab.

A quick trip to Front Panel Express got [Andrew] a mounting bracket for the card, and after plugging it in to the synth revealed a new option – SCSI. It worked, and with an ancient SCSI CD-ROM drive, he had boatloads of offline storage for his synth. Great work, and something we’d love to see more of.

 

Hacklet 23 – The Groove Tube

The transistor may rule the electronics world today, but before solid state moved in, vacuum state was king. Tubes, or valves if you’re from Europe, were the only way to fly. Every good hacker knew their triodes from their tetrodes and their pentodes. While technology has moved on, some hackers keep the past alive with tube based projects. This week on the Hacklet, we’re featuring some of the best tube projects on Hackaday.io!

SAMSUNGWe start with [256byteram] and Tube Television Tennis. [256byteram] is building an entire Pong style game from tubes, including a CRT to display the game. Displaying anything on a standard television means generating lots of timing signals. [256byteram] is doing this by using multivibrators to create one-shots and flip-flop circuits. Tube Television Tennis is still a work in progress, but [256byteram] already can display a paddle and move it around the screen in both X and Y. This project has already blown our minds!

tamp1From [Marcel] comes this great Low Voltage All-Tube Amplifier, which we featured on the blog earlier this year. [Marcel] does tubes without the danger of high voltage by using the ECL82 tube at 40 volts. The ECL82 incorporates both a triode pentode in one package, making it something of an integrated circuit. Power is provided by transformer while a PY88 tube handles rectifier duties, making this truly an all tube amp. A few passive components complete the design. We can’t wait to fire one up and hear some class A goodness while basking in the warm glow only a tube can create.

obsoleteTimeNo tube article would be complete without some nixies, and [opeRaptor] is here to provide them with Obsolete Time, a nixie tube clock! Obsolete Time uses IN-12 Russian nixie tubes, and goes for a minimalist design. Under the hood it’s all modern tech though, including a Bluetooth radio which allows the clock to be set via an Android app.

hybridHeadphone2[Brandon Foltz] is also getting into a vacuum state of mind as he takes Adventures in Hybrid Headphone Amps. [Brandon] is mixing the best of the old and new worlds by using a 6247 tube as the input stage to an LM386 single chip amplifier. This hybrid is still a work in progress, as [Brandon] is trying to clean up the sound from his LM386.

Hackaday.io update!

private-messageDid you know that we’re constantly upgrading Hackaday.io? We listen to your input on the feedback project, and we’re always adding new features to the site. If you haven’t noticed, you can now send private messages to other users. We’re sure this will help put users in contact with each other, so they can collaborate on even more projects! On the left side of each profile page there is a “Send a private message” button below the hacker’s avatar. You now have better indicators when you have messages or updates too! The private messages and feed icons at the top right of every .io page now have indicators to show how many messages or feed entries you have waiting. These are all based on live data, so they’ll update as you browse the site.

That’s all the time we have for this week’s Hacklet! As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io!