Wenn Informatiker sich langweilen und Kanäle für ihre überschüssige Kreativität suchen, kommen die absurdesten (mit durchaus positiver Note) Sachen heraus. Ein Klassiker sind wohl die musizierenden elektrischen Geräte; im Internet finden sich Videos zuhauf, in denen alltägliche Geräte zweckentfremdet und für die musikalische Unterhaltung genutzt werden. Ein schönes Beispiel hierfür sind die musizierenden Diskettenlaufwerke; das folgende Video ist der jüngste Spross dieser Kategorie:

Für die Leute mit entsprechendem Humor (ich gebe es hier gerne zu: ich finde es toll!) ist das allein sicherlich schon Unterhaltung genug, aber immerhin ist das hier ein Portal für Wissenschaftsblogs, also wollen wir dem auch gerecht werden und einmal hinter den Kulissen schauen, wie man denn nun Diskettenlaufwerke dazu bringt, etwa den imperialen Marsch aus Star Wars zu spielen (der Autor des Videos hat seine Beschreibung auch unter dem Video auf Youtube verlinkt).

Ein Diskettenlaufwerk ist an sich relativ einfach aufgebaut und besteht aus relativ wenigen Bestandteilen; neben einem Motor zum Drehen der Diskette (ja, im Grunde funktionieren die Dinger so ähnlich wie CDs), diversen mechanischen Halterungen und etwas Elektronik zur Steuerung der Bauteile besitzt ein derartiges Laufwerk einen magnetischen Schreib-Lese-Kopf sowie einen Schrittmotor, der diesen Kopf bewegt. Der Kopf kann in zwei Richtungen bewegt werden, wobei die Bewegung durch den Motor ein bestimmtes (immer gleiches) Geräusch verursacht (zu hören am Anfang des Videos, kurz nach dem Einschieben der Diskette, wenn der Schreib-Lese-Kopf bewegt wird). Der Trick besteht jetzt darin, den Schreib-Lese-Kopf genau in der richtigen Frequenz hin und her zu bewegen, so dass – ähnlich einer schwingenden Violinen-Saite – ein Ton erzeugt wird. Konkret heißt das: je schneller der Kopf durch den Motor hin und her bewegt wird, desto höher ist der erzeugte Ton. Jetzt muss man nur noch die richtigen Schaltfrequenzen für bestimmte Tonhöhen herausfinden und kann dann damit jede beliebige Melodie spielen.

Eigentlich ganz einfach; bleibt nur noch die eigentlich interessante Frage zu klären: wie bewegt man den Schreib-Lese-Kopf eigentlich hin und her? Aber auch das ist erstaunlich unspektakulär und leicht zu erklären. Ein typisches Diskettenlaufwerk wird über ein relativ breites Kabel (schön im Video zu sehen) an einen Diskettenlaufwerkscontroller angeschlossen. Das Laufwerk hat dabei am Anschluss 34 Pins (die kleinen Kontaktstifte einer Steckverbindung), an die man über das Kabel ein Signal (0 oder 1, wir kennen das ja jetzt schon) anlegen kann. Je nach Signalpegel wird dann für jede Anschlussstelle eine bestimmte Funktion ausgeführt (wobei die Hälfte der Pins beim Diskettenlaufwerk auf Masse geschaltet sind, also keine Wirkung haben). Die zum Musizieren wichtigen Pins sind diejenigen, welche die Bewegungsrichtung des Kopfes (das DIR-Pin, in der Regel Pin 18) vorgeben und die den Motor um einen Schritt in die gewählte Richtung (das STEP-Pin, i.d.R. Pin 20) bewegen. Durch gezieltes Ansteuern dieser beiden Pins kann man also ganz einfach den Motor in einer bestimmten Frequenz “schwingen” lassen. Die Motorbewegung erfolgt übrigens immer dann, wenn sich der Wert am STEP-Pin von 1 auf 0 ändert; legt man also am DIR-Pin abwechselnd eine 0 und eine 1 an und ändert den angelegten Wert am STEP-Pin entsprechend der für einen Ton benötigten Frequenz, kann man seine gewünschte Melodie erzeugen.

Die Signale für die Pins muss man übrigens auch nicht von Hand erzeugen, das wäre doch etwas umständlich. Für diesen Zweck gibt es passende Bauelemente, genannt Mikrocontroller. Das sind – vereinfacht gesagt – kleine, vollwertige Computer, die ähnlich wie ihre großen Pendants programmiert werden und so bestimmte Aufgaben erfüllen können. Programmiert man jetzt einen geeigneten Mikrocontroller derart, dass er an seinen Ausgängen die passenden Signale erzeugt, kann über ein Kabel dieses Signal an das Diskettenlaufwerk übertragen und so Musik erzeugt werden; programmiert werden Mikrocontroller meist im bereits bekannten Assembler oder einer assemblernahen Programmiersprache – hier gibt es also auch keine Magie. Im Video ist der benutzte Mikrocontroller übrigens links im Bild zu sehen.

Insgesamt eine amüsante Sache. Früher hat man Baumhäuser gebaut und Modelleisenbahnen fahren lassen – heute werden elektrische Geräte umprogrammiert. Aber auch die Freizeitbeschäftigungen müssen eben mit der Zeit gehen! Und auch wenn viele dem Video jetzt sicherlich einen relativ hohen Nerd-Faktor bescheinigen: es ist immer noch besser, wenn begabte Leute ihre Aufmerksamkeit auf derartige Themen lenken als dass sie sich destruktiveren Tätigkeiten zuwenden.

Kommentare (9)

  1. #1 WeiterGen
    Oktober 1, 2011

    Toll.

    Was mich immer schon interessiert hat: Wie kommt die charakteristische Tonfolge eines Dial-Up Modems zu Stande? (Pre-DSL Intenetnutzer werden sich erinnern). Tonbeispiel hier:

    Oder hier schon von dem großartigen Martin Gretschmann alias Console in ein Lied eingebaut: http://www.console.li/music/rocket-in-the-pocket/ (Lied Nr. 3).

  2. #2 Henry
    Oktober 1, 2011

    Ahh, da fällt mir noch ein anderes interessantes Video ein. Hat zwar nicht wirklich was mit Informatik zu tun, aber die “Verkabelung” dieses Geräts ist einfach zu genial, um hier unerwähnt zu bleiben:

  3. #3 Marcus Frenkel
    Oktober 1, 2011

    @WeiterGen
    Die Töne, die man da hört, entstehen beim sogenannten “Handshake” zwischen dem Modem und dem ISP, also quasi bei der Anmeldung und Erst-Kommunikation des Modems im Netz. Da ein Modem ja analog arbeitet, hat man eine “Frequenz” der Daten – und die wird beim Handshake einfach hörbar gemacht, daher das Geräusch. Man hätte auch sämtliche Datenübertragungen hörbar machen können, aber das hätte die Anwender dann wohl doch ziemlich genervt; warum der Handshake nun unbedingt hörbar sein musste, weiß ich nicht; man konnte es meist auch deaktivieren.

    @Henry
    Es hat insofern zumindest etwas mit diesem Artikel zu tun, als dass beide Videos die Triebfeder demonstrieren, die uns zu dem gebracht hat, was wir heute sind (zumindest, was den technologischen Fortschritt angeht). Tolles Video! 🙂

  4. #4 rolak
    Oktober 2, 2011

    Gaaaanz falsche Antwort, Marcus – WeiterGen wollte doch wissen, wie die Tonfolge zustande kommt. Und das wird in aller Ausführlichkeit da hinten erklärt 😉

    Die Abfolge der ausgetauschten Bits kommt durch das Protokoll zustande (V.90, V.24, … vom Modem in absteigender Folge durchprobiert), die Töne ergeben sich aufgrund des durch die Bandschmäle (nein, Bandbreite passt bei Telefon wirklich nicht: 300..3.400Hz, deswegen die fremd klingenden Stimmen) notwendigen aufwendigen Modulations-Verfahrens, im Laufe der Zeit bis hin zu mehrfach überlagerter Amplituden-, Phasen- und Frequenzmodulation.
    Und warum nicht stumm geschaltet? Ich kenne wahrlich nicht die Original-Intention, doch in den GutenAltenZeiten™ des Mondscheintarifes, wackeliger Verbindungen und handgeschalteter Fax/Tel/AB/Modem-Weichen war es ungemein praktisch, sofort zu erkennen, was für ein Gerät am anderen Ende antwortete und -wenn es denn ein Modem war- auf welche Geschwindigkeit sie sich geeinigt hatten. Ggfs Neuwahl in der Hoffnung auf besseren Kontakt… Die eigentliche Datenübertragung konnte stumm ablaufen bzw bei dem hauptsächlichen mailtossing schlicht durch Mitlesen (48kbaud war bei mir das Ende der Fahnenstange 😉 kontrolliert werden.

    Doch auch WeiterGen liegt falsch: DialUp wird nicht in ein Lied eingebaut – es ist das Lied.

    die Triebfeder

    Was nu? Der Suff oder der Spieltrieb?

    wobei die Hälfte der Pins beim Diskettenlaufwerk auf Masse geschaltet sind, also keine Wirkung haben

    *räusper* Erhöhung der möglichen Datenrate durch Abschirmung (Verhinderung von Übersprechen).

    Noch eine Kleinigkeit zur Ansteuerung des Laufwerks: Gerade bei derlei Aufgaben bietet sich eine extrem abstrahierende Form der Programmierung an, FlowCharts.
    Mir ist übrigens so, als hätte ich irgendwann ein Progrämmchen gesehen, das eine textlich festgelegt Notenfolge interpretierte (~midi) und die im PC eingebauten floppydrives zum Tanzen brachte. War höchstwahrscheinlich auf ‘ner floppy gebunkert und ist somit längst im Datennirvana.

  5. #5 Marcus Frenkel
    Oktober 2, 2011

    Gaaaanz falsche Antwort, Marcus – WeiterGen wollte doch wissen, wie die Tonfolge zustande kommt. Und das wird in aller Ausführlichkeit da hinten erklärt 😉

    Macht mir doch nicht solche Angst. Ich dachte jetzt einige Sekunden lang, ich hätte totalen Unsinn erzählt….
    Tolles Video. ^^

    Was nu? Der Suff oder der Spieltrieb?

    Der Trieb, der uns dazu bringt, die Finger in die Steckdose des Universums zu stecken und zu schauen, was passiert. 😉

    *räusper* Erhöhung der möglichen Datenrate durch Abschirmung (Verhinderung von Übersprechen).

    Es war jetzt auf die reine Bereitstellung von Funktionalität bezogen, die das Laufwerk zum quietschen, knarren und summen bringt. Von den technologischen Details habe ich keine Ahnung, ich bin Software-Mensch. 😉

  6. #6 Wolfgang
    November 18, 2011

    Musik aus Diskettenlaufwerken – gut und schön. Aber das schönste Geräusch war seinerzeit, wenn meine alte 1541 Floppy (zum Commodore 64) das Laden der Summer Games beendet hat 🙂

    Liebe Grüsse aus Wien,
    Wolfgang

  7. #7 Marcus Frenkel
    November 19, 2011

    Oh, ja. Das kenne ich auch noch – oder wenn der C64 allgemein auf der Diskette rumgefurwerkt hat. Das sind Erinnerungen…;)

  8. #8 H.M.Voynich
    Dezember 6, 2011

    Disketten – welch Luxus!
    Der Datasette konnte man noch direkt zuhören … *träum*

    Die Floppy war eigentlich eher so der Drummer-Typ:
    “Woher weiß ich, daß der Schreibkopf ganz eingefahren ist? Och, ich beweg ihn einfach mal 40 Schritte nach links, dann wirds schon passen.
    Knack … knack … knack … knack …”

  9. #9 H.M.Voynich
    Dezember 6, 2011

    (Bei Akkustikkopplern war auch noch alles hörbar, nicht nur das Handshake – Modems hat die Deutsche Post ja lange Zeit gar nicht zugelassen. 😉