Chciałbym, aby moje wyniki nie przepadały po resecie Amigi.
Co w takim przypadku powinienem zrobić?
Póki co wpadłem na mało elegancki sposób - startujemy aplikację:
Code: Select all
execute start
run waitx s=5 l=0 execute work >nil:
APLIKACJA
plik start zawiera:
Code: Select all
if exists DH0:Settings
copy DH0:Settings RAM:
Endif
plik work zawiera:
Code: Select all
if exists RAM:Settings
copy RAM:Settings DH0:
Endif
Zasada działania:
Wykonujemy najpierw skrypt, który sprawdza czy istnieje plik settings na dysku DH0:
Jeżeli tak - kopiuje go do pamięci RAM:, następnie uruchamiana jest pętla za pomocą programu waitx, który co 5 sekund będzie sprawdzał czy istnieje plik settings w RAM: - jeżeli tak będzie go kopiował na DH0:
Na Aminecie można dorwać świeżutki tools: Coex, który jest znacznie bardziej zaawansowany od zwykłego Copy:
http://aminet.net/util/cli/coex.lha
Czy moje rozwiązanie jest jedynym możliwym, czy można to zrobić "ładniej"?
Bonusowe pytanie - czy jest różnica między:
Code: Select all
run waitx s=5 l=0 execute work >nil:
a
Code: Select all
run >nil: waitx s=5 l=0 execute work
PS
Dla utrudnienia nie oszukujemy i nie modyfikujemy binarki, aby zapisywała na DH0:
Temat zakładam z czystej ciekawości, bo może istnieje amigowy trick, o którym nie miałem pojęcia
