VBL

From Atariki

(Różnice między wersjami)
Jump to: navigation, search
Wersja z dnia 14:24, 13 sie 2005
Mikey (Dyskusja | wkład)

← Previous diff
Wersja z dnia 17:45, 13 sie 2005
KMK (Dyskusja | wkład)

Next diff →
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. 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). 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).

Wersja z dnia 17:45, 13 sie 2005

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 w odpowiednich rejestrach odczytanych wartości.

Personal tools