add rules, guidelines, fix HTML code, move compressed tarball in inventory

By changing the _inventory_order_ of the compressed tarball from
**100000** to **1415926535**, the compressed tarball will land at
the top of the secondary file list and remain still easy to find.

Updated the `manifest.numbers` spreadsheet and rebuilt
the `.entry.json` files.

Added `next/` directory to hold the next IOCCC rules and guidelines.
Added `next/README.md` that `bin/gen-top-html.sh` uses to form
the `next/index.html` file.

Added _Rules and Guidelines_ link to the sidenav bar to link to the
`next/index.html` file.

Added _IOCCC Rules_ as `next/rules.md` that `bin/gen-top-html.sh`
uses to form the `next/rules.html` file.

Added _IOCCC Guidelines_ as `next/guidelines.md` that `bin/gen-top-html.sh`
uses to form the `next/guidelines.html` file.

Changed `bin/gen-top-html.sh` VERSION from "1.2.4 2024-04-13"
to "1.3 2024-04-14".

Prevent `pandoc(1)` from interpreting the commented out language
of a markdown code block as a code class.  So a markdown such as:

````
``` <!---sh-->
...
```
````

that produced HTML of the form:

```html
<pre class="&lt;!---sh--&gt;"><code>...</code></pre>
```

will now produce HTML of the form:

```html
<pre><code>...</code></pre>
```

NOTE: Before when the language of a markdown code block
was not commented, the HTML produced by `pandoc(1)` was
oddly indented with extra whitespace on the first line
of the code block.  While commenting out the language
of the code block removed some of the odd intending,
it left a weird class in the HTML pre block that
surrounded the HTML code block.  This hack prevents
`pandoc(1)` from assigning a class to the HTML pre block.

Changed `in/md2html.sh` VERSION from "1.2.1 2024-04-13"
to "1.3 2024-04-14".

Added `make gen_sitemap` to end of both `make www` and `make
quick_www` in top level Makefile.

Ram `make www` to test under macOS and to perform the above.

**IMPORTANT NOTE**: The current `next/rules.md` and `next/guidelines.md`
are simply the 2020 IOCCC Rules and Guidelines converted into
markdown form.  There are **NOT** the Rules and Guidelines that
will be used the IOCCC MOCK, nor the next IOCCC.

TODO: Improve the `bin/gen-status.sh` tool to modify the top of the
      `next/rules.md` and `next/guidelines.md` files to keep them
      in sync with the _contest_status_ as found in `status.json`.

TODO: Improve the look and feel of the `next/rules.md` and
      `next/guidelines.md` markdown files.
This commit is contained in:
Landon Curt Noll committed 2024-04-14 16:54:24 -07:00
1 parent a672335d2d
commit 518a6336d0
734 files changed
+7919 -4119

No files matched your search

+1 -1
View File
@@ -155,7 +155,7 @@
},
{
"file_path" : "2006_birken.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,15 +142,15 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code> STATUS: uses gets() - change to fgets() if possible</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2006_birken">2006 birken bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./birken &lt; file.tofu</code></pre>
<pre><code> ./birken &lt; file.tofu</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>etc.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Q: EDAMAME?</p>
@@ -223,10 +224,10 @@ out to the one who discovers the hidden program within the source.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/birken/shift.tofu">shift.tofu</a> - TOFU circuit</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/birken/zuse2.tofu">zuse2.tofu</a> - TOFU circuit</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/birken/zuse.tofu">zuse.tofu</a> - TOFU circuit</li>
<li><a href="2006_birken.tar.bz2">2006_birken.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_birken.tar.bz2">2006_birken.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/birken/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/birken/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_borsanyi.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+6 -5
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,15 +142,15 @@ Location: <a href="../../location.html#DE">DE</a> - <em>Federal Republic of Germ
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
<p>The current status of this entry is:</p>
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2006_borsanyi">2006 borsanyi bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./borsanyi string &gt; file.gif</code></pre>
<pre><code> ./borsanyi string &gt; file.gif</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>We recommend you input for the filename <code>example.gif</code> and for the string
<code>ioccc@example.com</code>. The script will not overwrite files. It runs the program in
a loop until you answer that you do not wish to make another.</p>
@@ -175,7 +176,7 @@ line. To avoid complications with patent issues the <a href="https://en.wikipedi
compression</a> feature is not
used. A typical email address is stored in less than 1-2 kilobytes.</p>
<h3 id="usage">Usage:</h3>
<pre class="&lt;!---sh--&gt;"><code> make all
<pre><code> make all
./borsanyi my@example.com &gt; email.gif
my_favourite_gif_viewer email.gif</code></pre>
<p>The address cannot be longer than 42 characters, and may consist of
@@ -232,10 +233,10 @@ To avoid most caveats, the program does not output the octet
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/borsanyi/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/borsanyi/borsanyi.orig.c">borsanyi.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/borsanyi/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_borsanyi.tar.bz2">2006_borsanyi.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_borsanyi.tar.bz2">2006_borsanyi.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/borsanyi/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/borsanyi/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -75,7 +75,7 @@
},
{
"file_path" : "2006_grothe.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+7 -6
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,12 +142,12 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./grothe carrier_freq pixelclock horizontal_total &lt; some_input.txt</code></pre>
<pre><code> ./grothe carrier_freq pixelclock horizontal_total &lt; some_input.txt</code></pre>
<h2 id="try">Try:</h2>
<p>Put on your “electronic ears” and then try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>You may find using
a tunable scanning electronic ear helps.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -165,9 +166,9 @@ parameters:</p>
horizontal_total - total scan along the horizontal axis</code></pre>
<p>If you have <code>xvidtune</code> installed you can get the <code>pixelclock</code> and
<code>horizontal_total</code> with the following command</p>
<pre class="&lt;!---sh--&gt;"><code> xvidtune -show | head -n 1 | awk &#39;{ print &quot;pixelclock &quot; $2 * 1000000 &quot; horizontal_total = &quot; $6 }&#39;</code></pre>
<pre><code> xvidtune -show | head -n 1 | awk &#39;{ print &quot;pixelclock &quot; $2 * 1000000 &quot; horizontal_total = &quot; $6 }&#39;</code></pre>
<p>Example from my laptops:</p>
<pre class="&lt;!---sh--&gt;"><code> ./grothe 65000000 10000000 1344 &lt; twinkle.txt</code></pre>
<pre><code> ./grothe 65000000 10000000 1344 &lt; twinkle.txt</code></pre>
<p>Even if the user gets a setting off, the sound will usually be able to be
heard on <a href="https://en.wikipedia.org/wiki/AM_broadcasting">AM</a> at a multiple of
the original frequency.</p>
@@ -250,10 +251,10 @@ Kuhn’s and Ross J. Anderson’s.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/grothe/test.txt">test.txt</a> - sample input</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/grothe/try.sh">try.sh</a> - how to run</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/grothe/twinkle.txt">twinkle.txt</a> - sample input</li>
<li><a href="2006_grothe.tar.bz2">2006_grothe.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_grothe.tar.bz2">2006_grothe.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/grothe/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/grothe/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_hamre.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+6 -5
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#NO">NO</a> - <em>Kingdom of Norway</em> (
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./hamre math_expression_string</code></pre>
<pre><code> ./hamre math_expression_string</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>An irrationally coded source presents rational things!</p>
<p>A rational person might want to attempt the
@@ -162,7 +163,7 @@ an obfuscated one.</p>
supported operators are: <code>+</code>, <code>-</code> (binary and unary), <code>*</code>, <code>/</code> and <code>()</code>. Run it
by supplying an expression as the first argument, and the normalized
result will be written to <code>stdout</code>.</p>
<pre class="&lt;!---sh--&gt;"><code> ./hamre &#39;-1+4/3*(2+1/(3/2*(7/2-7/3+1/6)))/2&#39;
<pre><code> ./hamre &#39;-1+4/3*(2+1/(3/2*(7/2-7/3+1/6)))/2&#39;
2/3</code></pre>
<p>If you do not supply an argument, the calculator will crash. Other
arguments are ignored. Supplying more arguments may further limit the
@@ -208,10 +209,10 @@ some language, meaningful to the purpose(s) of the macro, I hope.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/hamre/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/hamre/hamre.orig.c">hamre.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/hamre/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_hamre.tar.bz2">2006_hamre.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_hamre.tar.bz2">2006_hamre.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/hamre/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/hamre/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1
View File
@@ -86,6 +86,7 @@
<div class="sidenav">
<a href="../news.html">IOCCC News</a>
<a href="../status.html">Contest status</a>
<a href="../next/index.html">Rules and Guidelines</a>
<a href="../faq.html#submit">How to enter the IOCCC</a>
<a href="../faq.html">FAQ</a>
</div>
+1 -1
View File
@@ -35,7 +35,7 @@
},
{
"file_path" : "2006_meyer.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+7 -6
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./meyer [SEED]</code></pre>
<pre><code> ./meyer [SEED]</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./meyer [SEED]</code></pre>
<pre><code> ./meyer [SEED]</code></pre>
<p>For your first input try:</p>
<pre><code> a 0 1</code></pre>
<p>where <code>a</code> is the row (<code>a</code>-<code>i</code>), <code>0</code> is the column (<code>0</code>-<code>8</code>) and <code>1</code> is the
@@ -183,7 +184,7 @@ it is obvious, that object-oriented code isn’t ‘<code>WYWIWID</code>’ (‘
you write is what it does’). It may be tempting to think that</p>
<pre><code> Object o;</code></pre>
<p>might do something similar as</p>
<pre class="&lt;!---c--&gt;"><code> struct not_an_object o;</code></pre>
<pre><code> struct not_an_object o;</code></pre>
<p>But this program reveals that it doesn’t. Even worse, this program only
reveals the tip of the iceberg, what kind of black magic is involved in
a simple declaration of an object.</p>
@@ -201,7 +202,7 @@ and <a href="https://en.wikipedia.org/wiki/Polymorphism_(computer_science)">poly
<p>It is left as an exercise to the reader to find a corresponding
implementation in a popular object-oriented programming language.</p>
<h3 id="starting-the-game">Starting the game</h3>
<pre class="&lt;!---sh--&gt;"><code> ./meyer [SEED]</code></pre>
<pre><code> ./meyer [SEED]</code></pre>
<h3 id="gameplay">Gameplay</h3>
<p>It is a <a href="https://en.wikipedia.org/wiki/Sudoku">sudoku</a> based game. The goal of
the game is to be able to do the last valid ‘move’.</p>
@@ -246,10 +247,10 @@ breaking the following rule. Any number must be unique in its:</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/meyer/meyer.c">meyer.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/meyer/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/meyer/meyer.orig.c">meyer.orig.c</a> - original source</li>
<li><a href="2006_meyer.tar.bz2">2006_meyer.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_meyer.tar.bz2">2006_meyer.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/meyer/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/meyer/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -59,7 +59,7 @@
},
{
"file_path" : "2006_monge.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+19 -18
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -142,7 +143,7 @@ Location: <a href="../../location.html#IT">IT</a> - <em>Italian Republic</em> (<
<h2 id="to-build">To build:</h2>
<p>Make sure you have the SDL1 (not SDL2!) development environment installed.</p>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>There is alternate version that lets you redefine the width and height and number
of iterations to use. See <a href="#alternate-code">Alternate code</a> below.</p>
<h3 id="bugs-and-misfeatures">Bugs and (Mis)features:</h3>
@@ -151,23 +152,23 @@ of iterations to use. See <a href="#alternate-code">Alternate code</a> below.</p
STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2006_monge">2006 monge bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./monge expression ...</code></pre>
<pre><code> ./monge expression ...</code></pre>
<p>Incorrect formulas will ungracefully crash the program.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>This alternate code lets you specify the width and height of the image as well
as the number of iterations to perform.</p>
<h3 id="alternate-build">Alternate build:</h3>
<p>To use the default values, the same as <a href="monge.c">monge.c</a>, just do:</p>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<p>But if you wish to actually make use of it you will want to redefine one or more
of the variables <code>W</code>, <code>H</code> and <code>I</code>. The defaults are (respectively) 400, 300 and
\128. If you wish to change the image size to 500x500 but keep the iterations
the same then do:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber WIDTH=500 HEIGHT=500 alt</code></pre>
<pre><code> make clobber WIDTH=500 HEIGHT=500 alt</code></pre>
<p>If you wish to keep the dimensions the same but change the iterations to 512:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber ITERATIONS=512 alt</code></pre>
<pre><code> make clobber ITERATIONS=512 alt</code></pre>
<p>If you specify a value less than 1 for any of these it sets it back to the
default. The value 1 was selected arbitrarily and such a small number as 1 will
not do anything useful but as long as it’s at least 1 it’ll not be redefined.
@@ -176,7 +177,7 @@ anyway.</p>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>monge.alt</code> exactly as you would <code>monge</code> above.</p>
<h3 id="alternate-try">Alternate try:</h3>
<pre class="&lt;!---sh--&gt;"><code> ./try.alt.sh</code></pre>
<pre><code> ./try.alt.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>For those who are familiar with the previous <a href="../../authors.html">IOCCC entries</a>,
this program is best described as “<a href="../../1994/tvr/index.html">1994/tvr</a> meets
@@ -193,11 +194,11 @@ effort to work on both <code>i386</code> and <code>x86_64</code>. Portable it is
<ol start="0" type="1">
<li>Compile using the Makefile, or just run:</li>
</ol>
<pre class="&lt;!---sh--&gt;"><code> gcc monge.c -o monge -O3 `sdl-config --libs --cflags`</code></pre>
<pre><code> gcc monge.c -o monge -O3 `sdl-config --libs --cflags`</code></pre>
<ol type="1">
<li>Run:</li>
</ol>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z = 0&quot; &quot;z = z*z + c; Abs2(z) &lt; 4&quot;</code></pre>
<pre><code> ./monge &quot;z = 0&quot; &quot;z = z*z + c; Abs2(z) &lt; 4&quot;</code></pre>
<ol start="2" type="1">
<li><p>Keep clicking with left or right button to zoom in or out.</p></li>
<li><p>Use the number pad <code>+</code> and <code>-</code> to increase/decrease the iteration count when
@@ -240,35 +241,35 @@ as you like (as understood by the C function <code>isspace()</code>).</p>
<ul>
<li>Mandelbrot:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=1&quot; &quot;z=z*z+c; Abs2(z)&lt;4&quot;</code></pre>
<pre><code> ./monge &quot;z=1&quot; &quot;z=z*z+c; Abs2(z)&lt;4&quot;</code></pre>
<ul>
<li>Mandelbrot (return time variation):</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=c&quot; &quot;z=z*z+c; Abs2(z-c)&gt;0.0001&quot;</code></pre>
<pre><code> ./monge &quot;z=c&quot; &quot;z=z*z+c; Abs2(z-c)&gt;0.0001&quot;</code></pre>
<ul>
<li>Julia, for <code>c=0.31+i*0.5</code>:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=c; c=0.31+i*0.5&quot; &quot;z=z*z+c; Abs2(z)&lt;4&quot;</code></pre>
<pre><code> ./monge &quot;z=c; c=0.31+i*0.5&quot; &quot;z=z*z+c; Abs2(z)&lt;4&quot;</code></pre>
<ul>
<li>Julia (return time variation), <code>for c=0.31+i*0.5</code>:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=c; c=0.31+i*0.5&quot; &quot;z=z*z+c; Abs2(z-c)&gt;0.0001&quot;</code></pre>
<pre><code> ./monge &quot;z=c; c=0.31+i*0.5&quot; &quot;z=z*z+c; Abs2(z-c)&gt;0.0001&quot;</code></pre>
<ul>
<li>Newton, for <code>x^3-1</code>:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=c&quot; &quot;p=z; z=0.6666*z+0.3333/(z*z); Abs2(p-z) &gt; 0.001&quot;</code></pre>
<pre><code> ./monge &quot;z=c&quot; &quot;p=z; z=0.6666*z+0.3333/(z*z); Abs2(p-z) &gt; 0.001&quot;</code></pre>
<ul>
<li>Newton-Mandelbrot:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=0&quot; &quot;p=z; z=z-(z*z*z + (c-1)*z - c)/(3*z*z+c-1); Abs2(p-z) &gt; 0.001&quot;</code></pre>
<pre><code> ./monge &quot;z=0&quot; &quot;p=z; z=z-(z*z*z + (c-1)*z - c)/(3*z*z+c-1); Abs2(p-z) &gt; 0.001&quot;</code></pre>
<ul>
<li>Phoenix, Mandelbrot version:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=0; q=0&quot; &quot;t=z; z=z*z+Re(c)+Im(c)*q; q=t; Abs2(z)&lt;4&quot;</code></pre>
<pre><code> ./monge &quot;z=0; q=0&quot; &quot;t=z; z=z*z+Re(c)+Im(c)*q; q=t; Abs2(z)&lt;4&quot;</code></pre>
<ul>
<li>Phoenix, Julia version for <code>c=0.56667-i*0.5</code>:</li>
</ul>
<pre class="&lt;!---sh--&gt;"><code> ./monge &quot;z=c; c=0.56667-i*0.5; q=0&quot; &quot;t=z; z=z*z+Re(c)+Im(c)*q; q=t; Abs2(z)&lt;4&quot;</code></pre>
<pre><code> ./monge &quot;z=c; c=0.56667-i*0.5; q=0&quot; &quot;t=z; z=z*z+Re(c)+Im(c)*q; q=t; Abs2(z)&lt;4&quot;</code></pre>
<h3 id="compilation-and-portability">Compilation and portability</h3>
<p>This program will only work on x86 (with an x87 FPU) or x86_64 machines,
but it requires the SDL library.</p>
@@ -352,10 +353,10 @@ too big (<code>&gt;1</code>) the pixel is recalculated.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/monge/monge.orig.c">monge.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/monge/try.alt.sh">try.alt.sh</a> - how to run alternative code</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/monge/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_monge.tar.bz2">2006_monge.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_monge.tar.bz2">2006_monge.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/monge/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/monge/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_night.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+6 -5
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,16 +142,16 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>There is an alternate version that supports arrow keys. See the <a href="#alternate-code">alternate
code</a> section below.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./night</code></pre>
<pre><code> ./night</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>This version allows you to use arrow keys instead of the more awkward <code>wasd</code>
keys.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>night.alt</code> as you would <code>night</code> above.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
@@ -217,7 +218,7 @@ preprocessed code is over 80KB in length, hindering the preprocessor’s ability
to deobfuscate.</p>
<p>Keypad support was removed to save space. To restore, modify the
following two macros to:</p>
<pre class="&lt;!---c--&gt;"><code> #define ATG srand(time(0)); initscr(); cbreak(); noecho(); start_color(); keypad(stdscr,1);
<pre><code> #define ATG srand(time(0)); initscr(); cbreak(); noecho(); start_color(); keypad(stdscr,1);
#define AGG A&amp;2?KEY_UP:KEY_DOWN:A&amp;1?KEY_RIGHT:KEY_LEFT</code></pre>
<p>Code on!</p>
<!--
@@ -247,10 +248,10 @@ following two macros to:</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/night/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/night/night.alt.c">night.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/night/night.orig.c">night.orig.c</a> - original source</li>
<li><a href="2006_night.tar.bz2">2006_night.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_night.tar.bz2">2006_night.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/night/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/night/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_sloane.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+8 -7
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,31 +142,31 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<p>We recommend the alt version so that you can see what this looked like back in 2006.
If you wish to see the original faster version see <a href="#original-code">original
code</a> below.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./slone.alt</code></pre>
<pre><code> ./slone.alt</code></pre>
<h2 id="try">Try:</h2>
<p>The alternate version, which we recommend that you use in order to see what is
happening with modern systems, and to not flash too quickly, which can be
problematic for some people, can be configured to different speeds by way of the
value used in <code>usleep()</code>. The default is <code>75000</code> but you can easily change
it. To do so try:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber SLEEP=70000 clobber alt
<pre><code> make clobber SLEEP=70000 clobber alt
./sloane.alt</code></pre>
<p>If you wish to make it like the original, as if the below <a href="#original-code">Original
code</a> was being used, you can do:</p>
<pre class="&lt;!---sh--&gt;"><code> make SLEEP=0 clobber alt
<pre><code> make SLEEP=0 clobber alt
./sloane.alt</code></pre>
<h2 id="original-code">Original code:</h2>
<p>Should you wish to see the original you may do so with the original code,
<a href="sloane.c">sloane.c</a>.</p>
<h3 id="original-build">Original build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make clobber all</code></pre>
<pre><code> make clobber all</code></pre>
<h3 id="original-use">Original use:</h3>
<pre class="&lt;!---sh--&gt;"><code> ./sloane</code></pre>
<pre><code> ./sloane</code></pre>
<p>WARNING: if you are easily overstimulated with fast movement or have
photosensitivity please be careful running this version and instead see the
above!</p>
@@ -242,10 +243,10 @@ place? Can you find a smaller encoding?</p></li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sloane/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sloane/sloane.alt.c">sloane.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sloane/sloane.orig.c">sloane.orig.c</a> - original source</li>
<li><a href="2006_sloane.tar.bz2">2006_sloane.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_sloane.tar.bz2">2006_sloane.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sloane/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sloane/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -363,7 +363,7 @@
},
{
"file_path" : "2006_stewart.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+7 -6
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,9 +142,9 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./stewart width_and_height iterations file &gt; file.xbm
<pre><code> ./stewart width_and_height iterations file &gt; file.xbm
convert file.xbm file.png</code></pre>
<p>where <code>file</code> is one of:</p>
<pre><code> altar box box2 box3 build carpet circles cross cross2 cross3
@@ -154,7 +155,7 @@ Location: <a href="../../location.html#US">US</a> - <em>United States of America
<p>NOTE: you cannot specify a different width from height; it’s one number.</p>
<p>NOTE: <code>convert(1)</code> belongs to <a href="https://imagemagick.org/index.php">ImageMagick</a>.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>After running the program on a few files it will ask you if you wish to run it
on the remaining files.</p>
<p>The script will try converting the xbm files created by the program to png
@@ -171,7 +172,7 @@ a reasonably experienced user who can parse formats in their mind. :-)</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<h3 id="execution">Execution</h3>
<p>The program should be run with the following</p>
<pre class="&lt;!---sh--&gt;"><code> ./stewart &lt;m&gt; &lt;n&gt; &lt;ifs&gt;</code></pre>
<pre><code> ./stewart &lt;m&gt; &lt;n&gt; &lt;ifs&gt;</code></pre>
<p>where:</p>
<pre><code> m = The size of the picture (picture will be m X m in size).
n = The number of iterations to run (More will make for a
@@ -181,7 +182,7 @@ a reasonably experienced user who can parse formats in their mind. :-)</p>
on standard out. Minimal checking is done on the arguments mainly that there
are 3. Wrong arguments will cause the program to bomb out.</p>
<h4 id="example">Example:</h4>
<pre class="&lt;!---sh--&gt;"><code> ./stewart 1024 1000000 gasket &gt; gasket.xbm</code></pre>
<pre><code> ./stewart 1024 1000000 gasket &gt; gasket.xbm</code></pre>
<h3 id="compilationtesting">Compilation/Testing</h3>
<p>The program compiles without warning with <code>gcc -ansi -Wall</code>.
<code>lint</code> also seems to like the code. This must be a bug in <code>lint</code>.</p>
@@ -330,10 +331,10 @@ choice from a file size standpoint. 1024x1024 image is 641k in size.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/stewart/tree4">tree4</a> - sample input</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/stewart/tree">tree</a> - sample input</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/stewart/triangle">triangle</a> - sample input</li>
<li><a href="2006_stewart.tar.bz2">2006_stewart.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_stewart.tar.bz2">2006_stewart.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/stewart/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/stewart/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -67,7 +67,7 @@
},
{
"file_path" : "2006_sykes1.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+15 -14
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,7 +142,7 @@ Location: <a href="../../location.html#FI">FI</a> - <em>Republic of Finland </em
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>There is an alt version based on the author’s remarks. The <a href="try.sh">try.sh</a>
script will compile and use both but if you wish to see the alternate version
specifically see the <a href="#alternate-code">Alternate code</a> section below.</p>
@@ -150,18 +151,18 @@ specifically see the <a href="#alternate-code">Alternate code</a> section below.
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2006_sykes1">2006 sykes1 bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./sykes1</code></pre>
<pre><code> ./sykes1</code></pre>
<p>Next point your browser to the file: <code>sykes1.html</code>.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./sykes1 10</code></pre>
<pre><code> ./sykes1 10</code></pre>
<p>Refresh your browser.</p>
<p>You might also try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>This will run both the original entry and the alt code to show some differences.</p>
<h3 id="also-try">Also try:</h3>
<p>If you have all day :-) and wish to find out how fast your machine can solve the
maximum:</p>
<pre class="&lt;!---sh--&gt;"><code> time ./sykes1 19186</code></pre>
<pre><code> time ./sykes1 19186</code></pre>
<p>This was done on a Rocky Linux 9.2 server with <code>Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz</code> with 16 cores (via HyperThreading):</p>
<pre><code> real 6m35.524s
user 6m35.159s
@@ -173,17 +174,17 @@ maximum:</p>
<h2 id="alternate-code">Alternate code:</h2>
<p>This alternate code is based on the author’s remarks.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<p>Use <code>sykes1.alt</code> as you would <code>sykes1</code> above.</p>
<h3 id="alternate-try">Alternate try:</h3>
<p>The <a href="try.sh">try.sh</a> script will use both versions to show some differences. You
can do so like:</p>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Read the <a href="sykes1.html">sykes1.html</a> page source.
Now then read the C source. Confused? :-) If it’s not clear try:</p>
<pre class="&lt;!---sh--&gt;"><code> diff -s sykes1.c sykes1.html</code></pre>
<pre><code> diff -s sykes1.c sykes1.html</code></pre>
<p>For extra credit, understand what happens when you give this entry
an negative number argument, and why.</p>
<p>See the author’s remarks for how to make your own shapes as well.</p>
@@ -200,7 +201,7 @@ together. I have not known anyone to solve it in this way - you would
need to be very lucky indeed to stumble across a solution.</p>
<h3 id="instructions">Instructions</h3>
<p>Compile the program, then test that it works:</p>
<pre class="&lt;!---sh--&gt;"><code> ./sykes1</code></pre>
<pre><code> ./sykes1</code></pre>
<p>Shortly you should see the first solution pop out on your screen. It
shows you how to build the cube piece by piece, rendered in glorious
3D ASCII.</p>
@@ -210,18 +211,18 @@ open the file <a href="sykes1.html">sykes1.html</a>. This html file is just a co
the browser display for you a nice animated GIF, showing you how to build the
cube. Rendered in glorious 3D color.</p>
<p>Want to see another solution? Try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./sykes1 some_number</code></pre>
<pre><code> ./sykes1 some_number</code></pre>
<p>The program will discard solutions up to the number, and output numbered
solution. Refresh your browser window to see the new solution.</p>
<p>Try some more - there are exactly <code>19186</code> solutions to choose from.</p>
<p>If you have a fast machine you might try the last solution:</p>
<pre class="&lt;!---sh--&gt;"><code> ./sykes1 19186</code></pre>
<pre><code> ./sykes1 19186</code></pre>
<p>On my machine this takes about half an hour to run.</p>
<h3 id="implementation">Implementation</h3>
<p>The implementation is an optimized recursive algorithm that tries to fit
the pieces into the cube one by one. The cube pieces are defined near
the start of the program:</p>
<pre class="&lt;!---c--&gt;"><code> int s[ ] = { 186, 94, 1426, 3098
<pre><code> int s[ ] = { 186, 94, 1426, 3098
,1047 , 122 , 1082 , 3083 , 1039
, 569 , 527 , 1054 , 531 } ;</code></pre>
<p>Each piece is a bitmap, and represents a 3x3x3 cube.</p>
@@ -256,7 +257,7 @@ shape:</p>
the pieces, and provided that a solution is possible, it will be found.</p>
<p>For example, if you modify line 13 of the source like this, the program
will solve for a different piece set:</p>
<pre class="&lt;!---c--&gt;"><code> int s[ ] = { 187, 94, 402, 3098</code></pre>
<pre><code> int s[ ] = { 187, 94, 402, 3098</code></pre>
<p>And of course you can make your own.</p>
<p>After the pieces are defined, the first thing the program does it to
fit them into a 4x4 cube. It collects every possible placing of each
@@ -334,10 +335,10 @@ advantage - at least I don’t violate any of those old Unisys patents!</p>
<li><a href="bedlam-cubes.pdf">bedlam-cubes.pdf</a> - instructions on how to make your own cube</li>
<li><a href="solving-bedlam-cube.mp4">solving-bedlam-cube.mp4</a> - spoiler movie showing the solution</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes1/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_sykes1.tar.bz2">2006_sykes1.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_sykes1.tar.bz2">2006_sykes1.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes1/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes1/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_sykes2.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+5 -4
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,11 +142,11 @@ Location: <a href="../../location.html#FI">FI</a> - <em>Republic of Finland </em
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./sykes2</code></pre>
<pre><code> ./sykes2</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<p>This will repeatedly remake the program and run it then sleep for one second for
a nice show of time.</p>
<h2 id="judges-comments">Judges’ Comments:</h2>
@@ -194,10 +195,10 @@ multiple times per second for a long time. Run at your own risk!</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes2/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes2/sykes2.orig.c">sykes2.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes2/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_sykes2.tar.bz2">2006_sykes2.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_sykes2.tar.bz2">2006_sykes2.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes2/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/sykes2/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -43,7 +43,7 @@
},
{
"file_path" : "2006_toledo1.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+6 -5
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,12 +142,12 @@ Location: <a href="../../location.html#MX">MX</a> - <em>United Mexican States</e
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./toledo1 [0-9][0-9]</code></pre>
<pre><code> ./toledo1 [0-9][0-9]</code></pre>
<p>where <code>[0-9][0-9]</code> is a two digit number.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.sh</code></pre>
<pre><code> ./try.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>For most of the arguments (e.g. those above) the resulting path
is not circular, but at least one starting point yields a circular path.</p>
@@ -157,7 +158,7 @@ be expected, and some dump core?</p>
visit the 64 squares without repeating them?</p>
<p>If not, this program does it, just run it with an argument
giving initial position.</p>
<pre class="&lt;!---sh--&gt;"><code> ./toledo1 11 # start is A8
<pre><code> ./toledo1 11 # start is A8
./toledo1 18 # start is H8
./toledo1 81 # start is A1
./toledo1 88 # start is H1
@@ -192,10 +193,10 @@ Nevertheless, don’t be dismayed, jar, jar. :-)</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo1/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo1/toledo1.orig.c">toledo1.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo1/try.sh">try.sh</a> - how to run</li>
<li><a href="2006_toledo1.tar.bz2">2006_toledo1.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_toledo1.tar.bz2">2006_toledo1.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo1/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo1/.entry.json">.entry.json</a> - description of entry in JSON</li>
+1 -1
View File
@@ -51,7 +51,7 @@
},
{
"file_path" : "2006_toledo2.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+8 -7
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,7 +142,7 @@ Location: <a href="../../location.html#MX">MX</a> - <em>United Mexican States</e
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>There is <a href="#alternate-code">alternate code</a> that is based on the author’s notes
for DOS/Windows. This cannot be tested by us, not even to compile, but it appears
that it should be fine, after the proper header files were added.</p>
@@ -150,12 +151,12 @@ that it should be fine, after the proper header files were added.</p>
<pre><code> STATUS: INABIAF - please **DO NOT** fix</code></pre>
<p>For more detailed information see <a href="../../bugs.html#2006_toledo2">2006 toledo2 bugs</a>.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./toledo2</code></pre>
<pre><code> ./toledo2</code></pre>
<p>To end execution press <code>ctrl-z</code>. As mentioned in the author’s remarks and in the
below section, it is supposed to crash on termination though some noted this
does not seem to happen in macOS or linux in 2023.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./toledo2</code></pre>
<pre><code> ./toledo2</code></pre>
<p>and then type in the following:</p>
<pre><code> 10 PRINT &quot;HELLO WORLD!&quot;
LIST
@@ -165,7 +166,7 @@ does not seem to happen in macOS or linux in 2023.</p>
<p>This version, as noted, should work for DOS/Windows. It uses non-standard
functions in place of <code>read(2)</code> and <code>write(2)</code>.</p>
<h3 id="alternate-build">Alternate build:</h3>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<h3 id="alternate-use">Alternate use:</h3>
<p>The author noted that for PC/DOS you will have to add <code>ANSI.SYS</code> to your
<code>CONFIG.SYS</code> but this is also something we can’t test.</p>
@@ -203,7 +204,7 @@ the very first volume of <a href="https://en.wikipedia.org/wiki/Dr._Dobb%27s_Jou
Journal</a>.</p>
<p>Type using uppercase letters. Here are three example programs. Press Enter after
each line:</p>
<pre class="&lt;!---basic--&gt;"><code> 10 PRINT &quot;Hello, world!&quot;
<pre><code> 10 PRINT &quot;Hello, world!&quot;
LIST
RUN
@@ -236,7 +237,7 @@ from the <code>SOURCE</code> directory:</p>
PIP.COM STAT.COM SUBMIT.COM XSUB.COM</code></pre>
<p>To import them, you must run the emulator with an argument, by
example:</p>
<pre class="&lt;!---sh--&gt;"><code> ./toledo2 DDT.COM</code></pre>
<pre><code> ./toledo2 DDT.COM</code></pre>
<p>When the <code>&gt;</code> prompt appears, do:</p>
<pre><code> IMPORT DDT.COM</code></pre>
<p>When it ends, do <code>HALT</code>, so the file is closed, and you can start
@@ -347,10 +348,10 @@ only one function.</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo2/toledo2.alt.c">toledo2.alt.c</a> - alternative source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo2/toledo2.orig.c">toledo2.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo2/KAYPROII.ZIP">KAYPROII.ZIP</a> - zip file of CPM related files</li>
<li><a href="2006_toledo2.tar.bz2">2006_toledo2.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_toledo2.tar.bz2">2006_toledo2.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="A">A</a> - binary support file</li>
<li><a href="B">B</a> - binary support file</li>
+1 -1
View File
@@ -67,7 +67,7 @@
},
{
"file_path" : "2006_toledo3.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+7 -6
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -141,14 +142,14 @@ Location: <a href="../../location.html#MX">MX</a> - <em>United Mexican States</e
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<h2 id="to-build">To build:</h2>
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>The author provided two alternate versions, one which adds a status bar and
another that makes it text only. The author also provided a version that they
tested with Windows. See <a href="#alternate-code">alternate code</a> below.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./toledo3 [1 | 2 | 3 [b]]</code></pre>
<pre><code> ./toledo3 [1 | 2 | 3 [b]]</code></pre>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./toledo3 1</code></pre>
<pre><code> ./toledo3 1</code></pre>
<h2 id="alternate-code">Alternate code:</h2>
<p>The author provided two additional versions, <a href="toledo3-sbar.c">toledo3-sbar.c</a>
and <a href="toledo3-txt.c">toledo3-txt.c</a>. Respectively these create a status bar and
@@ -172,7 +173,7 @@ the code for Deep Blue.</p>
<p>So I managed to do a graphical X11 chess program (‘<code>WYSIAIE</code>’, or ‘What You See
Is An IOCCC Entry’). Pointing and clicking to move pieces is the only required
action, and of course the command-line options:</p>
<pre class="&lt;!---sh--&gt;"><code> ./toledo3 # Two-players mode (useful if you don&#39;t have a board at hand)
<pre><code> ./toledo3 # Two-players mode (useful if you don&#39;t have a board at hand)
./toledo3 1 # Human white - Computer black, level 1 (fast)
./toledo3 2 # Human white - Computer black, level 2 (medium)
./toledo3 3 # Human white - Computer black, level 3 (slow)
@@ -196,7 +197,7 @@ optimizations use valuable IOCCC characters.</p>
number generator.</p>
<p>Because it is resource-hungry, I strongly recommend to compile it
using maximum optimization. With GCC you can use:</p>
<pre class="&lt;!---sh--&gt;"><code> gcc -O3 -fexpensive-optimizations prog.c -o prog -lX11</code></pre>
<pre><code> gcc -O3 -fexpensive-optimizations prog.c -o prog -lX11</code></pre>
<h3 id="known-features">KNOWN “FEATURES”</h3>
<ol type="1">
<li><p>Because this is my second X11 program (the first was
@@ -254,10 +255,10 @@ rules) creates a status display about gameplay on the window title bar.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo3/toledo3-sbar.c">toledo3-sbar.c</a> - source to create a status bar</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo3/toledo3-txt.c">toledo3-txt.c</a> - source to make the game text</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo3/layer.c">layer.c</a> - windows portability source</li>
<li><a href="2006_toledo3.tar.bz2">2006_toledo3.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2006_toledo3.tar.bz2">2006_toledo3.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo3/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2006/toledo3/.entry.json">.entry.json</a> - description of entry in JSON</li>