Commodore sayı 6, sayfa 12
Sayfanın metni

Sayfa 12

Kernal Kavramları ve

Komutlar kümesi ne kadar geniş olursa olsun ve ne derece süratle çalışırsa çalışsın bir minik işlemci, kendisini denetleyen iyi yapılı bir yazılımı olmadan hiçbir yere varamaz. Bu denetçi program İŞLETİM SİSTEMİ olarak anılır. İşletim sistemi klavyeye yazdıklarınızı kabul eder; «ğer ne yazdığınızı anlamazsa bir hata mesajı gönderir; onu monitöre aksettirir; eğer bir anlam ifade ediyorsa komutunuzu tatbik eder; gerekiyorsa disket sürücüsünden bir program yükler; eğer mecburi ise printere gerekeni kaydeder... Uzun lafın kısası, işletim sistemi, bilgisayarın her türden kaynaklarını koordine eder ve hizmetinize hazır hale getirir. İşletim sistemi, sistem değişkenlerinin ilkdeğerlenmesi, bellek yönetimi ve her tür girdi/çıktı işlemlerini yapabilen geniş bir alt-program koleksiyonuna sahiptir. Bu alt-programlar genellikle büyük ölçüde donanıma bağımlıdır ki, bu da farklı cihazlar için değişik alt-programların yazılması gerektiği anlamına gelir. Kullanıcının bakış açısından, bu alt-programları, hangi donanıma başvurulduğu hususunda herhangi bir kaygı duymaksızın kullanabilmek istersiniz. Çoğu minik işlemci imalatçıları çağırılabilir altprogramları gösteren bir liste hazırlarlar. Bu liste ayrıca adresleri ve çağırma yöntemlerini de içerir. Sorun, işletim sisteminin daha sonraki versiyonu piyasaya sürüldüğünde ortaya çıkar: Tüm bu giriş noktaları farklı olacaktır. Bu yüzden tüm bu alt-programlardan yararlanan eski yazılım artık sistemle uyuşmayacaktır.

Commodore 64, bu sorunun üstesinden, sistemin alt-programlarının tüm giriş noktalarını KERNAL'da bir sıçrama (JUMP) tablosunda toplayarak gelmiştir. Bu sıçrama tablosu belleğin en son sayfasında, KERNAL ROM'da bulunur. Bu tablonun girişleri çok iyi belgelenmiştir ve yeni ROM'lar piyasaya sürülse de,

Örnek: SFFC6 JMP SFABC O 38018): | JSRSFFC6 SFABC| RTS N Uygulama LA (tatbik) ROM 1.0 programı ROM 2.0 Uygulama programı ROM'un her iki versiyonunda da eşit ölçüde iyi işleyecektir. |

bu sayfa değişmeden kalacaktır. Her münferit sistem alt-programı uyarlanarak ROM'un içine yeniden yerleştirilebilir. Böyle olmakla birlikte, KERNAL'daki sıçrama göstergesi de güncelleştirildiği süreci böylesi bir değişiklik kullanıcıya “saydam” olacaktır.

Siftah

Tüm cihazın çalıştırılmaya başlatılmasında -yani, siftah durumunda- KERNAL bir dizi self-test ve sistem değişkenleri için ilkdeğerlemeler yapar. Bu işlemlerin sırası aşağıda ana hatlarıyla gösterildiği gibidir: 1. 6510 işlemcisi için, Deste Göstergesi $FF'e yeniden kurulur (reset) ve ondalık tarzı çentiği temizlenir. 2. $ 8004-$8008 arasındaki adresler gözden geçirilir. Eğer, burada bir ROM başlığı bulunursa, denetim $8000'- deki vektör aracılığıyla ““otomatik-start”” ROM'a geçer. Aksi takdirde, normal sıra devam eder. 3. V/O kapıları ve cihazları hazırlanır. -CIA—I klavyesi, Joystick paddle'ı ışıklı CIA (yani Complex Interface Adaptorbkz. Commodore sayı) Kalem'i gözden geçirir. - CIA #41 gerçek-zaman saatini (?) harekete geçirir. - CIA Seri Taşıtı başlatır.

- CIA 342 Kullanıcı (User)/RS- 232 kapısını tekrar ayarlar (reset). - SID bütün sesleri temizler. 1/O BASIC tarzı için, belleğin konfigürasyonunu seçmekte kullanılan kapı.

-6510 kaset motorunu durdurmak için kullanılan kapi. 4. RAM testi $03000'den yukarı doğru sürdürülür. İlk non-RAM

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