Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi
Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi
Amiga Dunyasi - Sayi 23 (Nisan 1992).pdf - Retro Dergi
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
tenmekte. Bunların ilki Maximum value, yani maksimum değer.Bu, data tablosundaki değerler arasında en yüksek olanın değeridir.Amount of datas ise yaratılan data tablosundaki data adedinibelirlememizi sağlar. Length one wave ise tabloda yer alacak birsinüs dalgasının boyunu belirler. Eğer bu değer Amount of datasdeğerinden küçük olursa data tabl.osu verilen değer kadar yaratılır;sonuna da İki değer arasındaki fark kadar data daha eklenir.Bu datalar, sinüs fonksiyonunda tekrar başa, yani 0. açıya dönerekelde edilir. Hesaplamayı yapmak için Calculate wave kutucuğunukliklememiz gerekmekte.Menüdeki ikinci ve üçüncü fonksiyonların da parametre pence-releri aynı olduğundan bunları beraber açıklamak istiyorum. Fakather ikisinin de ne iş yaptığını da belirtmem gerekir tabii ki.Add n sinuses, n adet sinüs tablosu yaratarak bunları birbirineard arda ekler. Multiply n sinuses ise aynı ofsetteki değerleri birbiriyleçarparak karışık bir tablo yaratır.Gelelim bu iki fonksiyonun parametrelerine. Her iki fonksiyondada ilk başta bir parametre penceresi çıkacaktır. Burada kaç sinüstablosunun kullanılacağı belirlenebilir. Ardından çıkacak olsanpencereler her bir sinüs tablosu hakkındaki parametreleri ayarlamamızısağlar. Ana penceredeki parametreler şöyle; Number of sinusessinüs tablolarının adedini saptamamızı sağlar. Maximumvalue data tablolarında olabilecek en yüksek değeri tesbit etmemizi,Amount of datas ise data tablosunda yer alacak değerlerin adedinibelirlememizi sağlar. Burada değerleri tesbit ettikten sonraProceed kutucuğunu kullanarak her bir sinüs tablosu ile ilgili birtakım parametreleri ayarlayabileceğimiz pencereler çıkacaktır.Buradaki parametrelerde şöyle: Maximum value, numarası belirtilensinüs eğrisindeki maksimum değeri tesbit etmemizi sağlar.Length one wave ile numarası verilen sinüs eğrisinin uzunluğunuaçı olarak belirleyebiliriz. Get next sinus ile de bir sonrakisinüs eğrisinin parametrelerini ayarlayabiliriz. En son sinüseğrisinin de parametreleri belirtilmiş ise bu kutucukta CalculateWave yazacaktır. Bununla da data tablosunu hesaplattırabiliriz.Dördüncü fonksiyon da demin de belirttiğim gibi sinüs eğrisininsadece belli bir kısmını tablo olarak kaydetmemizi sağlamakta.Start value ve End value parametreleri yardımıyla sinüs eğrisininalınacak kısmının başlangıç ve bitiş değerlerini belirleyebiliriz.Start değeri End değerinden büyük olursa tablodaki değerlerartan değerler olacaktır. Azalan değerler için End value parametresiStart value'daki sayıdan büyük olmalı. Amount of datasyine data tablosundaki değer adedini belirler. Length onewave de her zamanki gibi bir dalga boyunun açısal olarak uzunluğunubelirler. Maximum value at end ise tablo sonundakimaksimum değeri belirlememizi sağlar.Calculate Wave kutucuğu yardımıyla data tablosunu çıkarttıktansonra yaratmış olduğumuz tablodaki değerler bir sinüs eğrisiolarak ekranda görülebilir. Bunun hemen altındaki bir alanda değişikkutucuklar bulunmakta. Şimdi de bu kutucukları inceleyelim.Places to move, Move wave kutucuklarında her klik'te kaydırılacakadım sayısını belirler. Move wave yardımıyla sinüs eğrisinikendi içersinde sağa ya da sola doğru kaydırabiliriz (phaseshifting). Bu şekilde sinüs eğrisinin başlangıcı da kayacağındandeğişik sinüs eğrisi görüntüleri elde edebiliriz. Info sinüs eğrimizinparametrelerini görmemizi sağlar; Quit ise o an yaratılan sinüseğrisinden vazgeçip tekrar ana menüyü kullanarak yeni sinüseğrileri yaratmamızı sağlar. Backwards yardımıyla sinüs eğrisiniters çevirebiliriz. Flip ise eğrideki negatif değerlerin pozitif olanlarlayer değiştirmesini sağlayarak eğriyi tam anlamıyla kafaüstüçevirir. Modulus kutucuğu eğrideki tüm negatif değerlerin depozitif olmasını sağlar. Odd Even kutucuğu tabloda ve eğridekiher ikinci değerin işaretini değiştirir. Pozitif olan değerler negatif,negatif olanlar ise pozitif olurlar. Karışık sinüs eğrilerinde buenteresan bir görüntü oluşturabilir; denemenizde fayda var. bundansonra inceleyeceğimiz üç kutucuk data tablosundaki değerlerinekran koordinatı olarak görülmelerini sağlar. Bunun için ekranınalt kesiminde boş kalan yerde devamlı yukarı doğru kayançubuklar belirecektir. Bu çubukların her birinin yatay eksendekipozisyonu direkt data tablosundan okunur. AH kutucuğu tablodakiher değerin x koordinatı olarak kullanılmasını sağlar. Odd kutucuğuile ofseti tek sayı olan tüm değerler (1, 3, 5, 7, ...), Evenile de ofseti çift olan değerler yatay koordinat olarak okunacaktır.Son kutucuk olan Save ise isminden de anlaşılacağı gibi datatablosunun diskete kaydedilmesini sağlamakta. Karşımıza çıkacakolan pencerede yapabileceğimiz ayarlamalar da şöyle: Convertlist in ile data tablosunun byte'lardan mı, yoksa word'lardanmı oluşacağını belirleyebiliriz (DC.B ya da DC.W). Convertwave in ise data tablosundaki değerlerin byte ya da word sınırlarıiçinde olmasını sağlar. End list with ise data tablosunun sonunaeklenecek olan bitiş değerini belirlememizi sağlar. Assemblerprogramınızda bu değeri kontrol ettirerek bitişe gelindiğinde tekrartablonun başının okunmasını sağlayabilirsiniz. End datawith ise sinüs eğrisinin sonuna gelecek olan bitiş kodunu belirlemeyisağlamakta. Offset (before mul.) ile çarpım işleminden öncedata tablosundaki her bir değere eklenecek olan sayı miktarınıbelirlemeyi sağlamakta. Offset (after mul.) ise çarpım işlemindensonra her bir değere eklenecek sayıyı belirlememizi sağlamakta.Multiply wave with ile tablodaki her bir değerin bir sayıylaçarpılması sağlanmakta. Bu sayı normalde 1 'dir. Fakat tabloyuoluşturan sinüs eğrisinin genliğim artırmak istiyorsanız herbir değeri aynı sayıyla çarpmanızda fayda var. Lowest value tozero yardımıyla da en alçak değerin 0 olarak kaydedilip edilmeyeceğinibelirleyebilirsiniz. En alçak değer 0 olacaksa buradaYES kutucuğunu kliklemeniz gerekmekte. Filename ile tabloyudiskete kaydederken kullanılacak ismi belirleyebilirsiniz. Savewave kutucuğu da tablonun kaydedilmesini sağlar. Kayıt işlemibittiğinde hafızadaki sinüs eğrisi ve tablo silinir ve sizden yinebir menü fonksiyonu seçmeniz beklenir.Son olarak üçüncü menüde yer alan fonksiyonu tanıtmak istiyorum.Bu fonksiyonun sinüs tablo yaratmakla hiçbir ilişkisiyoktur. İsminden de anlaşılacağı gibi (TextConvert) herhangi birtext fıle'ını data tablosuna çevirmekte. Bu, programınızda kullanacağınıztext'ler ya da bir intro/demoda kullanacağınız scrolltext olabilir.Input name disketteki ASCII text dosyasının ismini belirlemenizisağlar. Çevirme işleminden sonra data tablosunu disketekaydederken kullanılacak ismi de Output name ile tanımlayabiliyorsunuz.Convert text to yardımıyla text dosyasını ne tür birdata tablosuna çevrileceğini belirleyebilirsiniz. Source'u seçtiğinizdetext dosyasının her satırının başına işareti eklenecektir. Eğer Binary kutucuğunu seçerseniztext dosyasındaki her bir karakterin binary karşılığı tabloyayazılacaktır. Çevirme işlemi sırasında ekranın üst kesimindedosyanın convert edilen miktarı yüzde olarak yazılacaktır.Bence, bu programı assembler program yazan herkes kullanmalı.Zaten .yapan kişi de bir assembler programcısı. Herhaldekendi ihtiyacı olduğundan böyle bir program yazmış ilgilenenlerinrahat bir utility'den faydalanmasını sağlamış.AMIGA DÜNYASI 41r