Commodore sayı 67, sayfa 23

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 23

Vedat Hallaç kaç aydır “Bana yazın. Sorununuz olursa, ne kadar basit olursa olsun. Çekinmeyin. Cevaplamaya diye diye dilimde tüy bitti, ama hiçbirinizi bana yazmaya ikna edemedim. Bu durumda iki ihtimal var: Ya hepiniz her şeyi en ince ayrıntısına kadar anlıyorsunuz, ya da yazdıklarımı bir tek ben okuyorum. Ben gene de ilk ihtimali göz önüne alarak, yazıda daha da ileri gitmeye karar verdim. Ama bu işi yaparken, bir de intro yapacağım. Daha doğrusu bu sefer introyu birlikte hazırlayacağız. “Bir intro hazırlamanın ilk ve en zor basamağı, kaba olarak nerede ne tür hareketler yapılacağına karar vermektir. Daha sonra bu hareketleri yaptıracak rutinleri düzgün bir şekilde ve en az belleği işgal edecek biçimde bir sıraya sokmamız gerekiyor.” diyebiliriz. Ama bu sefer her şeyi tasarlanmış bir intro yerine, “Şurada da şu işi yapalım.” diye diye, rutinleri kafadan atma yerlere çok da düzgün olmadan yerleştirerek gidelim. Biliyorum, bu söylediğim sistem şimdiye kadar söylediğim her şeyle çelişiyor. Ama, koşullar bu şekilde çalışmanızı gerektirebilir (Umarım gerekmez, çünkü bu şekilde bir intro bitirmek oldukça uzun zaman alır). Neyse. Sözü pek fazla uzatmadan intromuzu yapmaya girişelim. İntromuza ne koyacaksak koyalım, bir interrupt başlatma rutinine ihtiyacımız olacak. Bu yüzden yeterince geride olan $0900'e Tablo-1'de gördüğünüz standart programı yazarak ilk adımı atalım. Unutmayın, şu anda ne yapacağımıza karar vermediğimiz için $D012'ye verdiğimiz değerin bir anlamı yok. Yalnızca ilk interrupt parçacığını, $0900'e en yakın yuvarlak adres olan $0A00'a koymaya karar vermek oldukça yerinde olur. Çünkü, daha sonra $0900'de bulunan rutine sprite açtırma, grafik ekranına geçme, data taşıma gibi garip işler yaptırmaya karar verebiliriz. Rutinlerin neye benzediği ortaya çıktıkça, kısa bazı rutinlerle de $0A00'a kadar olan boşluğu doldurabiliriz. Şu ana kadar yaptıklarımız yeterince saçma geldi mi? Ne yazık ki çoğu programcı bu şekilde çalışır, ve programları genelde ilk denemede çalışmaz. Bu yüzden bu introyu yapmış stilimizi asla kendinize örnek almayın (Yani öğretmeninizin dediğini yapın, ama yaptığını yapmayın!). Şimdi ilk adımı attığımıza göre oturup düşünebiliriz (önce düşünüp sonra adımı atsaydık ya!!!). Ne yapsak hoş olur? Mesela bir kayan yazıyı yukarı aşağı oynatsak? Çok alanı kaplar ve o kadar da göz doldurucu değil! Ne yaparsak bu alanı doldururuz? Arkasına renkleri döşersek ta-

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