Commodore sayı 59, sayfa 42

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 42

1) DrawPoint (NoktaKoy) - $C133: * Fonksiyonu: Ana veya tampon ekranda istenen bir noktaya önplan veya arkaplan renginde nokta koyar veya ana ekrana tampon ekrandan bir nokta kopyalar. * Erişim: Nokta koyuluyorsa (tampon'dan kopyalanmıyorsa)

displayBufferOn ($2F) —

- bit 7=1; ana ekrana yazar. - bit 6=1; tampon ekrana yazar.

* Gerekli hazırlık: İşaret flag'ı (sign flag) - noktanın yazılmasına veya tampon'dan kopyalanmasını ayarlar, 0 ise nokta doğrudan yazılır. Elde flag'ı (carry flag) - eğer işaret flag'ı yazılım için 0 yaparsanız, elde'nin 1 yapılması (SEC komutuyla) önplan renginde, 0 yapılması (CLC) ise arkaplan renginde nokta konulmasını sağlar. r3 - x: noktanın x koordinatı. (0-319)

- y: noktanın y koordinatı. (0-199) * Dönüş değerleri: r3, r11L - aynı değer. * Bozulan registerler: a, x, y, r5-r6 * Açıklama: İşaret flag'ının değerine göre ekranda önplan veya arkaplan renginde nokta koyar veya tampon bölgenin o koordinattaki değerini kopyalar. Eğer işaret bayrağı 1 ise tampon'dan kopyalama yapılır. 0 ise elde flag'ının değerine göre renk belirlenerek nokta koyulur. 2) TestPoint (NoktaKontrol) - $C13F: * Fonksiyon: Elde Flag'ında (carry flag) istenen noktanın değeri bulunur, r3 - noktanın x koordinatı (0-319) r11L - noktanın y koordinatı (0-199) * Dönüş değerleri: Elde Bayrağı - nokta önplan rengindeyse değeri 1, arkaplan rengindeyse 0 olur.

r3, r11L - aynı. * Bozulan registerler: a, x, y, r5-r6 3) HorizontalLine (YatayÇizgi) - $C11B: * Fonksiyon: Verilen deseni kullanarak bir yatay çizgi çizilir. * Erişim: displayBufferOn ($2F)

- bit 7—1: ana ekrana çiz. - bit 6—1: tampon ekrana çiz.

* Gerekli hazırlıklar: a - çizgide kullanılacak desen baytı - çizginin y koordinatı (0-199) r3 - çizginin sol ucunun x koordinatı r4 - çizginin sağ ucunun x koordinatı r3, r4: (0-319) * Dönüş Değerleri: r11L-aynı * Bozulan Registerleri: a, x, y, r5-r8, r11H * Açıklama: r3'den bir yatay doğru çizer. Desen değeri doğrudan ekran RAM'ına yazılır. Böylece aynı desenli tüm çizgilerde noktalar alt alta gelir. 4) VerticalLine (DikeyÇizgi) - $C1E: * Fonksiyonu: Verilen deseni kullanarak bir dikey çizgi çizer. * Erişim: displayBufferOn ($2F)

- bit 7=1: ana ekrana çiz. - bit 6=1: tampon ekrana çiz.

* Gerekli Hazırlık: a - desen baytı r3L - çizginin üst köşesinin y koordinatı r3H - çizginin alt köşesinin y koordinatı r4 - çizginin x koordinatı. r3L, r3H - (0-199); r4 - (0-319) * Dönüş değerleri: - * Bozulan registerler: a, x, y, r5L-r6L, * Açıklama: r3L'den r3H'ye bir dikey doğru çizer. Desen değeri 90 derece çevrildikten sonra ekran RAM'ına yazılır. Böylece aynı desenli tüm çizgilerde noktalar yan yana gelir. 5) InvertLine - $C11B * Fonksiyonu: x koordinatları ve-

“rilen bir yatay çizginin geçtiği noktalardaki önplan rengini arkaplan rengine, arkaplan rengini önplan rengine çevirir. * Erişim: displayBufferOn ($2F)

- bit 7—1: ana ekrana çiz. - bit 6— 1: tampon ekrana çiz.

3 Gerekli hazırlıklar: r1L - çizginin y koordinatı (0-199) r3 - çizginin sol ucunun x koordinatı - çizginin sağ ucunun x koordinatı r3, r4: (0-319) * dönüş değerleri: r1L, - aynı * Bozulan Registerler: a, x, y, r5-r8 * Açıklama: Yatay bir çizginin geçtiği noktaların değeri 1 ise 0'a, 0 ise 1'e çevirir. 6) RecoverLine (ÇizgiKopyala) - $C11E: * Fonksiyonu: Tampon ekrandan bir yatay çizgi kopyalar. * Gerekli hazırlıklar: r1L - çizginin y koordinatı (0-199) r3 - çizginin sol ucunun x koordinatı r4 - çizginin sağ ucunun x koordinatı r3, r4: (0-319) * Dönüş değerleri: r1L - aynı * Bozulan Registerler: a, x, y, r5-r8 7) DrawLine (ÇizgiÇiz) - $C130: * Fonksiyonu: Ön veya arkaplan renginde bir çizgi çizer veya bu çiz-

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