NMI
From Atariki
Wersja z dnia 19:41, 13 sie 2005 KMK (Dyskusja | wkład) ← Previous diff |
Wersja z dnia 19:42, 13 sie 2005 KMK (Dyskusja | wkład) Next diff → |
||
Linia 1: | Linia 1: | ||
'''NMI''' - ang. Non-Maskable Interrupt - przerwanie niemaskowalne. | '''NMI''' - ang. Non-Maskable Interrupt - przerwanie niemaskowalne. | ||
- | Rodzaj [[przerwanie|przerwania]], które w momencie wystąpienia (najpóźniej po zakończeniu wykonywania bieżącego rozkazu) <b>musi</b> być przyjęte i obsłużone przez procesor. A to w odróżnieniu od [[IRQ]], które przyjęte i obsłużone być tylko <b>może</b>. | + | Rodzaj [[przerwania]], które w momencie wystąpienia (najpóźniej po zakończeniu wykonywania bieżącego rozkazu) <b>musi</b> być przyjęte i obsłużone przez procesor. A to w odróżnieniu od [[IRQ]], które przyjęte i obsłużone być tylko <b>może</b>. |
====Atari XL/XE==== | ====Atari XL/XE==== |
Wersja z dnia 19:42, 13 sie 2005
NMI - ang. Non-Maskable Interrupt - przerwanie niemaskowalne.
Rodzaj przerwania, które w momencie wystąpienia (najpóźniej po zakończeniu wykonywania bieżącego rozkazu) musi być przyjęte i obsłużone przez procesor. A to w odróżnieniu od IRQ, które przyjęte i obsłużone być tylko może.
Atari XL/XE
W procesorze 6502 i 65c02 główny wektor przerwania NMI znajduje się pod adresem $FFFA.
W procesorze 65c816 pod adresem $00FFFA znajduje się wektor przerwania NMI dla trybu emulacji 6502. Gdy procesor jest przełączony w tryb natywny 65c816, adres procedury obsługi NMI jest pobierany spod $00FFEA.
W ośmiobitowym Atari mamy dwa przerwania niemaskowalne: VBL oraz DLI. Źródłem obydwu jest układ Antic.
Atari ST i pochodne
W procesorach Motoroli serii 68k przerwanie niemaskowalne jest to przerwanie o najwyższym priorytecie. Autowektor NMI jest to wektor numer 31 o adresie $007C (plus zawartość rejestru VBR). W Atari serii ST to przerwanie normalnie nie ma żadnego zastosowania.