Programowanie: Czekanie na vblank przy wyłączonym systemie

Z Atariki
Wersja z 19 wrz 2022, 11:15 autorstwa Jhusak (dyskusja | edycje) (Dodany wariant)
Przejdź do nawigacji Przejdź do wyszukiwania

Oczekiwanie na vblank przy wyłączonym systemie nie jest takie trywialne. Systemowe przerwania są wyłączane, aby np. nie przeszkadzały np. w odgrywaniu sampli, lub innych zadań o nadzwyczajnym rygorze czasowym. Zaradzić może poniższe rozwiązanie składającie się z dwóch pętli i używa licznika linii obrazu VCOUNT ($D40B).

 lda VCOUNT
 bmi *-3
 lda VCOUNT
 bpl *-3

Ma ono tę zaletę, że można je wpleść w główną pętlę kodu tak, aby wyeliminować aktywne czekanie.

Można użyć wersji bez użycia akumulatora:

 bit VCOUNT
 bmi *-3
 bit VCOUNT
 bpl *-3