017
05.08.2017, 19:42 Uhr
Klaus
|
Hallo,
bevor ich zu meinen ersten Tests zur interruptgesteuerten Soundausgabe etwas schreibe, geht ein riesiges Dankeschön an Rolf Weidlich.
Da ich sehr gern mal die Soundausgabe am K1520 Rechner ohne die doofe Zeitschleife, die den ganzen Rechner lahm gelegt hat, testen wollte, habe ich mit Rolf Kontakt aufgenommen. Von der Interrupt-Programmierung hatte ich so gut wie Null Ahnung. Er hat mir seine Quellen zum Testen zur Verfügung gestellt, die ich ein wenig an die vorhande Hardware angepasst habe.
Bis die neue Karte mit CTC vom Daniel fertig ist, habe es mal auf meinem K1520 Bastelrechner mit der alten gefädelten SOUND-Karte probiert. Als ZRE arbeitet (wie beim K8924 bzw. A5120) die K2526. Auf der ZRE ist eine CTC vorhanden, bei der einige Kanäle ungenutzt sind. Unter CP/A ist Kanal 0 und 1 verfügbar und SCPX ist Kanal 0 und 3 verfügbar. Mit dieser Konstellation ist es möglich die CTC als Zeitgeber zu programmieren und den Systemtakt 2,4576MHz herunterzuteilen, damit am Kanal 0 ein 50Hz Interrupt ermöglicht wird. Irgendwelche Verdrahtungen am Koppelbus entfallen damit.
Diesen Interrupt verwende ich für Rolfs erstklassiges Programm. Rolf hat den eigentlichen SOUND-Player als eine Include-Datei geschrieben. Sie ist für einen universellen Einsatz in Assemblerprogrammen mit AY-Sound auf verschiedenen Rechnern gedacht und ermöglicht die Wiedergabe von *.STC-Dateien (compilierte *.ST1-Dateien)
Zitat Rolf: Ich habe mich bei meinen Arbeiten auf das "ursprüngliche" Format des ZX Spectrum konzentriert, sowohl in der unkompilierten Form *.ST1 (wie sie von "Sound Tracker 1.x" genommen wird) als auch im compilierten Format *.STC. Mit den beiden kann ich soweit umgehen (d.h. nicht nur abspielen sondern bald auch bearbeiten oder selber erstellen) und habe die Dateispezifikationen. Darüber hinaus gibt es zahlreiche Downloadquellen für diese Typen und 100-te Songs im Netz... Zitat Ende
Hier wären wir wieder beim Thema Taktfrequenz (1,78MHz oder 2,0MHz) vom AY Chip, damit die Tonhöhe stimmt. Der KC85 kann hier gut seine 1,75MHz verwenden. Ich will diese Diskussion, aber nicht schon wieder entfachen.
Einmal gestartet spielt der Player über die Interruptroutine die gewünschte Musik im Hintergrund ab. Parallel dazu habe ich einfach mal DIR aufgerufen. Funktioniert. Und die Musik wird brav weiter gespielt. Aussetzer bei der Bildausgabe konnte ich nicht hören.
Momentan liegt das Playerprogramm noch ab Adresse 100h, weswegen ein weiteres Programm parallel noch nicht gestartet werden kann. Aber es ist ja alles erst ein Anfang und ein Test.
Für den KC85/x ist Rolf schon weiter. Aber das ist ein anderes Thema.
So... das erst Mal ganz kurz zum Thema SOUND mit CTC am K1520 Rechner unter CP/A bzw SCPX. Wie es dann am KC87, AC1, Z1013, LLC2 .... oder wo Daniels Karte noch überall verwendbar sein wird, aussieht, wird sich zeigen.
Rolf hat super Arbeit geleistet und ich denke wir sollten uns auf das einheitliche Dateiformat *.STC einigen. So sind viele vorhande und kommende Dateien auch auf den unterschiedlichen DDR-Rechnern verwendbar.
Viele Grüße, Klaus |