[Main] [Docs] [Installs] [Search] [Team] [Guestbook] [Links]

Monitory systemu / programy zatrzymujące działanie innych programów

Istnieje wiele programów zatrzymujących działanie innych programów. Wykorzystanie tych programów może być bardzo pomocne w trakcie prac nad rozwojem i testowaniem plików .slave oraz zainstalowanych programów. WHDLoad bezpośrednio wspólpracuje z HRTMon i ThrillKill. Jeśli potrzebujesz wsparcia dla innego oprogramowania, możesz się ze mną skontaktować, a ja spróbuję dodać obsługę dla Twojego monitora systemu. Przy uruchomieniu WHDLoad sprawdza, czy jest aktywny jeden z obsługiwanych monitorów systemu. Jeśli takowy znajdzie, uruchomi dodatkowe procedury. Jeśli MMU jest używane przez WHDLoad, zadeklaruje pamięć używaną przez monitor jako obowiązującą buforowalną w trybie WriteThrough. W trakcie działania gry/programu demonstracyjnego będzie przekazywał wszystkie wyjątki NMI do wektora NMI zapisywanego z tabeli wektorów monitora. Dodatkowo, jeśli VBR jest przeniesiony przez WHDLoad (opcja NoVBRMove/S nie jest włączona, a komputer jest wyposażony w procesor co najmniej 68010) porówna FreezeKey z aktualną wartością z klawiatury przy każdym wywołanym przerwaniu. Jeśli klawisze się zgadzają, WHDLoad rozpozna klawiaturę, następnie przekształci ramkę stosu na ramkę stosu NMI i przejdzie do monitora poprzez jego handler NMI.

HRTMon

Wykrycie w pamięci powinno być bezpieczne szczególnie z nowymi wersjami monitorów, powodującymi dodawanie nowych podpisów do monitorów. Myślę, iż WHDLoad będzie działał również z przyszłymi wersjami. Bądź ostrożny, gdy MMU jest wykorzystywane przez WHDLoad: nie próbuj odwoływać się z poziomu HRTMon do pamięci spoza obszaru BaseMem/ExpMem. Spowoduje to zawieszenie systemu, gdyż HRTMon nie obsługuje wyniku wyjątku błędu dostępu (Access Fault Exception).

W programie HRTMonPrefs musisz zanzaczyć pole 'No VBR move', w przeciwnym razie nie będziesz mógł uruchomić programu HRTMon w trakcie pracy pakietu WHDLoad.

Po powrocie z HRTMon do programu uruchomionego pod systeme WHDLoad możesz zaobserwować niepoprawne wyświetlanie grafiki. Jest to spowodowane nadpisywaniem przez HRTMon niektórych wartości rejestrów procesora. Możesz to obejść podając programowi HRTMon odpowiednie wartości, np. użyj 'e $100 $5200' dla trybu wyświetlania w 32 kolorach przed powrotem do programu uruchomionego pod kontrolą pakietu WHDLoad.

HRTMon wbudowany w WinUAE może być wykryty jedynie wtedy, gdy zostanie wcześniej aktywowany przynajmniej raz (poprzez naciśnięcie klawisza PgUp). Jest to spowodowane faktem, że wektor NMI nie jest jest ustawiony przed pierwszą aktywacją monitora, a jest on wymagany przez WHDLoad do jego zlokalizowania.

Istnieją nowsze wersje programu HRTmon, które dodają specjalne polecenia podczas uruchamiania pod kontrolą WHDLoad. Możesz wczytywać/zapisywać pliki i używać funkcji resload_Protect#? z poziomu HRTmon. Te wersje dostępne są na stronie WHDLoad.

ThrillKill

Nie ma żadnej użytecznej sygnatury w tym programie zatrzymującym działanie innych programów, więc jest wykorzystywane porównywanie fragmentów kodu. Dlatego też detekcja nie zadziała z innymi wersjami.
[Main] [Docs] [Installs] [Search] [Team] [Guestbook] [Links]