@11MASTEr,
post #3
Ideałem było by napisać prostego patcha na scsi.device, który sprawdzał by, czy jest jakaś komunikacja pomiędzy ami i HD. Właściwie, to równie dobrze można zapatchować funkcje DoIO() i SendIO() z exec.library (to będzie chyba prostsze nawet) i powiedzmy, jeżeli powiedzmy przez 5 sekund będzie "cisza", to można wyłączyć.
Ale samo sprawdzanie, czy HD nie pracuje to za mało.
Potrzebne jest jeszcze sprawdzenie, czy nie ma żadnyck Lock'ów na plikach ustawionych na zapis.
Jeżeli jakiś plik będzie miał Lock'a i coś do niego zostanie zapisane, a potem przed zamknięciem pliku zostanie odłączone zasilanie, to efekt będzie dość nieprzyjemny - disk validator.
Na aminecie jest programik, SlowReset - przed resetem czeka na zakończenie wszystkich operacji na plikach i ewentualnie wykonuje jeszcze jakieś funkcje zdefiniowane przez użytkownika.
Nie wiem, czy dobrze kombinuję, bo nie wiem, dokładnie, jak ten program działa, ale wydaje mi się, że można zrobić tak:
Do SlowReset wysłać polecenie zresetowania ami (AREXX), slow reset poczeka na zakończenie operacji na plikach i przed resetem wykona Twój program wyłączający zasilanie.