Amiga Dünyası sayı 6, sayfa 21

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ı.