VICE'ın biraz yavaş açıldığının farkındasınızdır. Emulatör penceresinin açılmasıyla, C64'ün başlaması arasındaki bir kaç saniyelik beklemeden bahsediyorum. Bu CSDB'den indirdiğiniz demoyu açarken çok sorun değil ama hata ayıklamaya çalışıyor ve bu esnada emulatörü sürekli açıp kapatıyorsanız biraz can sıkıcısı olabiliyor.
Bu yazımda size VICE başlangıcını hızlandırmak için codebase64‘den[1] kaptığım bir numarayı anlatacağım.
Açılıştaki beklemenin ana sebebi BASIC hafıza yoklaması. Hani ekranda 38911 Bytes free yazıyor ya, o yazı açılışta dinamik olarak hesaplanıyor ve biz onun hesaplanmasını bekliyoruz. KERNAL'ı patchliyerek bundan kurtulmak mümkün. Konumuz gerçek bir makine olmadığı için EPROM falan yazmakla da uğraşmayacağız. Sadece KERNAL ROM'u yeniden düzenleyip VICE'a göstermemiz yeterli olacak.
Yeniden düzenlemek derken sadece KERNAL ROM içindeki $fd69 adresine $9f değerini yazacağız. Bunun için Bash[2] consol'u açıyorum ve KERNAL'ın aşağıdaki şekilde kopyasını alarak yamıyorum.
cd /mnt/c/Users/.../C64CrossDev/tools/WinVICE-2.4-x64/C64
cp kernal kernal-quick
echo "1d69: 9f" | xxd -r - kernal-quick
Bundan sonra x64'ü x64 -kernal kernal-quick parametresiyle başlatırsak hafıza testi yapmadan tabiri caizse şak diye açılacak.
Yalnız bunu benim gibi hemen konsolda deneyeyim derseniz çalışmadığını göreceksiniz. Sebebi Linux Subsystem'in henüz exe desteği vermemesi. Yeni kernalı compile betikleri hericinde de kullanmak istiyorsanız x64.exe'ye yeni bir kısayol yaratıp -kernal -kernal-quick parametresini bu kısayola vermeniz gerekiyor.
Linkler:[1] Codebase64
http://codebase64.org/doku.php?id=base:using_a_running_vice_session_for_development[2] Linux Subsystem on Windows
https://msdn.microsoft.com/en-us/commandline/wsl/about