Kartuş portundan gelenin dışında bir yerlerden 5V daha çekilecek değil mi? Kartuş portundan gelen güç bütün bu çipleri beslemeye yetmeyecektir muhtemelen.
Devrenin beslemesi sadece kartuş portundan gelecek. Devrenin ne kadar akım çekeceği konusunda hiç bir fikrim yok. Eğer bir sıkıntı çıkarsa external 5V bağlantısı gerekebilir veya delimawi'nin yeni C64 beslemesini bekleyebiliriz.
İkincisi de 64k ram bankswitch'i yaparken aktif kullanılan bank üstündeki stack ne olacak?
Aslında buna benzer bir konu/sorun pcb çizim bittikten sonra aklıma geldi.
Bank değiştirme işleminden hemen sonra yeni bank üzerinde kodun devamı olmalı. Aklımda şyle bir çözüm var. Z80'in ilk reset adresi 0000h ve 0038h'de IRQ, 0066h'de NMI servis rutinleri başlar. Ayrıca Z80'in yığın adresi değiştirilebilir. LD SP,adres komutuyla stacki ramda istediğimiz yere koyabiliriz. Bildiğim kadarıyla Stack kullanıldıkça adresi azalıyor.
SP'yi 0100h olarak tanımlayıp IRQ ve NMI rutinlerinin bank içindeki jump adreslerini sabit tutarsam işim basitleşir. Yapacağım iş önce 0000 - 0100h arasını C64'e kopyalamak, bank değiştirmek ve kopyaladığım bilgiyi geri yazmak. Bütün bankların zero page leri aynıymış gibi düşünmek gerekiyor. Hatta sistem değişkeni olarak kullanacağımız adresler sistem raminde değil c64 üzerinde olabilir. Gerektiği durumlarda in/out komutlarıyla erişelim.
Veya sadece stack bölgesi -mesela 128 byte olabilir- kopyalanır.
Devreye alıcı gözle bakamadım ancak mantık herhalde pic'i dma controller olarak kullanıp c64'ün belleğine erişen bir z80 işlemci mantığı herhalde değil mi?
Evet aynen öyle. Romu olmayan bir Z80 sistemi gibi düşünebiliriz.