Te gry każdy miał na swoim komputerze. Nawet jeśli o tym nie wiedział
Mój pierwszy komputer PC (zwany wtedy klonem IBM PC) miał jako system operacyjny MS-DOS w wersji 3. W trakcie korzystania z niego ostatnią wersją, jakiej używałem, była 6.22. Od wersji 5.0 MS-DOS miał dołączone coś nietypowego: kompletne IDE do pisania programów w BASIC.
BASIC to Beginner's All-Purpose Symbolic Instruction Code - czyli z samej nazwy widać, że język programowania był przeznaczony dla początkujących. W DOS 5.* oraz 6.* dołączono jego wersję o nazwie QBasic. Nie umożliwiała ona kompilowania programów do kodu wykonywalnego, ale miała całkiem zaawansowane jak na tamte czasy (wczesne lata 90.) właściwości:
- edytor kodu zintegrowany z interpreterem,
- możliwość debugowania programu i uruchamiania krok po kroku,
- możliwość uruchamiania podprogramów (ang. Subroutine - basicowy odpowiednik metod) i ładowania fragmentów programów z zewnętrznych plików.
Wszystko to powodowało że był do doskonały język do nauki - szczególnie że był już na naszym komputerze. Jednak najciekawsze to... programy przykładowe dołączone do QBasic w formie kodu źródłowego.
Programy te nie instalowały się domyślnie - trzeba je było zainstalować z dodatkowego dysku. Wśród nich był programik do usuwania numerów linii z programów w Basicu, oraz prosty programik do zarządzania finansami (MONEY.BAS
). Jednak nie do było ciekawe. Ciekawe były dwie darmowe gry napisane w QBasic, których kod źródłowy miał każdy, kto miał w tamtych czasach komputer. Najczęściej były to pierwsze gry w jakie graliśmy.
Gry w QBasic
Pierwszą z tych gier był GORILLA.BAS
- gra w której jako goryl rzucamy bananami w drugiego gracza. Nie była to jednak zwykła zręcznościówka - na przeszkodzie stały budynki, a my musieliśmy podać kąt rzutu i jego siłę. Po kilku próbach, podobnie jak w klasycznej grze Scorched Earth, zazwyczaj udawało nam się trafić.
Drugą dołączoną do QBasic grą był NIBBLES.BAS
czyli... gra w węża. Wygląda ona na pierwowzór późniejszych hitów z telefonów komórkowych. Sterujemy wężem, który zjadając po kolei cyferki, rośnie. Na kolejnych poziomach pojawiają się różne przeszkadzajki w postaci rozmieszczonych złośliwie ścian.
Była to pierwsza gra którą „shackowałem” dopisując jej dodatkowe poziomy oraz... ustawiając inną prędkość gry dla gracza numer 2 (po to, aby zrobić psikusa komuś, kogo do gry zaprosiłem).
Dziś zapragnąłem uruchomić ją ponownie
Aby odpalić dziś QBasic, mamy do wyboru dwie ścieżki. Pierwsza, to instalacja VirtualBox, darmowego programu od Oracle, na którym uruchomimy maszynę wirtualną z MS-DOS. Na szczęście nie musimy instalować DOS-a z dyskietek - archiwiści ze strony WinWorld udostępnili gotowy obraz dysku maszyny wirtualnej. Dodatkowo musimy rozpakować pliki BAS (kod źródłowy Basica) z dodatkowego dysku (tzw. Supplemental Disk).
Uruchamiam i... problem. Mój komputer jest za szybki. Między poszczególnymi iteracjami pętli nie zmienił się licznik czasu, co spowodowało dzielenie przez zero.
Po dokonaniu kilku zmian w kodzie, udało mi się uruchomić grę.
Drugą możliwością uruchomienia Nibbles jest ściągnięcie kompilatora QBasic przeznaczonego na współczesne komputery. Ten kompilator to QB64. Tym razem to prawdziwy kompilator - po zakończeniu jego działania otrzymujemy plik .exe uruchamiany bezpośrednio na naszym PC (lub Macu). Polecam tę właśnie opcję - bo oprócz wspomnianych powyżej, do QB64 dołączono wiele innych przykładowych programów.
QBasic współcześnie
Istnieje dość oddana, choć niewielka grupa programistów, którzy wciąż piszą programy w QBasic. Wśród nich jest wielu miłośników gier retro, oraz... zaawansowanych użytkowników, którzy traktują swoją umiejętność programowania instrumentalnie - jako narzędzie do automatyzacji i obliczeń.
Kilka lat temu ogłoszono stworzenie nowej, pełnoprawnej gry w QBasicu - Black Annex. Miała się ona ukazać na Steam, ale wygląda na to że wciąż jest „Coming soon” - mimo entuzjastycznych artykułów na jej temat, jakie się wtedy ukazywały.
*Grafika tytułowa: By Cornellanense (talk) 07:14, 29 October 2008 (UTC) - Own work, CC BY-SA 4.0, Link