Nächste Überarbeitung | Vorhergehende Überarbeitung |
z9001:software:musik [2014/01/01 17:43] – angelegt volkerp | z9001:software:musik [2014/01/05 15:25] (aktuell) – [ZX Spectrum] volkerp |
---|
Im Buch von Rolf-Dieter Klein: "Mikrocomputer selbstgebaut und programmiert", Franzis-Verlag, 2. Auflage 1984, habe ich eine passende Routine und auch 2 Musiken gefunden, die ich auf den Z9001 umgesetzt habe (anderes Ansprechen der Tonausgabe, andere Grundfrequenz). Die Sound-Routine erlaubt **4stimmige Tonwiedergabe**! | Im Buch von Rolf-Dieter Klein: "Mikrocomputer selbstgebaut und programmiert", Franzis-Verlag, 2. Auflage 1984, habe ich eine passende Routine und auch 2 Musiken gefunden, die ich auf den Z9001 umgesetzt habe (anderes Ansprechen der Tonausgabe, andere Grundfrequenz). Die Sound-Routine erlaubt **4stimmige Tonwiedergabe**! |
| |
Als Besonderheit ist beim Z9001 zu beachten, dass der Beeper original über die CTC mit nachfolgendem D-Flip-Flop angesteuert wird. Durch ein nachfolgendes NAND-Gatter (Schaltung siehe [[z9001:software:os:kassetteninterface]]) wird der Beeper zugeschaltet. Für die PWM-Sound-Ausgabe wird dieses NAND-Gatter zweckentfremdet und über den zugehörigen PIO-Ausgang ständig geschaltet. Damit ein Ton zu hören ist, muss das der CTC nachfolgende D-Flip-Flop so gesetzt sein, dass das NAND-Gatter "durchlässig" wird. Das erfolgt ggf. durch die Erzeugung eines einzelnen Impulses der CTC. | Als Besonderheit ist beim Z9001 zu beachten, dass der Beeper original über die CTC mit nachfolgendem D-Flip-Flop angesteuert wird. Durch ein nachfolgendes NAND-Gatter wird der Beeper zugeschaltet (Schaltungshinweise siehe [[z9001:software:os:kassetteninterface]]). Für die PWM-Sound-Ausgabe wird dieses NAND-Gatter zweckentfremdet und über den zugehörigen PIO-Ausgang der Beeper ständig ein- und ausgeschaltet. Damit ein Ton zu hören ist, muss das der CTC nachfolgende D-Flip-Flop so gesetzt sein, dass das NAND-Gatter "durchlässig" wird. Das erfolgt ggf. durch die Erzeugung eines einzelnen Impulses der CTC. |
| |
| Aufgrund dieser Tonerzeugung hört man nur Töne am Beeper, aber nichts am Kassettenausgang! |
| |
| {{:z9001:software:z9001_kassetteninterface_out.gif?600|}} |
| |
| ===== ZX Spectrum ===== |
| |
| Für den ZX Sprectrum gibt es einige 1-Bit-Engines, die vielfältigen Sound erzeugen können. Die Anpassung an den Z9001 ist relativ einfach, allerdings müssen Tohhöhen und Tonlängen an den geringeren Systemtakt angepasst werden. |
| |
| Für die Anpassung der Engines sind deshalb ein paar Eigenschaften des ZX Spectrum zu beachten: |
| |
| * Die Taktfrequenz des ZX Spectrum beträgt 3,5 MHz (Z9001: 2,4576 MHz) |
| * ein Interrupt wird zu Beginn der vertikalen Austastlücke ausgelöst, mithin aller 1/50 s. Das wird in einigen Engines genutzt. |
| * der Beeper ist an Port 0FEh, Bit 4 angeschlossen. Bit 2..0 des Ports bestimmen die Randfarbe. |
| * beim Lesen des Ports 0FEh wird über Bit 3 ermittelt, ob eine Taste gedrückt wurde. |
| |
| Details siehe http://www.zxdesign.info/cassette.shtml und http://www.zxdesign.info/interrupts.shtml |
| |
| Ein interessantes PC-Windows-Programm ist **Beepola**. Mit diesen Programm können Musikstücke mit einem Tracker programmiert werden, es werden 9 (?) verschiedene Engines unterstützt, und Beepola erzeugt Assembler-Quelltext! |
| |
| Das Stück "L'autre valse d'Amelie" der Gruppe "irrlicht Project" wurde mit Beepola erzeugt und für den Z9001 umgesetzt. |
| |
| Ein anderes gutes Programm ist **1tracker by Shiru**. Ähnlich zu Beepola kann auch mit diesem Programm Assemblerquellcode erzeugt werden. Dieses Programm ist open source! |
| |
===== Downloads ===== | ===== Downloads ===== |
| |
* 1-Bit-Musik {{:z9001:software:rdk_musik.zip|}} MUSIK3.TAP. Start mit "MUSIK". | * 1-Bit-Musik {{:z9001:software:1bit_musik.zip|}} MUSIK3.TAP. Start mit "MUSIK". Und AMELIE.TAP |
| * Hörprobe zur RDK-Musik {{:z9001:software:musik3.mp3|}} |
| |
===== Links ===== | ===== Links ===== |
* http://shiru.untergrund.net/1bit/ | * http://shiru.untergrund.net/1bit/ |
* http://1bit.i-demo.pl/ | * http://1bit.i-demo.pl/ |
| * http://freestuff.grok.co.uk/beepola/ (Programm, Anleitung) |
| * http://freestuff.grok.co.uk/beepola/showcase/ (Songs) |
| * http://shiru.untergrund.net/1bit/pivot/entry.php?id=194 1tracker |
| |
| |