Skip to content

View this post on Instagram

It’s about to get geeky in here...

A post shared by Justin D. Morgan (@justindmorgan) on

The geekiness hasn't stopped with this one...

The Yamaha CX5M Music Computer was one of a number of MSX computers released worldwide in the 1980's, as well as one of only a few marketed in the United States. Project CX5M is my attempt to document this vintage computer, and I want to give it a proper treatment.

I know that many of my US-based readers have never heard of the MSX standard. That is understandable, as MSX largely bypassed the United States. Only two companies marketed MSX computers in the US (with Spectravideo being the other company, if you're curious).

That's the BackSpace key, by the way.

Anyways, Yamaha's CX5M Music Computer is a notable entry in the annals of computing history. While I have found evidence that computers were used in the music production process, as well as marketed for their sound generation capabilities prior to the CX5M's release, the CX5M may be the first computer specifically marketed for music production.

After all, Yamaha was no stranger in the music industry. For example, their DX7 synthesizer created some of the most iconic sounds in 1980's pop music, though programming new sounds on it proved to be difficult.

And yes, Yamaha sold a cartridge for the CX5M that could be used to more easily create new sounds for the DX7. It was among the first set of cartridges launched for the CX5M.

You might be wondering why I would even bother with physical hardware at all. Any CX5M hardware that I do find is going to be over 30 years old. And interfacing modern hardware with vintage computers can present a unique set of challenges.

For example, while MSX-DOS used the FAT12 file system, macOS no longer supports external USB floppy drives. Fortunately, Linux and Windows still do... but for how long?

And it's not like you are going to drive down to your local office supply and find a double-density floppy disk to use in your vintage computer. (Fortunately, eBay is a good source for new old stock disks.)

Also, vintage computers usually output video at a non-standard 240P, instead of the NTSC standard 480i. CRT-based TVs were totally fine with displaying 240P – and if your TV was small enough, you would never notice the missing scan lines were missing from the signal.

However, since 240P was never a standard, many modern TVs and video capture devices will flat out refuse to acknowledge that there is a signal.

Furthermore, some video controllers of the day, including the TMS9918A found in the CX5MU (that's the designation for the US-market CX5M), did other tricks in the name of making video output computationally easier. Unfortunately, these non-standard tricks cause undesirable artifacts in modern video equipment, as shown in these examples.

I'll elaborate on these "tricks" in a future post.

But emulation also has its drawbacks. MSX emulators do exist, and they have support for the CX5M. Some emulators let you record the screen, which would result in a far better picture than composite video could ever provide. Or if the emulator didn't support this feature, screen recording software could come to the rescue.

Emulation also would not let me experience what it was like to actually have a CX5M in the 80's. And there is a certain je ne sais quoi from hearing the sound from the actual synthesizer hardware, instead of an emulated approximation.

That is, if any of the MSX emulators even attempt to emulate the SFG-01 and/or SFG-05. I have so far been unable to get far enough with any of the MSX emulators to make that determination.

Therefore, I will press forward with using actual CX5M hardware, but will still investigate using MSX emulators to help fill in gaps in the story of the Yamaha CX5M Music Computer.

The following are resources to help you continue your journey into live coding with Sonic Pi.

Sonic Pi

Download Sonic Pi, see example scripts, download materials for teaching Sonic Pi in the classroom, and more!

Live Coding Education

This is the Tutorial I used as the basis for a speech I gave at the Piney Mountain Toastmasters (Charlottesville, VA) meeting on August 30, 2017.

Getting Started with Sonic Pi

A learning page on Sonic Pi from the Raspberry Pi Foundation.

Music Note to MIDI Note Table

Use this helpful table to convert MIDI notes found in Sonic Pi scripts you see online to the actual music note. Remember that “Middle C” is in the 4th octave, and is MIDI note 60. (This table was found on this blog post by Andy Murkin. Andy's blog post has nothing to do with Sonic Pi, but is linked here as the citation.)

The MagPi Essentials: Code Music with Sonic Pi

MagPi is the official Raspberry Pi magazine published by the Raspberry Pi Foundation. This is an entire 109 page issue devoted to Sonic Pi, and the PDF version is free to download!

Materials for Classrooms

I thought I would include links to additional classroom learning materials that I found during my research on Sonic Pi.

Sonic Pi Lessons

A 5 lesson plan from the Raspberry Pi Foundation.

Sonic Pi: Live and Coding

An 11-week lesson plan for incorporating Sonic Pi in the classroom. Includes a set of short films and inspirational works by artists. KS3 in the UK roughly equates to Middle School age, for those of us in the States.

Happy Live Coding!

With a name like Sonic Pi, you might think that The Live Coding Music Synth for Everyone (their words, not mine) forgot about everyone not using the Raspberry Pi. However, that's where the name Sonic Pi might be a bit misleading — it was developed in collaboration with the Raspberry Pi Foundation, so comes pre-installed on Raspbian images for the Raspberry Pi.

Sonic Pi is also available for Windows, Macintosh, and Linux. So how would you get started with Sonic Pi on the computer you already have? I thought you would never ask.

Raspberry Pi

Raspberry Pi loves Sonic Pi so much that it comes pre-installed on the current Raspbian images for the Raspberry Pi. All you need to do is download the current Desktop version of Raspbian from the Raspberry Pi Foundation. You can also download the current version of NOOBS and use that to install Raspbian.

If you're not sure how to write the downloaded image to an SD/microSD card, their website has instructions you may follow.

Windows, Macintosh, or Linux

For the remaining three operating systems, proceed to the Sonic Pi website and download the installer for your operating system. They also have installation directions available.

For Windows, they also have a version that does not need to be installed, but may be simply copied to and executed from a removable USB drive. This would be a good option if you need to try Sonic Pi on a computer you do not own.