Poniższa tabela pokazuje kolejność wykonywanych operacji, które następują
po uruchomieniu programy zainstalowanego przy pomocy pakietu WHDLoad.
Mam nadzieję, że to pomoże zrozumieć jak działa WHDLoad i jak WHDLoad,
plik .slave oraz zainstalowany program współpracują.
Użytkownik |
- uruchamia demo lub grę poprzez kliknięcie na ikonę lub poprzez uruchomienie WHDLoad z linii poleceń (CLI)
|
System operacyjny |
- uruchamia plik wykonywalny WHDLoad
|
WHDLoad |
- sprawdza środowisko sprzętowe i programowe
- wczytuje i sprawdza plik .slave
- alokuje wymaganą dla zainstalowanego programu ilość pamięci
- jeśli Preload/S jest włączone, wczytuje
obrazy dysków i plików do RAM-u (tylko wtedy, gdy dostępna jest wolna
pamięć)
- wyłącza System Operacyjny (wyłącza multitasking i przerwania, degraduje
kości graficzne do stanu OCS, initializuje cały sprzęt zgodnie ze zdefiniowanymi wartościami)
- wykonuje skok do pliku .slave
|
Slave |
- wczytuje główny plik wykonywalny zainstalowanego programu poprzez wywołanie funkcji
WHDLoad (np. resload_DiskLoad lub resload_LoadFile)
- "łata" główny plik wykonywalny (tak, aby program wczytał swoje dane poprzez
plik .slave, naprawił problemy związane z kompatybilnością, uaktywnił opcję
wyjścia z programu)
- uruchamia główny plik wykonywalny
|
Zainstalowany program |
- robi swoje
- podczas odczytu danych z dysku, odwołuje się do pliku .slave (gdyż plik .slave
wcześniej nałożył się na niego, "łatając" go), a następnie plik .slave
odwołuje się do WHDLoad, który częściowo włącza OS, aby wczytał dane
(tylko jeśli dane nie są załadowywane wcześniej (Preload)); na koniec wraca do
dalszego wykonywania zainstalowanego programu.
|
Użytkownik |
- wychodzi z programu poprzez naciśnięcie zdefiniowanego klawisza wyjścia (QuitKey)
|
Slave |
|
WHDLoad |
- ponownie włącza OS (rejestry sprzętowe, ekran oraz pamięć wracają do poprzedniego stanu),
- uwalnia wszystkie zaalokowane obszary i zasoby,
- wraca do systemu.
|