Plazma sayı 3, sayfa 101

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 101

Yeni bir sayıda tekrar merhaba sevgili Plazma okurları. Plazma'nın ilk sayısından beri süregelen "Test Platformu" bu sayıda artık daha da detaylı bir biçimde devam ediyor. Önceki sayıları okumamış başlangıç seviyesindeki programcılar bu sayıda zorlanabilirler. Her sayı birbirinin devamı niteliğinde olduğu için bu bölümü okumadan önce bölüm 1 ve bölüm 2'yi okumanızı tavsiye ediyorum.

Bu Bölümde Neler Anlatılacak?

• Bu yazı dizisinin misyonu Commodore 64 için PC destekli yazılım geliştirmeyle ilgili yöntemler sunmak olduğu için bu sayıda öncelikle JavaScript'ten bir "VIC Simülatörü" nasıl hazırlanır onu göreceğiz. Bu VIC Simülatörü, Commodore 64'ün ekran çipi olan VIC'in hafızadaki byte dizilişini ekrana nasıl yansıttığıyla ilgili bir simülasyon yapacak. Bu sayede bir efekti Commodore 64'te programlamaya başlamadan JavaScript'ten çeşitli testler yapabileceğiz.

• VIC Simülatörünü kullanarak bir nokta basma rutini hazırlayacağız. Bu rutin ekranda verilen x ve y koordinatına nokta koyacak.

• Aynı örnek içerisinde basit bir sinüs, kosinüs hesabıyla ekrana tam sınırlarına denk gelecek şekilde bir elips çizdireceğiz.

• Daha sonra Commodore 64 üzerinde grafik ekranı açıp ekrana nokta basma işleminin nasıl yapıldığını kod örnekleriyle göreceğiz.

• Sonraki adımda VIC Simülatöründe denediğimiz elips çizdirme rutininin nasıl Commodore 64'e aktarılabileceğini inceleyeceğiz.

• En son olarak da bu son yaptığımız işlemin Commodore 64'e aktarma işleminin eksik, zayıf yönlerini ve alternatiflerini tartışacağız. Ancak diğer yöntemleri sonraki bölümlere saklayacağız.

VIC Simülatörü

Çok uzun bir zamandır VIC simülatörü türü bir şeyi JavaScript'ten yapmak istiyordum. Aslında C++ ve .NET'ten hazırladığım benzer birçok program olmasına rağmen, JavaScript'in scripting dili olması ve dolayısıyla derlenmeden çalışabilmesi, gittiğim her yerde herkesin PC'sinde kolaylıkla çalışabiliyor olmamı sağlaması gibi avantajlarından dolayı JavaScript'te de benzer bir şeyler yapmayı hedeflemiştim. Ancak JavaScript'ten VIC simülatörü yapmak o kadar da kolay değil. Gelin ne olduğunu ve nasıl yapıldığını inceleyelim.

VIC

simülasyonu tam olarak nedir?

Commodore 64'ün tek renk grafik modu 320x200 çözünürlükten, yani toplam 64000 pikselden oluşur. Ancak PC'de 13h (320x200 256 renk) gibi modlarda çalışmaya alışmış insanlara Commodore'daki hafıza yapısı başlangıçta epey bir ters gelecektir. Çünkü 13h modunda her bir piksel bir byte'a denk gelirken ve byte değerleri renkleri simgelerken, Commodore'da 1 byte'ın her biti 1 pikseli sembolize edecek şekilde 1 byte = 8 piksel'e denk gelir. Örneğin 197 byte değerini ele alalım:

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