Amiga Dünyası sayı 21, sayfa 32

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 32

| move.l CLadr,al moveg #CLuzunluğu,d0

;FreeMem için parametreleri düzenle

| jsr FreeMem(a6) — ;hafızayı serbest bırak |Son: d0 ;Hata flag'ini sil ;Programın sonu | Değişkenler | CLadr: “del O | ;Sabitler GRisim: dc.b "graphics.library",0 EVEN ;çift adrese geç. (Bazı assemblerlar ALIGN ;kullanır) ;İşte COPPERLİST CLbaşla: de.w color00,$0000 ;Arkaplan rengi siyah de.w $640f,$fffe ;100.satırda değiştir de.w color00,$0f00 — ;şimdi arkaplan rangi kırmızı de.w $be0f,$fffe ;190.satırda değiştir de.w color00,$0fb0 tık altın rengi de.w nkansız pozisyon.Copperlistin ;sonu CLson:

CLuzunluğu - CLson - CLbaşla

Programın sonu

Bu program copperlist'i yerleştiriyor ve sol mouse tuşu basılana kadar bekliyor. İlk etapta copperlist'i yerleştirmek için hafızaya ihtiyacımız var. Bütün Custom register'larda olduğu gibi bu hafıza bölgesinin de Chip RAM'de bulunması gerekiyor. Amiga gibi MultiTask çalışan bilgisayarlarda, istediğiniz bilgiyi hafızanın istediğiniz yerine yazabilirsiniz. Bu AllocMem rutiniyle hallediliyor. Siz bu rutine, kullanmak istediğiniz hafıza miktarını ve bu hafızanın CHIP, FAST ya da (her ikisi de) hafıza bölümünde olması gerektiğini söylüyorsunuz, o da size gerekli hafızanın adresini d0 register'ında size veriyor. Daha sonra Copper list'imizi chip ram'daki bu adrese kopyalıyoruz. Daha sonra Forbid programı vasıtasıyla tüm task'ları kapatıyoruz. Bu sayede programımızın diğer task'lar tarafından rahatsız edilmeden çalışmasını garantiye alıyoruz. Son olarak, copper list parametrelerini girip, copper'ı çalıştırıyoruz. Bundan sonra program sol mouse tuşunun basılıp basılmadığını kontrol ediyor. Eğer tuş basılıysa, işlemci bekleme döngüsünden çıkıyor. Eski görüntüyü tekrar geri almak için, özel bir copperlist'i yüklüyoruz ve başlatıyoruz. Bu execbase içinde bulunan Startup Copperlist'tir ve ekranı yeniden tanımlamaya yarar. Permit fonksiyonuyla task'ları yeniden açıyor ve işgal ettiğimiz hafızayı FreeMem rutiniyle serbest bırakıyoruz. — Program üzerinde renkleri ve WAIT komutlarını kendinize göre değiştirebilir ve yeni komutlar ekleyebilirsiniz.

Tüm mutlulukların sizin olması dileğiyle, en derin saygılarımı sunuyorum.

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