Robię to poza Atarką - stworzyłem prosty układ podłączany do PC-ta i taktowanie odbywa się za pomocą portu równoległego. Przy nieznacznym zwiększeniu prędkości widzę wyraźnie, jak Pokey wysyła dane na magistralę D, ale mam problem z ich odczytaniem. Być może mój program robi to za późno od narastającego zbocza zegarowego.
A tak w ogóle, to w dokumentacji Pokeya (pokey.pdf) jest błąd, bo z umieszczonego tam ryskunku wynika, że odczyt należy przeprowadzać przy sygnale R/W ustawionym na zero logiczne. A to przecież nieprawda, bo tak się wykonuje zapis.
Nie wiem właśnie, czy te ograniczenia prędkości 6502 obowiązują też w przypadku Pokeya. Być może ja coś źle robię. Wykonuję to tak:
self.set_O2(False)
self.set_RW(True)
self.chip_on()
self.set_A(adr)
ret = self.get_D()
self.set_O2(True)
self.chip_off()
Czy to jest dobrze?
Ostatnio edytowany przez asal (2006-10-10 19:48:21)