★ HARDWARE ★ CPC-Digiblaster v2.0|CPC Amstrad International) ★ |
CPC-Digiblaster (CPC Amstrad International) |
CPC-Digiblaster Wenn es um die Soundfähigkeit des Computers geht, können CPC-Besitzer nur neidisch auf die 16-Bit-Kollegen Amiga, Atari ST, Mac und PC (mit Soundblaster-Karte) blicken. Wir können da mit einer unkomplizierten Schaltung weiterhelfen.
Leider ist der CPC nur in der Lage, blecherne Rechteckfrequenzen auszugeben. Der Amiga und andere Computer hingegen arbeiten mit digitalisierten Instrumenten, die intern über Digital-/ Analog-Wandler ausgegeben werden. Genaugenommen verfügt auch der Soundchip des CPC über Möglichkeiten, digitalisierte Klänge wiederzugeben. Hierfür wird das Lautstärkeregister benötigt. Dieses Register kann 16 verschiedene Lautstärkewerte annehmen. Es wäre also möglich, Samples mit 4 Bit abzuspielen. Doch auch hier enttäuscht der Soundchip! Um für das menschliche Ohr einen linearen Lautstärkeanstieg zu erzeugen, verläuft die Spannung am Soundausgang logarithmisch. Die auszugebenden Werte müssen deshalb linearisiert werden. Effektiv kommt man dabei nur noch auf 3 Bit. Der Amiga hat mit seinen 8-Bit-Samples die Nase vorn. Wer nun sagt: “Na schön, halb so gut wie der Amiga ist immer noch gut genug“, hat sich getäuscht. Mit 3 Bit lassen sich acht verschiedene Werte darstellen, mit 8 Bit ganze 256! Mit dem CPC ist also gerade eine Wiedergabe von leisen Digitalisierungen nicht möglich. Langer Rede kurzer Sinn: Von der umständlichen Programmierung mal abgesehen kann der CPC-Soundchip seinen Kollegen nicht das Wasser reichen. Doch ausgerechnet die magere Druckerschnittstelle bügelt dieses Manko aus. Um 8-Bit-Samples auszugeben, benötigen wir eine 8-Bit-Schnittstelle und eine Schaltung, die diese Bits in einen passenden Spannungswert umwandelt. Der Druckerport stellt uns 8 Bit sowie einen Spannungspegel von 5 Volt zur Verfügung (Bit 7 = Strobe). Der Druckerport macht's möglich Um einen D-/A-Wandler aufzubauen, benötigt man normalerweise ein entsprechendes IC, welches alleine schon zwischen 15 und 20 DM kostet. Außerdem braucht ein solches IC natürlich eine Spannungsversorgung, die uns der Druckeranschluß nicht bietet. Die hier vorgestellte Schaltung (siehe Schaltbild) kostet 3 bis 12 DM und kommt ohne Spannungsversorgung aus, da sie nur aus passiven Bauelementen besteht. Dies hat jedoch auch einen kleinen Nachteil: Die erzeugte Spannung verläuft nicht exakt linear. Daher ist dieser D-/A-Wandler nicht für Steuerungsaufgaben verwendbar. Beim Aufbau ist folgendes zu beachten: Aller guten Dinge sind drei Natürlich bringt der D-/A-Wandler nichts ohne ein Beispielprogramm. Da digitalisierte Instrumente sehr lang sind, ist ein Abdruck der Samples nicht möglich. Die Demoprogramme auf der DATABOX heißen DIGI1 und DIGI2 und können einfach mit RUN gestartet werden. Zum Abtippen generiert Ihnen der Datalader DATA1 ein kleines Beispielprogramm, das verschiedene Tonhüllkurven über den D-/A-Wandler ausgibt. Seltsamerweise ergab sich bei der Programmierung dieses Beispielprogramms eine bessere Klangqualität, wenn das Upper-ROM eingeschaltet war. Die Programmierung Das Programm spricht direkt die Hardware des Centronics-Ports an. Der Port wird über die Adresse &EFXX angesprochen (XX steht für einen beliebigen Wert, hier kann beispielsweise 00 eingetragen werden). Da der CPC-Druckerport nur eine Breite von 7 Bit hat, aber durch den Digiblaster 8 Bit genutzt werden sollen, wird hierzu das Strobe-Signal genutzt. Da dies aber hardwaremäßig negiert wird, muß es vor der Ausgabe noch softwaremäßig invertiert werden. Die softwareseitige Behandlung vereinfacht sich, da das Strobe-Signal durch das siebte Bit des Ausgabebausteins dargestellt wird. Hier ein Beispiel: Auf den Centronics-Ausgang soll der Wert &C5 ausgegeben werden. LD A, &C5 ;Wert laden |
Wer Interesse an dieser Hardware-Bastelei hat, kann neben der abgedruckten Demo vorerst zwei Beispielsounds mit einem Gesamtumfang von über 50 kByte entnehmen. Vielleicht wird in naher Zukunft sogar noch so manch anderes Soundprogramm für unsere Erweiterung erscheinen. |
|
|