------------------------------------------------------ !Rys.n! - tu wstawiê rysunek numer n. !listing.n! Tu wstawiê przykîadowy listing programu! dwa rysunki + listin (blitzlis.txt) ------------------------------------------------------ NIE TYLKO AMOS... Wôród polskich amigowych programistów niepodzielnie panuje jëzyk programowania AMOS. Za jego pomocâ tworzy sië wiëkszoôê polskich gier, programów uûytkowych i edukacyjnych. Nie moûna teû zapomnieê o bogatej ofercie literatury poôwiëconej AMOS-owi. Czy jednak rzeczywiôcie jest to najbardziej odpowiedni jëzyk do wszystkich zastosowaï? Krzysztof Prusik AMOS jest doôê specyficznym tworem. Odcina sië od systemu Amigi i wykorzystuje wîasne procedury obsîugi ekranów, okienek, sprite'ów, BOB-ów itp. W czasach panowania systemu Kickstart 1.3, byîa to bardzo poûâdana cecha i jedna z najwiëkszych zalet AMOS-a, bo przecieû chyba wszyscy wiemy, jak paskudny i powolny byî system 1.3. Czy jednak teraz, w dobie systemu 2.0, 3.0, a nawet 3.1, nadal potrzebujemy odcinaê sië od tego, co jest zawarte w ROM-ie Amigi? Czasami tak, a czasami nie. Otóû podczas pisania gier i programów edukacyjnych system zwykle nie jest nam potrzebny, bo przecieû i tak bëdziemy sië starali zapanowaê nad maszynâ, czyli stworzyê od nowa procedury dotyczâce obsîugi okienek, ekranu itp. Do tego AMOS jest nieoceniony i w tym celu oddaje nam do dyspozycji naprawdë wiele bardzo dobrych narzëdzi. Musimy jednak zdaê sobie sprawë, ûe nie mogâc korzystaê z moûliwoôci, jakie daje system, mamy zamkniëte swoje okienko na ôwiat, co powoduje, ûe pisane przez nas programy stajâ sië maîo elastyczne. Przykîad? Twórcy AMOS-a nie przewidzieli, ûe do nowych Amig bëdzie moûna podîâczaê monitory VGA i przez to AMOS nie bëdzie "widziaî" ani potrafiî obsîugiwaê innych trybów graficznych niû standardowe, przez co ûaden program w AMOS-ie nie bëdzie w stanie zadziaîaê poprawnie na monitorze VGA. Cóû, tak to juû jest na ôwiecie, ûe coô za coô. Albo wspaniaîe, szybkie, o duûych moûliwoôciach rozkazy AMOS-a, albo system. Wojna bîyskawiczna Co wybieramy? Ano wîaônie... ale czy my w ogóle mamy jakâô alternatywë? Okazuje sië, ûe tak. Na zachodzie powstaî jëzyk bardzo podobny do naszego kochanego AMOS-a, o nazwie Blitz Basic. Jest on szybki, a skîadnia rozkazów tego jëzyka jest podobna do AMOS-owej. Jednak podstawowâ zaletâ Blitz Basica jest to, ûe wykorzystuje on system. Oznacza to, ûe wykonujâc np. komendë WINDOW, spowodujemy otwarcie okna na ekranie Workbencha. Nie muszë chyba wyjaôniaê, jak bardzo uûyteczna jest ta cecha dla programów uûytkowych, dziaîajâcych w multitaskingu (ekranów AMOS-a nie moûna zsunâê myszâ, a jeûeli juû bardzo nam zaleûy na przeîâczeniu tasków, musimy nacisnâê klawisze [Lewa Amiga][A], chyba ûe zmienimy te ustawienia w konfiguracji AMOS-a). Zalety... Czym jest ten tajemniczy Blitz Basic i w jaki sposób dziaîa? Podobnie jak AMOS, jest to strukturalny Basic, zawierajâcy mnóstwo rozkazów obsîugujâcych grafikë, dúwiëk i inne takie. W czym Blitz jest lepszy od AMOS-a? Otóû (oprócz tego, ûe obsîuguje system) gîównie z powodu swojej modularnej budowy, co oznacza, ûe w bardzo prosty sposób moûemy dorabiaê do niego nowe biblioteki rozkazów. ----------!Rys.1: Ekran ôciâgniëty z Blitz Basica!------------- Oczywiôcie moûliwoôê ta znalazîa swoje odzwierciedlenie w praktyce. Bîâdzâc po Internecie, znalazîem opis róûnych bibliotek public domain do Blitz Basic2 v1.3 (w formacie AmigaGuide). Ile tego jest? Oto próbka niektórych z nich: TrackDisk, Animacja IFF, Commodities, Workbench, ToolTypes, PCF (obsîuga obrazków PCF), Pack (formatu IFF), GFX (obsîuga kolorów ukîadu AGA), FNS (fonty w formacie FNS), FX (efekty graficzne m.in. zoom), ZJ (zone i joystick), CIA Tracker (odtwarzanie moduîów muzycznych Protrackera), Elmore (ogromna biblioteka -- nowe oblicze Blitza), SerialPort, ARexx, Crunch, Locale, Med (odtwarzanie moduîów MED-a), Printer, Req.library, GadTools, Asl, ReqTools. Widaê wiëc bardzo wyraúnie, ûe utworzenie powaûnego programu uûytkowego (nawet wykorzystujâcego sîynne biblioteki reqtools.library czy powerpacker.library) nie stanowi problemu, jeôli wykorzystamy do tego celu Blitz Basic. i wady... A jakie sâ wady Blitza? Chyba przede wszystkim jego prostota. Nie ma on tak potëûnych narzëdzi jak AMOS Professional, uîatwiajâcych pracë podczas tworzenia obiektów sprite'ów, BOB-ów, ikon, sampli, projektowania menu itp. Blitz nie ma równieû zbliûonego do asemblera systemu AMAL. Z drugiej jednak strony Blitz w prosty sposób umoûliwia bezpoôrednie wykorzystywanie rozkazów asemblera. Poza tym to, co najwaûniejsze: przed kaûdym uruchomieniem (nawet z poziomu Edytora), program napisany w Blitz Basicu jest kompilowany, a wiëc i tak doôê szybki. Powinienem teû chyba wspomnieê o wielu przeîâcznikach kompilacji (m. in. optymalizacja kodu). -------------!Rys.2: Opcje kompilacji!----------------------- Hmmm. Ze smutkiem muszë wymieniê najwiëkszâ wadë Blitza. Otóû niestety nie moûna w jego (bardzo prostym) Edytorze uûywaê polskich znaków. Próbowaîem ten problem rozwiâzaê w sposób nastëpujâcy. Za pomocâ CED-a napisaîem prosty program wykorzystujâcy polskie znaki, a nastëpnie wczytaîem go do Edytora Blitz Basic. Co sië staîo? W miejscu polskich znaków typu â, ë, ê itp. zobaczyîem caîe mnóstwo znaków zapytania. Mimo tego ostrzeûenia uruchomiîem program i... o dziwo, w niektórych miejscach ekranu polskie znaki byîy! Szkoda tylko, ûe nie wszystkie... Na podstawie tego doôwiadczenia doszedîem wiëc do wniosku, ûe pisanie programów z polskimi znakami (za pomocâ Blitz Basica) wydaje sië byê mocno utrudnione (ale wszak wszystkim wiadomo, ûe "dla chcâcego, nic trudnego"). Podsumowanie I AMOS, i Blitz Basic majâ swoje zalety i wady. Trudno jest jednoznacznie okreôliê, który z nich jest lepszy. To zaleûy od zastosowaï. AMOS bije Blitza na gîowë, jeôli chodzi o tworzenie gier, prezentacji i programów edukacyjnych, czyli wszystkiego, co wymaga ruchu, dúwiëków i muzyki. Blitz nadaje sië natomiast wyômienicie do tworzenia programów uûytkowych i narzëdziowych. Na zakoïczenie przytaczam przykîadowy programik MiniEdytor, utworzony w Blitz Basicu, otwierajâcy wîasny ekran (systemowy), a nastëpnie okienko, i umoûliwiajâcy pisanie fontem pearl. Uwaga! Nawet jeôli mamy zainstalowane polskie znaki w systemie, w MiniEdytorku i tak nie moûemy pisaê po polsku (a jedynie po polskiemu, np. zolw, blad, roza). Ps. W pewnym miejscu artykuîu jako podtytuîu uûyîem zestawu sîów "wojna bîyskawiczna". Jak myôlicie, skâd ten pomysî? --------------------!Listing.1!----------------------- --------!Rys.3: ekran wynikowy przykîadowego programiku Blitz Basica-------