Sid Musicplayer

upload.wikimedia.org_wikipedia_commons_thumb_0_0f_mos6581_chtaube061229.jpg_320px-mos6581_chtaube061229.jpg Mit Microcontrollern kann auf verschiedenen Wegen Musik erzeugt werden. Der Commodore 64 benutzte zu seiner Zeit zur Sound-Erzeugung den Sound-Chip MOS SID 6581, später MOS SID 8580. Dieser SID-Chip unterstützt die Erzeugung von drei universellen Stimmen mit Grundfrequenzen zwischen 0 bis 4 kHz. Mehr auf Wikipedia: Commodore 64: Ton.

Dieses Projekt hat zum Ziel diesen Chip mithilfe eines Atmega32 anzusteuern. Die Musikdateien sollen aus der High Voltage SID Collection (HVSC) bezogen, konvertiert und über die SD-Karte dann abgespielt werden.

MartinW, 2011

Das Dateiformat der SID-Dateien

Die SID Dateien enthalten die Informationen die der Mikroprozessor des C64 braucht um dem SID-Chip mitzuteilen welchen Tontyp er zu welcher Zeit abspielen soll. Man kann sich denken, dass die Daten im einfachsten Fall einfach als ein großes Array vorliegen:

  • [Adresse,Daten,Adresse,Daten,Adresse,Daten...]

Dem ist aber nicht so, da die Datenmenge auch für simple Musikstücke viel zu groß wäre (damals war Speicher noch teuer). Die Daten liegen also direkt als Programmcode vor, den der Mikroprozessor direkt ausführt. Darin können Schleifen, Interrupts und Variablen genutzt werden die die erforderliche Datenmenge auf ein Minimum reduzieren.

Dies bedeutet aber auch gleichzeitig, dass man die SID-Dateien in ihrer Urform nicht einfach von einem Mikrocontroller wie einem Atmega ausführen lassen kann. Die Dateien müssen erst konvertiert werden.

MartinW, 2011

V1.0 - Übersicht über den Aufbau

Für einen ersten Test wird eine entsprechende Beschaltung auf einem Breadboard aufgebaut. Die Ansteuerung übernimmt in diesem Fall ein Atmega32 auf einem STK500. So kann zunächst sichergestellt werden, das der alte Chip überhaupt noch funktioniert und keine Defekte aufweist.

www.ags.tu-bs.de_img_web_e.lab_projekte_sidplayer_001.jpg

Videobeispiel

Zwischenstand

Wie im Video zu sehen ist, scheint der Chip ordentlich zu arbeiten. Wir sind überrascht wie gut die Musik klingt die er abspielt.

MartinW, 2011

V1.1 - Übersicht über den Aufbau

Die zweite Version soll als ein Prototyp für den späteren „finalen“ Aufbau dienen. Der Prototyp soll nur ein paar Tasten haben um die Songtitel umzuschalten. Später soll dann noch ein Display zur Anzeige der Ordnerstruktur und des Songtitels hinzukommen.

Schaltplan

Um den Schaltplan zu erstellen wurde auch eine Eagle library mit dem entsprechenden Pinout des SID8580 und des SID6581 erstellt.

sid8580.rar Achtung! Die Library wurde noch nicht getestet.

MartinW, 2011

09.01.2012 - Seminarvortrag Chiptunes

Gehalten am EMG - Institut für Elektrotechnische Messtechnik und Grundlagen der Elektrotechnik im Rahmen meines Elektrotechnikstudiums.
Seminarvortrag.pdf

MartinW, 2011