3041
edycji
Nie podano opisu zmian |
|||
Linia 65: | Linia 65: | ||
CROOK-5 miał jeszcze jedno wymaganie, które ostatecznie zostało spełnione za pomocą modyfikacji sprzętowej. Należało zapewnić, aby w trakcie obsługi przerwania kanałowego nie pojawiło się przerwanie o wyższym priorytecie (w szczególności zegarowe). W procesorze bez przeróbek wymuszane to było przez programowe maskowanie przerwań na początku procedury obsługi przerwań kanałowych. W procesorze przerobionym zrealizowane to było sprzętowo: Przyjęcie przerwania kanałowego powodowało automatyczne zamaskowanie przerwań od 5 do 31. | CROOK-5 miał jeszcze jedno wymaganie, które ostatecznie zostało spełnione za pomocą modyfikacji sprzętowej. Należało zapewnić, aby w trakcie obsługi przerwania kanałowego nie pojawiło się przerwanie o wyższym priorytecie (w szczególności zegarowe). W procesorze bez przeróbek wymuszane to było przez programowe maskowanie przerwań na początku procedury obsługi przerwań kanałowych. W procesorze przerobionym zrealizowane to było sprzętowo: Przyjęcie przerwania kanałowego powodowało automatyczne zamaskowanie przerwań od 5 do 31. | ||
= Automatyczny bootstrap = | |||
[[Pamięć MEGA]] zawierała bootloader(-y) zapisane w pamięci EPROM, dostępne po starcie systemu pod adresem 0xf000. Można było uruchomić zawarty tam kod ustawiając z pulpitu technicznego zawartość licznika rozkazów i startując maszynę. Jednak w przypadku komputerów MX-16 nie było to możliwe - były one dostarczane bez pulpitu technicznego. Trzeba było więc zapewnić automatyczny bootstrap systemu pracującego na takim komputerze. | |||
Zostało to zrobione oprzez modyfikację procesora, która tuż po starcie maszyny zmniejszała o 1 zawartość czterobitowego rejestru, w którym przechowywane są cztery najstarsze bity IC. W ten sposób adres startowy z 0x0000 zmieniał się na 0xf000 i maszyna rozpoczynała pracę uruchamiając bootloader. | |||
= Instrukcja włączająca modyfikacje = | = Instrukcja włączająca modyfikacje = |