Bu sayfadaki yazılar
Sayfanın metni
Sayfa 21
Kubilay Kılınç Merhaba! Tekrar birlikteyiz. Geçen ay TFMX'e şöyle bir göz atmıştık. Bu ay sohbetimize Makrolar ile devam edeceğiz, Ama her zamanki gibi Makrolar'a geçmeden önce bilmemiz gereken bazı şeyler var. Bunlar da bilgi kayıt ortamlarından çağırdığımız seslerin hafızada nasıl depolandıkları ve nasıl kullanıldıkları hakkında olacak.
Sesler; bilgi kayıt ortamlarından çağırıldıkları zaman hafızada daha önceden programcı tarafından kendilerine ayrılmış bölgeye yerleşirler. Artık bir sesin başlangıç adresi ve bitiş adresi olmak üzere iki adresi bulunmaktadır. Başlangıç adresi, sesin hafızada nereden itibaren yer işgal ettiğini bildirir. Bitiş adresi de, tabii ki sesin nerede sona erdiğini gösterir. Bu adresler birer rakamdır (TFMX editörde seslerin başlangıç ve bitiş adreslerinin rakamları hexadecimal (16'lık) sayı sistemindedir). Bu rakamlar makroları tanımlarken ana rehberlerimiz olacaklar. Seslerin başlangıç ve bitiş adreslerini Sample List menüsünden öğrenebiliriz.
Programcılar, hafızada bulunan bu sesleri çalabilmek için aşağıdaki işlem sırasını takip eden bir program yazarlar:
1- DMA kanallarını kapat. (Bu daha evvelden çalan bir sesi kesmek için yapılır. Zaten otomatik olarak daha evvel çalan ses kesilir, fakat bu esnada istenmeyen bir pıt pıt sesi oluşabilir veya ortalık birbirine karışabilir.)
2- Çalınacak sesin başlangıç ve bitiş adreslerini oku.
3- Sesin period'unu ayarla (Sesin dalga boyunu belirler.). 4- Ses şiddeti seviyesini ayarla. (Ses volümü)
5- DMA kanallarını aç (Artık ses insan kulağı tarafından işitilebilir hale gelir.). TFMX Editör Makrolarında da bu mantığın aynısını kullanacağız. Şimdi bu kısa bilgiden sonra hemen makro'lara geçelim. MAKROLAR
Makroları tasarlamak için ilk yapılacak iş, tabii ki edit macro menüsüne geçmek olacaktır. Bu menüde; çalışma sayfasının sol alt kenarında bulunan makro sayfalarını ileri veya geri çevirmemize izin veren "<", ">" işaretleri vardır. Mouse'un sol düğmesini kullanarak ya da klavyeden "<", ">" tuşlarına basarak bu seçenekleri kullanabiliriz. Ayrıca bu menüde yarattığımız makroları dinlemek için, mouse işaretçisini "TEST" yazan yerin üstüne getirip sol düğmeye basmamız kafi gelmektedir. Makroları test ettiğimiz yerin yanındaki yerde ise, test işlemini hangi nota üzerinden gerçekleştireceğimizi seçmek için bir evvelki işaretlere benzeyen iki 'ok' bulunmaktadır.
Makrolar, hafızada bulunan sesleri belirli bir programlama mantığı ile işleyerek kendi yarattığımız enstrümanlara dönüştürürler. Bu enstrümanlar çoğu zaman hafızadaki sesleri ile aynı özelliğe sahiptirler. Ancak bu sesleri türlü efektlere sokmak işin içine girince makroların kıymeti su yüzüne çıkıverir. Aşağıda makroların tüm komutlarını tek tek açıkladıktan sonra örnekler üzerinde bunları inceleyeceğiz.
MAKRO KOMUTLARI Komutların açıklamasında verilen ilk rakam, macroda sizin yazarak çağıracağınız komutun kodudur. Makro sayfasında bu kodu yazdığınız anda o satırda hemen komutun ismi olan cümle ve parametrelerinin yazım formu çıkacaktır. Daha sonra satırın en sağında size ayrılan yere bu parametrelerin değerlerini girerek o satırda ne işlemin yapılacağını belirtmiş olursunuz. Her komutta parametre girişleri farklı olmaktadır. Parametreler 6 hanelidir. Kullanılmayan haneler "." kullanılanlar ise "x" işaretiyle belirtilir. Bir komutta birden fazla parametre girilebilir. Bu durumda olan komutlarda 6 haneli olan parametre listesi "/" işaretiyle bölünerek belirtilmiştir.
00 - DMA off+Reset (Stop Sample and Reset all) : Bu komut DMA kanallarını kapatarak ses çıkış ünitesinden ses bulmasını engeller ve daha evvel işlevde olan makronun yaptıklarını devre dışı bırakır.
Hiçbir parametresi yoktur. Bu komutu aşağı yukarı her makronun ilk komutu olarak kullanacaksınız.
01 - DMA on (Start Sample at selected begin) : DMA kanallarını açar sesin çıkış ünitesine gitmesini sağlar. Böylece biz de tüm parametreleri ayarlanmış bir sesi duyarız. Bu komutun hiçbir parametresi yoktur.
02 - SetBegin xxxxxx Sample Start address : Makrolarda; hafızada bulunan, kullanmak istediğimiz sesin başlangıç adresini girmemiz gerekir. Bu adresi de "Sample List" menüsünden öğrenebiliriz.
03 - SetLen ..xxxx Sample-Length : Başlangıç adresini tanımladığınız sesin hafızada ne kadar yer kapladığını da belirtmeniz gerekir. Bunun için de bu komutun parametresine kullanacağınız sesin uzunluğunu belirten rakamı girmeniz yeterlidir. Bu rakamı, yine "Sample List" menüsünden öğrenebilirsiniz. Yalnız bu rakam hiçbir zaman 4 haneyi geçmez.
04 - Wait ..xxxx count (VBI's) : Makroları bir program olarak düşündüğümüzden, bazı program adımlarında makinamızın bu iş için fazla olan hızı nedeniyle bazı bekletmeler yapmamız gerekebilir. Örneğin bu aşırı hızdan dolayı yapılan bazı döngüler ve sıçramalar makronun kafasını karıştırabilir veya bir yankı yapan makroda her yankı arası biraz bekletme yapmamız gerekebilir. İşte bu ve buna benzer durumlarda, bu komutu devreye sokacağız. Bu komut; parametresine yazdığımız adım kadar bekler ve sonra kaldığı yerden devam eder.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 20
1> Event'in alındığı andaki sayaç değeri 2> Event'in türü (türler hakkında ayrıntılı bilgi için Amiga Dünyası Sayı 3 Amiga&MIDI adlı yazıya bakabilirsiniz)
3> Event'le ilgili bir data 4> Event'le ilgili ikinci bir data (bazı Event türlerinde yoktur)
5> Event'le üçüncü bir data (bazı Event türlerinde yoktur).
Event listesindeki herhangi bir event'i seçmek isterseniz, üzerine kliklemeniz yeterlidir. Bir event'i seçtikten sonra onlar üzerinde aynı track'lere benzeyen işlemler yapabilirsiniz. Bunlar:
1> Create komutu: Bu komut, seçilen event'in bir kopyası olan yeni bir Event oluşturur ve onu seçilen Event'in hemen altına koyar.
2> Delete komutu: Bu komut, seçilen Event'i siler. 3> Save komutu: Bu komut, o anda Event listesindeki her şeyi diskete kaydeder.
4> Load komutu: Daha önce diskete kaydedilmiş Event listesini yüklemeye yarar.
5> Copy, Use, Q'tize komutları: Bu komutlar, programın ileri seviyelerde kullanılan komutları. Onun için onları anlamak için programın kitabını okumanızda fayda var.
EVENT DATALARININ
DEĞİŞTİRİLMESİ Seçtiğiniz bir Event'in datalarını, bu pencerenin Event Data Bölümü olarak adlandırılan sol alt köşesindeki değerleri değiştirerek düzenleyebilirsiniz. Her Event önce bir başlangıç zamanı içerir. Bu değer, Event'le ilgili mesajın alınması sırasında sayacın gösterdiği değerdir. Event Data Bölümünün en altındaki Next değeri, o Event'in başlangıcı ile diğer Event'in başlangıcı arasındaki sayaç farkını göstermektedir. Bu değeri değiştirerek iki Event'i birbirine daha yakın veya uzak hale getirebilirsiniz. Doğal olarak bu Event’in türüyle de ilgili bazı değişiklikler de yapılabilmektedir. Aşağıdaki liste her Event'in Event listesinde gösteriliş şeklini ve datalarıyla ilgili bilgileri göstermektedir (bu datalar arasında bütün türler için ortak olan Time ve Next değerleri bulunmaktadır).
1> Note on/off türü:
(başlangıç zamanı) Nt (nota harfi) (oktav)(nota uzunl.)
Note on/off hangi notaların çalındığını kaydetmeye yarayan bir MIDI data türüdür.
Bu türün dataları: Nota(Note): 0'dan 127'ye kadar bir rakam. Bu rakam kaydedilen notanın hangisi olduğunu belirtir. Örneğin 60 sayısı dördüncü oktavdan do notasına karşılık gelmektedir.
Hız(Velocity): 0'dan 127'ye kadar bir rakam. Bu rakam tuşa basılış hızını gösterir.
Nota uzunluğu(Length): Notanın başlangıcından sonuna kadar geçen sayaç değer farkını gösterir.
2> Poly Pressure türü:
(başlangıç zamanı) Pp (nota)(basınç)
Poly Pressure basınca duyarlı klavyelerde basınç değişikliklerini kaydetmek için kullanılır.
Bu türün dataları: Nota(note): 0'dan 127'ye kadar bir rakam. Bu rakam kaydedilen notanın hangisi olduğunu belirtir. Örneğin 60 sayısı dördüncü oktavdan do notasına karşılık gelmektedir. Değer ne kadar büyük olursa nota o kadar yüksek oktavdan olur.
Basınç(pressure): 0'dan 127'ye kadar bir rakam. Bu değer nota kaydedildiği andaki basınç değeridir. Değer ne kadar yüksek olursa basınç o kadar fazladır.
3> Control Change türü:
(başlangıç zamanı) Cc (sayı)(değer)
Control Change klavyenin ayarları ile ilgili değişiklikleri kaydetmeye yarar.
Bu türün dataları:
Sayı(number): Kontrol numarası
Değer(value): Değiştirilen numaranın ayarlanacağı değer.
4> Program Change türü:
(başlangıç zamanı) Pc (program numarası)
Program Change çalım sırasında değiştirilen enstrümanların numaralarını kaydetmek için kullanılır.
Bu türün dataları: Program numarası (Patch): 0'dan 127'ye kadar bir sayı. Bu sayı enstrüman numarasını gösterir.
5> Mono Pressure türü:
(başlangıç zamanı) Mp(basınç)
Mono Pressure, basınca duyarsız klavyelerde genel basınç değerini kaydetmek için kullanılır.
Bu türün dataları: Basınç (Pressure) : 0'dan 127'ye kadar bir rakam. Bu değer klavyenin genel basınç değeridir. Değer ne kadar yüksek olursa basınç o kadar fazladır.
6> Pitch Wheel türü:
(başlangıç zamanı) Pw(eğim)
Pitch Wheel, klavyelerdeki modülasyon veya frekans değişiklikleri için kullanılan tekerleğin değişimlerini kaydetmek için kullanılır.
Bu türün dataları: Eğim (eğim): 0'dan 16384'e kadar bir değer. 8192 değeri tekerleğin hiç hareket ettirilmediğini, bu değerden büyük olanların sağa, küçük olanların ise sola eğildiğini gösterir.
Bu türlerin dataları gerekli olan bölümlere gerekli datalar girilerek değiştirilebilir. Data girme işlemi datanın değerine klik edilerek değiştirilmesi yoluyla yapılmaktadır.
Evveett! Bu yazı dizisinin sonuna vardık. Doğal olarak Soundscape'te daha birçok özellik (örneğin transpose, quantize, song creation, MIDI-echo, trigger, v.b.) var. Fakat onları bir dergide tamamıyla yazmak oldukça uzun sürecek bir iş. Amacım sadece programla ilgili genel bilgi vermek olduğundan, biraz yüzeysel bir yazı dizisi oldu. Ama bazı şeyleri sizin çalışmanıza bırakmanın en iyisi olduğunu düşünüyorum. Eğer programla ilgili her bilginin olduğu bir kitap isterseniz programın kullanım kılavuzunun piyasada bulunduğunu belirteyim. Hoşça kalın.