Plazma sayı 2, sayfa 159

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 159

Commodore 64 yani 6502 mikroişlemcinin yorumlayabileceği şekilde derlenebileceği bir uygulama bulmaktır. PC'de bu işi yapan "The ACME Crossassembler", "CC65", "ADC-65", "The COMFY 6502 Compiler" gibi birçok uygulama mevcuttur. Ancak kullanıcı dilediği taktirde kendi derleyicisini yazabilir ya da kaynak kodu açık derleyicilerden birini kendine göre modifiye edebilir.

İlk sorunumuzu çözdükten sonra karşımıza başka bir sorun çıkıyor. "Derleyici editörü" ihtiyacı. Programlarımızı Notepad'de yazıp daha sonra DOS ekranından parametrik komutlarla derlememiz mümkün. Mümkün olmasına mümkün ancak pratik değil. Projeler büyüdükçe renklendirilmiş editör ekranları, regular expression destekleyen bul&değiştir özelliği, çeşitli kısayol tuşları gibi ihtiyaçlar artacaktır. Bunun için Windows üzerinde "EditPlus"ı tavsiye ederim. EditPlus shareware bir uygulama olduğu için free bir editör tercih edenler ise aralarında Windows, Linux ve MacOS'un da yer aldığı 10'dan fazla platform desteği sunan "Emacs"i tercih edebilirler. Bu ve benzeri editörler çapraz geliştirme sürecinde işimizi oldukça kolaylaştıracaklardır.

Geriye tek bir sorun kaldı. Commodore 64'ün yorumlayabileceği byte kodları ürettiğimizi varsayalım. Peki bunun sonucunu nasıl göreceğiz? Elbette ki bunun iki yolu var.

1) PC'den Commodore 64'e veri transferi i) Dosya transferi ii) Doğrudan Commodore'un belleğine veri aktarımı

2) PC üzerinde emülatör kullanımı

Şimdi bu iki yöntemi biraz detaylandırarak anlatalım.

PC'den Commodore 64'e veri transfer etmenin birkaç farklı yolu var. Bunların en çok kullanılanı X1541 kablosu ve türevleridir. Bu kablo PC ile Commodore 64 arasında doğrudan bir bağlantı sağlamaz. Bunun yerine PC'nin paralel portu ile disket sürücü (1541, 1541-II gibi) arası bağlantı sağlar. Bu sayede PC'de geliştirilen uygulamalar Commodore 64'ün kendi formatındaki disketlere kopyalanabilir ve daha sonra Commodore 64 ile çalıştırılıp test edilebilir. Son yıllarda MMC64 gibi çok daha gelişmiş transfer (MMC64'ün veri transferinden çok daha fazla ve önemli özelliği var, internette bu konu üzerine biraz sörf yapmanızı tavsiye ederim) yöntemleri gündemde. Nightshift partisinde GO64'ün standını ziyaret edenlerdenseniz bir MMC64 sahibi olma şansını elde etmişsiniz demektir. Umarım bu şansı kaçırmış olmazsınız. Bu yöntemlerin haricinde IDE64, 1581, PC üzerinde 5.25" disket sürücüler v.b. teknolojileri veri transferinde kullanmanın çeşitli yolları mevcut. Ancak şimdilik bize transfer konusunda bu kadar detay gerekmiyor.

PC'den Commodore'a veri transfer etmeden Commodore için geliştirdiğimiz programların sonucunu PC'de görmenin tek yolu emülasyondur, yani Commodore 64'ün tüm donanımını, makine dilini, üzerinde gelen ROM'u, çalışma prensiplerini yazılımla simüle etmektir. Bu elbette ki hiç kolay bir iş değildir ve kullanıcının kendi başına böyle bir işe kalkışması çok uzun soluklu bir projeye girişmesi demektir ki başarı şansı da çok yüksek olmayacaktır. Ancak ne mutlu ki günümüzde Vice ve CCS64 gibi birçok Commodore 64 emülatörü mevcut ve birçoğu oldukça başarılı sonuçlar veriyor. Vice aralarında en gelişmişi denilebilir ve %99'a varan bir uyumlulukla Commodore 64'ü PC üzerinde çalıştırabiliyor.

Şimdi gelelim karar aşamasına. Yöntem olarak transferi mi yoksa emülasyonu mu seçmeliyiz? Birbirlerine göre avantajları neler? Cevap ise her ikisini birden kullanmamız gerektiğidir. Çünkü hiçbir Commodore 64 emülatörü, programları çalıştırmada %100'e varan başarıya ulaşsa da görüntü ve özellikle de ses emülasyonunda yeterli başarıyı gösteremez. Bunun başlıca sebepleri PC monitörleriyle Commodore'un kendine özel monitörleri ve televizyon çıkışının etkisinin yaratılamaması ve Commodore'un ses çipi olan SID'in analog yapısının PC'deki ses kartlarıyla emüle edilememesidir. Bu durumda geliştirilen programların tam olarak sonuçlarını görmek için Commodore 64'e transfer etmemiz bir zorunluluktur. Ancak elbette ki bu da geliştirme sürecini yavaşlatacak bir unsurdur. Çünkü programcı programları geliştirirken sık sık sonuçlarını görmek isteyecektir. Transfer işlemi ise dakikalar alabilen bir işlemdir. Bu durumda programcının her defasında programını kaydedip, transfer edip, sonucuna bakması bir süre sonra işkenceye dönüşecektir. Dolayısıyla PC'de geliştirdiğimiz programları doğrudan Commodore 64'ün belleğine derleyen bir düzeneğimiz olmadığı sürece en pratik metot, geliştirme sürecinde ara testler için emülatörleri kullanıp, tam sonuçları görmek için ise Commodore 64'e transfer etmektir.

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