|
Konu Başlığı: VICE monitör kullanımı Gönderen: wizofwor üzerinde Haziran 18, 2014, 14:25:13 ÖS Sprite muliplexer yazmaya çalışıyorum. Visual sprite register'ları, sıralama tabloları vs. kullanacağım. İşler biraz karışık olduğundan debugging mevzusu önem kazanıyor. Benim yumuşak karnım da orası zaten.
VICE monitör kullanımı hakkında bir tutorial'a ihtiyacım var. Yapmak istediğim şey, programı durdurayım. Virtual register'ları bir tabloda tutuyorum. Bu tablodaki değerleri değiştireyim. Program counter'ı istediğim yere alıp tekrar çalıştırayım. Sonra gidip sort edilmiş tablonun değerlerini kontrol edeyim. Nasıl yapılır bu iş? Konu Başlığı: Ynt: VICE monitör kullanımı Gönderen: joker_ üzerinde Haziran 18, 2014, 14:47:44 ÖS ihtiyacın olan şey elinin altında,nigthlord bu konu ile ilgili,plasma dergisinde çok güzel tutorial hazırlamıştı.
http://plazma-dergi.org/dergi/04/chunk/ch12.html (http://plazma-dergi.org/dergi/04/chunk/ch12.html) vice monitörü çok kullanışlı olsada,ben genelde multiice6 kullanıyorum.Tabii vice üzerinden multiice6 monitör kullanmak biraz fantazi oluyor,ama vice monitörü kullanmak aklıma pek gelmiyor nedense :D Monitör için kısayollar. d 0800 : sadece ilgili satırı ekrana getirir. d 0800- : ilgili satırdan itibaren kodları listeler. h 0800 ffff 78 : 0800 ile FFFF arasında sei(78) olan satırları listeler. i* 1000 : genelde grafik ekranına bakmak için kullanıyorum. Tablo vs incelemek için M ile kullanman gerekiyor. Örnek: Sprite y değerlerini $4000 adresine koydun.Programı durdurup M 4000- dediğinde,$4000 den itibaren tablo değerleri listelenecektir. İstediğin satırı değiştirip return'a bastıktan sonra,ilgili adrese yeni değer yazılır. programın başlangıç satırı $0800 diyelim. G 0800 ilede programını yeniden çalıştırabilirsin. Tabii daha önce den inc veya dec eden bir counter'ın varsa onlarda kaldığı yerden devam edecektir.Bunlarıda yine M (ilgili adres) yazarak sıfırlarsan,counter'dan kaynaklanacak problemleri çözmüş olursun.. Konu Başlığı: Ynt: VICE monitör kullanımı Gönderen: joker_ üzerinde Haziran 18, 2014, 15:32:03 ÖS Eğer istersen,müsait olduğun bir gün,bir yerde oturup birliktede bakabiliriz kardeşim.
Konu Başlığı: Ynt: VICE monitör kullanımı Gönderen: wizofwor üzerinde Haziran 18, 2014, 16:03:41 ÖS Onun da sırası gelecek inşallah. Önce kodu bir çalıştırayım. Sana optimizasyon için ihtiyacım olacak.
Konu Başlığı: Ynt: VICE monitör kullanımı Gönderen: wizofwor üzerinde Haziran 20, 2014, 21:13:55 ÖS Her zamanki gibi talihsizlikler peşimi bırakmadığı için debug işini helledemedim. Bilgem'in tutorial çok işime yarayacaktı ancak OSX'te Vice'ın debugger pencereleri çalışmıyor. Monitör kısmından idare etmek gekiyor. Neyse ben daha fazla bunlarla uğraşmak istemediğim için işleri ters çevirdim. Çalışmayan sorter rutinini attım, sıralı halde verdiğim spriteları ekrana basacak rutini yazdım. Zipli dosyanın içinde kaynakları ve prg dosyasını koydum. İndirip inceleyebilirsiniz.
(http://www.commodore.gen.tr/forum/index.php?action=dlattach;topic=8236.0;attach=5722;image) İşlem oldukça basit. Sinekler ve gözleri iki ayrı sprite. Raster IRQ kullanarak bu iki sprite'ı toplamda 9'ar defa tekrar ettirdim. Program iki kısımdan oluşuyor. Birinci kısım virtual sprite'ların pozisyonlarını hesaplıyor. IRQ ile çaprılan ikinci kısım spriteları ekrana diziyor. Bir de anlamadığım yer var. Eğer dikkat ederseniz yatay pozisyonun 8. biti ($d010) bütün spritelarda aynı anda değişiyor. Bir diğer canımı sıkan yer de yine bu 8. bitle ilgili, spriteları sağa kaydıran rutin. Kulağımı tersten gösterdim galiba. Kod: !zone move_player {Konu Başlığı: Ynt: VICE monitör kullanımı Gönderen: wizofwor üzerinde Temmuz 03, 2014, 15:09:41 ÖS İşin pratiğiyle ilgili bazı sorularım var. PC istediğim satıra geldikten sonra programın işleyişini satır satır kontrol etmek istiyorum. Ancak satırın adresini bilmiyorum. Başına bir label koyup, derledikten sonra Acme'nin raporundan label'ın adresini alıp, breakpoint koyuyorum. Bunun kolayı yok mu? Acme'de breakpoint yerleştiren bir kod gibi?
|