-
-
-Play checkers against the computer with any board
-size and any amount of caps. Does thinking by recursively
-testing many possible scenarios with any depth.
-
-Since it is slow QBasic implementation,
-it isn't practical to play with many caps
-or big thinking depth, for reasonable responce time.
-
-
-
-
\ No newline at end of file
diff --git a/games/checkers/sshot.png b/games/checkers/screenshot.png
similarity index 100%
rename from games/checkers/sshot.png
rename to games/checkers/screenshot.png
diff --git a/games/mario/index.html b/games/mario/index.html
deleted file mode 100644
index e344619..0000000
--- a/games/mario/index.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
-super mario like game
-
-
-
-
super mario like game
-
-
- Jump around, collect coins and dont touch snails!
-
-
-
-
\ No newline at end of file
diff --git a/games/mario/0.i01 b/games/platform/0.i01
similarity index 100%
rename from games/mario/0.i01
rename to games/platform/0.i01
diff --git a/games/mario/1.i01 b/games/platform/1.i01
similarity index 100%
rename from games/mario/1.i01
rename to games/platform/1.i01
diff --git a/games/mario/2.i01 b/games/platform/2.i01
similarity index 100%
rename from games/mario/2.i01
rename to games/platform/2.i01
diff --git a/games/mario/3.i01 b/games/platform/3.i01
similarity index 100%
rename from games/mario/3.i01
rename to games/platform/3.i01
diff --git a/games/mario/4.i01 b/games/platform/4.i01
similarity index 100%
rename from games/mario/4.i01
rename to games/platform/4.i01
diff --git a/games/mario/5.i01 b/games/platform/5.i01
similarity index 100%
rename from games/mario/5.i01
rename to games/platform/5.i01
diff --git a/games/mario/6.i01 b/games/platform/6.i01
similarity index 100%
rename from games/mario/6.i01
rename to games/platform/6.i01
diff --git a/games/mario/7.i01 b/games/platform/7.i01
similarity index 100%
rename from games/mario/7.i01
rename to games/platform/7.i01
diff --git a/games/mario/8.i01 b/games/platform/8.i01
similarity index 100%
rename from games/mario/8.i01
rename to games/platform/8.i01
diff --git a/games/mario/9.i01 b/games/platform/9.i01
similarity index 100%
rename from games/mario/9.i01
rename to games/platform/9.i01
diff --git a/games/mario/kast.i01 b/games/platform/kast.i01
similarity index 100%
rename from games/mario/kast.i01
rename to games/platform/kast.i01
diff --git a/games/mario/mario1.i01 b/games/platform/mario1.i01
similarity index 100%
rename from games/mario/mario1.i01
rename to games/platform/mario1.i01
diff --git a/games/mario/mario2.i01 b/games/platform/mario2.i01
similarity index 100%
rename from games/mario/mario2.i01
rename to games/platform/mario2.i01
diff --git a/games/mario/munt.i01 b/games/platform/munt.i01
similarity index 100%
rename from games/mario/munt.i01
rename to games/platform/munt.i01
diff --git a/games/mario/munt1.i01 b/games/platform/munt1.i01
similarity index 100%
rename from games/mario/munt1.i01
rename to games/platform/munt1.i01
diff --git a/games/mario/munt2.i01 b/games/platform/munt2.i01
similarity index 100%
rename from games/mario/munt2.i01
rename to games/platform/munt2.i01
diff --git a/games/mario/pilv.i01 b/games/platform/pilv.i01
similarity index 100%
rename from games/mario/pilv.i01
rename to games/platform/pilv.i01
diff --git a/games/mario/smario.bas b/games/platform/platform.bas
similarity index 100%
rename from games/mario/smario.bas
rename to games/platform/platform.bas
diff --git a/games/mario/poosas.i01 b/games/platform/poosas.i01
similarity index 100%
rename from games/mario/poosas.i01
rename to games/platform/poosas.i01
diff --git a/games/mario/puu.i01 b/games/platform/puu.i01
similarity index 100%
rename from games/mario/puu.i01
rename to games/platform/puu.i01
diff --git a/games/mario/sshot.png b/games/platform/screenshot.png
similarity index 100%
rename from games/mario/sshot.png
rename to games/platform/screenshot.png
diff --git a/games/mario/tellis.i01 b/games/platform/tellis.i01
similarity index 100%
rename from games/mario/tellis.i01
rename to games/platform/tellis.i01
diff --git a/games/mario/tigu.i01 b/games/platform/tigu.i01
similarity index 100%
rename from games/mario/tigu.i01
rename to games/platform/tigu.i01
diff --git a/games/mario/tigu1.i01 b/games/platform/tigu1.i01
similarity index 100%
rename from games/mario/tigu1.i01
rename to games/platform/tigu1.i01
diff --git a/graphics/3D/3dSynthezier/.project b/graphics/3D/3D Synthezier/.project
similarity index 100%
rename from graphics/3D/3dSynthezier/.project
rename to graphics/3D/3D Synthezier/.project
diff --git a/graphics/3D/3dSynthezier/bin/3dparse.bas b/graphics/3D/3D Synthezier/bin/3dparse.bas
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/3dparse.bas
rename to graphics/3D/3D Synthezier/bin/3dparse.bas
diff --git a/graphics/3D/3dSynthezier/bin/city1.3d b/graphics/3D/3D Synthezier/bin/city1.3d
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/city1.3d
rename to graphics/3D/3D Synthezier/bin/city1.3d
diff --git a/graphics/3D/3dSynthezier/bin/city1.bat b/graphics/3D/3D Synthezier/bin/city1.bat
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/city1.bat
rename to graphics/3D/3D Synthezier/bin/city1.bat
diff --git a/graphics/3D/3dSynthezier/bin/city2.3d b/graphics/3D/3D Synthezier/bin/city2.3d
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/city2.3d
rename to graphics/3D/3D Synthezier/bin/city2.3d
diff --git a/graphics/3D/3dSynthezier/bin/city2.bat b/graphics/3D/3D Synthezier/bin/city2.bat
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/city2.bat
rename to graphics/3D/3D Synthezier/bin/city2.bat
diff --git a/graphics/3D/3dSynthezier/bin/result.mtl b/graphics/3D/3D Synthezier/bin/result.mtl
similarity index 100%
rename from graphics/3D/3dSynthezier/bin/result.mtl
rename to graphics/3D/3D Synthezier/bin/result.mtl
diff --git a/graphics/3D/3dSynthezier/doc/c1.jpg b/graphics/3D/3D Synthezier/doc/hexagonal city, 1.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/c1.jpg
rename to graphics/3D/3D Synthezier/doc/hexagonal city, 1.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/c2.jpg b/graphics/3D/3D Synthezier/doc/hexagonal city, 2.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/c2.jpg
rename to graphics/3D/3D Synthezier/doc/hexagonal city, 2.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/c3.jpg b/graphics/3D/3D Synthezier/doc/hexagonal city, 3.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/c3.jpg
rename to graphics/3D/3D Synthezier/doc/hexagonal city, 3.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/city_hexagon.blend b/graphics/3D/3D Synthezier/doc/hexagonal city.blend
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/city_hexagon.blend
rename to graphics/3D/3D Synthezier/doc/hexagonal city.blend
diff --git a/graphics/3D/3D Synthezier/doc/index.html b/graphics/3D/3D Synthezier/doc/index.html
new file mode 100644
index 0000000..615e502
--- /dev/null
+++ b/graphics/3D/3D Synthezier/doc/index.html
@@ -0,0 +1,584 @@
+
+
+
+QBasicApps - collection of applications mostly written in MS QBasic for DOS environment
+
+
+
+
+
+
+
+"
+
+
+
+
+
+
+
QBasicApps - collection of applications mostly written in MS QBasic for DOS environment
This program is free software; you can redistribute it and/or modify
+it under the terms of version 3 of the GNU Lesser General Public
+License or later as published by the Free Software Foundation.
+
+Parses scene definition language and creates 3D world based on
+it. Result will be in a wavefront obj file, witch can be then
+visualized using external renderer.
+
+
+
+Basic concept of defining scene is:
+
+
+
Simple and primitive objects are created on point and polygon level.
+
+
More complex ones can be created my combinig already existing ones,
+while applying various transformations on them.
+
+
+
+
+Objects with all its subobjects can be rotated, mirrored or resized
+omong any axis. Generator has built in cache for data input and output
+to minimize file access.
+
+
+
+
1 System requirements
+
+
+
+
+
+
+
+
+
+
+
+
software
+
preferred version
+
+
+
+
+
DOS
+
6.22
+
+
+
+
QBasic
+
4.5
+
+
+
+
+
+
+
2 Installation
+
+
+
Unpack ZIP file in any folder.
+
+
update include path inside bin/3dparse.bas
+
+
+
+
+
2.0.1 Directory layout
+
+
+
bin
+
+
3dparse.bas - 3D generator main executable
+
+
city1.3d - city with square-like buildings
+
+
city2.3d - city with hexangular buildings
+
+
result.mtl - shared material library
+
+
*.bat - quick launch scripts
+
+
+
+
+
include - 3D objects used to compose the scene
+
+
+
+
+
+
+
3 Scene description language
+
+
+(read examples…)
+
+
+
+
+here
+
+
+defines new segment
+
+
+
+p x y z
+
+
+defines new point
+
+
+
+f p1 p2 p3 p4
+
+
+defines new polygon, p4 may be unused
+
+
+
+
+warn <message>
+
+
+displays warning message, and wait for key
+
+
+
+end
+
+
+terminates parser
+
+
+
+mtl material
+
+
+selects material
+
+
+
+mtlrnd material ...
+
+
+selects random material from list
+
+
+
+obj object xz45 xy20 x+3 y*2
+
+
+includes sub object, can be rotated moved or resized, across X Y Z. If
+object name begin vith ~ then it will be loaded from current
+directory. if object name ends with ~ then object will be parsed
+directly from file, and not chached, to allow loading of greater than
+500 lines files.
+
+
+
+
+
+
+
+rnd p^1^2^3 p^7^2^1
+
+
+select random command to execute, ^ will be converted to spaces.
+
+
+
+# whatever text
+
+
+comment
+
+
+
+out file
+
+
+specify output file name, must be first command
+
+
+
+set variable contents
+
+
+set variable contents, variable must be number, contents can be
+string. max variables is 100. first is 0.
+
+
+
+anycommand %1 anything
+
+
+inserts variable 1 contents info line
+
+
+
+cmp flag string1 string2
+
+
+compares strings, and inserts TRUE to flag, if they are equal, else inserts FALSE. max 9 falgs, 0 first. Each subobject has its own flags.
+
+
+
+?flag anycommand
+
+
+executes command if flag is true.
+
+
+
+exapmle: ?3 obj car z*2 xy45
+
+
+
+dum
+
+
+dummy function, does notheing
+
+
+
+
+
+
4 Usage
+
+
+Make sure you have QB binaries in your PATH. Execute
+
+
+bin/city1.bat
+
+
+or
+
+
+bin/city2.bat
+
+
+to generate example cities. After parsing is finished, appropriate
+*.obj files will appear in the bin directory holding generated scene.
+Visualize scene with your favourite renderer.
+
+
+
+
diff --git a/graphics/3D/3D Synthezier/doc/index.org b/graphics/3D/3D Synthezier/doc/index.org
new file mode 100644
index 0000000..587aaf6
--- /dev/null
+++ b/graphics/3D/3D Synthezier/doc/index.org
@@ -0,0 +1,151 @@
+#+TITLE: QBasicApps - collection of applications mostly written in MS QBasic for DOS environment
+
+-----
+- [[http://www2.svjatoslav.eu/gitweb/?p=qbasicapps.git;a=snapshot;h=HEAD;sf=tgz][download latest snapshot]]
+
+- This program is free software; you can redistribute it and/or modify
+ it under the terms of version 3 of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public
+ License]] or later as published by the Free Software Foundation.
+
+- Program author:
+ - Svjatoslav Agejenko
+ - Homepage: http://svjatoslav.eu
+ - Email: mailto://svjatoslav@svjatoslav.eu
+
+- [[http://www.svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]]
+
+
+
+Parses scene definition language and creates 3D world based on
+it. Result will be in a [[https://en.wikipedia.org/wiki/Wavefront_.obj_file][wavefront obj file]], witch can be then
+visualized using external renderer.
+
+Basic concept of defining scene is:
+- Simple and primitive objects are created on point and polygon level.
+- More complex ones can be created my combinig already existing ones,
+ while applying various transformations on them.
+
+Objects with all its subobjects can be rotated, mirrored or resized
+omong any axis. Generator has built in cache for data input and output
+to minimize file access.
+
+* System requirements
+| software | preferred version |
+|----------+-------------------|
+| DOS | 6.22 |
+| QBasic | 4.5 |
+* Installation
++ Unpack ZIP file in any folder.
++ update include path inside bin/3dparse.bas
+*** Directory layout
++ bin
+ + 3dparse.bas - 3D generator main executable
+ + city1.3d - city with square-like buildings
+ + city2.3d - city with hexangular buildings
+ + result.mtl - shared material library
+ + *.bat - quick launch scripts
+
++ include - 3D objects used to compose the scene
+* Scene description language
+(read examples...)
+
+
+: here
+defines new segment
+
+: p x y z
+defines new point
+
+: f p1 p2 p3 p4
+defines new polygon, p4 may be unused
+
+
+: warn
+displays warning message, and wait for key
+
+: end
+terminates parser
+
+: mtl material
+selects material
+
+: mtlrnd material ...
+selects random material from list
+
+: obj object xz45 xy20 x+3 y*2
+includes sub object, can be rotated moved or resized, across X Y Z. If
+object name begin vith ~ then it will be loaded from current
+directory. if object name ends with ~ then object will be parsed
+directly from file, and not chached, to allow loading of greater than
+500 lines files.
+
+[[file:rotation.png]]
+
+
+: rnd p^1^2^3 p^7^2^1
+select random command to execute, ^ will be converted to spaces.
+
+: # whatever text
+comment
+
+: out file
+specify output file name, must be first command
+
+: set variable contents
+set variable contents, variable must be number, contents can be
+string. max variables is 100. first is 0.
+
+: anycommand %1 anything
+inserts variable 1 contents info line
+
+: cmp flag string1 string2
+compares strings, and inserts TRUE to flag, if they are equal, else inserts FALSE. max 9 falgs, 0 first. Each subobject has its own flags.
+
+: ?flag anycommand
+executes command if flag is true.
+
+exapmle: ?3 obj car z*2 xy45
+
+: dum
+dummy function, does notheing
+
+* Usage
+Make sure you have QB binaries in your PATH. Execute
+: bin/city1.bat
+or
+: bin/city2.bat
+to generate example cities. After parsing is finished, appropriate
+*.obj files will appear in the bin directory holding generated scene.
+Visualize scene with your favourite renderer.
+* Examples
+Download Blender files:
+| file | size |
+|------------------------+--------|
+| [[file:rectangular city.blend][rectangular city.blend]] | 3.6 MB |
+| [[file:hexagonal city.blend][hexagonal city.blend]] | 21 MB |
+
+They were produced by importing generated [[https://en.wikipedia.org/wiki/Wavefront_.obj_file][wavefront obj files]] into
+[[https://www.blender.org/][Blender]].
+
+** Rectangular city
+[[file:rectangular city, 1.jpeg]]
+
+[[file:rectangular city, 2.jpeg]]
+
+[[file:rectangular city, 3.jpeg]]
+** Hexagonal city
+[[file:hexagonal city, 1.jpeg]]
+
+[[file:hexagonal city, 2.jpeg]]
+
+[[file:hexagonal city, 3.jpeg]]
+
+* (document settings) :noexport:
+** use dark style for TWBS-HTML exporter
+#+HTML_HEAD:
+#+HTML_HEAD:
+#+HTML_HEAD: "
+#+HTML_HEAD:
diff --git a/graphics/3D/3dSynthezier/doc/city1.jpg b/graphics/3D/3D Synthezier/doc/rectangular city, 1.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/city1.jpg
rename to graphics/3D/3D Synthezier/doc/rectangular city, 1.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/city2.jpg b/graphics/3D/3D Synthezier/doc/rectangular city, 2.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/city2.jpg
rename to graphics/3D/3D Synthezier/doc/rectangular city, 2.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/city3.jpg b/graphics/3D/3D Synthezier/doc/rectangular city, 3.jpeg
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/city3.jpg
rename to graphics/3D/3D Synthezier/doc/rectangular city, 3.jpeg
diff --git a/graphics/3D/3dSynthezier/doc/city_square.blend b/graphics/3D/3D Synthezier/doc/rectangular city.blend
similarity index 100%
rename from graphics/3D/3dSynthezier/doc/city_square.blend
rename to graphics/3D/3D Synthezier/doc/rectangular city.blend
diff --git a/graphics/3D/3D Synthezier/doc/rotation.png b/graphics/3D/3D Synthezier/doc/rotation.png
new file mode 100644
index 0000000000000000000000000000000000000000..e6281eca325ada58bfac13bd3c445ff78773cf5d
GIT binary patch
literal 1728
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
C1Rcu&
diff --git a/graphics/3D/3dSynthezier/doc/index.html b/graphics/3D/3dSynthezier/doc/index.html
deleted file mode 100644
index cfa0037..0000000
--- a/graphics/3D/3dSynthezier/doc/index.html
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-3D Synthezier
-
-
-
3D Synthezier
-
-
-This QBasic program was written by me in around 2003. It parses scene
-definition language and creates 3D world based on it. Result will be
-in a wavefront obj file, witch can be then visualized using external
-renderer.
-
-Basic concept of defining scene is:
- Simple and primitive objects are created on point and polygon level.
- More complex ones can be created my combinig already existing ones,
- while applying various transformations on them.
-
-Objects with all its subobjects can be rotated, flipped or resized
-omong any axis. Generator has built in cache for data input and
-output to minimize file access.
-
-
-
- Examples:
-
-
- Attempt to make "Fifth Eelement" like city.
-
-
-
- Attempt to make "Fifth Eelement" like city. Night.
-
-
-
- Attempt to make "Fifth Eelement" like city. Night.
-
-
-
-
- Hexangular city.
-
-
-
- Hexangular city, closer.
-
-
-
- Hexangular city, even closer.
-
-
-
-
-
-
-I converted these 2 generated cities also
-to Blender format so you can
-explore them interactively :)
-
-Download:
- Square city (3.5 MB)
- Hexagonal city (20.3 MB)
-
-
-
-
- System requirements
- ===================
-
-DOS (6.22 preferred)
-QBasic (4.5 preferred)
-
-
- Installation
- ============
-
-* Unpack ZIP file in any folder.
-* update include path inside bin/3dparse.bas
-
-
- Running program
- ===============
-
-Make sure you have QB binaries in your PATH.
-Execute bin/city1.bat or bin/city2.bat to generate example citys.
-After parsing is finished appropriate *.obj files will
-appear in the bin directory holding generated scene.
-Visualize scene with your favourite renderer.
-(3D Studio MAX or Nugraf 3D rendering System will do)
-
-
- Directory layout
- ================
-
-bin
- 3dparse.bas 3D generator main executable
- city1.3d city with square-like buildings
- city2.3d city with hexangular buildings
- result.mtl shared material library
- *.bat quick launch scripts
-doc manual
-include 3D objects used to compose the scene
-
-
- Scene description language
- ==========================
- (read examples...)
-
-
-here - defines new segment
-p x y z - defines new point
-f p1 p2 p3 p4 - defines new polygon, p4 may be unused
-warn message - displays warning message, and wait for key
-end - terminates parser
-mtl material - selects material
-mtlrnd material ... - selects random material from list
-obj object xz45 xy20 x+3 y*2 - includes sub object, can be rotated moved
- or resized,
- across X Y Z. If object name begin vith ~
- then it will be loaded from current directory.
- if object name ends with ~ then object will
- be parsed directly from file, and not chached,
- to allow loading of greater than 500 lines
- files.
-
-
-
-rnd p^1^2^3 p^7^2^1 - select random command to execute, ^ will be
- converted to spaces.
-# whatever text - comment
-out file - specify output file name, must be first command
-set variable contents - set variable contents, variable must be
- number, contents can be string. max variables
- is 100. first is 0.
-anycommand %1 anything - inserts variable 1 contents info line
-cmp flag string1 string2 - compares strings, and inserts TRUE to flag, if
- they are equal, else inserts FALSE. max 9 falgs
- ,0 first. Each subobject has its own flags.
-?flag anycommand - executes command if flag is true.
- exapmle: ?3 obj car z*2 xy45
-dum - dummy function, does notheing
-
-
-
-
-
diff --git a/doc/index.html b/index.html
similarity index 70%
rename from doc/index.html
rename to index.html
index 6316c4f..5afb6b0 100644
--- a/doc/index.html
+++ b/index.html
@@ -2,7 +2,7 @@
QBasicApps - collection of applications mostly written in MS QBasic for DOS environment
-
+
@@ -227,50 +227,126 @@ Foundation.
This collection contains lots of applications:
-
games
+
Games.
-
graphics tests (2D/3D/4D)
+
Graphics tests (2D/3D/4D).
-
algorithms tests
+
Algorithms tests.
-
utilities
+
Utilities.
+
I wrote them long time ago mostly in QBasic, some in x86 assembly for
-use under DOS environment.
+use under DOS operating system.
+Play checkers against the computer with any board size and any amount
+of caps. Does thinking by recursively testing many possible scenarios
+with any depth.
+
+
+
+Since it is slow QBasic implementation, it isn't practical to play
+with many caps or big thinking depth, for reasonable responce time.
+
+
+
+See directory:
+
+
+games/checkers
+
+
+
+
+
+
+
+
+
+
2 Platform game
+
+
+Jump around, collect coins and dont touch snails! Inspired by Super
+Mario Bros.
+
+
+
+See directory:
+
+
+games/platform
+
+
+
+
+
+
+
+
+
+
3 3D Synthezier
+
+
+Parses scene definition language and creates 3D world based on
+it. Result will be in a wavefront obj file, witch can be then
+visualized using external renderer.
+
+
+
+
+
diff --git a/doc/index.org b/index.org
similarity index 55%
rename from doc/index.org
rename to index.org
index 5f5bb8a..0b806a0 100644
--- a/doc/index.org
+++ b/index.org
@@ -17,25 +17,54 @@
This collection contains lots of applications:
-+ games
-+ graphics tests (2D/3D/4D)
-+ algorithms tests
-+ utilities
++ Games.
++ Graphics tests (2D/3D/4D).
++ Algorithms tests.
++ Utilities.
+
I wrote them long time ago mostly in QBasic, some in x86 assembly for
-use under DOS environment.
+use under DOS operating system.
Few sample applications from the package:
-+ [[file:../games/checkers/index.html][Checkers game]]
-+ [[file:../games/mario/index.html][Super Mario clone]]
-+ [[file:../graphics/3D/3dSynthezier/doc/index.html][3D synthezer]]
-+ [[file:../graphics/3D/ray casting engine/index.html][Ray casting 3D engine]]
-+ [[file:../graphics/4D engine/index.html][4D engine]]
-+ [[file:../math/3D graph/index.html][Interactive 3D graph for visualizing formulas]]
-+ [[file:../math/biorythm/index.html][Biorythm calculator]]
-+ [[file:../networking/digital data over analog audio channel/index.html][Digital data over analog audio channel]]
-+ [[file:../simulation/explosion/index.html][Explosion simulation]]
-+ [[file:../simulation/life/index.html][Game of life]]
+
+* Checkers
+Play checkers against the computer with any board size and any amount
+of caps. Does thinking by recursively testing many possible scenarios
+with any depth.
+
+Since it is slow QBasic implementation, it isn't practical to play
+with many caps or big thinking depth, for reasonable responce time.
+
+See directory:
+: games/checkers
+
+[[file:games/checkers/screenshot.png]]
+
+
+* Platform game
+Jump around, collect coins and dont touch snails! Inspired by Super
+Mario Bros.
+
+See directory:
+: games/platform
+
+[[file:games/platform/screenshot.png]]
+
+
+* 3D Synthezier
+Parses scene definition language and creates 3D world based on
+it. Result will be in a [[https://en.wikipedia.org/wiki/Wavefront_.obj_file][wavefront obj file]], witch can be then
+visualized using external renderer.
+
+See directory:
+: graphics/3D/3D Synthezier
+
+[[file:graphics/3D/3D Synthezier/doc/rectangular city, 1.jpeg]]
+
+[[file:graphics/3D/3D Synthezier/doc/hexagonal city, 2.jpeg]]
+
+[[file:graphics/3D/3D Synthezier/doc/index.html][Read more]]
* (document settings) :noexport:
** use dark style for TWBS-HTML exporter
diff --git a/unsorted/font.bas b/misc/font.bas
similarity index 100%
rename from unsorted/font.bas
rename to misc/font.bas
diff --git a/unsorted/key.bas b/misc/key.bas
similarity index 100%
rename from unsorted/key.bas
rename to misc/key.bas
diff --git a/unsorted/lightpe2.bas b/misc/lightpe2.bas
similarity index 100%
rename from unsorted/lightpe2.bas
rename to misc/lightpe2.bas
diff --git a/unsorted/lightpen.bas b/misc/lightpen.bas
similarity index 100%
rename from unsorted/lightpen.bas
rename to misc/lightpen.bas
diff --git a/unsorted/matem.bas b/misc/matem.bas
similarity index 100%
rename from unsorted/matem.bas
rename to misc/matem.bas
diff --git a/unsorted/modes.bas b/misc/modes.bas
similarity index 100%
rename from unsorted/modes.bas
rename to misc/modes.bas
diff --git a/unsorted/pal.bas b/misc/pal.bas
similarity index 100%
rename from unsorted/pal.bas
rename to misc/pal.bas
diff --git a/unsorted/passw.bas b/misc/passw.bas
similarity index 100%
rename from unsorted/passw.bas
rename to misc/passw.bas
diff --git a/unsorted/passw.dat b/misc/passw.dat
similarity index 100%
rename from unsorted/passw.dat
rename to misc/passw.dat
diff --git a/unsorted/tim.dat b/misc/tim.dat
similarity index 100%
rename from unsorted/tim.dat
rename to misc/tim.dat
diff --git a/unsorted/timer.bas b/misc/timer.bas
similarity index 100%
rename from unsorted/timer.bas
rename to misc/timer.bas
diff --git a/wsystem.bas b/misc/wsystem.bas
similarity index 100%
rename from wsystem.bas
rename to misc/wsystem.bas
diff --git a/tools/update web site b/tools/update web site
index e6d3056..48bb5d6 100755
--- a/tools/update web site
+++ b/tools/update web site
@@ -1,6 +1,5 @@
#!/bin/bash
-
-cd "${0%/*}"
+cd "${0%/*}"; if [ "$1" != "T" ]; then gnome-terminal -e "'$0' T"; exit; fi;
cd ..
@@ -10,3 +9,7 @@ rsync -avz --delete -e 'ssh -p 10006' ./ \
--include="*.png" \
--exclude="*" \
n0@www3.svjatoslav.eu:/mnt/big/projects/qbasicapps/
+
+echo ""
+echo "Press ENTER to close this window."
+read
--
2.20.1