Arkadaşlar, benim çalışmalarımı yakından takip eden grup arkadaşlarım ve yakın scene dostlarımın bu projeden haberi vardı zaten. Ama ben bu projeyi yeni kodlar yazdıkça ve ihtiyaçlarım çoğaldıkça geliştirdiğim için 2008-2009 gibi yayınlasaydım çok daha "waow" dedirtecek birşey ortaya çıkabilirdi. Ama stranger c64 coding bölümüne "canlandırmak" topicini açınca ben de bundan iyisi şamda kayısı diyip yayınladım kütüphanemi.
http://www.akaydin.com/sk8lib/ şimdi ufak bir tahmini FAQ:
S1 - Ulan ama bu ingilizce?!
C1 - Haklısınız. Ancak bu proje Türklere özel hazırlanmadı. Aslında başlangıçta yalnızca kendim kullanmak için tasarlamıştım. Ama sonradan paylaşmak istediğimde herşeyi ingilizce yazmış bulundum. Sayfayı da bunun için ingilizce hazırladım.
S2 - Peki Türkçe versiyonu olacak mı?
C2 - Henüz ingilizce dökümanı bile yok. Dolayısıyla her iki dilde de bir döküman hazırlamam gerekecek. O zamana kadar forum üzerinden sorularınıza cevap verebilirim. Siz şimdilik örnekleri inceleyip, örneklerin hafızada oluşturduğu kodlar ile kaynak kodları karşılaştırabilirsiniz.
S3 - Nedir ne diildir?
C3 - SK8LIB aslından bir VIC kütüphanesidir. VIC'in ne olduğunu bilmeyenler için özetlemek gerekirse commodore'un görüntü çipi şeklinde basitçe ifade edilebilir. Tüm text ekranı, grafik ekranı, spritelar v.s. VIC'in kapsadığı konulardır. Ancak zamanla ihtiyaçtan doğan hafıza doldurma, kopyalama işlemleri, çarpma işlemi gibi birkaç konuyu da kütüphaneye ekleyerek matematik ve hafıza kütüphaneleri de oluşturmaya başladım. Ama bunlar yalnızca başlangıç seviyesinde, henüz isimlerini hak etmeyen kütüphaneler. Zamanla geliştireceğim.
S4 - Peki bu kütüphaneler bana ne kazandıracak?
C4 - Örneğin grafik ekranı açmak istiyorsunuz ama bank değiştirmek ($dd00), $d011, $d016, $d018 adreslerine ne değer vermek gerektiği, ordaki karmaşık bit hesaplamaları v.s. gözünüzü korkutuyor ya da yalnızca her seferinde uğraşmak canınızı sıkıyor. Bu durumda
+SetScreen SCREEN_ADDRESS, BITMAP_ADDRESS, SM_BITMAP | SM_25ROW | SM_MULTICOLOR | SM_FORCE_BANK_SWITCH, VP_DEFAULT
Gibi tek satırlık bir macro ile probleminizi çözebiliyorsunuz.
S5 - Güzel birşeye benziyor da ben tüm detayları nasıl öğrenebilirim?
C5 - Maalesef şimdilik yalnızca örnekleri ve kütüphanenin kendi dosyalarını (sk8mathlib.a, sk8memlib.a, sk8viclib.a) inceleyerek ya da buraya atacağınız sorularla öğrenebilirsiniz.
S6 - Kütüphane hangi dilden yazıldı?
C6 - ACME. Bu kütüphaneyi rahat bir şekilde kullanmak için sizin de ACME kullanmanızı öneriyorum. Ancak diğer assembler derleyicilerine de uygun hale getirmek şu aşamada çok zor değil.
S7 - Size 6510 Asm'de program yazmayı kolaylaştırdığınız ve böyle bir kütüphaneyi yayınladığınız için teşekkür edebilir miyim?
C7 - Bir öpücük ver yeter :p