Systeem Monitoren / Freezer
Er zijn een aantal softwarematige Freezers (Bevriezers). Het gebruik hiervan kan een grote
hulp zijn gedurende het ontwikkelen en debuggen van Slaves en het geïnstalleerde programma.
WHDLoad ondersteund meteen HRTmon en ThrillKill. Andere soorten kunnen gebruikt worden via de
optie NoTrapHandler/S
(natuurlijk heeft dit een paar nadelen). Wanneer je directe ondersteuning wil voor een
andere, neem dan contact met mij op en wanneer het mogelijk is zal ik ondersteuning ervoor
proberen te leveren.
Tijdens de start van WHDLoad zal het controleren of 1 van de ondersteunde monitoren
actief zijn. Als er 1 is gevonden zal WHDLoad wat bijzondere dingen doen. Als de MMU
gebruikt is met WHDLoad zal het het geheugen declareren dat gebruikt word door de monitor
als geldig en WriteThrough cacheable.
Tijdens het spel/demo zal het alle NMI uitzonderingen doorsturen naar de NMI vector bewaard van
de monitor vector tabellen.
Tevens, als de VBR verplaatst is door WHDLoad (NoVBRMove/S is
niet ingesteld en de cpu is tenminste een 68010) vergelijkt het de FreezeKey met de actuele toetsenbord waarde op elke onderbreking.
Als de waarden overeenstemmen dan zal WHDLoad de benodigde toetsenbord dingen uitvoeren,
de stackframe transformeren naar een NMI stackframe en de monitor betreden via zijn NMI handler.
HRTmon
De detectie in het geheugen zou relatief veilig moeten zijn. Ik denk dat het ook
werkt met toekomstige versies. Wees voorzichtig als de MMU gebruikt word met WHDLoad:
Zoek geen toegang in gebieden buiten BaseMmem vanuit HRTmon. Het zal crashen omdat
HRTmon niet de Toegang Fout uitzondering zal behandelen.
In de HRTmonPrefs dient u de 'No VBR move' box aan te vinken, anders kunt u
niet de monitor bereiken wanneer WHDLoad draait.
Na het terugkeren vanuit een geactiveerde HRTmon naar het programma draaiend onder WHDLoad
kunt u een incorrecte grafische beeld krijgen. Dit is omdat HRTmon een paar custom registers overschrijft.
U kunt hier om heen werken door HRTmon de correcte waarde te geven bijv. gebruik
'e $100 $5200' voor een 32 kleuren scherm voor de terugkeer.
De HRTmon ingebouwd in WinUAE kan alleen gedetecteerd worden als HRTmon
de vorige keer tenminste 1 keer geactiveerd is (druk toets PgUp). Omdat bij de
eerste activatie de NMI vector word opgesteld welke gebruikt word door WHDLoad,
om de plaats van de monitor te bepalen.
ThrillKill
Er is geen bruikbare handtekening in de freezer, dus zijn er wat code vergelijkingen
gebruikt.
Daarom zal de detectie niet werken met andere versies.