Emulating An Altair 8800 On An Apple II

The Altair 8800 was, to its creators, a surprise hit. Despite looking nothing like what we would today consider to be a computer, it sold thousands of units almost immediately upon its launch, way back in 1975. A few years later, the Apple II burst onto the scene, and the home computer revolution began in earnest.

Emulating older machines on newer hardware has always been a thing, and [option8] has coded an Altair 8800 emulator for the Apple II. Of course, if you don’t have one lying around, you can run this emulator on an Apple II emulator right in your browser. Honestly, it’s emulators all the way down.

As far as emulators go, this is a particularly charming one, with the Altair’s front panel displayed in glorious color on the Apple’s 40 column screen. Replete with a full set of switches and blinking LEDs, it’s a tidy low-resolution replica of the real thing. Instructions to drive it are available, along with those for another similar emulator known as Apple80.

If that still hasn’t quenched your thirst, check out this Game Boy emulator that lives inside emacs.

Google's Piano Genie

Piano Genie Trained A Neural Net To Play 88-Key Piano With 8 Arcade Buttons

Want to sound great on a Piano using only your coding skills? Enter Piano Genie, the result of a research project from Google AI and DeepMind. You press any of eight buttons while a neural network makes sure the piano plays something cool — compensating in real time for what’s already been played.

Almost anyone new to playing music who sits down at a piano will produce a sound similar to that of a cat chasing a mouse through a tangle of kitchen pots. Who can blame them, given the sea of 88 inexplicable keys sitting before them? But they’ll quickly realize that playing keys in succession in one direction will produce sounds with consistently increasing or decreasing pitch. They’ll also learn that pressing keys for different lengths of times can improve the melody. But there’s still 88 of them and plenty more to learn, such as which keys will sound harmonious when played together.

Piano Genie training architectureWith Pinao Genie, gone are the daunting 88 keys, replaced with a 3D-printed box of eight arcade-style buttons which they made by following this Adafruit tutorial. A neural network maps those eight buttons to something meaningful on the 88-key piano keyboard. Being a neural network, the mapping isn’t a fixed one-to-one or even one-to-many. Instead, it’s trained to play something which should sound good taking into account what was play previously and won`t necessarily be the same each time.

To train it they use data from the approximately 1400 performances of the International Piano e-Competition. The result can be quite good as you can see and hear in the video below. The buttons feed into a computer but the computer plays the result on an actual piano.

For training, the neural network really consists of two networks. One is an encoder, in this case a recurrent neural network (RNN) which takes piano sequences and learns to output a vector. In the diagram, the vector is in the middle and has one element for each of the eight buttons. The second network is the decoder, also an RNN. It’s trained to turn that eight-element vector back into the same music which was fed into the encoder.

Once trained, only the decoder is used. The eight-button keyboard feeds into the vector, and the decoder outputs suitable notes. The fact that they’re RNNs means that rather than learning a fixed one-to-many mapping, the network takes into account what was previously played in order to come up with something which hopefully sounds pleasing. To give the user a little more creative control, they also trained it to realize when the user is playing a rising or falling melody and to output the same. See their paper for how the turned polyphonic sound into monophonic and back again.

If you prefer a different style of music you can train it on a MIDI collection of your own choosing using their open-sourced model. Or you can try it out as is right now through their web interface. I’ll admit, I started out just banging on it, producing the same noise I would get if I just hammered away randomly on a piano. Then I switched to thinking of making melodies and the result started sounding better. So some music background and practice still helps. For the video below, the researcher admits to having already played for a few hours.

This isn’t the first project we’ve covered by these Google researchers. Another was this music synthesizer again using neural networks but this time with a Raspberry Pi. And if our discussion of recurrent neural networks went a bit over your head, check out our overview of neural networks.

Continue reading “Piano Genie Trained A Neural Net To Play 88-Key Piano With 8 Arcade Buttons”

VCF East 2018: SDR On The Altair 8800

You’d be forgiven if you thought software defined radio (SDR) was a relatively recent discovery. After all, few outside of the hardcore amateur radio circles were even familiar with the concept until it was discovered that cheap USB TV tuners could be used as fairly decent receivers from a few hundred MHz all the way up into the GHz range. The advent of the RTL-SDR project in 2012 brought the cost of entry level SDR hardware from hundreds of dollars to tens of dollars effectively overnight. Today there’s more hackers cruising the airwaves via software trickery than there’s ever been before.

Continue reading “VCF East 2018: SDR On The Altair 8800”

The Cambridge Z88 Lives! (As A USB Keyboard)

What did [Clive Sinclair] do next? After his line of home computers including the iconic ZX Spectrum hit the buffers and was sold to Amstrad, that is. No longer in the home computer business, he released a portable computer for the business market. The Cambridge Z88 had a Z80 at its heart, a decent keyboard, a text-only LCD display, and ran for an impressively long time on a set of AA alkaline cells. It made a handy portable word-processor, or a serial terminal thanks to its rare-for-the-time RS232 port. And it’s that port that [Spencer Owen] made use of his Z88 in a modern setting, using it as a USB keyboard.

It’s a few years old, so he used a Minimus AVR microcontroller board to provide a serial-to-USB HID keyboard interface, and to keep things tidy he’s made a poor man’s enclosure for it using Sugru. It’s not quite an amazing hardware hack, but we’re featuring it simply for its use of a Z88. Retro computers used as keyboards are a common theme, but a Z88 is a particularly eclectic choice.

If you’re not British you may only know the name [Sinclair] through Brits on the Internet waxing lyrical about their ZX Spectrum computers, but in fact the man behind them is a serial electronics entrepreneur whose career has continued since the 1960s and has touched fields as diverse as portable television and bicycles aside from the computers he is best known for. Often his products took technology to the limit of practicality, but they were and continue to be the ones to watch. If [Clive Sinclair] is working in a field his products may not always hit the right note when released, but you can guarantee that you’ll be buying the same thing from the big boys within a few years. The Z88 is a classic Sinclair product, a little before its time in 1988 and pushing the technology a little too far, but delivering a truly portable and capable computer with a meaningful battery life a couple of decades before you’d find the same attributes from all but a few other niche manufacturers.

Not had enough USB HID devices? How about a Morse key? And if [Spencer] rings a bell, he’s the originator of the RC2014 retrocomputer we reviewed last year.

Reed Organ MIDI Conversion Tickles All 88 Keys

What did you do in high school? Chances are it wasn’t anywhere near as cool as turning a reed organ into a MIDI device. And even if you managed to pull something like that off, did you do it by mechanically controlling all 88 keys? Didn’t think so.

A reed organ is a keyboard instrument that channels moving air over sets of tuned brass reeds to produce notes. Most are fairly complex affairs with multiple keyboards and extra controls, but the one that [Willem Hillier] scored for free looks almost the same as a piano. Even with the free instrument [Willem] is about $500 into this project. Almost half of the budget went to the solenoids and driver MOSFETs — there’s a solenoid for each key, after all. And each one required minor surgery to reduce the clicking and clacking sounds that don’t exactly contribute to the musical experience. [Willem] designed custom driver boards for the MOSFETs with 16 channels per board, and added in a couple of power supplies to feed all those hungry solenoids and the three Arduinos needed to run the show. The video below shows the organ being stress-tested with the peppy “Flight of the Bumblebee”; there’s nothing wrong with a little showing off.

[Willem]’s build adds yet another instrument to the MIDI fold. We’ve covered plenty before, from accordions to harmonicas and even a really annoying siren.

Continue reading “Reed Organ MIDI Conversion Tickles All 88 Keys”

Arduino Altair 8800 Simulator

Browse around eBay for an original Altair 8800 and you quickly find that the price range is in the thousands of dollars. If you are a collector and have some money in your pocket maybe that’s okay. But if you want the Altair 8800 experience on a budget, you can build yourself a clone with an Arduino. [David] kindly shared the build details on his Arduino Project Hub post. Using an Arduino Due (or a Mega for 25% of original speed), the clone can accurately reproduce the behavior of the Altair’s front panel elements. We covered a similar project in the past, using the Arduino Uno.

While not overly complicated to build one, you will need a backfair amount of patience so you can solder all the 36 LEDs, switches, transistors, and resistors but in the end, you’ll end up with a brand new computer to play with.  In 1975, an assembled Altair 8800 Computer was selling for $621 and $439 for an unassembled version. Sourced right, your clone would be under 50 bucks. Not bad.

The simulator comes with a bunch of software for you to try out and even games like Kill-the-Bit and Pong. BASIC and Assembler example programs are included in the emulator software and can easily be loaded.

In addition, the simulator includes some extra functions and built-in software for the Altair which are accessible via the AUX1/AUX2 switches on the front panel (those were included but not used on the original Altair). From starting different games to mount disks in an emulated disk drive, there are just too many functions to describe here. You can take a look at the simulator documentation for more information.

In case you don’t know already, here’s how to play Kill-the-Bit:

Continue reading “Arduino Altair 8800 Simulator”

Marvin Minsky, AI Pioneer, Dies At 88

Marvin Minsky, one of the early pioneers of neural networks, died on Sunday at the age of 88.

The obituary in the Washington Post paints a fantastic picture of his life. Minsky was friends with Richard Feynman, Isaac Asimov, Arthur C. Clarke, and Stanley Kubrick. He studied under Claude Shannon, worked with Alan Turing, had frequent conversations with John Von Neumann, and had lunch with Albert Einstein.

Single_layer_ann
“Single layer ann” by Mcstrother

Minsky’s big ideas were really big. He built one of the first artificial neural networks, but was aiming higher — toward machines that could actually think rather than simply classify data. This was one of the driving forces behind his book, Perceptrons, that showed some of the limitations in the type of neural networks (single-layer, feedforward) that were being used at the time. He wanted something more.

Minsky’s book The Society of Mind is interesting because it reframes the problem of human thought from being a single top-down process to being a collaboration between many different brain regions, the nervous system, and indeed the body as a whole. This “connectionist” theme would become influential both in cognitive science and in robotics.

In short, Minksy was convinced that complex problems often had necessarily complex solutions. In research projects, he was in for the long-term, and encouraged a bottom-up design procedure where many smaller elements combined into a complicated whole. “The secret of what something means lies in how it connects to other things we know. That’s why it’s almost always wrong to seek the “real meaning” of anything. A thing with just one meaning has scarcely any meaning at all.”

useless_machine-shot0005Minsky was a very deep thinker, but he kept grounded by also being a playful inventor. Minsky is credited with inventing the “ultimate machine” which would pop up in modern geek culture and shared numerous times on Hackaday as the “most useless machine”. He inspired Claude Shannon to build one. Arthur C. Clarke said, “There is something unspeakably sinister about a machine that does nothing — absolutely nothing — except switch itself off.”

He also co-designed the Triadex Muse, which was an early synthesizer and sequencer and “automatic composer” that creates fairly complex and original patterns with minimal input. It’s an obvious offshoot of his explorations in artificial intelligence, and on our bucket list of must-play-with electronic instruments.

Minsky’s web site at MIT has a number of his essays, and the full text of “The Society of Mind”, all available for your reading pleasure. It’s worth a bit of your time, not just in memoriam of a great thinker and a wacky inventor, but also because we bet you’ll see the world a little bit differently afterwards. That’s a legacy that lasts.