Zufallsmelodie

Vor 9 Monaten berichtete ich bereits von meiner Suche nach dem Listing für den C64. Wie und warum auch immer bin ich heute endlich, nach unzähligen Jahren (25, um genau zu sein) in der 64’er 02/1985 fündig geworden und konnte das Programm im Emulator meines Vertrauens (VICE) eintippen.
Kleiner Schönheitsfehler: es läuft nicht im Emulator. Oder besser gesagt: Es ist nichts zu hören.
Und das war auch nicht der einzige Fehlschlag: ich bin nach 25 Jahren C64-„Erfahrung“ nicht mehr dazu in der Lage, ein BASIC-Programm ordentlich zu speichern. Oder es wieder zu laden. (Vielleicht macht mir auch hier der Emulator einen Strich durch die Rechnung?!)
Ein obligatorisches
save"zufallsmusik",8
führte zwar zu keiner Fehlermeldung, das anschließende
load"zufallsmusik",8
brachte mir jedoch lediglich das Directory wieder auf den Bildschirm. Das ist so sicherlich nicht im Sinne des Erfinders.
Wie dem auch sei, ich möchte es hiermit, mit einem großen Dank an die 64’er, noch einmal veröffentlichen, wenngleich es bestimmt keinen größeren Sinn haben dürfte…
100 DIM F(24) :REM ARRAY F. FREQUENZEN 110 SID=54272 :REM BASISADRESSE 120 PAR=36930:EIN=36986:AUS=37025 130 : 140 REM TONLEITER-FREQUENZEN BERECHNEN 150 FAUS=110:H=2↑(1/12) 160 FOR I=0 TO 24 170 : F(I)=INT(FAUS*17.0284+0.5) 180 : FAUS=FAUS*H 190 NEXT I 200 : 210 REM PARAMETER FESTLEGEN 220 PW=2048 :REM PULSWEITE 230 K =32 :REM KURVENFORM 240 A=0: D=9: S=0: R=9 250 SYS PAR,1,K,A,D,S,R 260 SYS PAR,2,K,A,D,S,R 270 SYS PAR,3,K,A,D,S,R 280 : 290 REM FILTER AUS UND LAUTSTAERKE MAX. 300 POKE SI+23,0:POKE SI+24,15 310 : 320 REM ZUFALLSMELODIE 330 I=1 340 N=INT(RND(1)*25) 350 SYS EIN,I,F(N) 360 FOR J=0 TO 20:NEXT J 370 SYS AUS,I 380 FOR J=0 TO 20:NEXT J 390 I=I+1: IF I=4 THEN I=1 400 GOTO 340
Gib auch Du Deinen Senf dazu