kk.plenty.vbiz.pl

Strona domowa Kamila Korolkiewicza


Strona poświęcona programom na systemy Windows i DOS

Na tej stronie zamieściłem większość swoich programów, pisanych od kiedy zacząłem swoją przygodę z programowaniem (2002 rok). W pierwszej kolejności przedstawiam gry tworzone głównie z myślą o systemie Windows. Dalej zamieszczam aplikacje użytkowe, także pod ten system. Ostatnia część jest najobszerniejsza - są to pozostałe programy (głównie gry), w większość napisane pod system DOS, uporządkowane chronologicznie. Pozostałe programy można znaleźć w dziale PROJEKTY.


Mini gry

Lander

img/prog/Lander_0.pngimg/prog/Lander_1.pngimg/prog/Lander_2.png
Gra polega na lądowaniu statkiem kosmicznym na generowanym losowo terenie. Strzałkami prawo/lewo zmieniamy kąt nachylenia statku do podłoża, zaś spacją uruchamiamy ciąg z silnika. Lądowanie zakończy się sukcesem gdy nasza prędkość będzie nie za duża, a kąt między podłożem a naszym statkiem odpowiednio mały. Wersja pod win32. Wersja ma system Symbian S60 tutaj.

2D3D

img/prog/2D3D_0.pngimg/prog/2D3D_1.pngimg/prog/2D3D_2.png
W programie przemieszczamy się po mapie, opisanej wektorami w pliku tekstowym, w perspektywie 3D. Rysowanie odbywa się za pomocą linii. Klawiszami 1-5 zmieniamy numer mapy, klawisz [Ins] włącza wykrywanie kolizji. Wersje na Windows i Symbian.

fRace

img/prog/fRace_0.pngimg/prog/fRace_1.png
Prosta symulacja jazdy samochodem z widokiem z góry. Mapy są tworzone z plików BMP przez dołączony program mapgen. Opis pojazdu w pliku tekstowym. Projekt nieukończony.

Invaders

img/prog/Invaders_0.pngimg/prog/Invaders_1.png
W grze sterujemy statkiem kosmicznym i staramy się jak najdłużej przeżyć pod ostrzałem najeźdźców z kosmosu. Gra pisana nieco ponad 6h, wykorzystuje OpenGL do wyświetlania grafiki 2D. Grafika własna :).


Przydatne aplikacje


Julia

img/prog/Julia_0.pngimg/prog/Julia_1.pngimg/prog/Julia_2.png
Program generuje fraktale ze zbioru Julii. Wykorzystuje do czterech procesorów przy generowaniu obrazu. Wersja zarówno pod Windows jak i na Symbiana.

BinFView

img/prog/BinFView_0.pngimg/prog/BinFView_1.pngimg/prog/BinFView_2.png
Program umożliwia podgląd plików tekstowych i binarnych w trybach: tekstowym, binarnym, szesnastkowym, dziesiętnym oraz oktalnym. Posiada funkcję zaznaczania zadanego wzorca oraz statystyk pliku. Wyglądem aplikacja przypomina konsolowe programy DOS (np. Hiew). Obecna wersja: 0.5. Wersja na system Symbian tutaj.

Fontgen

Program służący do generowania plików binarnych znaków 8X8 lub 8X16 ze standardowych czcionek systemowych.

bmp2h

Program konwertuje plik BMP do pliku nagłówkowego języka C/C++.

QRead

img/prog/QRead_0.pngimg/prog/QRead_1.pngimg/prog/QRead_2.png
Program do nauki szybkiego czytania napisany w Delphi. Pomysł na aplikacje od mojego Taty.


Gry, programy - DOS

Moje starsze programy pod system DOS, uporządkowane w kolejności w jakiej były tworzone. W nawiasach [ ] znajduje się kolejno: nazwa kompilatora, tryb graficzny w jakim program pracuje oraz rok ukończenia programu. Aby uruchomić programy DOS, w razie problemów, polecam DOSBOX'a.



mini DZIAŁO [TP/VGA/2002]

img/prog/mini DZIALO_0.pngimg/prog/mini DZIALO_1.pngimg/prog/mini DZIALO_2.png
Moja pierwsza (w ogóle) gra. Zabawa polega na strzelaniu do przeciwnika z działa. Ustawiamy kąt nachylenia oraz siłę wystrzału, naciskamy spację i... jeśli nie trafimy, to czekamy co zrobi nasz przeciwnik. Mamy do wyboru trzy poziomy trudności. Gra podzielona jest na tury, a każda tura składa się z dwóch prób. Dla urozmaicenia zmienia się losowo pora dnia. Dodatkowym utrudnieniem jest wiejący z różną siłą wiatr.

Standart [TP/TEXT/2002]

img/prog/Standart_0.pngimg/prog/Standart_1.png
Na początek co do nazwy gry. Jako trzynastolatek miałem się prawo pomylić w ortografii. Prawda? Byk został (ktoś potem zwrócił na to uwagę), gra się nazywa tak jak widać wyżej. Tym razem pojawił się pomysł napisania czegoś w trybie tekstowym. Jesteśmy w przestrzeni kosmicznej i naszym zadaniem jest strzelanie z kwadracika do drugiego kwadracika, który nawet robi uniki. Dodatkowy efekt graficzny to gwiazdki losowo zmieniające co chwile swoje położenie. Musimy tylko uważać na przeciwnika. Jego celny strzał to koniec zabawy :(. Bo im dłużej gramy tym jest ciekawiej... Aby zakończyć grę wciskamy klawisz [q].

Tron [TP/13H/2003]

img/prog/Tron_0.pngimg/prog/Tron_1.png
Najkrócej: przesuwając kwadratową teksturą, mamy dotrzeć do końca labiryntu złożonego z innych kwadratowych tekstur, w celu przejścia do następnego poziomu. Koniec mapy nie jest nigdzie zaznaczony, jednak im jesteśmy bliżej końca, tym PC-SPEAKER staje się coraz bardziej wnerwiający. Na szczęście w programiku setup.exe możemy zmienić jego natężenie i przy okazji wygenerować nowe labirynty (generator działa całkowicie losowo).

TronPM [FPC-DOS/SVGA/2004]

Jest to ta sama gra co powyżej, z tym że korzysta z dobrodziejstw trybu 32-bitowego (DPMI). Możemy bowiem zmienić rozdzielczość na wyższą niż zwykłe 320x200.

Trap [TP/13H+SVGA/2003-2005]

img/prog/Trap_0.pngimg/prog/Trap_1.pngimg/prog/Trap_2.pngimg/prog/Trap_3.png
W tej platformówce wcielamy się w kolesia, który uwięziony w podziemnych labiryntach musi dostać się do podziemnej "rezydencji" szalonego naukowca aby uratować siebie i świat. Ten bardzo ambitny (i jak widać pracochłonny) projekt niestety nie doczekał się wersji grywalnej (możemy jedynie przemieszczać się po kilku poziomach, strzelać, pływać, skakać, ale nie ma żadnych przeciwników, czy ustalonego biegu akcji). Przyznam że włożyłem w ten projekt (jak do tej pory) najwięcej sił i czasu, ale (tu informacja dla początkujących programistów) posiadając jeszcze nie najwyższe doświadczenie i pisząc program bez spójnego planu okazało się że dalsze prowadzenie projektu nie ma perspektyw, tym bardziej że 16-bitowy, do jakiego kompiluje Turbo Pascal, ma zbyt dużo ograniczeń. Mimo to program zawiera sporo ciekawych rozwiązań (między niezły innymi silnik graficzny pracujący w rozdzielczościach SVGA, system skryptów czy własny format zapisu muzyki).

MLAB [MASM/VGA/2005]

img/prog/MLAB_0.pngimg/prog/MLAB_1.pngimg/prog/MLAB_2.png
Gra polega na przechodzeniu na czas kolejnych labiryntów. Żeby było trudniej musimy uważać na poruszające się wśród korytarzy czerwone kulki, które zawsze starają się skręcać w prawo. Aby było ciekawiej możemy zbierać skarby i klucze. Ilość punktów w dużym stopniu zależy od czasu w jakim przejdziemy labirynt. Gra jest całkowicie napisana w asemblerze, działa pod dosem w trybie 32-bitowym. Niestety, o ile silnik gry jest dokończony, to niestety stworzyłem tylko 3 poziomy (a w zasadzie 2 w całości). W załączonym edytorze (również napisany w asmie) możemy tworzyć nowe labirynty. Zachęcam!

Projekty w MASM [MASM/13H+SVGA+WIN/2005]

img/prog/Projekty w MASM_0.pngimg/prog/Projekty w MASM_1.pngimg/prog/Projekty w MASM_2.pngimg/prog/Projekty w MASM_3.png
Znajdują się tu moje różne programy (najczęściej graficzne) napisanie w asemblerze i działające w trybie 32-bitowym (oparte o mój stub32) oraz bodaj jeden działający pod Windows. Mamy tu między innymi wyświetlanie skalowanych obrazów, efekty przezroczystości (w trybie 256 kolorowym!), czy prosty silnik 3D.

VECBLOCK [DJGPP/13H+SVGA/2006]

O napisaniu gry 3D myślałem już wcześniej. Uznałem w końcu, że warto się tym zająć. Postanowiłem jednak najpierw napisać silnik, a potem grę. Wyszło jak zwykle, tzn. nie skończyłem :(. Stworzyłem tylko całkiem fajne menu, konsole i chyba tyle. Przy okazji napisałem program do rysowania funkcji gdyż moduł konsoli zawierał parser wyrażeń. Niestety pewnego dnia nadpisałem nowe pliki starymi, więc morale do dalszej pracy opadły, aż ostatecznie zaniechałem projekt.

F_X [TP/VGA/2006]

img/prog/F_X_0.png
Kiedy wyjeżdżam na działkę, to prócz świeżego powietrza, śpiewu ptaków czy jeżdżenia na rowerze, mam tam starego 386SX. To był mój pierwszy komputer. Na nim, trochę z nudów, napisałem kolejny program w którym możemy wyświetlać funkcje, i to nawet w 3D. Jedyny problem że za parsowanie wyrażeń odpowiada kompilator, więc każda zmiana funkcji wymaga nowej kompilacji. Ale to nic. Ważne że rysuje.

x86em [DEVCPP/TEXT/2007]

Niedokończony projekt emulatora procesora X86. Ostatecznie program może służyć jako prosty deasembler.

S3D [TP/13H/2008]

img/prog/S3D_0.png
Pomysł napisania gry 3D opartej wyłącznie na sprajtach (skalowane bitmapy, zazwyczaj pewne ich fragmenty są przeźroczyste co daje efekt taki, że obrazek ma jakiś kontur) pojawił się w mojej głowie już kilka lat wcześnie. Postanowiłem go więc zrealizować, poświęcając sprawie co najwyżej kilka dni. W grze, naszym zadaniem jest strzelanie do obiektów. Każdy strzał kosztuje 1 punkt, ale możemy zdobyć kilka punktów jednym strzałem. Za trafienie obiektu który się porusza mamy dodatkowy bonus. Gra zawiera edytor wspomnianych sprajtów, obiekty są rozmieszczane losowo.

INVAD [ASM/13H/2009]

img/prog/INVAD_0.pngimg/prog/INVAD_1.png
Gra w asemblerze pod DOS pisana przez ok. 6h: 1014 linii kodu i rozmiar 1733 bajtów. Zawiera własny generator liczb losowych, funkcję delay czy symulator przesuwających się z różną szybkością pyłów międzygwiezdnych.



Legenda:
TP - Turbo Pascal 7.0
FPC - Free Pascal Compiler
MASM - Macro Assembler
DJGPP - Kompilator języka C pod DOS (GCC)
DEVCPP - Kompilator języka C/C++ pod Windows (GCC)
13H - Tryb graficzny 320x200x256
VGA - Tryb graficzny 640x480x16
SVGA - Zaawansowane tryby graficzne (np. 1024x768x256)
WIN - Aplikacja okienkowa pod Windows

[Do góry]

Valid XHTML 1.0 Transitional Poprawny CSS!

Copyright © Kamil Korolkiewicz 2009, 2010