atarionline.pl AUTORUN.BAS - Forum Atarum

    Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.

    • :
    • :

    Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.

      • 1: CommentAuthorBluki
      • CommentTime23 Mar 2012 00:03 zmieniony
       


      Ten wątek jest jakby kontynuacją, uzupełnieniem, znajdującego się już w Poradniku Atarionline „FAQ o samouruchamianiu programów”. Warto więc zapoznać się z tym FAQ zanim, drogi czytelniku, zaczniesz czytać dalej.

      Jak nietrudno się domyślić, zajmiemy się automatycznym uruchamianiem programów w BASIC-u i Turbo BASIC-u XL 1.5. A dokładniej loaderami mojego autorstwa umożliwiającymi „eleganckie” uruchamianie gier.

      Potrzebna nam będzie rzeczywista lub wirtualna (ATR) dyskietka z zapisanym, praktycznie dowolnym, DOS-em. Dla ułatwienia takie gotowe dyskietki znajdują się w załączniku. Jest na nich MyDOS 4.50T, ale tylko plik DOS.SYS. Do uruchamiania gier DUP.SYS nie jest potrzebny, zajmuje tylko niepotrzebnie miejsce na dysku. Gdyby z jakiś powodów był potrzebny pełny lub inny DOS, to nic nie stoi na przeszkodzie, aby samemu taki dysk sporządzić. W tym katalogu znajdziemy pokaźny zestaw DOS-ów.

      W przypadku Atari BASIC-a użyłem również programu w języku maszynowym o nazwie AUTORUN.SYS zamieszczonego w czasopiśmie „IKS”, zeszyt Programy 2, numer 2/1987.



      Pierwszy program, który przedstawię, to AUTORUN.BAS & TB + EXIT. Jak widać po nazwie, jest on uniwersalny – obsługuje zarówno Turbo BASIC XL, jak i Atari BASIC. Znajduje się na dysku AutoBAS single i AutoTBXL single. Służy do wczytywania pojedynczych gier.
      Zaraz, zaraz, a nie prościej od razu zapisać grę jako AUTORUN.BAS? Niby prościej, ale gdy mamy, powiedzmy 20 dysków z grami, a każda gra nazywa się AUTORUN.BAS... W dodatku, gdy gra ma możliwość wyjścia do AUTORUN.BAS, to próba jej opuszczenia zakończy się ponownym załadowaniem i uruchomieniem. „AUTORUN.BAS & TB + EXIT” ma mechanizm powodujący w takim przypadku przejście do edytora BASIC-a.
      Aby uzyskać pożądany efekt wystarczy umieścić na odpowiednim dysku grę o dowolnej nazwie. Ważne tylko, aby rozszerzenie tej nazwy było odpowiednio BAS lub TB.
      I jeszcze uwaga odnośnie Atari BASIC-a. Komputer uruchamiamy bez wciśniętego OPTION, a w emulatorze włączamy BASIC.

      Drugi loader to INICJALIZER PROGRAMÓW – BASIC i INICJALIZER PROGRAMÓW TBXL. Jak widać są to oddzielne programy, choć bardzo do siebie podobne. Znajdują się one odpowiednio na dyskietkach AutoBAS multi i AutoTBXL multi. Oba służą do uruchamiania wielu gier – maksymalnie 26 na jednym dysku.
      Wystarczy teraz zapisać na wybranym dysku nasze programy. Te, które ma widzieć inicjalizer muszą mieć rozszerzenie BAS (Atari BASIC) lub TB (TBXL). Teraz uruchamiamy komputer. Jeśli to pierwsze uruchomienie, nastąpi od razu przejście do edytora, jeśli nie, naciskamy SET (SHIFT + TAB). Możemy teraz wpisać nazwy gier zawierające do 16 znaków. Jeśli chcemy odczytać zawartość innego dysku (tak samo przygotowanego) to nie trzeba uruchamiać wszystkiego od nowa. Wystarczy wymienić dysk i nacisnąć ESC. A tak wygląda przykładowe menu:



      Jest jeszcze jeden program. W 1989 napisałem Inicjalizer TB & CTB. Obsługuje on zarówno programy pod interpreterem TB jak i skompilowane. Obecna wersja, nieco poprawiona, pochodzi 1990 roku. Jako że był to chyba pierwszy napisany przeze mnie program w TB ma on pewne wady. Jak czas pozwoli i będą chęci to postaram się go poprawić, chyba że ktoś mnie wyręczy :) Ważne, że działa.
      Na dysku „Inicjalizer TB&CTB” znajdują się cztery loadery AINIC – dwa dla gier pod interpreterem i dwa dla skompilowanych. Ten z cyfrą „1” działa typowo – aby wybrać grę naciskamy odpowiedni klawisz literowy. W tym z „2” wyboru dokonujemy klawiszami ze strzałkami (↑ ↓) i RETURN.
      W załączniku są już dwie „dyskietki” ATR przygotowane do umieszczenia na nich gier w TBXL interpretowanym (AINIC TB) i skompilowanym (AINIC CTB) z zapisanym loaderem „AINIC1”. Wystarczy umieścić na wybranej nasze gry zwracając uwagę na rozszerzenie nazwy (TB albo CTB). Następnie uruchamiamy dysk „Inicjalizer TB&CTB”. Załaduje nam się DOS. Wybieramy opcję „L” i w zależności od potrzeby wczytujemy TBASICXL (TB*) albo RUNTIME (RUN*). Dalej postępujemy zgodnie z potrzebami i tym co wyświetla się na ekranie.



      A tak wygląda przykładowe menu loadera:



      Inicjalizer TB&CTB ma jeszcze jedną właściwość. Gdy na dysku znajduje się tylko jedna gra, uruchamia ją automatycznie bez potrzeby wciskania czegokolwiek. Dlatego może być używany z powodzeniem do uruchamiania pojedynczych gier.

      Jeśli zamierzamy stworzyć własny dysk, to powinny na nim znaleźć się oprócz DOS-a następujące programy:
      – interpreter: TBASICXL zapisany jako AUTORUN.SYS i AINIC1.TB lub AINIC2.TB zapisany jako AUTORUN.BAS oraz gry z rozszerzeniem TB.
      – kompilator: RUNTIME zapisany jako AUTORUN.SYS i AINIC1.CTB lub AINIC2.CTB zapisany jako AUTORUN.CTB oraz gry z rozszerzeniem CTB.

      - - - - - - - - - - - -
      03.04.2012
      Zestaw wirtualnych dyskietek można także pobrać z „Katalogu użytków”, „6. Stacja dyskietek”.
      • 2: CommentAuthorQTZ
      • CommentTime23 Mar 2012 12:03 zmieniony
       
      Nie testowałem wersji tu umieszczonych, ale pamiętam, że loadery, których użyłeś wcześniej wymagają włącznia Basic'a. Można to ominąć zapisując przy pomocy BCOM prosty program np.: 10 RUN"D:AUTORUN.BAS" jako AUTORUN.SYS. BCOM działa z większością programów w Basic'u. Ewentualnie można przygotować własną procedurę maszynową. W wątku BCOM jest jeszcze procedura, która umożliwia wyłączanie Basic'a - procedury pochodzą z magazynu Flop.
      • 3: CommentAuthorBluki
      • CommentTime23 Mar 2012 15:03
       
      No tak, ale taka sztuczka z BCOM nie uda się z programem "INICJALIZER PROGRAMÓW – BASIC" gdyż on sam się programuje. Jedynym rozwiązaniem, jak sądzę, byłoby poprawienie AUTORUN.SYS z IKS-a albo napisanie od nowa.
      • 4: CommentAuthors2325
      • CommentTime23 Mar 2012 16:03
       
      Czy ten przykładowy zestaw *** Gry (1) *** jest może do pobrania z atarionline?
      • 5:
         
        CommentAuthorKaz
      • CommentTime23 Mar 2012 16:03
       
      Nie, bo sadzac po produkcjach ("Rocket Rescue"), jest to dyskietka przygotowana dzien, dwa temu. Mozesz sciagnac te gry z osobna i samemu zrobic taka dyskietke wedle przepisu Blukiego. Szczegolnie, ze "Rocket Rescue" ma nowa wersje z dzisiaj - 1.3 :).
      • 6: CommentAuthors2325
      • CommentTime23 Mar 2012 16:03
       
      Złożenie jej samemu zepsuje iluzję, że kupiłem to na giełdzie na Grzybowskiej, w 5 godzin pociągiem do domu i w środku nocy trach dyskietkę do środka napędu Atari.
      • 7:
         
        CommentAuthorKaz
      • CommentTime23 Mar 2012 17:03
       
      A chyba, ze tak :). To moze Bluki podesle Ci ta dyskietke... to znaczy sie sprzeda Ci ja na Grzybowskiej ;)
      • 8:
         
        CommentAuthorxeen
      • CommentTime23 Mar 2012 19:03
       
      chodzą słuchy, że na Grzybowskiej tylko dyskietki można nagrywać - nikt już nie marnuje czasu na kaseciarzy ;)

      a poważnie - to chyba warto Tekst przerzucić do Poradników, jeżeli autor nie ma nic naprzeciwko ;)
      • 9: CommentAuthorBluki
      • CommentTime23 Mar 2012 21:03
       
      Autor nie ma nic naprzeciwko (z wyjątkiem drzewa, jak wyjrzę przez okno). Ale jeśli już, to może jakoś zgrabnie połączyć z „FAQ o samouruchamianiu programów”?