SID (Derella) II

Komşularınız sizden ses konusunda şikayet ediyorlar mı? Eğer henüz etmiyorlarsa belki bu ay... Her neyse, gelin biz yine SID'in içine girelim.

Geçen yazıda geçtiğimiz yerleri bir hatırlayacak olursak: SID'ımız 54272 adresinde yer alıyor ve 29 Register'dan oluşuyordu. Bunlardan son dördü sadece okunabilen (read only) tipte, diğerleri sadece yazılabilen (write only) tipte idi. SID, RAM bellekler gibi yazılabilen ve okunabilen belleklere sahip değil. SID üzerindeki ilk iki adresimiz osilatörün frekansını belirliyordu. Bundan sonraki iki Register'ı atlamıştık. Sonraki Register ise sesin dalga şekli ve başlama kontrolü içindi. Kalan iki Register'e ise sesin karakterini belirleyen veriler konuyordu. Yani bir sesi çıkartmak için önce onun karakterini daha sonra frekansını (bu ikisi yer değiştirebilir) sonra da onun dalga şeklini belirleyerek tanımasını sağlıyorduk. Bu arada Volume kontrolünü de unutmuyorduk.

Şimdi gelelim bu ayki

konumuza SID'in ürettiği dalga şekilleri:

Üçgen Dalga:

gibi (biliyor muyuz?) SID, her osilatör üzerinde dört tip dalga sentezleyebilir. Dahası bunları birbirleri ile karıştırabilir. Bu dalgalardan en yumuşak karakterde olanı üçgen dalgadır (triangle waveform). Bu dalga şekli en iyi şekilde flüt sesi ile tarif edilebilir. Aslında elektronikte çok kullanılan sinus dalgaya benzetilmek üzere yapılmıştır, ama sistem dijital olduğundan üçgen olmuştur. Bu dalganın amplitude'u bir periyodda (verilen frekansın -saniyedeki salınım sayısının- bir salınım yapması için geçen süre) 0'dan 255'e, sonra 255'ten 0'a düşer. Neyse ki bunu biz yapmak zorunda değiliz. Bu işlemin tümü SID tarafından gerçekleştiriliyor. Oluşan sinyal sert çıkışlara ve köşelere sahip olmadığından kulağımızı okşuyor.

öğbi Şu ses dalgasını hiç

Testere Dişi Dalga:

Testere dişi tipi dalgalar ise elektronikte Ramp denilen sinyal tipinin aynen kopyesi. Ramp aslında Türkçede rampa olarak geçiyor ve yokuş anlamına geliyor. Gerçekten testere dişi tipi sinyaller devamlı yükselen bir yokuş gibi görülür. Bu yükselme ısı sonlu olduğundan aniden düşer ve tekrar 0'dan başlar. Ani inişlerde > sahip olduğundan kulak tırmalayıcı, yırtılır gibi bir ses oluşturur. Bu tip dalga ile düşük frekansta bronz nefesli sazları, yüksek frekanslarda ise keman ve ailesini sentezleyebiliriz.

Darbe Tipi Dalga:

Bu tür dalgalar elektronikte kullanılan kare dalgalara benzer. SID'de bulunan farkı bunun ayarlanabilir olmasıdır. Kare dalga darbe tipi dalganın özel bir şeklidir. Darbe (Pulse) tipi dalgaların ayarlanan kısmı, dalganın genişliğidir. Şimdiye kadar atladığımız 2 ve 3 no.lu Registerler bu değerlerin tutulması görevini üstlenmişlerdir.

Dalga genişliği (Pulse Width) konusunu açıklığa kavuşturmak için şekil 2a'daki kare dalga örneğini ele alalım. Bu karelerin tam ortasında bir çizgi çizer ve salınımların bu çizginin alt ve üstünde yer aldığını düşünürsek; bu çizginin tam ortada olması, üstte (altta) bulunan karenin küçük (büyük) olması ayarlanabilir değerlerdir. 2 ve 3 no.lu Registerler bu değerlerin yazıldığı yerdir. Bu Registerler toplam 12 bit'lik ikili sayı (0-4095) tutabilirler (3 no.lu Register'in üst 4 bit'i ise yaramıyor). 4095 toplam değerinin tam yarısı (2048) bu Registerlere yazıldığında çıkacak dalga, kare dalga karakteri taşır (alt taraf üst tarafa eşit, orta çizgi tam ortada). 2048'den küçük olan değerler çizginin yukarı kaymasına ve yukarıdaki karenin uzamasına neden olur. 2048'den büyük olan değerler ise aynı şekilde bunun tersini yapar. Diğer bir deyişle orta çizginin aşağıya doğru kaymasına ve alttaki karenin uzamasına neden olur. Ama çoğu kez kulağımız bunların farkını tam anlamıyla kavrayamaz. Darbe tipi dalgaların darbe genişliklerinin ayarlanmasını isterseniz bir örnek programla inceleyelim. Yukarıdaki paragrafı anlamadıysanız, üzülmeyin. Bu dalgalar işlev açısından gerçekten çok karmaşık, ama bu tip dalgaları kullanmak o kadar zor değil. Üstelik bu dalgalar harmonik açıdan en zengin olan dalgalardır. Umudum odur ki, sizler denemelerinizle bu dalgaların en iyi kullanımlarını kendiniz bulursunuz.

“Of sıktın ama!!! Hani örnek verecektin” diyenleriniz var, duyuyorum.

Bu yazıyı geçen ay verdiğim makine dili programı açıklayarak bitirmek istiyorum. Deneyenler farkına varmışlardır, o programda bir tek osilatör kullandığımız halde birden fazla ses çıkıyordu. Bu aslında makine dili hızında kulağımızın aldanmasından başka bir şey değil. Bir tek osilatörü iki ayrı değerle değişimli olarak çalıştırıp, joystick ile bu değerlerden birini kaydırarak böyle bir efekt elde ettik. Bu tür efektlerle ilgilenen ve makine dili ile içli dışlı olmaya başlayanlar JEFF MINTER'ın programları içinde bunların birçok örneğini bulabilirler. Gelecek sayıda SID şarkı söylüyor, hem de üç sesli!..

Mahmut C. Genceli - Akustik Elektronik - Ankara