Gdy w stacji przestaje działać turboloader z AR
: 28 wrz 2023, 14:35
Kilkukrotnie spotkałem się że w stacji przestawał działać loader AR - działało load w normalu, ale dużo fastloadrów nie działało.
Przyczyną takiego stanu rzeczy okazywał się zdegradowany trymer 50pF, który jest umieszczony koło głównego kwarcu 16MHZ. sygnał z tego kwarcu końcowo jest dzielony przez 16, aby napędzać 6502 prędkością 1MHZ.
Trymer z czasem zwiększał swoją pojemność, spowalniając taktowanie do tego stopnia, że złożone (skomplikowane) fastloadery jak np. AR przestawały działać.
Do zdiagnozowania tego typu usterki napisałem program cycles, który porównywał równocześnie ilość cykli, które minęły w trakcie 1 ramki C64 PAL na owym C64PAL oraz w stacji dysków.
Z ustaleń empirycznych stwierdziłem że wszystko działa, jeżeli w stacji przeleci w okresie 1 ramki PAL więcej cykli w stacji. Ilość jaka nie sprawiała problemów to różnica w zakresie 273-303 cykle więcej w stacji.
Wielkością defaultową jest zakres około 286-296 cykli więcej.
Jeżeli cykli jest poniżej 270, wówczas należy wymienić ów trymer - ja wymieniałem go na kondensator stały 15pF i stacje wracały do życia (głównie loader AR).
Wspomniany program cycles zamieszczam w załączniku.
Drugą rzeczą jaką postanowiłem zrobić był program do pomiaru prędkości obrotowej dyskietki. Zrobiłem ten program, ponieważ oferowane usługi pomiaru prędkości obrotowej dysku bazują na błędnym założeniu, że CPU jest napędzany właściwą prędkością 1MHz, co jak widać powyżej nie zawsze musi być prawdą.
Jeżeli procesor ma błędne taktowanie, wówczas bazując na zliczaniu cykli w trakcie obrotu, również źle określamy spin dysku. W taki (może nie błędny, ale mogący zafałszowywać prawdziwe wyniki) sposób np. działa program do określania spinu dyskietki z cartridge 1541(cośtamdalej - nie pamiętam już).
Wobec tego napisałem program, który mierzy prędkość obrotową dysku przez 1 minutę, korzystając z przerwań rastra na C64. Po minucie program drukuje, ile udało mu się zliczyć obrotów dyskietki, w tym także ilość sektorów (obrazowo), które zostały odczytane w ostatnim, niepełnym obrocie dyskietki, który nie został zliczony.
Oba programy razem ze źródłami zamieszczam w załączniku.
Przyczyną takiego stanu rzeczy okazywał się zdegradowany trymer 50pF, który jest umieszczony koło głównego kwarcu 16MHZ. sygnał z tego kwarcu końcowo jest dzielony przez 16, aby napędzać 6502 prędkością 1MHZ.
Trymer z czasem zwiększał swoją pojemność, spowalniając taktowanie do tego stopnia, że złożone (skomplikowane) fastloadery jak np. AR przestawały działać.
Do zdiagnozowania tego typu usterki napisałem program cycles, który porównywał równocześnie ilość cykli, które minęły w trakcie 1 ramki C64 PAL na owym C64PAL oraz w stacji dysków.
Z ustaleń empirycznych stwierdziłem że wszystko działa, jeżeli w stacji przeleci w okresie 1 ramki PAL więcej cykli w stacji. Ilość jaka nie sprawiała problemów to różnica w zakresie 273-303 cykle więcej w stacji.
Wielkością defaultową jest zakres około 286-296 cykli więcej.
Jeżeli cykli jest poniżej 270, wówczas należy wymienić ów trymer - ja wymieniałem go na kondensator stały 15pF i stacje wracały do życia (głównie loader AR).
Wspomniany program cycles zamieszczam w załączniku.
Drugą rzeczą jaką postanowiłem zrobić był program do pomiaru prędkości obrotowej dyskietki. Zrobiłem ten program, ponieważ oferowane usługi pomiaru prędkości obrotowej dysku bazują na błędnym założeniu, że CPU jest napędzany właściwą prędkością 1MHz, co jak widać powyżej nie zawsze musi być prawdą.
Jeżeli procesor ma błędne taktowanie, wówczas bazując na zliczaniu cykli w trakcie obrotu, również źle określamy spin dysku. W taki (może nie błędny, ale mogący zafałszowywać prawdziwe wyniki) sposób np. działa program do określania spinu dyskietki z cartridge 1541(cośtamdalej - nie pamiętam już).
Wobec tego napisałem program, który mierzy prędkość obrotową dysku przez 1 minutę, korzystając z przerwań rastra na C64. Po minucie program drukuje, ile udało mu się zliczyć obrotów dyskietki, w tym także ilość sektorów (obrazowo), które zostały odczytane w ostatnim, niepełnym obrocie dyskietki, który nie został zliczony.
Oba programy razem ze źródłami zamieszczam w załączniku.