Seifenblasen... 

Beschreibung


Eine Entdeckung der Möglichkeit zum Schreiben von "Zettelchen" für mich und andere
.....

"A blog a day keeps the blogger to stay." ^^ (Tamaro)

12.03.2015

Abendhimmel und der liebe Augustin

Der Himmel war bei uns heute den ganzen Tag lang wolkenfrei.

Am Abend gab es milde Farben.

            Abendhimmel...


Heute, am 11.03., war der Todestag von >>>Marx Augustin<<<, bekannt als 'Der liebe Augustin'.

Für den C64 hatte ich damals eine Befehlserweiterung geschrieben, mit der man den Sound-Chip des C64, den SID (Sound Interface Device), ansteuern konnte.

Das Lied "O du lieber Augustin" hatte ich damit in einer eigenen Fassung bearbeitet und programmiert und auf Kassette aufgenommen.

             
              O du lieber Augustin

Das Besondere an dieser Befehlserweiterung war, dass Musikstücke nur mit Angabe der Tonbuchstaben und Oktavierungszahlen aufgebaut werden konnten.
Welches Tongeschlecht für die Interpretation zugrunde gelegt wurde, konnte man frei wählen,- Dur, Moll harmonisch, Moll natürlich, Moll melodisch. Außerdem konnte man daraus eine beliebige Stufenskala wählen.
Und man konnte die temperierte Stimmung oder die reine Stimmung (wie hier bei dem Stück) einstellen.

Die Idee dahinter war, Musik wie mit einem "Interpreter" der Basic-Programmierung in Echtzeit interpretieren und abspielen zu lassen. Wie ein Dirigent, der vor einem Or­chester steht und je nach einer gewünschten Stelle in einem Musikstück zu einem 'Jetzt-Zeitpunkt' einen entsprechenden Einsatz mit dem Taktstock gibt.

Es gab damals einige Musikprogramme, die aber immer darauf beruhten, dass die Daten zum Abspielen der Musik vorher komplett erzeugt werden mussten, damit es keine Aus­setzer gab. Angebliche Echtzeitprogramme waren nicht wirklich zu gebrauchen, weil sie über Puffer arbeiteten, zu deren Aufbereitung der Musikfluss immer kurzzeitig un­ter­bro­chen wurde.

Meine Befehlserweiterung arbeitete jedoch als Basic-Programm interruptgesteuert so schnell, dass die Abläufe in Echtzeit sehr präzise abgespielt wurden.
Dazu wurden auch alle Interruptmöglichkeiten des C64 ausgeschöpft. Die Töne wurden z.B. in einem Puffer übergeben und mit Hilfe des IRQ abgespielt, während Effekte mittels des NMI gesteuert wurden (hier bei dem Stück z.B. das leichte Vibrato).
Es war sehr inspirierend, damit Musik zu erzeugen, weil man jede kleine Änderung sofort testen konnte.

Leider ist das Programm auf dem C64 nicht mehr nutzbar, weil die alten Floppy-Disks nicht mehr lesbar sind.
Auch alle Musikstücke, die ja in Form von 'Basic'-Programmen existierten, sind verloren.
Nur dieses Stück hatte ich damals auf Kassette aufgenommen, und es ist daher er­hal­ten.

Ich habe aber zumindest des größten Teil des Assembler-Quellcodes des Programms noch abschreiben können.
Das Know-How, was ich mir damals erarbeitet hatte, ist daher nicht gänzlich verloren.

Allerdings steckt dieses wiederum noch in AmiPro-Texten, die inzwischen auf dem Windows 8.1 System auch nicht mehr ohne weiteres zugänglich sind, weil das AmiPro-Programm dort nicht mehr läuft...

Ich weiß zwar, wie der Code der AmiPro-Texte aufgebaut ist, aber es ist eine mühsame Angelegenheit, diese ganzen Dokumente wieder lesbar auf andere Textprogramme zu übertragen.

Im Endeffekt bleibt von zehn Jahren intensiver Programmentwicklung (bis hin zu einer Systementwicklung) nichts mehr übrig, als festzustellen:

"O du lieber Augustin, alles ist hin." ...

Kommentare:

  1. Voll porno. C64 halten doch die meisten jungen Leute inzwischen für einen Interpreter-Androiden aus StarWars. Wir fingen damals dienstlich auch mit so einem absolut coolen C64 an .... "Lang, lang ist her!"

    AntwortenLöschen
    Antworten
    1. Ich habe sehr gern damit gearbeitet.

      Am Anfang tat ich mich schwer mit dem zeilenweisen Bildaufbau über den ganzen Bildschirm. Die Architektur des ZX Spectrums mit seinem Prozessor, der quasi ein Intelprozessor war, war beim Bildaufbau günstiger. Beim C64 musste man für sauberen Bildwechsel immer den Zeilenlauf am Ende abwarten, ehe ein Bildschirm gewechselt wurde. Die meisten Programme nahmen aber zugunsten der Geschwindigkeit darauf gar keine Rücksicht, was sich immer in einem kurzen Aufblitzen bemerkbar machte.
      Am Schluss hatte ich bei der ganzen Programmiererei im Assemblercode den ganzen ROM im Kopf.^^

      Das freie Bildschirmeditieren war sehr von Vorteil.

      Löschen
  2. Und ich war so stolz, dass ich damals in einfachem Basic ein Ladeprogramm für die Disketten schreiben konnte. Und nachdem ich die 4 A4-Seiten 10-Finger-Lern-Programm aus der Chip abgetippt hatte, konnte ich die Tastatur schnell nutzen, ohne dass das Lernproramm, welches ich abgetippt hatte, funktionierte ;)

    AntwortenLöschen
    Antworten
    1. Ja, ich kann mich auch noch gut an die Anfänge erinnern.^^
      Das Tastengefühl mit dem großen Tastenhub war ein krasser Gegensatz zu den Gummitasten des ZX Spectrums, den ich vorher hatte.
      10-Fingersystem habe ich nie benutzt. Ich wollte es eigentlich auch immer antrainieren, aber irgendwie ist es nie dazu gekommen. Schnelligkeit ist für mich inzwischen auch kein Problem mehr.
      Trotzdem habe ich immer noch im Hinterkopf, es irgendwann mal anzugehen. :)

      Löschen
  3. Der Befehlssatz des Zilog Z80 beim ZX Spectrum war übrigens für das Programmieren im Maschinencode viel günstiger, als der des 6510-Prozessors im C64, bei dem viele Abläufe viel umständlicher zu programmieren waren, weil er weniger Register hatte.

    AntwortenLöschen

Danke für den Kommentar! :)

...