Commodore sayı 30, sayfa 27

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 27

ve

Profesyonel müzisyenlerin uzun zamandır tanıdıkları bir kavram: MIDI. Bu kelimenin ardında yatan ne? Bilgisayar meraklıları bu teknolojiden nasıl yararlanabilirler?

Çoğu kişi artık MIDI kavramını yakından tanıyor. Birçok müzisyen artık C64'ünü bir ya da birden çok synthesizer'la bağlamak için bu arabirimi kullanıyor. Bu teknolojinin sunduğu olanaklar bununla da kısıtlı değil. Uygun yazılım kullanılarak 16 taneye kadar C64'ü birbirine bağlayıp bir ağ oluşturmak mümkün. Bunun oyunlar, bilimsel ya da ticari işlerle ilgili olarak bir fantezi düzeyinde kalmaması için, biraz donanım ve bunun programlanması konusuyla ilgilenelim.

MIDI DONANIMININ YAPISI

C64 için sıradan bir MIDI arabiriminde MIDI-In, MIDI-

Thru ve MIDI-Out olmak üzere üç uç bulunur. Bunlardan MIDI-Thru ucu, giren verilerin aktarılmasını sağlayan çok basit bir donanımdan oluşur. Bunun aksine MIDI-In ve MIDI-Out uçları, entegre bir arabirim elemanı tarafından denetlenirler. Burada kullanılan eleman, Motorola tarafından üretilen UART (Universal Asynchronous Receiver Transmitter) 68B50'dir. Bu eleman bir kuvars osilatörü üzerinden 2 MHz'lik işletim frekansıyla beslenir. Bu frekans dealt bölümleme yöntemiyle diğerlerinin yanı sıra MIDI aktarım standardı için gerekli olan 31.25 kHz'lik bit frekansı elde edilir. UART 68B50'nin bu amaçla kullanılan programlanabilir bir bölücüsü vardır. 31.25 KBaud'luk aktarım değerine 1:64'lük bir bölmeyle erişildiğine göre, mutlaka daha yüksek hızlara erişilebileceği düşünülebilir. Matematiksel olarak 1:1'lik bir bölme oranında 2 Mbaud'luk bir veri aktarım değeri söz konusu olabilir. Tabii bu düzeyde bir aktarım değeri, C64'te kendi işleyiş hızından dolayı fazla gelecektir. Bu yazıyı okuyan “hız fanatikleri”ni bunun aksini kanıtlamaya çağırıyoruz. Aktarım hızını kısıtlayan bir başka faktör de arabirim donanımının kendisidir. Birbirine bağlı aletler arasındaki potansiyel farklarından ötürü oluşması muhtemel “boşalma felaketleri”ni engellemek üzere, giriş hattında (MIDI-In) galvanize ayrımı sağlayacak bir optokoppler bulunmaktadır. Bu optokopplerin limit frekansı, erişilebilecek bit frekansı için bir üst sınır oluşturmaktadır. 1:16 oranıyla elde edilen 125 Kbaud'luk bir aktarım hızı, klasik donanımlarda müzik elektroniği alanında da kullanılan gerçekçi bir değerdir. Dijitalize edilmiş ses verilerinin aktarımı için geliştirilmiş bir norm olan “MIDI-Sample-Dump-Standard”la bağlantılı olarak, bazı üreticiler bu işletim türüne dönüştürmeyi sağlayan bazı komutlar ürettiler, çok kapsamlı sample verilerinin (bazen MByte'lara varan) aktarılması böylece kabul edilebilir zaman süreleri içinde gerçekleşebiliyor. Eğer yönetim yazılımı oluşturmak isterseniz, en başta UART 68B50'nin işleyiş biçimini ve sicil yerleşimini açıkça bilmeniz gerekir (resim). Arabirim elemanı ikisi veri sicili olmak üzere dört adet 8 bitlik sicil içerir. Veri gönderme sicilinde yazılım her defasında bir biti aktarım için ayırabilir. UART bu baytın gönderilmesini sağlar, daha sonra durum sicili aracılığıyla veri gönderme sicilinin bir sonraki bayt için serbest olduğu bildirilir. Veri alma sicili tarafından her de-

6 5 8 va Gönderilen veriler sicili ($DE05) Gönderilen veriler Alınan veriler sicili ($DE07) Alınan veriler Yönetim Alma (Gönderme) Aktarım Bölümleme ($DE04) IRQ formatı oranı Durum sicili Parite Alım (Gönderme) Alma ($DE06) hatası taşması FE CT5 DOO sicili sicili boş dolu fasında en son alınan bayt okunur. Programlama açısından en önemlisi, yönetim sicilidir. Bu sicil, işletim parametrelerinin ve veri aktarım değerlerinin belirlenmesini sağlar. Yönetim sicilinin en küçük değere sahip iki biti, bunun için bölme oranını belirler (Tablo 1). Elemanın içinde entegre olarak bulunan bölücü, 1 MHz'lik işletim hızını örneğin istenen 31.25 kHz'lik hıza indirir (MIDI standardı). Her iki bit de doluysa (master reset), eleman bir önceki hatalı programı ciddiye almaz. Dolayısıyla bu master reset'in, çalıştırmak için bir çok kez deneme yapmaya gerek bırakmayacak şekilde, her MIDI programının başına konmasında yarar var. Deneme için 2. bitten 4. bite kadarki ayarlamalar da ilginç olabilir (Tablo 2). Burada esas olarak 8 bit aktarım formatları tablonun alt yarısında yer alıyor, bununla artık tarihi sayılabilecek teleksler MIDI üzerinden ses verir hale getirilebiliyor. (Teleksleri şaşırtıcı bir şekilde taklit edebilen) Synthesizer'lar ve Sampler'lar, F ayarındaki MIDI normuna (8 veri biti, parite yok, 1 stop biti) tepki gösterirler. Fakat çok daha güvenli olduğundan, bilgisayarlar arasında veri değiş tokuşunda Parity bitinin kullanılması mutlaka daha yararlıdır. Çift (G) veya tek (H) olması önemli değildir, MIDI kablosunun her iki ucundaki formatların birbirine uyması yeterlidir.

Resim: 68B50 arabirim elemanının sicili.

Klavyeyle gezinmek için ← ve → tuşları.