"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:27 -->
+<!-- 2025-07-31 to 03:14 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Fractals</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#orgdb5ca43">1. Fractal circles</a></li>
-<li><a href="#orgf97f64c">2. Fractal circles animated</a></li>
-<li><a href="#org341855f">3. Fractal of squares</a></li>
-<li><a href="#org7f2b476">4. Fractal of squares animated</a></li>
-<li><a href="#orgbcfd4b5">5. Fractal of trees</a></li>
+<li><a href="#orge10fd79">1. Fractal circles</a></li>
+<li><a href="#org4400a17">2. Fractal circles animated</a></li>
+<li><a href="#org94cb302">3. Fractal of squares</a></li>
+<li><a href="#orgb78cab0">4. Fractal of squares animated</a></li>
+<li><a href="#org479457c">5. Fractal of trees</a></li>
</ul>
</div>
</div>
</style>
-<div id="outline-container-orgdb5ca43" class="outline-2">
-<h2 id="orgdb5ca43"><span class="section-number-2">1.</span> Fractal circles</h2>
+<div id="outline-container-orge10fd79" class="outline-2">
+<h2 id="orge10fd79"><span class="section-number-2">1.</span> Fractal circles</h2>
<div class="outline-text-2" id="text-1">
<p>
This QBasic program generates a visually captivating spiral fractal
</p>
-<div id="orgfa586bb" class="figure">
+<div id="orga833f06" class="figure">
<p><a href="fractal circles.bas" class="responsive-img"><img src="fractal%20circles.png" alt="fractal%20circles.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgf97f64c" class="outline-2">
-<h2 id="orgf97f64c"><span class="section-number-2">2.</span> Fractal circles animated</h2>
+<div id="outline-container-org4400a17" class="outline-2">
+<h2 id="org4400a17"><span class="section-number-2">2.</span> Fractal circles animated</h2>
<div class="outline-text-2" id="text-2">
<p>
This QBasic program creates an animated fractal composed of circles,
</div>
</div>
-<div id="outline-container-org341855f" class="outline-2">
-<h2 id="org341855f"><span class="section-number-2">3.</span> Fractal of squares</h2>
+<div id="outline-container-org94cb302" class="outline-2">
+<h2 id="org94cb302"><span class="section-number-2">3.</span> Fractal of squares</h2>
<div class="outline-text-2" id="text-3">
<p>
This QBasic program generates and displays a fractal pattern composed of squares.
</p>
-<div id="org61d6183" class="figure">
+<div id="org04218d5" class="figure">
<p><a href="fractal squares.bas" class="responsive-img"><img src="fractal%20squares,%201.png" alt="fractal%20squares,%201.png" class="responsive-img" /></a>
</p>
</div>
-<div id="org9c7662d" class="figure">
+<div id="orgf7a38b9" class="figure">
<p><a href="fractal squares.bas" class="responsive-img"><img src="fractal%20squares,%202.png" alt="fractal%20squares,%202.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-org7f2b476" class="outline-2">
-<h2 id="org7f2b476"><span class="section-number-2">4.</span> Fractal of squares animated</h2>
+<div id="outline-container-orgb78cab0" class="outline-2">
+<h2 id="orgb78cab0"><span class="section-number-2">4.</span> Fractal of squares animated</h2>
<div class="outline-text-2" id="text-4">
<p>
This QBasic program generates an animated fractal pattern composed of
</div>
</div>
-<div id="outline-container-orgbcfd4b5" class="outline-2">
-<h2 id="orgbcfd4b5"><span class="section-number-2">5.</span> Fractal of trees</h2>
+<div id="outline-container-org479457c" class="outline-2">
+<h2 id="org479457c"><span class="section-number-2">5.</span> Fractal of trees</h2>
<div class="outline-text-2" id="text-5">
<p>
QBasic program that generates a visually appealing fractal tree
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:27</p>
+<p class="date">Created: 2025-07-31 to 03:14</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:27 -->
+<!-- 2025-07-31 to 03:14 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Spiral series</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org975cad1">1. Spiral with increasing density</a></li>
-<li><a href="#org3cc3142">2. Spiral with varying height</a></li>
-<li><a href="#org1afb223">3. Shaded spiral</a></li>
-<li><a href="#org86798cd">4. Sphere forming spiral</a></li>
-<li><a href="#org290b12d">5. Textured spherical spiral</a></li>
-<li><a href="#orgcc9ea12">6. Textured and shaded spherical spiral</a></li>
+<li><a href="#org93cf390">1. Spiral with increasing density</a></li>
+<li><a href="#org6056ccd">2. Spiral with varying height</a></li>
+<li><a href="#orgdd2cc2b">3. Shaded spiral</a></li>
+<li><a href="#orgbdac5aa">4. Sphere forming spiral</a></li>
+<li><a href="#org3b21dbd">5. Textured spherical spiral</a></li>
+<li><a href="#orgbd6d945">6. Textured and shaded spherical spiral</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-org975cad1" class="outline-2">
-<h2 id="org975cad1"><span class="section-number-2">1.</span> Spiral with increasing density</h2>
+<div id="outline-container-org93cf390" class="outline-2">
+<h2 id="org93cf390"><span class="section-number-2">1.</span> Spiral with increasing density</h2>
<div class="outline-text-2" id="text-1">
-<div id="orgc90ba51" class="figure">
+<div id="org596b8b7" class="figure">
<p><img src="spiral.png" alt="spiral.png" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org3cc3142" class="outline-2">
-<h2 id="org3cc3142"><span class="section-number-2">2.</span> Spiral with varying height</h2>
+<div id="outline-container-org6056ccd" class="outline-2">
+<h2 id="org6056ccd"><span class="section-number-2">2.</span> Spiral with varying height</h2>
<div class="outline-text-2" id="text-2">
-<div id="orgce0bd16" class="figure">
+<div id="org9b6b521" class="figure">
<p><img src="spiral, 2.png" alt="spiral, 2.png" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org1afb223" class="outline-2">
-<h2 id="org1afb223"><span class="section-number-2">3.</span> Shaded spiral</h2>
+<div id="outline-container-orgdd2cc2b" class="outline-2">
+<h2 id="orgdd2cc2b"><span class="section-number-2">3.</span> Shaded spiral</h2>
<div class="outline-text-2" id="text-3">
-<div id="org45bbde4" class="figure">
+<div id="org1e6389e" class="figure">
<p><img src="spiral, 3.png" alt="spiral, 3.png" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org86798cd" class="outline-2">
-<h2 id="org86798cd"><span class="section-number-2">4.</span> Sphere forming spiral</h2>
+<div id="outline-container-orgbdac5aa" class="outline-2">
+<h2 id="orgbdac5aa"><span class="section-number-2">4.</span> Sphere forming spiral</h2>
<div class="outline-text-2" id="text-4">
<p>
Similar to previous spiral, Line segments are connected between the
</p>
-<div id="org9708799" class="figure">
+<div id="orgbdd1a93" class="figure">
<p><img src="spiral, 4, 1.png" alt="spiral, 4, 1.png" class="responsive-img" />
</p>
</div>
</p>
-<div id="orga4fad57" class="figure">
+<div id="org13a6eef" class="figure">
<p><img src="spiral, 4, 2.png" alt="spiral, 4, 2.png" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org290b12d" class="outline-2">
-<h2 id="org290b12d"><span class="section-number-2">5.</span> Textured spherical spiral</h2>
+<div id="outline-container-org3b21dbd" class="outline-2">
+<h2 id="org3b21dbd"><span class="section-number-2">5.</span> Textured spherical spiral</h2>
<div class="outline-text-2" id="text-5">
-<div id="orge958d77" class="figure">
+<div id="org6414dc3" class="figure">
<p><img src="spiral, 5.png" alt="spiral, 5.png" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-orgcc9ea12" class="outline-2">
-<h2 id="orgcc9ea12"><span class="section-number-2">6.</span> Textured and shaded spherical spiral</h2>
+<div id="outline-container-orgbd6d945" class="outline-2">
+<h2 id="orgbd6d945"><span class="section-number-2">6.</span> Textured and shaded spherical spiral</h2>
<div class="outline-text-2" id="text-6">
-<div id="org50929b9" class="figure">
+<div id="org00b34a5" class="figure">
<p><img src="spiral, 6.png" alt="spiral, 6.png" class="responsive-img" />
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:27</p>
+<p class="date">Created: 2025-07-31 to 03:14</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:27 -->
+<!-- 2025-07-31 to 03:14 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Algorithmic textures</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#orgecb4537">1. Circular waves</a></li>
-<li><a href="#org3ba73ad">2. Diamond square clouds</a></li>
-<li><a href="#org96f0dfa">3. Old paper</a></li>
-<li><a href="#org034a978">4. Wood</a></li>
-<li><a href="#orge0f3962">5. Yellow flame</a></li>
+<li><a href="#org1ce68fb">1. Circular waves</a></li>
+<li><a href="#orgef23133">2. Diamond square clouds</a></li>
+<li><a href="#org01d303c">3. Old paper</a></li>
+<li><a href="#org5090546">4. Wood</a></li>
+<li><a href="#orgc109a5c">5. Yellow flame</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-orgecb4537" class="outline-2">
-<h2 id="orgecb4537"><span class="section-number-2">1.</span> Circular waves</h2>
+<div id="outline-container-org1ce68fb" class="outline-2">
+<h2 id="org1ce68fb"><span class="section-number-2">1.</span> Circular waves</h2>
<div class="outline-text-2" id="text-1">
<p>
This QBasic program creates visually captivating circular wave
</div>
</div>
-<div id="outline-container-org3ba73ad" class="outline-2">
-<h2 id="org3ba73ad"><span class="section-number-2">2.</span> Diamond square clouds</h2>
+<div id="outline-container-orgef23133" class="outline-2">
+<h2 id="orgef23133"><span class="section-number-2">2.</span> Diamond square clouds</h2>
<div class="outline-text-2" id="text-2">
<p>
This QBasic program demonstrates the Diamond-Square algorithm, a
</div>
</div>
-<div id="outline-container-org96f0dfa" class="outline-2">
-<h2 id="org96f0dfa"><span class="section-number-2">3.</span> Old paper</h2>
+<div id="outline-container-org01d303c" class="outline-2">
+<h2 id="org01d303c"><span class="section-number-2">3.</span> Old paper</h2>
<div class="outline-text-2" id="text-3">
<p>
This QBasic program generates a procedural texture that simulates the
</div>
</div>
-<div id="outline-container-org034a978" class="outline-2">
-<h2 id="org034a978"><span class="section-number-2">4.</span> Wood</h2>
+<div id="outline-container-org5090546" class="outline-2">
+<h2 id="org5090546"><span class="section-number-2">4.</span> Wood</h2>
<div class="outline-text-2" id="text-4">
<p>
This QBasic program creates a visually appealing simulation of a wood
</div>
</div>
-<div id="outline-container-orge0f3962" class="outline-2">
-<h2 id="orge0f3962"><span class="section-number-2">5.</span> Yellow flame</h2>
+<div id="outline-container-orgc109a5c" class="outline-2">
+<h2 id="orgc109a5c"><span class="section-number-2">5.</span> Yellow flame</h2>
<div class="outline-text-2" id="text-5">
<p>
"Yellow Flame" is a visually captivating program written in QBasic
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:27</p>
+<p class="date">Created: 2025-07-31 to 03:14</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:28 -->
+<!-- 2025-07-31 to 03:15 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>3D Synthezier</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#orgcb48ea0">1. Operating principle</a>
+<li><a href="#orgf1e21ea">1. Operating principle</a>
<ul>
-<li><a href="#org74909cb">1.1. Rectangular city</a></li>
-<li><a href="#org9c20741">1.2. Hexagonal city</a></li>
+<li><a href="#org79228ca">1.1. Rectangular city</a></li>
+<li><a href="#org67bf4d5">1.2. Hexagonal city</a></li>
</ul>
</li>
-<li><a href="#org4184df1">2. Scene description language</a>
+<li><a href="#org38cfe7d">2. Scene description language</a>
<ul>
-<li><a href="#orgfa47201">2.1. here</a></li>
-<li><a href="#org25f7a07">2.2. p</a></li>
-<li><a href="#orgc7305e7">2.3. f</a></li>
-<li><a href="#orge092d7b">2.4. warn</a></li>
-<li><a href="#org91dc227">2.5. end</a></li>
-<li><a href="#orgb7ffae4">2.6. mtl</a></li>
-<li><a href="#org0bcaa7b">2.7. mtlrnd</a></li>
-<li><a href="#orgc0632e7">2.8. obj</a></li>
-<li><a href="#org4e62096">2.9. rnd</a></li>
-<li><a href="#orgf81c443">2.10. #</a></li>
-<li><a href="#org26c545e">2.11. out</a></li>
-<li><a href="#org4e5c2b0">2.12. set</a></li>
-<li><a href="#org0b63a1f">2.13. variables usage</a></li>
-<li><a href="#orgba5cc69">2.14. cmp</a></li>
-<li><a href="#orgd16a527">2.15. ?</a></li>
-<li><a href="#org0f19c61">2.16. dum</a></li>
+<li><a href="#org21a84d6">2.1. here</a></li>
+<li><a href="#org30a93a4">2.2. p</a></li>
+<li><a href="#orge890de9">2.3. f</a></li>
+<li><a href="#orga52efe9">2.4. warn</a></li>
+<li><a href="#org1542632">2.5. end</a></li>
+<li><a href="#orgb6cf135">2.6. mtl</a></li>
+<li><a href="#orge608038">2.7. mtlrnd</a></li>
+<li><a href="#orgf68c29b">2.8. obj</a></li>
+<li><a href="#org9db9179">2.9. rnd</a></li>
+<li><a href="#org3b7105d">2.10. #</a></li>
+<li><a href="#org4478b82">2.11. out</a></li>
+<li><a href="#org4e7d0e2">2.12. set</a></li>
+<li><a href="#org1a0a1af">2.13. variables usage</a></li>
+<li><a href="#orgadd8b46">2.14. cmp</a></li>
+<li><a href="#org6713c46">2.15. ?</a></li>
+<li><a href="#orgee41c2f">2.16. dum</a></li>
</ul>
</li>
-<li><a href="#orgda9265a">3. Installation</a>
+<li><a href="#org11a4944">3. Installation</a>
<ul>
-<li><a href="#org3502c1e">3.1. System requirements</a></li>
-<li><a href="#org65c6c2e">3.2. Directory layout</a></li>
+<li><a href="#org225a430">3.1. System requirements</a></li>
+<li><a href="#org95f9eb2">3.2. Directory layout</a></li>
</ul>
</li>
-<li><a href="#org3ed8023">4. Usage</a></li>
+<li><a href="#orgdd2d6df">4. Usage</a></li>
</ul>
</div>
</div>
</style>
-<div id="outline-container-orgcb48ea0" class="outline-2">
-<h2 id="orgcb48ea0"><span class="section-number-2">1.</span> Operating principle</h2>
+<div id="outline-container-orgf1e21ea" class="outline-2">
+<h2 id="orgf1e21ea"><span class="section-number-2">1.</span> Operating principle</h2>
<div class="outline-text-2" id="text-1">
<p>
Parses scene definition language and creates 3D world based on
</p>
</div>
-<div id="outline-container-org74909cb" class="outline-3">
-<h3 id="org74909cb"><span class="section-number-3">1.1.</span> Rectangular city</h3>
+<div id="outline-container-org79228ca" class="outline-3">
+<h3 id="org79228ca"><span class="section-number-3">1.1.</span> Rectangular city</h3>
<div class="outline-text-3" id="text-1-1">
-<div id="org628eaae" class="figure">
+<div id="org3f85cfa" class="figure">
<p><img src="rectangular city, 1.jpeg" alt="rectangular city, 1.jpeg" class="responsive-img" />
</p>
</div>
-<div id="org3fad009" class="figure">
+<div id="org4da2945" class="figure">
<p><img src="rectangular city, 2.jpeg" alt="rectangular city, 2.jpeg" class="responsive-img" />
</p>
</div>
-<div id="org007bf4c" class="figure">
+<div id="org8a82f04" class="figure">
<p><img src="rectangular city, 3.jpeg" alt="rectangular city, 3.jpeg" class="responsive-img" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org9c20741" class="outline-3">
-<h3 id="org9c20741"><span class="section-number-3">1.2.</span> Hexagonal city</h3>
+<div id="outline-container-org67bf4d5" class="outline-3">
+<h3 id="org67bf4d5"><span class="section-number-3">1.2.</span> Hexagonal city</h3>
<div class="outline-text-3" id="text-1-2">
-<div id="orgd2a1640" class="figure">
+<div id="orgd810ade" class="figure">
<p><img src="hexagonal city, 1.jpeg" alt="hexagonal city, 1.jpeg" class="responsive-img" />
</p>
</div>
-<div id="org9b78137" class="figure">
+<div id="org6217d45" class="figure">
<p><img src="hexagonal city, 2.jpeg" alt="hexagonal city, 2.jpeg" class="responsive-img" />
</p>
</div>
-<div id="org7763082" class="figure">
+<div id="org5bab068" class="figure">
<p><img src="hexagonal city, 3.jpeg" alt="hexagonal city, 3.jpeg" class="responsive-img" />
</p>
</div>
</div>
</div>
</div>
-<div id="outline-container-org4184df1" class="outline-2">
-<h2 id="org4184df1"><span class="section-number-2">2.</span> Scene description language</h2>
+<div id="outline-container-org38cfe7d" class="outline-2">
+<h2 id="org38cfe7d"><span class="section-number-2">2.</span> Scene description language</h2>
<div class="outline-text-2" id="text-2">
<p>
See also examples.
</p>
</div>
-<div id="outline-container-orgfa47201" class="outline-3">
-<h3 id="orgfa47201"><span class="section-number-3">2.1.</span> here</h3>
+<div id="outline-container-org21a84d6" class="outline-3">
+<h3 id="org21a84d6"><span class="section-number-3">2.1.</span> here</h3>
<div class="outline-text-3" id="text-2-1">
<pre class="example">
here
</p>
</div>
</div>
-<div id="outline-container-org25f7a07" class="outline-3">
-<h3 id="org25f7a07"><span class="section-number-3">2.2.</span> p</h3>
+<div id="outline-container-org30a93a4" class="outline-3">
+<h3 id="org30a93a4"><span class="section-number-3">2.2.</span> p</h3>
<div class="outline-text-3" id="text-2-2">
<pre class="example">
p x y z
</p>
</div>
</div>
-<div id="outline-container-orgc7305e7" class="outline-3">
-<h3 id="orgc7305e7"><span class="section-number-3">2.3.</span> f</h3>
+<div id="outline-container-orge890de9" class="outline-3">
+<h3 id="orge890de9"><span class="section-number-3">2.3.</span> f</h3>
<div class="outline-text-3" id="text-2-3">
<pre class="example">
f p1 p2 p3 p4
</p>
</div>
</div>
-<div id="outline-container-orge092d7b" class="outline-3">
-<h3 id="orge092d7b"><span class="section-number-3">2.4.</span> warn</h3>
+<div id="outline-container-orga52efe9" class="outline-3">
+<h3 id="orga52efe9"><span class="section-number-3">2.4.</span> warn</h3>
<div class="outline-text-3" id="text-2-4">
<pre class="example">
warn <message>
</p>
</div>
</div>
-<div id="outline-container-org91dc227" class="outline-3">
-<h3 id="org91dc227"><span class="section-number-3">2.5.</span> end</h3>
+<div id="outline-container-org1542632" class="outline-3">
+<h3 id="org1542632"><span class="section-number-3">2.5.</span> end</h3>
<div class="outline-text-3" id="text-2-5">
<pre class="example">
end
</p>
</div>
</div>
-<div id="outline-container-orgb7ffae4" class="outline-3">
-<h3 id="orgb7ffae4"><span class="section-number-3">2.6.</span> mtl</h3>
+<div id="outline-container-orgb6cf135" class="outline-3">
+<h3 id="orgb6cf135"><span class="section-number-3">2.6.</span> mtl</h3>
<div class="outline-text-3" id="text-2-6">
<pre class="example">
mtl material
</p>
</div>
</div>
-<div id="outline-container-org0bcaa7b" class="outline-3">
-<h3 id="org0bcaa7b"><span class="section-number-3">2.7.</span> mtlrnd</h3>
+<div id="outline-container-orge608038" class="outline-3">
+<h3 id="orge608038"><span class="section-number-3">2.7.</span> mtlrnd</h3>
<div class="outline-text-3" id="text-2-7">
<pre class="example">
mtlrnd material ...
</p>
</div>
</div>
-<div id="outline-container-orgc0632e7" class="outline-3">
-<h3 id="orgc0632e7"><span class="section-number-3">2.8.</span> obj</h3>
+<div id="outline-container-orgf68c29b" class="outline-3">
+<h3 id="orgf68c29b"><span class="section-number-3">2.8.</span> obj</h3>
<div class="outline-text-3" id="text-2-8">
<pre class="example">
obj object xz45 xy20 x+3 y*2
</p>
-<div id="orgca1d883" class="figure">
+<div id="org77255dc" class="figure">
<p><img src="rotation.png" alt="rotation.png" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org4e62096" class="outline-3">
-<h3 id="org4e62096"><span class="section-number-3">2.9.</span> rnd</h3>
+<div id="outline-container-org9db9179" class="outline-3">
+<h3 id="org9db9179"><span class="section-number-3">2.9.</span> rnd</h3>
<div class="outline-text-3" id="text-2-9">
<pre class="example">
rnd p^1^2^3 p^7^2^1
</p>
</div>
</div>
-<div id="outline-container-orgf81c443" class="outline-3">
-<h3 id="orgf81c443"><span class="section-number-3">2.10.</span> #</h3>
+<div id="outline-container-org3b7105d" class="outline-3">
+<h3 id="org3b7105d"><span class="section-number-3">2.10.</span> #</h3>
<div class="outline-text-3" id="text-2-10">
<pre class="example">
# whatever text
</p>
</div>
</div>
-<div id="outline-container-org26c545e" class="outline-3">
-<h3 id="org26c545e"><span class="section-number-3">2.11.</span> out</h3>
+<div id="outline-container-org4478b82" class="outline-3">
+<h3 id="org4478b82"><span class="section-number-3">2.11.</span> out</h3>
<div class="outline-text-3" id="text-2-11">
<pre class="example">
out file
</p>
</div>
</div>
-<div id="outline-container-org4e5c2b0" class="outline-3">
-<h3 id="org4e5c2b0"><span class="section-number-3">2.12.</span> set</h3>
+<div id="outline-container-org4e7d0e2" class="outline-3">
+<h3 id="org4e7d0e2"><span class="section-number-3">2.12.</span> set</h3>
<div class="outline-text-3" id="text-2-12">
<pre class="example">
set variable contents
</p>
</div>
</div>
-<div id="outline-container-org0b63a1f" class="outline-3">
-<h3 id="org0b63a1f"><span class="section-number-3">2.13.</span> variables usage</h3>
+<div id="outline-container-org1a0a1af" class="outline-3">
+<h3 id="org1a0a1af"><span class="section-number-3">2.13.</span> variables usage</h3>
<div class="outline-text-3" id="text-2-13">
<pre class="example">
anycommand %1 anything
</p>
</div>
</div>
-<div id="outline-container-orgba5cc69" class="outline-3">
-<h3 id="orgba5cc69"><span class="section-number-3">2.14.</span> cmp</h3>
+<div id="outline-container-orgadd8b46" class="outline-3">
+<h3 id="orgadd8b46"><span class="section-number-3">2.14.</span> cmp</h3>
<div class="outline-text-3" id="text-2-14">
<pre class="example">
cmp flag string1 string2
</p>
</div>
</div>
-<div id="outline-container-orgd16a527" class="outline-3">
-<h3 id="orgd16a527"><span class="section-number-3">2.15.</span> ?</h3>
+<div id="outline-container-org6713c46" class="outline-3">
+<h3 id="org6713c46"><span class="section-number-3">2.15.</span> ?</h3>
<div class="outline-text-3" id="text-2-15">
<pre class="example">
?flag anycommand
</p>
</div>
</div>
-<div id="outline-container-org0f19c61" class="outline-3">
-<h3 id="org0f19c61"><span class="section-number-3">2.16.</span> dum</h3>
+<div id="outline-container-orgee41c2f" class="outline-3">
+<h3 id="orgee41c2f"><span class="section-number-3">2.16.</span> dum</h3>
<div class="outline-text-3" id="text-2-16">
<pre class="example">
dum
</div>
</div>
-<div id="outline-container-orgda9265a" class="outline-2">
-<h2 id="orgda9265a"><span class="section-number-2">3.</span> Installation</h2>
+<div id="outline-container-org11a4944" class="outline-2">
+<h2 id="org11a4944"><span class="section-number-2">3.</span> Installation</h2>
<div class="outline-text-2" id="text-3">
<p>
Edit <b>bin/3dparse.bas</b> file and update include path in there.
</p>
</div>
-<div id="outline-container-org3502c1e" class="outline-3">
-<h3 id="org3502c1e"><span class="section-number-3">3.1.</span> System requirements</h3>
+<div id="outline-container-org225a430" class="outline-3">
+<h3 id="org225a430"><span class="section-number-3">3.1.</span> System requirements</h3>
<div class="outline-text-3" id="text-3-1">
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
</div>
</div>
-<div id="outline-container-org65c6c2e" class="outline-3">
-<h3 id="org65c6c2e"><span class="section-number-3">3.2.</span> Directory layout</h3>
+<div id="outline-container-org95f9eb2" class="outline-3">
+<h3 id="org95f9eb2"><span class="section-number-3">3.2.</span> Directory layout</h3>
<div class="outline-text-3" id="text-3-2">
<dl class="org-dl">
<dt>bin</dt><dd><dl class="org-dl">
</div>
</div>
-<div id="outline-container-org3ed8023" class="outline-2">
-<h2 id="org3ed8023"><span class="section-number-2">4.</span> Usage</h2>
+<div id="outline-container-orgdd2d6df" class="outline-2">
+<h2 id="orgdd2d6df"><span class="section-number-2">4.</span> Usage</h2>
<div class="outline-text-2" id="text-4">
<p>
Make sure you have QB binaries in your PATH. Execute
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:28</p>
+<p class="date">Created: 2025-07-31 to 03:15</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:29 -->
+<!-- 2025-07-31 to 03:15 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Miscellaneous 3D graphics demos</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org00a0fea">1. Rotating exclamation mark</a></li>
-<li><a href="#orgb65348b">2. 3D bouncing ball</a></li>
-<li><a href="#org4b63f7c">3. 3D text in a room</a></li>
-<li><a href="#org623a062">4. 3D bouncing cubes on grid floor</a></li>
-<li><a href="#orgc1fa852">5. Matrix math for rotation in 3D space</a></li>
-<li><a href="#org0a76ec7">6. Maze explorer</a></li>
-<li><a href="#org4dd3bb2">7. Tank animation</a></li>
-<li><a href="#orga21329b">8. Tiled room</a></li>
+<li><a href="#orgc81c446">1. Rotating exclamation mark</a></li>
+<li><a href="#org61259cc">2. 3D bouncing ball</a></li>
+<li><a href="#orgf69b2e0">3. 3D text in a room</a></li>
+<li><a href="#orgaf29a36">4. 3D bouncing cubes on grid floor</a></li>
+<li><a href="#org78ed332">5. Matrix math for rotation in 3D space</a></li>
+<li><a href="#org38cc528">6. Maze explorer</a></li>
+<li><a href="#org2692e75">7. Tank animation</a></li>
+<li><a href="#org47d73de">8. Tiled room</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-org00a0fea" class="outline-2">
-<h2 id="org00a0fea"><span class="section-number-2">1.</span> Rotating exclamation mark</h2>
+<div id="outline-container-orgc81c446" class="outline-2">
+<h2 id="orgc81c446"><span class="section-number-2">1.</span> Rotating exclamation mark</h2>
<div class="outline-text-2" id="text-1">
<p>
Wireframe 3D model of a rotating exclamation mark.
</div>
</div>
-<div id="outline-container-orgb65348b" class="outline-2">
-<h2 id="orgb65348b"><span class="section-number-2">2.</span> 3D bouncing ball</h2>
+<div id="outline-container-org61259cc" class="outline-2">
+<h2 id="org61259cc"><span class="section-number-2">2.</span> 3D bouncing ball</h2>
<div class="outline-text-2" id="text-2">
<p>
This QBasic program creates a visually engaging 3D animation of a
</div>
</div>
-<div id="outline-container-org4b63f7c" class="outline-2">
-<h2 id="org4b63f7c"><span class="section-number-2">3.</span> 3D text in a room</h2>
+<div id="outline-container-orgf69b2e0" class="outline-2">
+<h2 id="orgf69b2e0"><span class="section-number-2">3.</span> 3D text in a room</h2>
<div class="outline-text-2" id="text-3">
<p>
Wireframe 3D text hanging in a wireframe 3D room. User can look and
</div>
</div>
-<div id="outline-container-org623a062" class="outline-2">
-<h2 id="org623a062"><span class="section-number-2">4.</span> 3D bouncing cubes on grid floor</h2>
+<div id="outline-container-orgaf29a36" class="outline-2">
+<h2 id="orgaf29a36"><span class="section-number-2">4.</span> 3D bouncing cubes on grid floor</h2>
<div class="outline-text-2" id="text-4">
<p>
3D wireframe cubes bouncing on a grid floor, creating an immersive and
</div>
</div>
-<div id="outline-container-orgc1fa852" class="outline-2">
-<h2 id="orgc1fa852"><span class="section-number-2">5.</span> Matrix math for rotation in 3D space</h2>
+<div id="outline-container-org78ed332" class="outline-2">
+<h2 id="org78ed332"><span class="section-number-2">5.</span> Matrix math for rotation in 3D space</h2>
<div class="outline-text-2" id="text-5">
<p>
Instead of combining simple 2D rotors, pixels in this 3D space are
</div>
</div>
-<div id="outline-container-org0a76ec7" class="outline-2">
-<h2 id="org0a76ec7"><span class="section-number-2">6.</span> Maze explorer</h2>
+<div id="outline-container-org38cc528" class="outline-2">
+<h2 id="org38cc528"><span class="section-number-2">6.</span> Maze explorer</h2>
<div class="outline-text-2" id="text-6">
<p>
The Evolving 3D Maze Explorer is a QBasic program that generates and
</p>
-<div id="orgce49d77" class="figure">
+<div id="orgef17cc4" class="figure">
<p><a href="Maze%20explorer.bas" class="responsive-img"><img src="Maze%20explorer.png" alt="Maze%20explorer.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-org4dd3bb2" class="outline-2">
-<h2 id="org4dd3bb2"><span class="section-number-2">7.</span> Tank animation</h2>
+<div id="outline-container-org2692e75" class="outline-2">
+<h2 id="org2692e75"><span class="section-number-2">7.</span> Tank animation</h2>
<div class="outline-text-2" id="text-7">
<p>
Animated tank driving through the bridge back and forward. User can
</div>
</div>
-<div id="outline-container-orga21329b" class="outline-2">
-<h2 id="orga21329b"><span class="section-number-2">8.</span> Tiled room</h2>
+<div id="outline-container-org47d73de" class="outline-2">
+<h2 id="org47d73de"><span class="section-number-2">8.</span> Tiled room</h2>
<div class="outline-text-2" id="text-8">
<p>
Room with some tiles on the wall and on the floor. User can freely fly
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:29</p>
+<p class="date">Created: 2025-07-31 to 03:15</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:29 -->
+<!-- 2025-07-31 to 03:16 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Space themed 3D graphics</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org9ee68ab">1. Galaxy explorer</a></li>
-<li><a href="#org3084c19">2. Rocket simulator</a></li>
-<li><a href="#org8dbb7ff">3. Stars</a></li>
-<li><a href="#org38fc047">4. Universe explorer</a></li>
+<li><a href="#orgeef3ecb">1. Galaxy explorer</a></li>
+<li><a href="#org15b897d">2. Rocket simulator</a></li>
+<li><a href="#orge7ac6e2">3. Stars</a></li>
+<li><a href="#orgf90bb5d">4. Universe explorer</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-org9ee68ab" class="outline-2">
-<h2 id="org9ee68ab"><span class="section-number-2">1.</span> Galaxy explorer</h2>
+<div id="outline-container-orgeef3ecb" class="outline-2">
+<h2 id="orgeef3ecb"><span class="section-number-2">1.</span> Galaxy explorer</h2>
<div class="outline-text-2" id="text-1">
<p>
This QBasic program renders a navigable 3D point cloud galaxy,
</p>
-<div id="orge37e684" class="figure">
+<div id="orgc3bf9e7" class="figure">
<p><a href="Galaxy%20explorer.bas" class="responsive-img"><img src="Galaxy%20explorer.png" alt="Galaxy%20explorer.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-org3084c19" class="outline-2">
-<h2 id="org3084c19"><span class="section-number-2">2.</span> Rocket simulator</h2>
+<div id="outline-container-org15b897d" class="outline-2">
+<h2 id="org15b897d"><span class="section-number-2">2.</span> Rocket simulator</h2>
<div class="outline-text-2" id="text-2">
<p>
QBasic program that simulates the takeoff and flight of a rocket from
</div>
</div>
-<div id="outline-container-org8dbb7ff" class="outline-2">
-<h2 id="org8dbb7ff"><span class="section-number-2">3.</span> Stars</h2>
+<div id="outline-container-orge7ac6e2" class="outline-2">
+<h2 id="orge7ac6e2"><span class="section-number-2">3.</span> Stars</h2>
<div class="outline-text-2" id="text-3">
<p>
The 3D Starfield Simulation is a QBasic program that creates a
</div>
</div>
-<div id="outline-container-org38fc047" class="outline-2">
-<h2 id="org38fc047"><span class="section-number-2">4.</span> Universe explorer</h2>
+<div id="outline-container-orgf90bb5d" class="outline-2">
+<h2 id="orgf90bb5d"><span class="section-number-2">4.</span> Universe explorer</h2>
<div class="outline-text-2" id="text-4">
<p>
This QBasic program that simulates a navigable 3D universe. Users can
</dl>
-<div id="org23b084c" class="figure">
+<div id="orgcc12d7a" class="figure">
<p><a href="Universe%20explorer/Universe%20explorer.bas" class="responsive-img"><img src="Universe%20explorer/1.png" alt="1.png" class="responsive-img" /></a>
</p>
</div>
-<div id="org10479cc" class="figure">
+<div id="orgb35dd61" class="figure">
<p><a href="Universe%20explorer/Universe%20explorer.bas" class="responsive-img"><img src="Universe%20explorer/2.png" alt="2.png" class="responsive-img" /></a>
</p>
</div>
-<div id="orge437bae" class="figure">
+<div id="org38f6a8e" class="figure">
<p><a href="Universe%20explorer/Universe%20explorer.bas" class="responsive-img"><img src="Universe%20explorer/3.png" alt="3.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:29</p>
+<p class="date">Created: 2025-07-31 to 03:16</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:29 -->
+<!-- 2025-07-31 to 03:16 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Plotting</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org45148cb">1. 2D graph</a></li>
-<li><a href="#orgd092199">2. 3D graph</a></li>
-<li><a href="#orgd47dfc9">3. Deriviative calculator</a></li>
-<li><a href="#org7bce8b5">4. Sine and cosine table</a></li>
+<li><a href="#org56d2b7c">1. 2D graph</a></li>
+<li><a href="#org34ac1cf">2. 3D graph</a></li>
+<li><a href="#org9395c47">3. Deriviative calculator</a></li>
+<li><a href="#orgb18692a">4. Sine and cosine table</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-org45148cb" class="outline-2">
-<h2 id="org45148cb"><span class="section-number-2">1.</span> 2D graph</h2>
+<div id="outline-container-org56d2b7c" class="outline-2">
+<h2 id="org56d2b7c"><span class="section-number-2">1.</span> 2D graph</h2>
<div class="outline-text-2" id="text-1">
<p>
The 2D Graph Plotter is a simple yet effective program written in
</p>
-<div id="orgea3056b" class="figure">
+<div id="org08e47b0" class="figure">
<p><a href="2D%20graph%20plot.bas" class="responsive-img"><img src="2D%20graph%20plot.png" alt="2D%20graph%20plot.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgd092199" class="outline-2">
-<h2 id="orgd092199"><span class="section-number-2">2.</span> 3D graph</h2>
+<div id="outline-container-org34ac1cf" class="outline-2">
+<h2 id="org34ac1cf"><span class="section-number-2">2.</span> 3D graph</h2>
<div class="outline-text-2" id="text-2">
<p>
The 3D Heightmap Explorer is a QBasic program designed to visualize
</p>
-<div id="org077c47f" class="figure">
+<div id="org45a0ef1" class="figure">
<p><a href="3D%20graph.bas" class="responsive-img"><img src="3D%20graph.png" alt="3D%20graph.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgd47dfc9" class="outline-2">
-<h2 id="orgd47dfc9"><span class="section-number-2">3.</span> Deriviative calculator</h2>
+<div id="outline-container-org9395c47" class="outline-2">
+<h2 id="org9395c47"><span class="section-number-2">3.</span> Deriviative calculator</h2>
<div class="outline-text-2" id="text-3">
<p>
This QBasic program is designed to compute and plot an arbitrary
</p>
-<div id="orga32bb22" class="figure">
+<div id="org0612358" class="figure">
<p><a href="Deriviative%20calculator.bas" class="responsive-img"><img src="Deriviative%20calculator.png" alt="Deriviative%20calculator.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-org7bce8b5" class="outline-2">
-<h2 id="org7bce8b5"><span class="section-number-2">4.</span> Sine and cosine table</h2>
+<div id="outline-container-orgb18692a" class="outline-2">
+<h2 id="orgb18692a"><span class="section-number-2">4.</span> Sine and cosine table</h2>
<div class="outline-text-2" id="text-4">
<p>
The SIN & COS Table Generator is a QBasic program designed to visually
</p>
-<div id="org7bcbdf8" class="figure">
+<div id="orgae3f50f" class="figure">
<p><a href="Sine%20and%20cosine%20table.bas" class="responsive-img"><img src="Sine%20and%20cosine%20table.png" alt="Sine%20and%20cosine%20table.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:29</p>
+<p class="date">Created: 2025-07-31 to 03:16</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:29 -->
+<!-- 2025-07-31 to 03:16 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Simulation</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#orgdb57575">1. Explosion simulator</a></li>
-<li><a href="#orgfc07a76">2. Gravity in 2D</a></li>
-<li><a href="#org586f4fe">3. Gravity in 3D</a></li>
-<li><a href="#orgceed08f">4. Interference</a></li>
-<li><a href="#orga886cdf">5. Interferogram</a></li>
-<li><a href="#orge4dea1b">6. Surface tension</a></li>
-<li><a href="#orgeb267f3">7. Wave 1</a></li>
-<li><a href="#orgb315c6d">8. Wave 2</a></li>
+<li><a href="#org01f1dcd">1. Explosion simulator</a></li>
+<li><a href="#orge5fd1d3">2. Gravity in 2D</a></li>
+<li><a href="#orga944842">3. Gravity in 3D</a></li>
+<li><a href="#orgfa60264">4. Interference</a></li>
+<li><a href="#org2cba818">5. Interferogram</a></li>
+<li><a href="#org60f94e5">6. Surface tension</a></li>
+<li><a href="#orgf00ef1b">7. Wave 1</a></li>
+<li><a href="#org198e963">8. Wave 2</a></li>
</ul>
</div>
</div>
}
</style>
-<div id="outline-container-orgdb57575" class="outline-2">
-<h2 id="orgdb57575"><span class="section-number-2">1.</span> Explosion simulator</h2>
+<div id="outline-container-org01f1dcd" class="outline-2">
+<h2 id="org01f1dcd"><span class="section-number-2">1.</span> Explosion simulator</h2>
<div class="outline-text-2" id="text-1">
<p>
This QBasic program simulates the propagation of shock waves in a gas
</p>
-<div id="org1835bd3" class="figure">
+<div id="orgfab1799" class="figure">
<p><a href="Explosion%20simulator.bas" class="responsive-img"><img src="Explosion%20simulator.png" alt="Explosion%20simulator.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgfc07a76" class="outline-2">
-<h2 id="orgfc07a76"><span class="section-number-2">2.</span> Gravity in 2D</h2>
+<div id="outline-container-orge5fd1d3" class="outline-2">
+<h2 id="orge5fd1d3"><span class="section-number-2">2.</span> Gravity in 2D</h2>
<div class="outline-text-2" id="text-2">
<p>
The Gravitation Simulation program is a simple yet insightful QBasic
</p>
-<div id="org16c07f9" class="figure">
+<div id="org7e1a507" class="figure">
<p><a href="Gravity%20in%202D.bas" class="responsive-img"><img src="Gravity%20in%202D.png" alt="Gravity%20in%202D.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-org586f4fe" class="outline-2">
-<h2 id="org586f4fe"><span class="section-number-2">3.</span> Gravity in 3D</h2>
+<div id="outline-container-orga944842" class="outline-2">
+<h2 id="orga944842"><span class="section-number-2">3.</span> Gravity in 3D</h2>
<div class="outline-text-2" id="text-3">
<p>
This QBasic program simulates the gravitational interactions between
</div>
</div>
-<div id="outline-container-orgceed08f" class="outline-2">
-<h2 id="orgceed08f"><span class="section-number-2">4.</span> Interference</h2>
+<div id="outline-container-orgfa60264" class="outline-2">
+<h2 id="orgfa60264"><span class="section-number-2">4.</span> Interference</h2>
<div class="outline-text-2" id="text-4">
<p>
This QBasic program simulates the interference pattern created by two
</div>
</div>
-<div id="outline-container-orga886cdf" class="outline-2">
-<h2 id="orga886cdf"><span class="section-number-2">5.</span> Interferogram</h2>
+<div id="outline-container-org2cba818" class="outline-2">
+<h2 id="org2cba818"><span class="section-number-2">5.</span> Interferogram</h2>
<div class="outline-text-2" id="text-5">
<p>
This QBasic program simulates the interference pattern created by
</p>
-<div id="org71fca94" class="figure">
+<div id="org84b55bc" class="figure">
<p><a href="Interferogram.bas" class="responsive-img"><img src="Interferogram.png" alt="Interferogram.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orge4dea1b" class="outline-2">
-<h2 id="orge4dea1b"><span class="section-number-2">6.</span> Surface tension</h2>
+<div id="outline-container-org60f94e5" class="outline-2">
+<h2 id="org60f94e5"><span class="section-number-2">6.</span> Surface tension</h2>
<div class="outline-text-2" id="text-6">
<p>
This QBasic program simulates the behavior of water spills and the
</p>
-<div id="org2d7e97d" class="figure">
+<div id="org07cf68e" class="figure">
<p><a href="Surface%20tension.bas" class="responsive-img"><img src="Surface%20tension.png" alt="Surface%20tension.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgeb267f3" class="outline-2">
-<h2 id="orgeb267f3"><span class="section-number-2">7.</span> Wave 1</h2>
+<div id="outline-container-orgf00ef1b" class="outline-2">
+<h2 id="orgf00ef1b"><span class="section-number-2">7.</span> Wave 1</h2>
<div class="outline-text-2" id="text-7">
<p>
This QBasic program simulates the propagation of waves across a
</p>
-<div id="orgb928ba7" class="figure">
+<div id="org9859697" class="figure">
<p><a href="Wave%201.bas" class="responsive-img"><img src="Wave%201.png" alt="Wave%201.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
-<div id="outline-container-orgb315c6d" class="outline-2">
-<h2 id="orgb315c6d"><span class="section-number-2">8.</span> Wave 2</h2>
+<div id="outline-container-org198e963" class="outline-2">
+<h2 id="org198e963"><span class="section-number-2">8.</span> Wave 2</h2>
<div class="outline-text-2" id="text-8">
<p>
This QBasic program simulates and visualizes the behavior of water
</p>
-<div id="org2ae6082" class="figure">
+<div id="org2cad861" class="figure">
<p><a href="Wave%202.bas" class="responsive-img"><img src="Wave%202.png" alt="Wave%202.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:29</p>
+<p class="date">Created: 2025-07-31 to 03:16</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:30 -->
+<!-- 2025-07-31 to 03:17 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Truth table calculator</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org76ad210">1. Implemented logical operations</a>
+<li><a href="#org14eb816">1. Implemented logical operations</a>
<ul>
-<li><a href="#org32078da">1.1. Equivalent ( ⇔ , 1 )</a></li>
-<li><a href="#org21eb9de">1.2. Implies ( ⇒ , 2 )</a></li>
-<li><a href="#org2639967">1.3. OR ( ∨ , 3 )</a></li>
-<li><a href="#org8dd63d1">1.4. AND ( ∧ , 4 )</a></li>
-<li><a href="#org4018a60">1.5. NOT ( ¬ , 5 )</a></li>
+<li><a href="#orge960095">1.1. Equivalent ( ⇔ , 1 )</a></li>
+<li><a href="#org8e98b6a">1.2. Implies ( ⇒ , 2 )</a></li>
+<li><a href="#orgd8ee3c0">1.3. OR ( ∨ , 3 )</a></li>
+<li><a href="#orge66f8d4">1.4. AND ( ∧ , 4 )</a></li>
+<li><a href="#org892645d">1.5. NOT ( ¬ , 5 )</a></li>
</ul>
</li>
-<li><a href="#org248499d">2. Examples</a>
+<li><a href="#org86081c9">2. Examples</a>
<ul>
-<li><a href="#org8ffdf82">2.1. Example: (A ∧ B) ∨ ¬C</a></li>
-<li><a href="#orge603e80">2.2. Example: A ⇒ (B ∨ ¬C)</a></li>
-<li><a href="#orgf2d4f3c">2.3. Example: (A ⇔ B) ∧ C</a></li>
+<li><a href="#org3c440cb">2.1. Example: (A ∧ B) ∨ ¬C</a></li>
+<li><a href="#org1f421d0">2.2. Example: A ⇒ (B ∨ ¬C)</a></li>
+<li><a href="#orge542c36">2.3. Example: (A ⇔ B) ∧ C</a></li>
</ul>
</li>
</ul>
designing and understanding digital circuits, Boolean algebra, and logical expressions.
</p>
-<div id="outline-container-org76ad210" class="outline-2">
-<h2 id="org76ad210"><span class="section-number-2">1.</span> Implemented logical operations</h2>
+<div id="outline-container-org14eb816" class="outline-2">
+<h2 id="org14eb816"><span class="section-number-2">1.</span> Implemented logical operations</h2>
<div class="outline-text-2" id="text-1">
</div>
-<div id="outline-container-org32078da" class="outline-3">
-<h3 id="org32078da"><span class="section-number-3">1.1.</span> Equivalent ( ⇔ , 1 )</h3>
+<div id="outline-container-orge960095" class="outline-3">
+<h3 id="orge960095"><span class="section-number-3">1.1.</span> Equivalent ( ⇔ , 1 )</h3>
<div class="outline-text-3" id="text-1-1">
<p>
The equivalent operation, also known as logical biconditional, is true if and only if
</div>
</div>
-<div id="outline-container-org21eb9de" class="outline-3">
-<h3 id="org21eb9de"><span class="section-number-3">1.2.</span> Implies ( ⇒ , 2 )</h3>
+<div id="outline-container-org8e98b6a" class="outline-3">
+<h3 id="org8e98b6a"><span class="section-number-3">1.2.</span> Implies ( ⇒ , 2 )</h3>
<div class="outline-text-3" id="text-1-2">
<p>
An implication asserts that if the first proposition is true, the
</div>
</div>
-<div id="outline-container-org2639967" class="outline-3">
-<h3 id="org2639967"><span class="section-number-3">1.3.</span> OR ( ∨ , 3 )</h3>
+<div id="outline-container-orgd8ee3c0" class="outline-3">
+<h3 id="orgd8ee3c0"><span class="section-number-3">1.3.</span> OR ( ∨ , 3 )</h3>
<div class="outline-text-3" id="text-1-3">
<p>
The OR operation, also known as logical disjunction, is true if at
</div>
</div>
-<div id="outline-container-org8dd63d1" class="outline-3">
-<h3 id="org8dd63d1"><span class="section-number-3">1.4.</span> AND ( ∧ , 4 )</h3>
+<div id="outline-container-orge66f8d4" class="outline-3">
+<h3 id="orge66f8d4"><span class="section-number-3">1.4.</span> AND ( ∧ , 4 )</h3>
<div class="outline-text-3" id="text-1-4">
<p>
The AND operation, also known as logical conjunction, is true if and
</div>
</div>
-<div id="outline-container-org4018a60" class="outline-3">
-<h3 id="org4018a60"><span class="section-number-3">1.5.</span> NOT ( ¬ , 5 )</h3>
+<div id="outline-container-org892645d" class="outline-3">
+<h3 id="org892645d"><span class="section-number-3">1.5.</span> NOT ( ¬ , 5 )</h3>
<div class="outline-text-3" id="text-1-5">
<p>
The NOT operation, also known as logical negation, inverts the value
</div>
</div>
</div>
-<div id="outline-container-org248499d" class="outline-2">
-<h2 id="org248499d"><span class="section-number-2">2.</span> Examples</h2>
+<div id="outline-container-org86081c9" class="outline-2">
+<h2 id="org86081c9"><span class="section-number-2">2.</span> Examples</h2>
<div class="outline-text-2" id="text-2">
</div>
-<div id="outline-container-org8ffdf82" class="outline-3">
-<h3 id="org8ffdf82"><span class="section-number-3">2.1.</span> Example: (A ∧ B) ∨ ¬C</h3>
+<div id="outline-container-org3c440cb" class="outline-3">
+<h3 id="org3c440cb"><span class="section-number-3">2.1.</span> Example: (A ∧ B) ∨ ¬C</h3>
<div class="outline-text-3" id="text-2-1">
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
</div>
</div>
-<div id="outline-container-orge603e80" class="outline-3">
-<h3 id="orge603e80"><span class="section-number-3">2.2.</span> Example: A ⇒ (B ∨ ¬C)</h3>
+<div id="outline-container-org1f421d0" class="outline-3">
+<h3 id="org1f421d0"><span class="section-number-3">2.2.</span> Example: A ⇒ (B ∨ ¬C)</h3>
<div class="outline-text-3" id="text-2-2">
<table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides">
</div>
</div>
-<div id="outline-container-orgf2d4f3c" class="outline-3">
-<h3 id="orgf2d4f3c"><span class="section-number-3">2.3.</span> Example: (A ⇔ B) ∧ C</h3>
+<div id="outline-container-orge542c36" class="outline-3">
+<h3 id="orge542c36"><span class="section-number-3">2.3.</span> Example: (A ⇔ B) ∧ C</h3>
<div class="outline-text-3" id="text-2-3">
<p>
Truth Table:
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:30</p>
+<p class="date">Created: 2025-07-31 to 03:17</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-30 ke 12:31 -->
+<!-- 2025-07-31 to 03:17 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Mouse driver for QBasic programs</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org494c62e">1. Overview</a></li>
-<li><a href="#org15ce1af">2. High-level idea</a></li>
-<li><a href="#org6c46f87">3. Terminate and Stay Resident module</a></li>
-<li><a href="#org6fbada4">4. QBasic demonstration program</a></li>
+<li><a href="#org52915de">1. Overview</a></li>
+<li><a href="#orgf46a888">2. High-level idea</a></li>
+<li><a href="#org5630a38">3. Terminate and Stay Resident module</a></li>
+<li><a href="#org1127c2e">4. QBasic demonstration program</a></li>
</ul>
</div>
</div>
-<div id="outline-container-org494c62e" class="outline-2">
-<h2 id="org494c62e"><span class="section-number-2">1.</span> Overview</h2>
+<div id="outline-container-org52915de" class="outline-2">
+<h2 id="org52915de"><span class="section-number-2">1.</span> Overview</h2>
<div class="outline-text-2" id="text-1">
<p>
QBasic, a popular programming language in the DOS era, lacks native
</div>
</div>
-<div id="outline-container-org15ce1af" class="outline-2">
-<h2 id="org15ce1af"><span class="section-number-2">2.</span> High-level idea</h2>
+<div id="outline-container-orgf46a888" class="outline-2">
+<h2 id="orgf46a888"><span class="section-number-2">2.</span> High-level idea</h2>
<div class="outline-text-2" id="text-2">
<p>
Workaround to access mouse involves a Terminate and Stay Resident
</div>
</div>
-<div id="outline-container-org6c46f87" class="outline-2">
-<h2 id="org6c46f87"><span class="section-number-2">3.</span> Terminate and Stay Resident module</h2>
+<div id="outline-container-org5630a38" class="outline-2">
+<h2 id="org5630a38"><span class="section-number-2">3.</span> Terminate and Stay Resident module</h2>
<div class="outline-text-2" id="text-3">
<p>
A DOS TSR program that hooks into the system's interrupt mechanism to
</div>
</div>
-<div id="outline-container-org6fbada4" class="outline-2">
-<h2 id="org6fbada4"><span class="section-number-2">4.</span> QBasic demonstration program</h2>
+<div id="outline-container-org1127c2e" class="outline-2">
+<h2 id="org1127c2e"><span class="section-number-2">4.</span> QBasic demonstration program</h2>
<div class="outline-text-2" id="text-4">
<p>
A QBasic program that reads mouse data from the memory location
-<div id="org0375a41" class="figure">
+<div id="org823448c" class="figure">
<p><a href="mousedrv.bas" class="responsive-img"><img src="screenshot.png" alt="screenshot.png" class="responsive-img" /></a>
</p>
</div>
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-30 ke 12:31</p>
+<p class="date">Created: 2025-07-31 to 03:17</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
' Simple COM port terminal\r
-' made by Svjatoslav Agejenko\r
-' in 2003.12\r
-' H-Page: svjatoslav.eu\r
-' E-Mail: svjatoslav@svjatoslav.eu\r
+'\r
+' This program is free software: released under Creative Commons Zero (CC0) license\r
+' by Svjatoslav Agejenko.\r
+' Email: svjatoslav@svjatoslav.eu\r
+' Homepage: http://www.svjatoslav.eu\r
+'\r
+' Changelog:\r
+' 2003.12, Initial version\r
\r
CLS\r
\r
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2025-07-31 to 03:01 -->
+<!-- 2025-07-31 to 03:18 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Data over analog audio</title>
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#org84c4b8c">1. msg2xi: Text to Sound Encoder</a></li>
-<li><a href="#org0fbcf65">2. xi2msg: Sound to Text Decoder</a></li>
-<li><a href="#org6b92b85">3. aver</a></li>
+<li><a href="#org8a09950">1. msg2xi: Text to Sound Encoder</a></li>
+<li><a href="#orgb413280">2. xi2msg: Sound to Text Decoder</a></li>
+<li><a href="#orgc73025b">3. aver</a></li>
</ul>
</div>
</div>
-<div id="outline-container-org84c4b8c" class="outline-2">
-<h2 id="org84c4b8c"><span class="section-number-2">1.</span> msg2xi: Text to Sound Encoder</h2>
+<div id="outline-container-org8a09950" class="outline-2">
+<h2 id="org8a09950"><span class="section-number-2">1.</span> msg2xi: Text to Sound Encoder</h2>
<div class="outline-text-2" id="text-1">
<p>
<b>msg2xi</b> is a utility designed to encode arbitrary text messages into an
</div>
</div>
-<div id="outline-container-org0fbcf65" class="outline-2">
-<h2 id="org0fbcf65"><span class="section-number-2">2.</span> xi2msg: Sound to Text Decoder</h2>
+<div id="outline-container-orgb413280" class="outline-2">
+<h2 id="orgb413280"><span class="section-number-2">2.</span> xi2msg: Sound to Text Decoder</h2>
<div class="outline-text-2" id="text-2">
<p>
The <b>xi2msg</b> utility is designed to decode digital information from an
</p>
-<div id="orgaea1c2e" class="figure">
+<div id="orgb64cf0b" class="figure">
<p><img src="screenshot.png" alt="screenshot.png" />
</p>
</div>
</div>
</div>
-<div id="outline-container-org6b92b85" class="outline-2">
-<h2 id="org6b92b85"><span class="section-number-2">3.</span> aver</h2>
+<div id="outline-container-orgc73025b" class="outline-2">
+<h2 id="orgc73025b"><span class="section-number-2">3.</span> aver</h2>
<div class="outline-text-2" id="text-3">
<p>
The <b>aver.bas</b> utility is designed to reduce noise in digitized audio
</div>
</div>
<div id="postamble" class="status">
-<p class="date">Created: 2025-07-31 to 03:01</p>
+<p class="date">Created: 2025-07-31 to 03:18</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
+++ /dev/null
-' Svjatoslav Agejenko\r
-' 2003.02, initial version\r
-' 2024, fixing code readability\r
-\r
-' Program to control radio transmitter over LPT port,\r
-' and send data in morse like code.\r
-\r
-DECLARE SUB sbit (a!)\r
-DECLARE SUB msg (a$)\r
-DECLARE SUB sb (a!)\r
-DECLARE SUB quit ()\r
-DECLARE SUB tone (c!)\r
-DECLARE SUB wai (a!)\r
-DECLARE SUB echo ()\r
-DECLARE SUB lptsend ()\r
-DIM SHARED bit(0 TO 7)\r
-DIM SHARED port\r
-\r
-CLS\r
-port = &H378\r
-echo\r
-\r
-l = 0\r
-1\r
-IF timeStr$ <> TIME$ THEN\r
- IF l > 60 THEN\r
- echo\r
- l = 0\r
- END IF\r
- l = l + 1\r
- timeStr$ = TIME$\r
-END IF\r
-\r
-key$ = INKEY$\r
-IF key$ <> "" THEN quit\r
-GOTO 1\r
-\r
-SUB echo\r
-\r
-bit(5) = 1\r
-lptsend\r
-wai 5\r
-\r
-msg "Hello!"\r
-' msg "Hello, world!"\r
-\r
-wai 1\r
-bit(5) = 0\r
-lptsend\r
-\r
-END SUB\r
-\r
-SUB lptsend\r
-\r
-b = 0\r
-FOR a = 0 TO 7\r
- b = b * 2\r
- IF bit(a) > 0 THEN\r
- b = b + 1\r
- END IF\r
-NEXT a\r
-\r
-OUT port, b\r
-\r
-END SUB\r
-\r
-SUB msg (message$)\r
-\r
-FOR a = 1 TO LEN(message$)\r
- char$ = RIGHT$(LEFT$(message$, a), 1)\r
- sb ASC(char$)\r
- key$ = INKEY$\r
- IF key$ <> "" THEN quit\r
-NEXT a\r
-\r
-END SUB\r
-\r
-SUB quit\r
-bit(5) = 0\r
-lptsend\r
-END\r
-END SUB\r
-\r
-SUB sb (asciiVal)\r
-d = asciiVal\r
-c = 128\r
-\r
-FOR b = 0 TO 7\r
- IF d >= c THEN\r
- sbit 1\r
- d = d - c\r
- ELSE\r
- sbit 0\r
- END IF\r
- c = c / 2\r
-NEXT b\r
-\r
-END SUB\r
-\r
-SUB sbit (value)\r
-IF value = 1 THEN\r
- tone 0\r
- tone 0\r
- tone 1\r
-ELSE\r
- tone 0\r
- tone 1\r
- tone 1\r
-END IF\r
-END SUB\r
-\r
-SUB tone (cValue)\r
-' cValue = 1\r
-PRINT cValue;\r
-FOR a = 1 TO 40\r
- bit(4) = cValue\r
- lptsend\r
- FOR b = 1 TO 500\r
- NEXT b\r
- bit(4) = 0\r
- lptsend\r
- FOR b = 1 TO 500\r
- NEXT b\r
-NEXT a\r
-END SUB\r
-\r
-SUB wai (aValue)\r
-FOR b = 1 TO aValue * 10\r
- SOUND 0, .1\r
-NEXT b\r
-\r
-END SUB
\ No newline at end of file
' Plays entered text in morse code audio beeps using PC-speaker.\r
+'\r
' This program is free software: released under Creative Commons Zero (CC0) license\r
' by Svjatoslav Agejenko.\r
' Email: svjatoslav@svjatoslav.eu\r
Download source code: [[file:Networking/LPT%20pin%20control.bas][LPT pin control.bas]]
+** COM port text terminal
+
+[[https://en.wikipedia.org/wiki/Serial_port][The COM port, short for "Communication Port" was a serial port
+interface]] found on older personal computers. It was primarily used for
+serial communication, where data is transmitted one bit at a time over
+a communication channel.
+
+The COM port facilitated bidirectional communication between the
+computer and connected devices, such as modems, mice, and keyboards.
+
+Typically available as 9-pin (DE-9) connectors, COM ports adhered to
+the RS-232 standard for serial communication.
+
+Mice, before the prevalence of USB, commonly connected to computers
+via COM ports, transmitting movement and button-click data through
+this serial interface.
+
+COM ports operated using a UART (Universal Asynchronous
+Receiver/Transmitter), which managed the conversion of data between
+parallel form (used by the computer) and serial form (used by the
+communication line).
+
+This program is a simple text mode terminal for communicating through
+a COM port.
+
+How it Works:
+- The program continuously checks the COM port status.
+- If data is available, it reads the data and prints it to the screen
+ along with its ASCII value.
+- It captures keyboard input from the user and sends it out through
+ the COM port.
+- This creates a bidirectional communication channel between the
+ user's keyboard and the COM port device, typical of terminal
+ emulation software.
+
+#+INCLUDE: "Networking/COM port terminal.bas" src basic-qb45
+
+Download source code: [[file:Networking/COM%20port%20terminal.bas][COM port terminal.bas]]
+
+** Parallel port to COM port text terminal
+
+This QBasic program demonstrates a clever method of transmitting data
+from a parallel (LPT) port to a serial (COM) port using a technique
+known as bit-banging.
+
+How It Works:
+- The program initializes the parallel port and waits for keyboard
+ input.
+- Each character input from the keyboard is converted into its ASCII
+ value.
+- The ASCII value is converted into an 8-bit binary array, with each
+ array element representing a bit of the character.
+- Each bit is then sent to the parallel port by toggling the output
+ lines accordingly. The bits are transmitted sequentially, simulating
+ serial data transmission.
+- A loop holds each bit value for a predefined duration, mimicking
+ clock cycles necessary for serial communication.
+- The program exits when the Escape key is pressed.
+
+#+INCLUDE: "Networking/LPT to COM port data transfer.bas" src basic-qb45
+
+Download source code: [[file:Networking/LPT%20to%20COM%20port%20data%20transfer.bas][LPT to COM port data transfer.bas]]
+
** Data over analog audio CODEC
Utilities to encode digital data to sound file and back.
[[file:Networking/Digital%20data%20over%20analog%20audio/index.html][Read more]]
-
** Morse
This QBasic program allows users to input text and hear it played back
It reads Morse code patterns from an external file named
[[file:Networking/Morse.txt][Morse.txt]]. Each line in the file represents a character and its
-corresponding Morse code.
+corresponding Morse code:
+
+#+INCLUDE: "Networking/Morse.txt" src txt
For each character in the input text, the program looks up its Morse
code pattern and plays it back using the PC speaker. Dots are