1 Mart 1988 Tarihli Commodore Gazetesi Sayfa 28

1 Mart 1988 tarihli Commodore Gazetesi Sayfa 28
Metin içeriği (otomatik olarak oluşturulmuştur)

I———— GA bu özelliği sayesinde her türlü müzik aletinin çıkaracağı sesi çıkara- bilir. Daha da önemlisi AMIGA in- san sesi üretebilir. A BASIC'te sesle ilgili üç komut var: BEEP, SOUND, WAVE. Bu komutlardan en basiti BEEP ko- mutu. Yaptığı bütün iş “beep”' sesi çı- karmak. BEEP komutunun hiçbir parametresi yoktur. Eğer programı- nızda kullanıcının dikkatini çekmeniz gerekirse BEEP komutu işe yarar. AMIĞGA BASIC'te ses dalgaları için frekans, genişlik ve dalgaboyu kullanılıyor. Bu üç parametrenin günlük kullanımdaki karşılıkları sıra- sı ile: yükseklik, sesin çıkış miktarı, ses tonu. Normal bir insan 20Hz ile 20.000Hz arasında frekansa sahip olan sesleri duyabilir. AMIĞA ise 20Hz ile 15.000Hz arasında frekan- sa sahip sesler çıkarabilir. Ancak Tv ve monitörler en fazla 200Hz ile 4000Hz arasında frekansa sahip ses çıkarabildiklerinden AMIGA'nın ses özelliğinden tam olarak yararlanabil- mek için iyi bir stereo sisteme bağla- manız gerekir. SOUND C64 ile müzikle uğraşırken dört ay- rı dalga şeklinden birini seçebilirsiniz. Ancak AMIGA WAVE komutu ile istediğiniz şekilde bir dalga boyu di- zayn etmenize izin verir. Kendi üret- tiğiniz dalga şeklini dinlemek için SO- UND komutunu kullanmak gerekir. Sound komutunun ikisi isteğe bağlı dört parametresi var: SOUND frekans, devam süresi, ses şiddeti, ses Frekans gerekli bir parametre, 20Hz ile 15.000HZz arasında olabilir. Devam süresi gerekli olan ikinci parametre. Bununla sesin ne kadar süre ile çalınacağı belirleniyor. De- vam süresi O ile 77 arasında bir de- ğer olabilir. 18.2 bir saniyeye eşittir. 77 değeri ise 4.25 saniyeye eşittir. Eğer daha uzun süre çalmak isterse- niz iki SOUND komutu kullanma- manız gerekir. Ses şiddeti isteğe bağlı bir paramet- redir. Bu parametre O ile 255 arasın- da değer alabilir. 0 değerinde sessiz- lik, 255 değerinde en yüksek ses se- viyesine ulaşır. Eğer bu parametre kullanılmazsa 127 kabul edilir. Ses isteğe bağlı olan ikinci para- metredir. Birbirinden bağımsız dört sesten hangisinde ses çıkacağını belir- ler. Bu parametre Ü, 1, 2 ve 3 değer- 28 lerinden birini alabilir. O ve 3 sol ste- reo çıkışına bağlıdır. 1 ve 2 numaralı sesler de sağ stereo çıkışına bağlıdır. Eğer bu parametreyi kullanmazsanız 0 numaralı ses seçilmiş kabul edilir. SOUND komutunun kullanımına örnek görelim: SOUND 440,18.2 440HZz'de bir saniye süreli ses Ü nu- maralı kanaldan çıkarılır. SOUND 880,18.2,,1 Bir evvelki sesten bir oktav daha yüksek bir ses üretir. Ancak bu sefer ses 1 numaralı sesten, yani sağ stereo çıkışından alınır. SOUND 1760,36.4,255,3 İlk örneğimizden iki oktav daha yüksek bir ses iki saniye süre ile 3 nu- maralı sesten çıkarılır. SOUND komutunun en iyi özellik- lerinden birisi, çalışırken diğer ko- mutların da çalışmaya devam etme- sine izin vermesidir. Şu programı de- ,neyin: SOUND 440,77 FOR I-1 TO 100 PRINT “AMIGA BASIC” NEXT I Bu program çalıştığında AMIGA BASIC yazısı yazılırken ses çıkarma- ya devam edildiğini duyabilirsiniz. Bu özellikten yararlanarak çalış- makta olan programlarınıza müzik ekleyebilirsiniz. Çalacak olan müzik, programınızın çalışmasını etkileme- yecektir. Ancak ses komutları arka arkaya gelirse duraklamaya neden olabilir. Şu programı deneyin: a— 103.834 yarımton — 1.059463094 # FOR I-—-1 TO 48 a — a*yarımton SOUND a,4,255,0 NEXT PRINT MUZIK” SOUND WAIT komutu sıraya gi- ren SOUND komutlarını bekletir. SOUND RESUME komutuyla sıra- daki SOUND komutundan çalmaya devam eder. Bu şekilde programda- ki SOUND komutlarının yeri geldik- çe kullanılması sağlanmış olur. SOUND WAIT ve SOUND RE- SUME komutlarına örnek program: SOUND WAIT PRINT “Bekliyorum...”” SOUND 261.63,20,255,0 SOUND 329.63,20,255,1 “AMIGA BASIC ILE SOUND 392.20,255,2 SOUND 523.25,20,255,3 gecikmek — sayac VHİLE sayac < gecikme 4 5:WEND PRINT “Diınleyın.”* SOUND RESUME Program çalıştığında beş saniye bekler. Dinleyin yazısını yazıp ses ko- mutunu işleme koyar. WAVE Komutun formatı: WAVE ses, dızı Ses O, 1, 2 ve 3 değerlerinden biri- ni alabilir. Dizi en fazla 256 tamsa- yıdan oluşabilen bir dizidir. Dizide- ki elemanlar -128 ile 127 arasında de- ğer alabilirler. Bunun dışındaki de- ğerler ILLEGAL FUNCTION CALL hata mesajının çıkmasına se- bep olur. 256 elemanlı diziden daha uzun bir dizi kabul ediliyor ama 256'dan sonraki elemanlar gözönüne alınmıyor. O değeri sessizliğe karşı ge- liyor. Örnek program çalıştığında hiçbir ses duymayacaksıhız. DIM dalgafı(255) FOR I—0 TO 255 dalgaPo() - 0 NEXTI WAVE 0,dalgafo SOUND 440,20,255,0 Yazımıza C64'teki dört dalga çeşi- dinden ikisini üretecek örnek prog- ramlarla son verelim. Kare dalga: DIM dalgato(255) FOR I-0 TO 127 dalgaTo(1) — 127 NEXTI FOR 1-128 TO 255 dalgaYı(ı) — -128 NEXTI WAVE 0,dalgaYo SOUND 440,20,255,0 Üçgen dalga: DIM dalga”ı(255) dalgaveri — -255 FOR 1-0 TO 127 dalgaYTolı) — dalgaveri dalgaveri — dalgaveri 4 2 NEXTI dalgaverı — 127 FOR 1- 128 TO 255 dâlga%(l) — dalgaverı-2 NEXTI WAVE 0,dalgao SOUND 440,20,255,0

Bu sayıdan diğer sayfalar: