commodore.gen.tr

Commodore => Commodore Yazılım => Konuyu başlatan: wizofwor üzerinde Şubat 09, 2024, 00:50:49 ÖÖ



Konu Başlığı: CC65 disk erişimi sorusu?
Gönderen: wizofwor üzerinde Şubat 09, 2024, 00:50:49 ÖÖ
Linkte 2018'de cc65 pratiği yapmak için yazdığım "Hayvan Tahmini" adlı karar ağacı oyununun kodları var.
https://github.com/wizofwor/hayvan-tahmini/tree/master

Çok eski ve bilindik bir oyun. Önceden biraz oynayıp eğitirseniz, yapay zeka izlenimi veriyor.

Önce hızlıca yazıp çalıştırıp, sonra optimize etmeye geçmiştim. stdio kütüphanesi dosya boyutunu çok şişiriyor. Kaldırmak istedim ancak diske yazma/okuma işini beceremediğim için stdio kütüphanesini kaldıramadım. 6 yıldır da o şekilde kaldı.

Kod:
// --- Dosya Arayüzü --------------------------------------

void read_tree(uchar *id);

void write_tree(uchar *id);

Bu iki fonksiyon stdio kullanıyor. Bu fonksiyonları C64 için kütüphane kullanmadan sıfırdan yazabilecek olan var mı?


Konu Başlığı: Ynt: CC65 disk erişimi sorusu?
Gönderen: emarti üzerinde Şubat 09, 2024, 11:43:46 ÖÖ
Evet C çok şişiriyor. CC65 küçük çapta uygulama için ideal görünüyor lakin hafıza yönetimini iyi ayarlamak lazım. Ayarladım dediğim zamanlarda dahi hatalar oldu uğraştırıyor ama C'nin verdiği keyif onu bastırıyor.

Bu tarz durumlarda inline assembler kullanman daha mantıklı.
https://codebase64.org/doku.php?id=base:loading_a_file (https://codebase64.org/doku.php?id=base:loading_a_file)
https://www.cc65.org/doc/cc65-9.html (https://www.cc65.org/doc/cc65-9.html)

Akşam senin aradığın ile alakalı implemente ettiğimi hatırlıyorum. Bulup göndereyim.