Amazing audio+video demo on C1541 floppy drive

Check out the impressive “Freespin” demo by Matthias Kramm, in which he manages to bit-bang an audio and video signal on the Commodore 1541 floppy disk drive. Video goes out a modified serial cable, and audio is generated by driving the disk head stepper motor. Remember that this is a 1MHz 6502 processor, with just 2Kb of RAM. Respect!

7 Likes

That is mad! I love it!

I’ve seen my share of C1541 abuses but this is on a completely different level of mad :hushed:
Thanks for sharing!!

A couple of other mechanical noise makers.

Stepper motor music for Benny.

.

An “Organ” with steppers used ad pitch transducers

.

— Other Stepper motor music examples —

12 Servo Vivaldi

“Megalovania” (Undertale) - Played on 31 Stepper Motors

The Final Countdown

(The Trinamic Stepper Driver Chip which magically takes the noise out of 3D printers, doesn’t have a musical byproduct.)

Single RC servo doing a rhythm track
(Like that guy attempted with cell phone buzzers, when your phone accesses this page)

Here’s a board that drives 16 servos from MIDI (but not in a musical way)

1 Like

Cool. Reminds me of my Amiga 500 days. There used to be a program that played “El Condor Pasa” via the floppy stepper motor.

Thanks @MaxMaxis for the links. There has certainly been some interesting work using servo motors. Paweł Zadrożniak’s “Floppotron” project is a good one to check out.

Floppotron started with just two floppy drives in 2011

By 2016 Floppotron 2.0 had a huge stack of floppy drives, as well as scanners and hard disks

I think the scanner stepper motors sound pretty sweet.

There are a few subtleties to the Freespin demo, as is explained here:

Overview of the project

Description of the music synthesis

The music and video is generated procedurally, and the soundtrack actually includes some almost imperceptible breaks where it loads the next batch of code from the floppy disk.

Unlike most of these other stepper motor projects, Freespin is actually reading from the drive as it is playing the music on the head motor. Every 7 to 20 seconds it reads a track from the disk - as well as generating audio and video it is also doing GCR decoding which is pretty challenging given the RAM limitation, and needs a specialised approach.

Description of the Freespin disk loader

Anyway, its good to see that folks are still up for challenges like this. Its hard these days to appreciate the technical difficulty of this sort of thing. I have a bit of a soft spot for it - one of my first jobs during the 80s was writing assembley code for the Commodore 64.

1 Like