VBL: Różnice pomiędzy wersjami
próba opisu VBLANK |
Nie podano opisu zmian |
||
| Linia 1: | Linia 1: | ||
Przerwanie VBL (Vertical Blank Interrupt) generowane jest przez układ ANTIC po zakończeniu kreślenia obrazu, w momencie wygaszenia plamki. | Przerwanie VBL (Vertical Blank Interrupt) generowane jest przez układ ANTIC po zakończeniu kreślenia obrazu, w momencie wygaszenia plamki. | ||
Procedura obsługi tego przerwania dzieli sie na dwie fazy (I i II) z których druga wykonywana jest tylko wtedy kiedy w systemie nie zachodzą żadne | Procedura obsługi tego przerwania dzieli sie na dwie fazy (I i II) z których druga wykonywana jest tylko wtedy, kiedy w systemie nie zachodzą żadne krytyczne czasowo zdarzenia (sygnalizowane przez system flagą CRITIC), oraz nie trwa właśnie procedura obsługi [[IRQ]] (co sygnalizowane jest ustawioną flagą I zapisanego na stosie rejestru znaczników). | ||
krytyczne czasowo zdarzenia | |||
Faza I. | Faza I. | ||
1. Wartość liczników czasu rzeczywistego [0012-0014] jest zwiększana o jeden. | |||
2. Sprawdzany jest stan zmiennych obsługujących tzw. tryb przyciągania uwagi (attract mode). | |||
3. Timer1 jest zmniejszany o jeden, a po dojściu do zera wywoływana jest procedura jego obsługi. | |||
3. Timer1 jest | |||
| Linia 19: | Linia 17: | ||
1. Rejestry sprzętowe zapisywane są wartościami ze swoich cieni. | 1. Rejestry sprzętowe zapisywane są wartościami ze swoich cieni. | ||
2. Timer2 jest | 2. Timer2 jest zmniejszany o jeden. | ||
3. Timer3,4 i 5 są zmniejszane o jeden. | |||
4. Licznik autorepetycji klawiszy zostaje zmodyfikowany. | |||
5. Licznik czasu następnego odczytu z klawiatury jest zmniejszany o jeden. | |||
6. Następuje odczyt stanu dżojstików i umieszczenie w odpowiednich rejestrach odczytanych wartości. | |||
[[Kategoria:Atari 8-bit]] | |||
Wersja z 13 sie 2005, 16:15
Przerwanie VBL (Vertical Blank Interrupt) generowane jest przez układ ANTIC po zakończeniu kreślenia obrazu, w momencie wygaszenia plamki.
Procedura obsługi tego przerwania dzieli sie na dwie fazy (I i II) z których druga wykonywana jest tylko wtedy, kiedy w systemie nie zachodzą żadne krytyczne czasowo zdarzenia (sygnalizowane przez system flagą CRITIC), oraz nie trwa właśnie procedura obsługi IRQ (co sygnalizowane jest ustawioną flagą I zapisanego na stosie rejestru znaczników).
Faza I.
1. Wartość liczników czasu rzeczywistego [0012-0014] jest zwiększana o jeden.
2. Sprawdzany jest stan zmiennych obsługujących tzw. tryb przyciągania uwagi (attract mode).
3. Timer1 jest zmniejszany o jeden, a po dojściu do zera wywoływana jest procedura jego obsługi.
Faza II.
1. Rejestry sprzętowe zapisywane są wartościami ze swoich cieni.
2. Timer2 jest zmniejszany o jeden.
3. Timer3,4 i 5 są zmniejszane o jeden.
4. Licznik autorepetycji klawiszy zostaje zmodyfikowany.
5. Licznik czasu następnego odczytu z klawiatury jest zmniejszany o jeden.
6. Następuje odczyt stanu dżojstików i umieszczenie w odpowiednich rejestrach odczytanych wartości.