VBL: Różnice pomiędzy wersjami

Z Atariki
Przejdź do nawigacji Przejdź do wyszukiwania
Nie podano opisu zmian
mNie podano opisu zmian
Linia 10: Linia 10:


3. Timer1 jest zmniejszany o jeden, a po dojściu do zera wywoływana jest procedura jego obsługi.
3. Timer1 jest zmniejszany o jeden, a po dojściu do zera wywoływana jest procedura jego obsługi.


Faza II.
Faza II.


1. Rejestry sprzętowe zapisywane są wartościami ze swoich cieni.
1. Rejestry sprzętowe zapisywane są wartościami ze swoich cieni.
Linia 25: Linia 23:
5. Licznik czasu następnego odczytu z klawiatury jest zmniejszany o jeden.
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.
6. Następuje odczyt stanu dżojstików i umieszczenie odczytanych wartości w odpowiednich komórkach pamięci RAM.


[[Kategoria:Atari 8-bit]]
[[Kategoria:Atari 8-bit]]

Wersja z 13 sie 2005, 19:46

Przerwanie VBL (Vertical Blank Interrupt) generowane jest przez układ ANTIC po zakończeniu kreślenia obrazu, w momencie wygaszenia plamki. Występuje 50 razy na sekundę (właściwie 49,86 raza na sekundę) w sysemie PAL oraz 60 razy na sekundę w systemie NTSC.

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 odczytanych wartości w odpowiednich komórkach pamięci RAM.