Bu sayfadaki yazılar
Sayfanın metni
Sayfa 26
Daha önce belirttiğim gibi, tekniklerimiz yeni gelen demo ve introlara göre olacak. Fakat ben size garantili olarak şu teknikleri öğreteceğim: Sprite kullanımı ve birçok introda gördüğünüz kayan yıldız efektleri, ekrandaki çeşitli yaratıkları hareketlendirmek ve bunların animasyonu, bob ve kullanımı, çeşitli renk efektleri (eycle,flash,fade vs.), Copper efektleri, Raster efektleri (buna ilgi artarsa plasma!), bazı scroll ve text rutinleri, çeşitli library rutinleri ve kullanımı. Disk, klavye, joystick kontrolleri gibi şu anda popüler intro ve demo tekniklerini zamanla göstereceğim. Sizler belli bir seviyeye geldikten sonra Vector'ler gibi üç boyutlu objelerin kullanımı da işlenebilir. Ayrıca gelecek ay, intromuzun başına sahte bir Guru Meditation hatası eklemeyi öğreneceğiz. Daha sonra bir logo efekti ile logomuza başka bir boyut vereceğiz. Fakat ben bütün bu yapacaklarımızı sizin kendi fikirleriniz doğrultusunda işlemeyi düşünüyorum! Mektup yazmayı ihmal etmeyin...
,Bu ay source'umuzun tam açıklamasını vermedim. Çünkü bu sizin isteğinize göre olacak. Sadece yan kısımlarına kısa açıklamalar mı, yoksa register işlevleri dahil tüm açıklamasını mı istediğinizi lütfen bize yazın. Tüm bunların esas hedefi, Türkiye'de oyun ve iş programları yazacak yeteneklerin çoğalmasına yardım etmektir. Unutmayın ki, AMIĞA sadece bir oyun makinası değildir. Yine de takdir sizin. Evet, bu yeni köşemizi umarım beğenmişsinizdir. Gelecek aya intromuzu hep beraber geliştireceğiz. Bakmışsınız bir de Mega- Demo yapmışız (niye olmasın...?)!! Takıldığınız herhangi bir yerde veya bu konuyla ilgili her türlü görüşlerinizi ve fikirlerinizi Global Trash adlı yazabilirsiniz. Mektuplarınızı bekliyorum. Bir de Show Time ile birlikte büyük bir demo yarışması açmayı düşünüyoruz, bekleyin. Gelecek ay görüşmek üzere... Son bir Not: Artık Red sector demomaker kullanmayı bırakın!
ak dk ak
e PROGRAM: B.KAĞAN ÜNALDI
ş* GLOBAL TRASH DEMO TEKNİKLERİ ÖRNEK 1A *
* * *
ak ak ak ak akal
org $30000 adresine yerleştirir. load — $30000
start: movem.l a0-a6/d0-d7,-(a7)
ştaskları kapat ;graphics.library aç
;hayır programdan çık
;bitmap rastport açma rutini
move.l 4,a6 şexec library-adresi jsr -$84(a6) lea gixname,al açmak için adres jsr -$198(a6) tst.l d0 ;library açıldı mı? beg exit movea.l d0,a2 ;graphics.library adresi move.l dO,gfxbase — ;bu adresi sakla bsr initoper adda.l #$32,a2 ;copperlist adresi move.l a2,oldaddy ;copper okuma adresi move.l (a2),0ldcop copperlisti sakla move.l #newcop,(a2) ;bizim clisti çalıştır mouse: cmpi.b #255,$dff006 şelektron sayacı bne.s mouse ;işlem bitti mi? bsr scroll ;scroll (yazı kaydırma) rutini btst #6,$bfe00l — ;mouse'a basıldı mı? bne mouse ;hayır tekrar kontrol et move.l oldaddy,a2 ;copper adresi move.l oldcop,(a2) evet eski copperi çalıştır move.l şexec adresi İsr -$8a(a6) ;taskları aç
move.l gfxbase,al
;graphics.library adresi
-$19e(a6) library'i kapat exit: movem.l (a7)4,a0-a6/d0-d7 out: — Tts ;programdan çık initoper: move.l gixbase,a6 — ;graphics library adresi move.l #bitmap,a0 — ;bitmap adresi move.l ;Depth (1 bitplane) move.w #360,d1 ;width (320 pixel eni) move.w #100,d2 ;height (100 pixel boyu) jsr -390(a6) şinitbitmap move.l #rastport,al — ;rastport adresi -198(a6) ;initrastport lea bitmap,a0 ;bitmap adresi move.l #$60000,8(a0) ;scroll alanı bitmap--8 'e move.l ;bitmap adresi lea — ;rastport adresi
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 27
jsr -48(a6) ;els (ekranı temizler) Tts ;rutine geri dön seroll: — move.l gfxbase,a6 ;gfx library adresi lea rastport,al — ;rastport adresi move.l #2,d0 cir.l di cir. d2 ;minx cir.l d3 ;miny move.l #360,d4 ;maxx move.l 40,d5 ;maxy İsr -396(a6) ;scroll raster lea timer,a2 ;zamanlayıcı adda.l ;bir artır cmpi.l #4 (a2) :4 oldu mu? bne out ;hayır çıkışa git cir.l (a2) şevet zamanlayıcıyı sil move.l #rastport,al — ;rastport adresi move.w #324,d0 ;x (324. pixele bas) move.w #10,d1 ;y (10. pixele bas) İsr -240(a6) ;move cursor (İocate) move.l ;rastport adresi move.l txtbase,a0 — ;harfin adresi move.w #1,d0 ;1 adet harf jsr -60(a6) ;printext (harfi bas) lea — adresi adda.l #1, (a4) ;bir sonraki texte gel move.l (a4),a3 şesas text adresi tst.b (a3) ;text sona geldi mi? bne out ;hayir cikisa git move.l #scrolltxt,txtbase — scroll'u başa al
newcop:
de.w $008e,$2c81,$0090,$2cc1,$0092,$0038,$0094,$00d0 de.w $0102,$0000,$0104,$0000,$0120,$0000,$0122,$0000 de.w $0108,$0006 ;modulo — 6 $0100,$1200 ;scroll tek bitplane (2 renk) de.w $00e0,$0006,$00e2,$0000 — ;bitplane points ($60000 adres) de.w $0180,$0000 ;— SCROLL FONTUNUN İÇİNDEKİ RENKLER -—- dec.w $0180,$0000,$2f07,$fffe de.w $0182,$0321,$3007,$fffe de.w $0182,$0432,$3107,$fffe de.w $0182,$0543,$3207,$fffe dc.w $0182,$0654,$3307,$fffe de.w $0182,$0765,$3407,$fffe dc.w $0182,$0876,$3507,$fffe $0182,$0987,$3607,$fffe de.w $0182,$0a98,$3707,$fffe de.w $0182,$0ba9,$3807,$fffe dc.w $0182,$0cba,$3907,$fffe dc.w $0182,$0dcb,$3a07,$fffe de.w $0182,$0000,$3f07,$fffe de.w $0108,$0000,$010a,$0000 — ;grafik modulosu ;— renk çubukları | --- de.w $0180,$0000,$4007,$fffe de.w $0180,$0111,$4107,$fffe de.w $0180,$0222,$4207,$fffe de.w $0180,$0333,$4307,$fffe de.w $0180,$0444,$4407,$fffe de.w $0180,$0555,$4507,$fffe de.w $0180,$0666,$4607,$fffe de.w $0180,$0777,$4707,$fffe de.w $0180,$0888,$4807,$fffe