C 64
Musik

Sound Master

Musik und Soundeffekte auf dem C 64 zu programmieren war bisher sehr kompliziert, kam man doch nicht um den POKE-Befehl herum. Unsere Basic-Erweiterung Sound Master behebt dieses Übel.

Das Programm Sound Master (Listing 1) muß mit dem MSE eingegeben werden. Später kann es dann mit »LOAD "SOUND MASTER",8« und »RUN« gestartet werden. Danach stehen Ihnen acht neue Basic-Befehle zur Verfügung.

Zum Ausprobieren (nach dem Starten von Listing 1) sind noch drei Demoprogramme, Listings 2 bis 4, abgedruckt. Diese können aufgrund der neu definierten Basic-Befehle nicht mit dem Checksummer eingegeben werden! Nun zur Beschreibung der acht neuen Befehle:

SOUNDCLEAR

Initialisiert alle Tonregister neu (Ton aus; Frequenz 0 etc.).

VOLUME vo

Bestimmt die Gesamtlautstärke (vo). vo kann Werte von 0 bis 15 annehmen. Zum Beispiel Volume 15 = volle Lautstärke.

Im folgenden gibt der Parameter tg immer den gewünschten Tongenerator an. Es stehen drei Tongeneratoren zur Verfügung (1 bis 3), die gleichzeitig gespielt werden können. Um einen Ton zu erzeugen, müssen zuerst mit den folgenden Befehlen die Tonparameter bestimmt werden. Mit PLAY wird der Ton dann eingeschaltet.

OSCILLATE tg,fq

Bestimmt die Frequenz (fg) von Tongenerator tg. Die Frequenz kann direkt in Hertz angegeben werden! Die maximale Frequenz liegt bei 3 848 Hz. Die Genauigkeit beträgt mehrere Stellen nach dem Komma. Zum Beispiel Oscillate 1,1000 = Tongenerator 1 schwingt mit 1000 Hz.

TUNE tg,no$

Eine andere Möglichkeit, die Tonfrequenz zu bestimmen ist die Angabe einer Note (no$). Diese muß in einem String stehen. Die Syntax ist die gleiche wie in Anhang P des 64-Handbuchs beschrieben, das heißt Buchstabe der Note — Oktave. Der Bindestrich kann weggelassen werden. Die Programmierung eines Musikstücks mit dem TUNE-Befehl ist sehr gut in Listing 4 demonstriert. Zum Beispiel »TUNE 2,"D4" «spielt in TG 2 die Note D, Oktave 4; »TUNE 3,A$« spielt die Note aus A$ in TG 3

Anmerkung zu den OSCILLATE- und TUNE-Befehlen:

Die Umrechnung der Frequenz beziehungsweise der Note erfolgt auf Basis der deutschen PAL-Version des Commodore 64 (Prozessortakt 985 kHz). Bei der amerikanischen NTSC-Version ist eine andere Umrechnung erforderlich (Prozessortakt 1 022 kHz). (In der Tabelle im Handbuch sind übrigens die amerikanischen Werte für die Noten vermerkt, auf einem deutschen 64 wird die Note also anders als beim Sound Master nicht genau getroffen!)

ENVELOPE tg,a,d,s,r

Dieser Befehl bestimmt die Hüllkurve des Tons.

Es können Werte von 0 bis 15 eingegeben werden.

WAVE tg,wf,(tv),ef…

Bestimmt die Wellenform (wf), mit der der Ton gespielt wird.

Wird Rechteck ausgewählt, muß zusätzlich eine Angabe des Tastverhältnisses (tv) folgen (0 bis 100 Prozent). Die Genauigkeit betätigt hier mehrere Stellen nach dem Komma. Effekte: Nach diesem Parameter können noch einzelne Buchstaben folgen, um bestimmte Toneffekte zu programmieren.

OFF: Waren die Angaben zur Wellenform für Stimme 3 bestimmt (tg = 3), so kann mit OFF diese (aus technischen Gründen leider nur diese) Stimme stumm geschaltet werden.

S: Der ausgewählte Tongenerator (tg) wird mit einem anderen Tongenerator synchronisiert, und zwar 1 mit 3, 2 mit 1 und 3 mit 2 (siehe Listing 3).

R: Die Dreieckspannung des ausgewählten Tongenerators (tg) wird durch eine Ringmodulation zweier Tongeneratoren ersetzt (1 mit 3, 2 mit 1 und 3 mit 2) (siehe Listing 2).

Zum Beispiel »WAVE 2,2«: Stimme 2 spielt mit Sägezahn.

»WAVE 3,1OFF«: Stimme 3 spielt mit Dreieck, wird jedoch stumm geschaltet. Man hört also nichts. Dies braucht man zum Beispiel, wenn der Ton von Stimme 3 bei Synchronisation oder Ringmodulation nur stören würde.

PLAY, tg,td

Mit diesem Befehl wird der Ton eingeschaltet (td ist die Tondauer; maximal 65535, das sind zirka 46 Sekunden). Anstatt eine Tondauer anzugeben, kann mit »PLAY tg,ON« der Ton nur eingeschaltet werden. Das Basic-Programm wird dann sofort fortgeführt. Mit »PLAY tg,OFF« wird der Ton wieder ausgeschaltet.

»PLAY tg,ON«: Schaltet tg an

FILTER fh,fq,re,tg….

Der SID bietet die Möglichkeit, eine oder mehrere Stimmen über einen Filter zu leiten, fh steht für einen einzelnen Buchstaben und dient zur Auswahl der gewünschten Filterart.

Dann folgt die Filterfrequenz (fq) in Hertz (30 bis 11800 Hz).

Die Resonanz (re) hebt die Frequenzen in der Nähe der Filterfrequenz hervor (Werte linear 0 bis 15). Nun folgen die Nummern der Tongeneratoren, die über den Filter geleitet werden sollen (4 = Audioeingang).

Zum Beispiel »FILTER H,2000,10,l, 2«: Stimme 1 und 2 werden über den Filter geleitet. Filterfrequenz = 2000 Hz, Resonanz = 10, Hochpaß eingeschaltet.

Nun noch ein kurzes Beispiel, wie man einen einfachen Ton programmiert. VOLUME 15:REM Volle Lautstärke ENVELOPE 1,0,0,15,0:REM nur »Halten« auf voller Lautstärke WAVE 1,2:REM Sägezahn OSCILLATE 1,500:REM 500 Hertz PLAY 1,1000:REM Spielt Ton oder PLAY 1,ON:REM TG 1 an FOR I = 0TO1000:OSCILLATE 1,I: NEXT:REM Als Frequenz werden Werte von 0 bis 1000 eingesetzt. Es entsteht ein ansteigender Ton. PLAY 1,OFF:REM Ton aus

Alle Befehle sind nach dem Programmstart fest ins Basic eingebunden und bleiben bis zum Ausschalten erhalten.

Alle Befehle können normal abgekürzt werden, zum Beispiel »S + Shift-O« = SOUNDCLEAR.

(P. Menke/bs)
PROGRAMM : SOUND MASTER   0801 0E65
-----------------------------------
0801 : 28 08 C0 07 9E 32 31 31   E1
0809 : 35 3A 20 4D 42 53 32 20   D5
0811 : 20 3C 2A 53 4F 55 4E 44   A6
0819 : 20 4D 41 53 54 45 52 2A   A8
0821 : 3E 20 20 20 20 20 00 00   7F
0829 : 00 00 00 00 20 2A 20 20   3E
0831 : 4D 50 52 47 2E 42 41 53   C4
0839 : 2E 53 54 41 52 54 2E 47   5D
0841 : 8A 08 AE 4A 08 AC 4B 08   E7
0849 : AD 63 0E 8D D9 C5 EC 41   DF
0851 : 08 D0 08 CC 42 08 D0 03   0B
0859 : 4C 77 08 CE 4A 08 CE 4D   F7
0861 : 08 A9 FF CD 4A 08 D0 03   26
0869 : CE 4B 08 CD 4D 08 D0 D2   97
0871 : CE 4E 08 4C 43 08 A9 00   0D
0879 : 8D 01 08 8D 02 08 A9 01   44
0881 : 85 2D A9 08 85 2E 4C 00   03
0889 : C0 4C 24 C0 00 00 00 00   91
0891 : 00 00 00 00 00 00 00 00   92
0899 : 00 00 00 00 00 00 00 00   9A
08A1 : 00 00 00 00 00 00 00 00   A2
08A9 : 00 00 00 00 00 A9 53 8D   5F
08B1 : 04 03 A9 C0 8D 05 03 A9   1A
08B9 : 51 8D 08 03 A9 C1 8D 09   24
08C1 : 03 A9 1C 8D 06 03 A9 C1   F4
08C9 : 8D 07 03 20 48 C0 4C 0E   77
08D1 : C5 A0 1C A9 00 99 04 C0   81
08D9 : 88 10 FA 60 A6 7A A0 04   FD
08E1 : 84 0F BD 00 02 10 07 C9   AD
08E9 : FF F0 44 E8 D0 F4 C9 20   AB
08F1 : F0 3D 85 08 C9 22 F0 5B   0A
08F9 : 24 0F 70 33 C9 3F D0 04   09
0901 : A9 99 D0 2B C9 30 90 04   79
0909 : C9 3C 90 23 84 71 A0 00   CF
0911 : 84 0B 88 86 7A CA C8 E8   01
0919 : BD 00 02 38 F9 9E A0 F0   57
0921 : F5 C9 80 D0 35 05 0B C9   70
0929 : 8B D0 02 A9 CD A4 71 E8   6C
0931 : C8 99 FB 01 C9 00 F0 38   B6
0939 : 38 E9 3A F0 04 C9 49 D0   68
0941 : 02 85 0F 38 E9 55 D0 9A   92
0949 : 85 08 BD 00 02 F0 E0 C5   F8
0951 : 08 F0 DC C8 99 FB 01 E8   71
0959 : D0 F0 A6 7A E6 0B C8 B9   F8
0961 : 9D A0 10 FA B9 9E A0 D0   66
0969 : AF F0 0F BD 00 02 10 BD   D8
0971 : 99 FD 01 C6 7B A9 FF 85   32
0979 : 7A 60 A0 00 B9 78 C1 D0   53
0981 : 02 C8 E8 BD 00 02 38 F9   BE
0989 : 78 C1 F0 F5 C9 80 D0 04   C8
0991 : 05 0B D0 99 A6 7A E6 0B   73
0999 : C8 B9 77 C1 10 FA B9 78   05
09A1 : C1 D0 E0 F0 C6 10 0F 24   92
09A9 : 0F 30 0B C9 FF F0 07 C9   03
09B1 : CC B0 06 4C 24 A7 4C F3   79
09B9 : A6 38 E9 CB AA 84 49 A0   A4
09C1 : FF CA F0 08 C8 B9 78 C1   22
09C9 : 10 FA 30 F5 C8 B9 78 C1   E1
09D1 : 30 05 20 47 AB D0 F5 4C   26
09D9 : EF A6 20 73 00 20 5A C1   80
09E1 : 4C AE A7 C9 CD 90 04 C9   AC
09E9 : D7 90 06 20 79 00 4C ED   33
09F1 : A7 38 E9 CD 0A AA BD B6   43
09F9 : C1 48 BD B5 C1 48 4C 73   7B
0A01 : 00 4F 46 C6 49 C6 56 4F   D6
0A09 : 4C 55 4D C5 57 41 56 C5   70
0A11 : 45 4E 56 45 4C 4F 50 C5   C8
0A19 : 4F 53 43 49 4C 4C 41 54   E1
0A21 : C5 54 55 4E C5 50 4C 41   C2
0A29 : D9 46 49 4C 54 45 D2 53   63
0A31 : 4F 55 4E 44 43 4C 45 41   75
0A39 : D2 48 45 4C D0 00 92 C5   ED
0A41 : C8 C1 1D C2 BC C2 F5 C2   C9
0A49 : 7B C3 18 C3 40 C4 07 C5   F6
0A51 : B6 C5 20 9E B7 E0 10 B0   EA
0A59 : 32 8E 03 C0 AD 1C C0 29   BC
0A61 : F0 0D 03 C0 8D 1C C0 4C   06
0A69 : E6 C2 98 48 20 FD AE 4C   25
0A71 : EB C1 98 48 20 9E B7 E0   04
0A79 : 10 B0 0F 68 A8 8A 60 01   15
0A81 : 02 04 08 10 20 40 80 04   98
0A89 : 0B 12 68 A2 0E 4C 37 A4   75
0A91 : 20 9E B7 CA E0 03 B0 F3   18
0A99 : 8E 23 C0 BD FE C1 85 FE   B3
0AA1 : A9 C0 85 FF 4C FD AE 20   BB
0AA9 : 07 C2 20 9E B7 CA E0 04   4B
0AB1 : B0 D9 8A 09 04 AA A0 04   32
0AB9 : B1 FE 29 09 1D F6 C1 91   09
0AC1 : FE E0 06 D0 22 20 FD AE   43
0AC9 : 20 8A AD A9 84 A0 C2 20   67
0AD1 : 28 BA 20 F7 B7 A5 15 C9   EE
0AD9 : 10 90 03 4C 02 C2 A0 03   3A
0AE1 : 91 FE 88 A5 14 91 FE AE   EF
0AE9 : 23 C0 E0 02 D0 08 AD 1C   21
0AF1 : C0 29 7F 8D 1C C0 20 79   13
0AF9 : 00 F0 74 20 FD AE C9 52   B4
0B01 : F0 10 C9 53 F0 1A C9 CC   77
0B09 : F0 24 4C 77 C3 86 23 CC   A4
0B11 : CC CD A0 04 B1 FE 09 04   AC
0B19 : 91 FE 20 73 00 4C 70 C2   4A
0B21 : A0 04 B1 FE 09 02 91 FE   F4
0B29 : 20 73 00 4C 70 C2 AE 23   AB
0B31 : C0 E0 02 F0 03 4C 02 C2   20
0B39 : AD 1C C0 09 80 8D 1C C0   AC
0B41 : 20 73 00 4C 70 C2 20 07   50
0B49 : C2 20 E9 C1 0A 0A 0A 0A   FB
0B51 : A0 05 91 FE 20 E1 C1 11   F2
0B59 : FE 91 FE 20 E1 C1 0A 0A   4C
0B61 : 0A 0A C8 91 FE 20 E1 C1   D1
0B69 : 11 FE 91 FE 4C E6 C2 20   85
0B71 : EA C2 60 A0 1D B9 03 C0   16
0B79 : 99 FF D3 88 D0 F7 60 20   A6
0B81 : 07 C2 20 8A AD A9 14 A0   FC
0B89 : C3 20 28 BA 20 F7 B7 A5   AA
0B91 : 14 A0 00 91 FE C8 A5 15   1E
0B99 : 91 FE 4C E6 C2 85 08 3A   86
0BA1 : 33 BE 20 07 C2 20 79 00   2F
0BA9 : 90 22 C9 91 F0 0A C9 CC   0F
0BB1 : D0 4E 20 73 00 4C 69 C3   AE
0BB9 : 20 73 00 20 38 C3 4C E6   38
0BC1 : C2 A0 04 B1 FE 09 01 91   6A
0BC9 : FE 4C EA C2 20 8A AD 20   4E
0BD1 : F7 B7 20 38 C3 A2 00 A5   50
0BD9 : 14 D0 04 A5 15 F0 13 CA   C6
0BE1 : D0 FD 38 A5 14 E9 01 85   12
0BE9 : 14 A5 15 E9 00 85 15 4C   6B
0BF1 : 4E C3 A0 04 B1 FE 29 FE   7F
0BF9 : 91 FE 20 EA C2 4C E6 C2   1E
0C01 : A2 0B 4C 37 A4 20 07 C2   10
0C09 : 20 9E AD 20 A3 B6 A0 01   5C
0C11 : B1 22 8D 21 C0 88 B1 22   B6
0C19 : 8D 22 C0 C8 A2 FF E8 E0   90
0C21 : 0C B0 DD DD 17 C4 D0 F6   81
0C29 : AD 21 C0 C9 23 D0 0F E8   97
0C31 : AD 22 C0 DD 17 C4 D0 C8   48
0C39 : C8 B1 22 8D 21 C0 AD 21   25
0C41 : C0 C9 2D D0 06 C8 B1 22   FD
0C49 : 8D 21 C0 8A 0A AA BD 23   1B
0C51 : C4 8D 03 C0 E8 BD 23 C4   47
0C59 : 8D 22 C0 AD 21 C0 38 E9   AA
0C61 : 30 C9 08 90 03 4C 02 C2   AA
0C69 : 49 07 D0 0B A0 00 B1 22   E0
0C71 : C9 48 D0 1B 4C 02 C2 AA   2B
0C79 : A0 00 B1 22 C9 48 D0 06   F8
0C81 : 38 6E 22 C0 30 03 4E 22   2A
0C89 : C0 6E 03 C0 CA D0 F7 AD   C8
0C91 : 03 C0 A0 00 91 FE AD 22   28
0C99 : C0 A0 01 91 FE 4C E6 C2   8F
0CA1 : 43 43 44 44 45 46 46 47   4E
0CA9 : 47 41 41 48 38 8B 81 93   F7
0CB1 : 45 9C 90 A5 68 AF D6 B9   F0
0CB9 : E4 C4 99 D0 FF DC 24 EA   CD
0CC1 : 10 F8 CF 06 20 73 00 4C   38
0CC9 : E6 C2 20 F4 C4 20 79 00   EA
0CD1 : C9 48 F0 19 C9 54 F0 0F   3F
0CD9 : C9 42 F0 0E C9 4E F0 10   B4
0CE1 : C9 CC F0 E0 4C 77 C3 A9   4B
0CE9 : 10 2C A9 20 2C A9 40 2C   E7
0CF1 : A9 50 0D 1C C0 8D 1C C0   F4
0CF9 : 20 73 00 20 FD AE 20 8A   C2
0D01 : AD A9 E5 A0 C4 20 5B BC   44
0D09 : 10 05 F0 03 4C 02 C2 A9   6C
0D11 : EA A0 C4 20 67 B8 A9 EF   43
0D19 : A0 C4 20 28 BA 20 F7 B7   24
0D21 : A5 15 C9 08 90 03 4C 02   1B
0D29 : C2 A5 14 29 07 8D 19 C0   AB
0D31 : A5 14 4A 4A 4A 8D 1A C0   B7
0D39 : A5 15 0A 0A 0A 0A 0A 0D   60
0D41 : 1A C0 8D 1A C0 20 E1 C1   7A
0D49 : 0A 0A 0A 0A 8D 1B C0 20   11
0D51 : FD AE 20 9E B7 CA E0 04   DF
0D59 : 90 03 4C 02 C2 BD F6 C1   38
0D61 : 0D 1B C0 8D 1B C0 20 79   09
0D69 : 00 D0 E4 4C E6 C2 85 70   0F
0D71 : 00 00 00 85 F0 00 00 00   31
0D79 : 7E 30 8D 3D 96 A9 00 8D   EC
0D81 : 19 C0 8D 1A C0 8D 1B C0   07
0D89 : AD 1C C0 29 0F 8D 1C C0   E9
0D91 : 60 20 48 C0 4C E6 C2 A9   86
0D99 : 1F 85 FE A9 C5 85 FF 20   38
0DA1 : 78 C5 20 44 A6 4C 74 A4   74
0DA9 : 93 11 11 1D 1D 1D 2A 2A   65
0DB1 : 2A 2A 2A 20 53 4F 55 4E   21
0DB9 : 44 20 4D 41 53 54 45 52   1A
0DC1 : 20 2A 2A 2A 2A 2A BE BE   33
0DC9 : 1D 1D 1D 20 57 52 49 54   96
0DD1 : 54 45 4E 20 42 59 20 50   70
0DD9 : 45 54 45 52 20 4D 45 4E   02
0DE1 : 4B 45 20 BE BE 1D 1D 1D   32
0DE9 : 33 38 39 31 31 20 42 41   4C
0DF1 : 53 49 43 20 42 59 54 45   89
0DF9 : 53 20 46 52 45 45 BE BE   2F
0E01 : BF A0 00 B1 FE C9 BF F0   66
0E09 : 12 C9 BE D0 02 A9 0D 20   AB
0E11 : D2 FF E6 FE D0 02 E6 FF   35
0E19 : 4C 78 C5 60 20 9E AD 20   0D
0E21 : 79 00 C9 89 F0 05 A9 A7   6B
0E29 : 20 FF AE A5 61 D0 06 20   9E
0E31 : 09 A9 4C FB A8 20 79 00   13
0E39 : B0 03 4C A0 A8 4C 5A C1   6C
0E41 : D0 1D A9 0D 20 D2 FF A0   86
0E49 : 00 B9 7D C1 F0 10 10 07   9B
0E51 : 29 7F 20 D2 FF A9 0D 20   5E
0E59 : D2 FF C8 4C C0 C5 60 4C   3B
0E61 : 77 C3 A7 20               8B
Listing 1. Die Basic-Erweiterung Sound Master muß mit dem MSE abgetippt werden (siehe Seite 54)
100 REM DEMONSTRATION
110 REM FUER RINGMODULATION
120 :
130 SOUNDCLEAR:VOLUME 15
140 ENVELOPE 1,0,0,15,0
150 ENVELOPE 3,0,0,15,0
160 :
170 WAVE 1,1,R  :REM RINGMODULATION
180 WAVE 3,3,30
190 :
200 PLAY 3,ON
210 PLAY 1,ON
220 :
230 FOR I=1 TO 3000 STEP 100
240 FOR X=1 TO 3000 STEP 50
250 OSCILLATE 3,X
260 NEXT
270 OSCILLATE 1,I
280 NEXT
290 :
300 SOUNDCLEAR
READY.
Listing 2. Ein Demonstrationsprogramm zur Ringmodulation
100 REM DEMONSTRATION
110 REM FUER SYNCHRONISTION
120 :
130 SOUNDCLEAR:VOLUME 15
140 ENVELOPE 1,0,0,15,0
150 :
160 WAVE 1,3,40,S  :REM SYNCHRONISATION
170 WAVE 3,1,OFF
180 :
190 OSCILLATE 3,250
200 :
210 PLAY 1,ON
220 PLAY 3,ON
230 :
240 FOR I=100 TO 3000 STEP 3
250 OSCILLATE 1,I
260 NEXT
270 :
280 SOUNDCLEAR
READY.
Listing 3. Ein Demonstrationsprogramm zur Synchronisation
100 PRINT"."
110 PRINT"  MOONLIGHT SHADOW  "
120 PRINT"  VON MIKE OLDFIELD "
130 :
140 SOUNDCLEAR:VOLUME 15
150 :
160 REM NOTEN UND DAUER
170 REM FUER STIMME 1 UND 2
180 :
190 DIM N1$(200),D1(200)
200 DIM N2$(200),D2(200)
201 RESTORE
210 :
220 REM DATEN FUER STIMME 1
230 I=0
240 READ N1$(I),D1(I)
250 IFD1(I)>0THENI=I+1:GOTO240
260 :
270 REM DATEN FUER STIMME 2
280 I=0
290 READ N2$(I),D2(I)
300 IFD2(I)>0THENI=I+1:GOTO290
310 :
320 :
330 PRINT"  GESCHWINDIGKEIT (1-6) ?"
340 GET A$:IF A$=""THEN340
350 SP=VAL(A$):IFSP<1ORSP>6THEN340
360 :
370 :
380 REM HUELLKURVEN
390 ENVELOPE 1,4,8,7,10
400 ENVELOPE 2,2,11,11,11
410 :
420 S1=0:S2=0:C1=0:C2=0
430 TUNE 1,N1$(S1)
440 TUNE 2,N2$(S2)
450 WAVE 1,3,18.75
460 WAVE 2,2
470 PLAY 1,ON:PLAY 2,ON
480 :
490 :
500 REM STIMME 1
510 C1=C1+1:IFC1>(D1(S1)*SP/2)THEN PLAY 1,OFF
520 IFC1<(D1(S1)*SP)THEN 590
530 :
540 REM NAECHSTE NOTE
550 C1=0:S1=S1+1
551 IF D1(S1)<0THEN PLAY 1,OFF:PLAY 2,OFF:END
555 PLAY 1,ON:TUNE 1,N1$(S1)
560 :
570 :
580 REM STIMME 2
590 C2=C2+1:IFC2>(D2(S2)*SP/2)THEN PLAY 2,OFF
600 IFC2<(D2(S2)*SP)THEN 640
610 :
620 REM NAECHSTE NOTE
630 C2=0:S2=S2+1:PLAY 2,ON:TUNE 2,N2$(S2)
635 PLAY 2,ON:TUNE 2,N2$(S2)
640 GOTO510
650 :
670 :
680 REM DATEN FUER STIMME 1
690 DATA D5,3,D5,1,D5,1,E5,1,D5,1,C#5,1,H4,4,H4,4,C#5,1,C#5,1
700 DATA D5,1,E5,3,D5,1,E5,1,F#5,2,F#5,2,E5,1,A4,3
710 DATA D5,3,D5,1,D5,1,E5,1,D5,1,C#5,1,H4,4,H4,4,C#5,1,C#5,1
720 DATA D5,1,E5,3,D5,1,E5,1,F#5,2,F#5,2,E5,1,A4,3
730 DATA F#5,2,A5,2,G5,2,F#5,1,D5,1,E5,1,F#5,2,E5,5
740 DATA F#5,3,E5,1,D5,2,D5,1,H4,1,E5,1,F#5,2,E5,3,D5,1,E5,1
750 DATA F#5,2,A5,2,G5,2,F#5,1,D5,1,E5,1,C#5,1,H4,1,A4,5
760 DATA D5,3,C#5,1,H4,1,C#5,1,D5,2,E5,10
770 DATA F#5,2,E5,6,F#5,2,E5,2,D5,1,E5,1,F#5,2,A5,2,G5,2,F#5,1,D5,3,F#5,2,
E5,6
780 DATA F#5,2,E5,6,F#5,2,E5,2,D5,1,E5,1,F#5,2,A5,2,G5,2,F#5,1,D5,1
790 DATA E5,1,C#5,1,H4,1,A4,3,H4,1,C#5,1
800 DATA D5,3,D5,1,D5,1,E5,1,D5,1,C#5,1,H4,4,H4,4,C#5,1,C#5,1
810 DATA D5,1,E5,3,D5,1,E5,1,F#5,2,F#5,2,E5,1,A4,3
820 DATA D5,3,D5,1,D5,1,E5,1,D5,1,C#5,1,H4,4,H4,4,C#5,1,C#5,1
830 DATA D5,1,E5,3,D5,1,E5,1,F#5,2,F#5,2,E5,1,D5,7
840 DATA0,-1
850 :
860 :
870 REM DATEN FUER STIMME 2
880 DATA D3,4,D3,4,G3,4,H3,2,D3,2,A3,4,A3,4,D3,4,A3,2,E4,1,A3,1
890 DATA D3,4,D3,4,G3,4,H3,2,D3,2,A3,4,A3,4,D3,4,A3,2,E4,1,A3,1
900 DATA D3,4,D3,4,A3,4,A3,4,H3,4,G3,4,A3,4,A3,4
910 DATA D3,4,D3,4,A3,4,A3,4,H3,4,G3,4,A3,4,A3,3
920 DATA A3,1,A3,7,A3,1,A3,8,D3,4,D3,4,A3,4,A3,3
930 DATA A3,1,A3,7,A3,1,A3,8,D3,4,D3,4,A3,4,A3,4
940 DATA D3,4,D3,4,G3,4,H3,2,D3,2,A3,4,A3,4,D3,4,A3,2,E4,1,A3,1
950 DATA D3,4,D3,4,G3,4,H3,2,D3,2,A3,4,A3,4,D3,4,D3,8
960 DATA0,-1
READY.
            
Listing 4. Sogar mehrstimmige Musikstücke lassen sich mit Sound Master programmieren
PDF Diesen Artikel als PDF herunterladen
Mastodon Diesen Artikel auf Mastodon teilen
← Vorheriger ArtikelNächster Artikel →