Bu sayfadaki yazılar
Sayfanın metni
Sayfa 22
05 - Loop xx/xxxx count/step : Döngü yapmak için kullanılan tek komut budur. "Step" parametresinde belirtilen adıma atlar ve "count" parametresinde bulunan rakam kadar bu atlamayı tekrar eder.
06 - Cont xx/xxxx macronumber/step: Bir başka makroya geçmemizi sağlar. Bu komutun avantajı bir makro sayfası dolduğunda devamını başka bir makroya yazabiliriz ancak makroların son komutları "—STOP—" olduğundan dolayı öteki devam edilecek olan makroya geçmeye fırsat kalmayabilir. İşte bu komut sayesinde komutların devamı bir başka makrodan alınır.
07.......................... STOP-----------------------: Makronun en son komutudur. Makronun bittiğini belirtir. Bu komutu biz yazmayız her makronun sonunda zaten bulunmaktadır.
08 - AddNote xx/xxxx note/detune : Kullanılan sesin tonunu belirler. Birinci parametreye yazılan değer sesin tonunu yarım ses etkiler. İkinci parametre ise, daha ince bir ayar yapar. Ayrıca makro çalışırken her kullanıldığında sesin notasını parametreye yazılan değer kadar artırır.
09 - SetNote xx/xxxx note/detune : AddNote ile aynı işi yapar. Aradaki tek fark, SetNote kullanıldığında paternlere hangi notayı yazarsak yazalım, hep aynı sesin çıkmasını sağlamasıdır. Ayrıca her kullanıldığında sesin nota değerini artırmaz. Bu komut vurmalı çalgılarda bazen oldukça işe yaramaktadır.
0A - Reset Vibrato-Portamento-Envelope :
Daha evvel yapılmış olan Vibrato, Portamento, Envelope komutlarının parametrelerini temizler.
0B - Portamento xx/.../xx count/speed: Sesin tonunu yukarıya veya aşağıya kaydırır. İlk parametre portamento süresini. İkinci parametre ise portamento hızını belirtir.
0C - Vibrato xx/./xx speed/intensity : Sesi vibrasyona sokar. Sesin tonunu belirli bir salınımla kaydırır. Bu efekt çok hafif kullanıldığında seslere çok tatlı bir doğallık katar. İlk parametre vibrasyon salınım hızını, ikinci ise vibrasyon şiddetini belirler.
0D - AddVolume ....xx volume 00-3F: Ses şiddeti seviyesini ayarlar. Parametresi en az 0, en çok 3F değerini alır. Yine "AddNote" komutunda olduğu gibi makro içerisinde her kullanılışında sesin volümünü artırır. Ancak bu artış en fazla 3F değerine kadar olur daha sonra sabit kalır.
0E - SetVolume ....xx volume 00-3F : AddVolume ile aynı işi yaparlar. Fakat SetVolume ile ayarlanan ses şiddeti paternlerde kullanılan komutlarla değiştirilemez.
0F - Envelope xx/xx/xx speed/count/endvol: Sesin ses şiddetini bulunduğu seviyeden daha yüksek veya daha düşük ses seviyesine doğru otomatik olarak azaltır (veya çoğaltır). İlk parametre düşüş (veya artış) hızını, ikinci parametre düşüş (veya artış) süresini ve son parametre de en son ses seviyesini belirtir.
10 - No Entry : Hiç bir önemi ve işlevi yoktur. Sanınm bu boş komut bölgeleri ileride çıkacak yeni versiyonlardaki yeni komutlar için aynlmış.
11 - AddBegin ..xxxx add to start adress : Sesin; daha evvel makronun başında tanımlanmış başlangıç adresine parametreye yazılan rakam kadar adres ekler. Böylece sesin başlangıç adresi kaydınlmış olur.
12 - AddLen ,.xxxx add to sample-Lenght: Add Begin'e benzer bir işlev görür. Burada Sesin başlangıcı yerine sesin hafızada kapladığı yeri belirten daha evvel SetLen komutuyla girilmiş olan sayı arttınlır. Parametreye kaç arttırılacağı girilmelidir.
13 - DMAoff stop sample but no clear: DMA kanallarını kapatır. Ses hala çalmaktadır, ancak ses çıkış ünitesine ulaşmamaktadır. Bu komutun hiçbir paranetresi yoktur.
14 - Wait key up ....xx count (VBI's) : "Wait" komutuyla işlev bakımından hiçbir farkı yoktur. Fakat kullanım bakımından parametreye yazılan rakam hem iki handedir, hem de öteki "wait'"e göre ters orantılıdır. 15 - Go sub macro xx/xxxx macro-number/step : Bir başka makroya atlamaya yarar. İlk parametreye atlanacak olan makronun numarası, ikinci parametreye ise atlanan makro nun kaçıncı adımına gidileceği belirtilir.
16 -------------------- Return old Macro ...........................: Örneğin 10. makrodan 22. makroya atladık. Artık komutlar 22. makrodan alınmaktadır. Eğer tekrar eski makroya dönmek istiyorsak sıçradığımız makronun sonuna bu komutu yazmalıyız. Geri dönüş olduğunda eski makronun en başına değil "Go sub Macro" komutundan sonraki komuta dönülür.
17 - SetPeriod ..xxxx DMA period: DMA kanallarının çalışma hızını ayarlar. Böylece çalınan sesin tonu (aslında çalım hızı) değiştirilmiş olur.
18 - Sample Loop ,.xxxxrelatıve adress : Eğer kullandığımız ses devamlı tekrarlanan cinsten yani "Loop" konumunda ise, ses hafızaya yüklendiğinde "Sample Listesi'"ne başlangıç ve bitiş adreslerinden başka bir değer daha yazılır. Bu da "Loop" edilecek kısmın başlangıç adresidir. Eğer biz sesi istediğimiz bir şekilde devamlı tekrarlatmak istiyorsak, bu komutun parametresine sample listesindeki sese ait 3. rakamı girmeliyiz. Bu konuda detaylı bilgi edinmek isteyenler 3. sayıdaki "AudioMaster II" adlı yazıda "LOOP" ile ilgili bölümü okuyabilirler.
19 ............... Set one Shot Sample----------------: Makronun son komutlarından biridir. Eğer bu komut makronun sondan bir evvelki komutu olarak yazılmazsa makro devamlı tekrarlanır. Bu komut sayesinde makro bir defa işlevini yerine getirir ve devamlı kendini tekrarlamaz.
1A - No Entry : lA'dan FF'e olan her komut bizim TFMX'imizde şimdilik boş.
……………. …………….. FF - S o Entry:
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 23
MAKRO ÖRNEKLERİ ÖRNEK 1 : île önce işe en basit makrodan başlıyalım. Bu makro yapması gereken en basit görevi yapacak yani hafızada bulunan bir sesi çalacak.
00 DMAoff+Reset (stop sample & reset all) 000000 2 SetBegin xxxxxx 0120FE 3 SetLen . .xxxx 004400 OD AddVolume ... .xx volume 00-3F 000015 08 AddNote xx/xxxx note/detune 0100FF 4 Wait . .xxxx count (VBI's) 0000000 19--------------------- Set one shot sample ....................... 07..................................... STOP ...................................... Yukarıdaki makroda 04 kodlu komut haricinde her komutun pa ndi isteğinize göre değiştirebilirsiniz. rametresini ke ÖRNEK 2: Bu makro kullanılan sesi; tonunu aşağıya doğru kaydınrak çalar. Sesin tınısının kaydırılmasına "Portamento" denir.
00 DMAoff+Reset (stop sample & reset all) 000000 2 SetBegin xxxxxx 0120FE 3 SetLen . .xxxx 004400 OD AddVolume ... .xx volume 00-3F 000015
8 AddNote xx/xxxx note/detune 0100FF 0B Portamento xx/xxxx count/step 010018 9 SetNote xx/xxxx note/detune 000000
2 SetBegin xxxxxx sample startadress 000000 3 SetLen . .xxxx sample lenght 000001 4 Wait . .xxxx count (VBI's) 0000000 19....................— Set one shot sample ........................... 07........................................STOP--------------------------- Yukarıdaki makroda 09, 02, 03 ve 04 numaralı komutların parametreleri bu makroda standarttır. Diğer komutların parametreleri sizin isteğinize göre değişmektedir. Burada "AddNote" sesin başjangıç tonunu, "SetNote" ise sesin bitiş tonunu belirtmektedir.
ÖRNEK 3.1: Şimdiki iki örnek "Envelope" komutu hakkında olacak. İlk örnek Loop halinde olan bir sesin volümünü 0'dan yavaş yavaş arttıracak.
00 DMAoff+Reset (stop sample & reset all) 000000 2 SetBegin xxxxxx 0189A4 3 SetLen . .xxxx 0006DF OD AddVolume ___ xx volume 00-3F 000000 08 AddNote xx/xxxx note/detune 000000 01 DM Aon (start sample at selected begin) 000000 OF Envelope xx/xx/xx speed/count/endvol 010420 04 Wait . .xxxx count (VBI's) 000000 18 SampleLoop . .xxxx relatıve adress 000002 04 Wait . .xxxx count (VBI's) 000000 07 STOP ----------------- --- Bu makroda sesin başlangıcının ses seviyesi "AddVolume" ile belirtildikten sonra sesin ulaşacağı son noktanın ses seviyesi Envolepe" komutunun son parametresinde belirtilmelidir. Ayrı- ca burada önemli komutlardan biri de "SampleLoop" komutudur. Bu komutda bulunan parametre; Audiomaster II programında bulunan, baştaki loop kursorunun sesin başlangıç adresinden kaç byte" ötede olduğunun değerini alır.
ÖRNEK 3.2: Bu makroda yukarıdaki örneğe benzer bir mantıkla çalışır. Tek farkı, başlangıç ses seviyesi bu sefer bitiş ses seviyesine göre daha çoktur. Bu yüzden ses seviyesi zaman içerisinde çoğalacağına azılır. Burada yine "AddVolume" başlangıç volümünü "Envelope" komutunun son parametresi ise son volüm seviyesini belirtir.
00 DMAoff+Reset (stop sample & reset all) 000000 2 SetBegin xxxxxx 0189A4 3 SetLen . .xxxx 0006DF OD AddVolume ... .xx volume 00-3F 00003F 08 AddNote xx/xxxx note/detune 000000
01 DM Aon (start sample at selected begin) 000000 OF Envelope xx/xx/xx speed/count/endvol 010400 04 Wait . .xxxx count (VBI's) 000000 18 SampleLoop . .xxxx relatıve adress 000002 04 Wait . .xxxx count (VBI's) 000000 07..................................... STOP .................................. ----- ÖRNEK 4: Bu örnek, herhangi bir sese yankı efekti verir. Yine bu işi "Envelope" komutu ile halldeceğiz.
00 DMAoff+Reset (stop sample & reset all) 000000 OD AddVolume ___xx volume 00-3F 000014 OF Envelope xx/xx/xx speed/count endvol 030300 13 DMAoff stop sample but no clear 000000 2 SetBegin xxxxxx 001169 3 SetLen . .xxxx 0001B8 08 AddNote xx/xxxx note/detune 000000 01 DMAon (start sample at selected begin) 000000 04 Wait . .xxxx count (VBI's) 000000 19 Set one shot sample ------------------------------------------ 4 Wait . .xxxx count (VBI's) 000009 5 Loop xx/xxxx count/step 000003 04 Wait . .xxxx count (VBI's) 000000 07........................................STOP ....................................... Buradaki yankı yapma mantığı aslında oldukça basitdir (ayrıca el- de edilen yankı da çok basit). Ancak buna karşın müzik içerisinde yine de büyük iş görüyor. Burada ses devamlı tekrarlanmasına kar- şın biryandan da ses ses seviyesi düşürülüyor ve meydana bu yankı çıkıyor.
Evet Makrolann da öyküsü buraya kadar. Sizler bu makro örneklerinin özünü kavradıktan sonra çoğaltmanız mümkün. Sanırım Amiga'da ciddi bir şekilde müzikle uğraşanların bu program kesinlikle ilgisini çekmiştir. Sizler eğer karmaşık olan bu konu hakkında sormak istedikleriniz olursa çekinmeden bana yazabilirsiniz (Tabii ki dergiye).
Gelecek ay "Pattern'ler de buluşmak üzere hoşcakalın…!!!!