Commodore sayı 50, sayfa 65

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 65

RUTİNLERİ YAZMAK:

Ana döngü tarafından tanımladığınız olayları gerçekleştirmek için gereken rutinleri oluşturmak. Şimdi de GEOS'un yapısal bir betimlemesine girişeceğiz. Yani programlandığı grafik moduna, bellekteki yerine, Kernal'ın hangi versiyonu çalıştırdığını anlamaya, donanım kontrol kütüğünün neye ayarlı olduğuna ve bellek haritasının Kernal ya da BASIC ROM rutinlerini kullanmak üzere nasıl değiştirileceğini incelemeye, Yüksek Çözünürlük Bit-Mapped Mod: GEOS C-64'ün bit-mapped grafik modunu, 320x200 piksellik bir çözünürlükte kullanır. Bu mod ekranı göstermek için 8000 bayt kullanılır. GEOS Kernal ile programlama uygulamalarını daha kolaylaştırmak için, genellikle ekran datasının bir yedek kopyasını tutmak üzere kullanılan 8000 baytlık bir buffer vardır. Arka plan buffer'ında depolanmış olan görüntüleri ekrana kopyalayan rutin, penceresinin önüne bir menü indirildiğinde ya da bir diyalog kutusu belirdiğinde yararlıdır. Ekranda daha önce bulunanları kurtarmak için, menüler ve diyalog kutuları arkaplan ekranını ön ekrana kopyalar ve programı ekranı yeniden yaratmaya çalışmak zahmetinden kurtarır.

leri kullanılır. Bu özellikle program

BELLEK HARİTASI GEOS BELLEK HARİTASI

GEOS Kernal Bellek Haritası tablosu, GEOS Kernal tarafından kulla-

Bayt no. adres Alanı | nılan ve program uygulamaları için | bırakılan bellek alanlarını Desimal Heksadesimal TANIM | gösterir. Uygulamalar $0400'den 1 0000 6510 Data Yön Kütüğü $FFFF'e kadar 22K'ya sahiptir. Ba- 2 0001 6510 I/O Kütüğü zı durumlarda 8k ilave ile 30k'ya ula- 110 0002-006F- Geos ve program tarafından kullanılan 0. şırlar. Bu ilk bakışta sınırlı bir bellek sayfa gibi görünebilir ama menü, ikon, di- 16 Programda kullanılan 0. sayfa (küt. a2-a9 yalog kutuları, disk, dosya sistemi ve

123 0080-00FA 4 1 256 0100-01FF 512 23552 0400-5FFE 8000 6000-7F3F 192 7F40-7FFE 8000-89FFE $A000-8BEF

C-64 Kernal ve Basic tarafından kul. 0 prog. kullanılan 0. sayfa (küt. a0-a1) Kernal ROM ve Basic rutinler değişik buffer desteklerinin GEOS Kernal'e dahil olduğunu unutmamak gerek. Bu programcıya bırakılan 222 6510 stack ile 30k'lık alanın artması ve program- Kernal ROM rutinleri için ROM cı için daha az iş demektir. Uygulama programı ve data | Uygulama kodunun yeri ve RAM Arkaplan ekran RAM programcıların GEOS Kernal Bellek Uygulama RAM Haritası hakkında bilmeleri gereken- GEOS disk buffer ve dı leri oluşturuyor. RAM üç ayrı yerde Sprayt resim datası ve programcının onu kullanmak isteken RAM

| 1000 8C00-8FD7 Video renk matrisi | diği yerde bulunabiliyor. 16 8FD8-8FF7 GEOS RAM 8 pointer'ları 4096 9000-9FFF OS kodu 8000 A000-BE3F Ekran RAM ya da BASIC ROM

192 BF40-BFFF GEOS Tabloları

4288 C000-CFFF 4k GEOS Kernal kodu 4096 4k GEOS Kernal ya da 4k I/O alanı 7808 E000-FE74 8k GEOS Kernal ya da C-64 Kernal ROM 370 FE80-FF Input Sürücüsü

6 6510 NMI, IRQ ve reset vektörleri

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