Program Döküm Eki sayı 1, sayfa 9

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 9

bir satırından sonra istediği bir işlemi yapmasına olanak tanımaktadır.

İşte bu iki teknik kullanılarak Hyperscreen gerçekleştirildi. VIC, alt ve üst ekran kenarını oluşturmak için iki tarama satırını gözönüne alır. Birincisinde ekran açılır, ikincisinde ise kapatılır. Aşağıdaki kapatılma satırı ile yukarıdaki açılma satırı arası alt ve üst boşlukları yaratır. Bu iki satır numarasını (ki, bunlar normal yazı satırlarından farklıdır), VIC'deki bir bit ile değiştirmek mümkündür. Bu bit'in değeri 1 ise, ekranda bilinen 25 yazı satırı görünür. Eğer bu bit 0 değerine sahipse, ekranda sadece 24 yazı satırı kalır ve ekran kenarları biraz uzar.

Şimdi... Eğer bu bit, ekranın kapatıldığı tarama satırından hemen önce satır sayısı 24 olacak şekilde değiştirilirse, VIC'in içindeki, ekranın nerede kapanacağını gösteren tarama satırının değeri de yukarıya doğru kayacaktır. Ancak bu sırada tarama işi o satırı çoktan geçtiği için ekran kapanmayacaktır. Böylece, ekranın alt ve üst satırları açık kalacaktır.

Tüm bunlar size çok karmaşık görünebilir. Ancak, Hyperscreen bu özelliğin kullanımını çok basite indirgemiştir.

Hyperscreen'in yanı sıra size bir de kullanım sunuyoruz. Bu program ne yazık ki çok uzun. Ancak kullanılan sprite'ların çokluğu, bunu zorunlu kılıyor. Bu program da MDE ile yazılmak zorunda. Programı yazmayı bitirip yüklediğinizde, kısa bir BASIC program göreceksiniz. Ancak bu sizi aldatmasın. Görünen BASIC satırlarının içbellekte bittiği yerden sonra, makine dilindeki bölümler başlıyor. Bu nedenle, programın üzerinde kesinlikle hiçbir değişiklik yapmayın. Program işleyişini yitirir.

Kısaca programın neler yaptığını açıklayalım. Öncelikle, Hyperscreen'in kendisi programın kendi içinde var. Bu nedenle önceden Hyperscreen'i yüklemeye gerek yok. RUN komutunu verdiğinizde, program sizden şu anki saati soracaktır. Sonra da alarmın çalmaya başlaması gerektiği saati. Bu sırada veriş formatı şu şekilde olacaktır: Eğer saat 16'yı 17 dakika 56 saniye geçiyorsa, vereceğiniz yazı 161756 olacaktır.

Daha sonra program sizin verdiğiniz sayıları, ana programın anlayacağı biçime çevirerek gerekli yerlere yerleştirecek ve programı başlatacaktır. Ekranın alt kısmında dijital bir saat ortaya çıktığını göreceksiniz. Bu saat yazı ekranını rahatsız etmeyecektir ve sizin yapacağınız işlemlerden bağımsız olarak çalışmaya devam edecektir. Alarm saati geldiğinde de bir dakika boyunca gong çalmaya devam edecek, sonra susacaktır.

Disket ve yazıcı işlemleri sırasında, bilgisayarın kilitlenmemesi için, bu işlemlerden önce (LOAD, SAVE, PRINT#, GET#, INPUT#, OPEN gibi) CTRL ve RESTORE tuşlarına birlikte basın. Kenarların kapatıldığını göreceksiniz. İşleminizi yaptıktan sonra C= tuşu ile RESTORE'a basıp kenarları yeniden ortaya çıkarın. Eğer RUN STOP/RESTORE ile durdurursanız, yeniden çalıştırmak için SYS 49756 vermeniz gerekir.

Bu programı işletirken kendi sprite'larınızı da kullanabilirsiniz. Bu durumdan saatin sprite'ları etkilenmeyeceklerdir. Tek dikkat etmeniz gereken şey $C000-$C207 (49152-49787) arasını kullanmanız gerektiğidir.

Programı RUN etmeden önce saatin arka plan rengini, basamakların rengini, hangi basamakların görüneceğini ve gong sesinin frekansını değiştirebilirsiniz. Aşağıda verilen kalıpları kullanmanız gerekir:

POKE 2974,renk: Arka plan rengi

POKE 2980,sayı : En soldaki basamağın rengi

POKE 2987,sayı : En sağdaki basamağın rengi

POKE 2962, PEEK (2962) AND (255-2↑1): 1 yerine 0-7 arasında bir sayı koyduğunuzda, o basamak görünmez.

POKE 3072,INT (F/256)

POKE 3067,F-256*PEEK (3072): F ile belirtilen frekans, gong sesi olarak kullanılır.

Okuyucularımızdan yeni kullanım alanları bekliyoruz...

Klavyeyle gezinmek için ← ve → tuşları.