VBL: Różnice pomiędzy wersjami

Z Atariki
Przejdź do nawigacji Przejdź do wyszukiwania
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. (sygnalizowane przez system flagą CRITIC)


Faza I.
Faza I.


1. Wartość liczników czasu rzeczywistego [0012-0014] jest zwiększana o jeden.


1. Wartosc czasu w komórkach [0012-0014] jest inkrementowana.
2. Sprawdzany jest stan zmiennych obsługujących tzw. tryb przyciągania uwagi (attract mode).


2. Sprawdzany jest stan zmiennych obsługujących tryb ATTRACT
3. Timer1 jest zmniejszany o jeden, a po dojściu do zera wywoływana jest procedura jego obsługi.
 
3. Timer1 jest dekrementowany.




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 dekrementowany.
2. Timer2 jest zmniejszany o jeden.
 
3. Timer3,4 i 5 są zmniejszane o jeden.


3. Timer3,4 i 5 są dekrementowane.
4. Licznik autorepetycji klawiszy zostaje zmodyfikowany.


4. Licznik autorepetycji klawisza zostaje zmodyfikowany.
5. Licznik czasu następnego odczytu z klawiatury jest zmniejszany o jeden.


5. Licznik czasu następnego odczytu z klawiatury jest dekrementowany.
6. Następuje odczyt stanu dżojstików i umieszczenie w odpowiednich rejestrach odczytanych wartości.


6. Następuje odczyt dzojstikó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.