Rename 2020/ferguson1/deobfuscation -> obfuscation

As the file is not actually code and does not give deobfuscated code but
rather shows how I obfuscated it (indirectly and directly) a better
name, if spoilers will not work, is obfuscation. Thus obfuscation.md and
obfuscation.html are the new names.

Manifest updated; regenerated .entry.json, index.html and other html
files that link to the html file.

In a heading/section (in obfuscation.html) I linked to two files that
are named.
This commit is contained in:
Cody Boone Ferguson committed 2024-07-01 06:40:46 -07:00
1 parent 5dd3311e9e
commit e5bcf2ee25
14 files changed
+52 -52

No files matched your search

+16 -16
View File
@@ -105,14 +105,6 @@
"display_via_github" : false,
"entry_text" : "explains various odd screen dumps"
},
{
"file_path" : "deobfuscation.html",
"inventory_order" : 100,
"OK_to_edit" : false,
"display_as" : "html",
"display_via_github" : false,
"entry_text" : "Deobfuscation information about the code"
},
{
"file_path" : "gameplay.html",
"inventory_order" : 100,
@@ -121,6 +113,14 @@
"display_via_github" : false,
"entry_text" : "many different gameplay modes described"
},
{
"file_path" : "obfuscation.html",
"inventory_order" : 100,
"OK_to_edit" : false,
"display_as" : "html",
"display_via_github" : false,
"entry_text" : "detailed information about the obfuscation of the code"
},
{
"file_path" : "terminals.html",
"inventory_order" : 100,
@@ -273,14 +273,6 @@
"display_via_github" : true,
"entry_text" : "markdown source for crazy.log.html"
},
{
"file_path" : "deobfuscation.md",
"inventory_order" : 4000000000,
"OK_to_edit" : true,
"display_as" : "markdown",
"display_via_github" : true,
"entry_text" : "markdown source for deobfuscation.html"
},
{
"file_path" : "gameplay.md",
"inventory_order" : 4000000000,
@@ -297,6 +289,14 @@
"display_via_github" : false,
"entry_text" : "image of Double-layered Chocolate Fudge Cake with 'IOCCC'"
},
{
"file_path" : "obfuscation.md",
"inventory_order" : 4000000000,
"OK_to_edit" : true,
"display_as" : "markdown",
"display_via_github" : true,
"entry_text" : "markdown source for obfuscation.html"
},
{
"file_path" : "terminals.md",
"inventory_order" : 4000000000,
+3 -3
View File
@@ -137,7 +137,7 @@ Bugs and things that might seem like bugs but are not.
Because most of us could use some *Double-layered Chocolate Fudge Cake*!
* [deobfuscation.html](deobfuscation.html)
* [obfuscation.html](obfuscation.html)
Read ***ONLY*** if you really must give up trying to de-obfuscate!
@@ -201,7 +201,7 @@ The [terminals.html](terminals.html) has a variety of information
specific to terminals from input/directions, dimensions, sanity and colours: a
sort of troubleshooting guide for terminals with some additional information.
The [deobfuscation.html](deobfuscation.html) has a variety of information
The [obfuscation.html](obfuscation.html) has a variety of information
including some of the obfuscation techniques and a bit of how it works.
The [bugs.html](bugs.html) has a list of known bugs and things that
@@ -594,7 +594,7 @@ email but I'm more likely to respond to mastodon messages.
[troubleshooting.html]: troubleshooting.html
[human snakes]: http://www.macroevolution.net/snake-human-hybrids.html
[chocolate-cake.html]: chocolate-cake.html
[deobfuscation.html]: deobfuscation.html
[obfuscation.html]: obfuscation.html
[Surround]: https://en.wikipedia.org/wiki/Surround_(video_game)
[Snake walk: The physics of slithering]: https://www.bbc.co.uk/news/science-environment-35563941
[snake-colours.sh]: snake-colours.sh
+1 -1
View File
@@ -294,7 +294,7 @@ a bug and I prefer putting in restrictions to try and make it very unlikely.
[gameplay.html]: gameplay.html
[cannibalism.log.html]: cannibalism.log.html
[https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms]: https://en.wikipedia.org/wiki/Halfwidth_and_fullwidth_forms
[deobfuscation.html]: deobfuscation.html
[obfuscation.html]: obfuscation.html
<hr style="width:10%;text-align:left;margin-left:0">
+1 -1
View File
@@ -802,7 +802,7 @@ to be a problem simply do:</p>
could also set the max size to be the highest possible by saying</p>
<pre><code> MAXSIZE=-1</code></pre>
<p>Which I’ve done in the <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/play.sh">play.sh</a> script.</p>
<p>I discuss how this mode works in <a href="deobfuscation.html">deobfuscation.html</a>.</p>
<p>I discuss how this mode works in <a href="obfuscation.html">obfuscation.html</a>.</p>
<p>Here’s an example run where I spelt ‘SNAKE’. As you can see it’s far from
perfect: the snake after all does not leave gaps and the game does not support
diagonal movement and I also made a mistake and had to modify what I was aiming
+2 -2
View File
@@ -554,7 +554,7 @@ could also set the max size to be the highest possible by saying
Which I've done in the [play.sh][] script.
I discuss how this mode works in [deobfuscation.html][].
I discuss how this mode works in [obfuscation.html][].
Here's an example run where I spelt 'SNAKE'. As you can see it's far from
perfect: the snake after all does not leave gaps and the game does not support
@@ -913,7 +913,7 @@ years ago but I know it's true now. **Believe in yourself. Always.**
[terminals.html]: terminals.html
[troubleshooting.html]: troubleshooting.html
[bugs.html]: bugs.html
[deobfuscation.html]: deobfuscation.html
[obfuscation.html]: obfuscation.html
[snake-colours.sh]: %%REPO_URL%%/2020/ferguson1/snake-colours.sh
[number of hertz (flashes) per second triggering seizures]: https://www.epilepsysociety.org.uk/photosensitive-epilepsy#.Xjgpwi2ZOgQ
[termcaps.c]: %%REPO_URL%%/2020/ferguson1/termcaps.c
+4 -4
View File
@@ -507,7 +507,7 @@ This game has a number of configurable pitfalls including walls and snakes.</p>
</ul>
<p>Because most of us could use some <em>Double-layered Chocolate Fudge Cake</em>!</p>
<ul>
<li><a href="deobfuscation.html">deobfuscation.html</a></li>
<li><a href="obfuscation.html">obfuscation.html</a></li>
</ul>
<p>Read <strong><em>ONLY</em></strong> if you really must give up trying to de-obfuscate!</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
@@ -559,7 +559,7 @@ first glance but are not) that I have thought of or encountered.</p>
<p>The <a href="terminals.html">terminals.html</a> has a variety of information
specific to terminals from input/directions, dimensions, sanity and colours: a
sort of troubleshooting guide for terminals with some additional information.</p>
<p>The <a href="deobfuscation.html">deobfuscation.html</a> has a variety of information
<p>The <a href="obfuscation.html">obfuscation.html</a> has a variety of information
including some of the obfuscation techniques and a bit of how it works.</p>
<p>The <a href="bugs.html">bugs.html</a> has a list of known bugs and things that
look like bugs but aren’t as well as documenting a built-in test unit for some
@@ -912,8 +912,8 @@ email but I’m more likely to respond to mastodon messages.</p>
<li><a href="cannibalism.log.html">cannibalism.log.html</a> - shows extreme cannibalism mode output</li>
<li><a href="chocolate-cake.html">chocolate-cake.html</a> - Double-layered Chocolate Fudge Cake Recipe</li>
<li><a href="crazy.log.html">crazy.log.html</a> - explains various odd screen dumps</li>
<li><a href="deobfuscation.html">deobfuscation.html</a> - Deobfuscation information about the code</li>
<li><a href="gameplay.html">gameplay.html</a> - many different gameplay modes described</li>
<li><a href="obfuscation.html">obfuscation.html</a> - Obfuscation information about the code</li>
<li><a href="terminals.html">terminals.html</a> - terminal capabilities and dimensions and colours</li>
<li><a href="troubleshooting.html">troubleshooting.html</a> - troubleshooting Snake</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/prog.2.c">prog.2.c</a> - source code with more digraphs</li>
@@ -933,11 +933,11 @@ email but I’m more likely to respond to mastodon messages.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/cannibalism.log.md">cannibalism.log.md</a> - markdown source for cannibalism.log.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/chocolate-cake.md">chocolate-cake.md</a> - markdown source for chocolate-cake.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/crazy.log.md">crazy.log.md</a> - markdown source for crazy.log.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/deobfuscation.md">deobfuscation.md</a> - markdown source for deobfuscation.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/.entry.json">.entry.json</a> - entry summary and manifest in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/gameplay.md">gameplay.md</a> - markdown source for gameplay.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/.gitignore">.gitignore</a> - list of files that should not be committed under git</li>
<li><a href="ioccc-cake.jpg">ioccc-cake.jpg</a> - image of Double-layered Chocolate Fudge Cake with ‘IOCCC’</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/obfuscation.md">obfuscation.md</a> - markdown source for obfuscation.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/.path">.path</a> - directory path from top level directory</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/terminals.md">terminals.md</a> - markdown source for terminals.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/troubleshooting.md">troubleshooting.md</a> - markdown source for troubleshooting.html</li>
@@ -12,8 +12,8 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
<title>The International Obfuscated C Code Contest</title>
<link rel="icon" type="image/x-icon" href="../../favicon.ico">
<meta name="description" content="deobfuscation.md for 2020/ferguson1">
<meta name="keywords" content="IOCCC, 2020/ferguson1, deobfuscation.md">
<meta name="description" content="obfuscation.md for 2020/ferguson1">
<meta name="keywords" content="IOCCC, 2020/ferguson1, obfuscation.md">
</head>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
@@ -26,13 +26,13 @@
<!-- -->
<!-- This web page was formed via the tool: bin/gen-other-html.sh -->
<!-- The content of main section of this web page came from: 2020/ferguson1/deobfuscation.md -->
<!-- The content of main section of this web page came from: 2020/ferguson1/obfuscation.md -->
<!-- -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/deobfuscation.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/deobfuscation.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/deobfuscation.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/obfuscation.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/obfuscation.md !!! -->
<!-- !!! Do not modify this web page, instead modify the file: 2020/ferguson1/obfuscation.md !!! -->
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<!-- Markdown content was converted into HTML via the tool: bin/md2html.sh -->
@@ -363,7 +363,7 @@
height=110>
</a>
<h1>The International Obfuscated C Code Contest</h1>
<h2>deobfuscation.html for 2020/ferguson1</h2>
<h2>obfuscation.html for 2020/ferguson1</h2>
</div>
<!-- END: this line ends content from: inc/header.default.html -->
@@ -371,7 +371,7 @@
<div class="navbar">
<a class="Left" href="index.html">&uarr; jump to index.html &uarr;</a>
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2020%2Fferguson1%2Fdeobfuscation.html">&#x2713;</a>
<a class="Right" href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2020%2Fferguson1%2Fobfuscation.html">&#x2713;</a>
</div>
<!-- END: this line ends content from: inc/navbar.up2index.html -->
@@ -382,7 +382,7 @@
<!-- END: this line ends content from: inc/before-content.default.html -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- BEFORE: 1st line of markdown file: 2020/ferguson1/deobfuscation.md -->
<!-- BEFORE: 1st line of markdown file: 2020/ferguson1/obfuscation.md -->
<h1 id="introduction-and-deobfuscation">Introduction and Deobfuscation</h1>
<p>In the <a href="gameplay.html">gameplay.html</a> file I have given enough
information to know how the game looks, how to move the snake, how to pause etc.
@@ -405,7 +405,7 @@ already knew that so no harm there, hey?</p>
<li><a href="#resizing">Collision detection when resizing the window of the game</a></li>
</ul></li>
<li><a href="#obfuscation">Obfuscation</a></li>
<li><a href="#skinning">Skinning the snake (i.e., decreasing the iocccsize)</a></li>
<li><a href="#skinning">Skinning the snake (i.e. decreasing the iocccsize)</a></li>
<li><a href="#size">A few more interesting size optimisations</a></li>
</ul>
</div>
@@ -933,7 +933,7 @@ then what is <code>V</code> anyway? It’s <code>U + 1</code>; and <code>U</code
of the compound literal! So there are quite a lot of levels of indirection
in this part alone (not to mention other places)!</p></li>
</ul>
<h1 id="obfuscation-in-prog.3.c-and-prog.3-j.c">Obfuscation in prog.3.c and prog.3-j.c</h1>
<h1 id="obfuscation-in-prog.3.c-and-prog.3-j.c">Obfuscation in <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/prog.3.c">prog.3.c</a> and <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2020/ferguson1/prog.3-j.c">prog.3-j.c</a></h1>
<p>There are a few differences in this version that are worth noting. First of all
is a define that’s in the compiler invocation Makefile is in the source file
itself. Second are the following obfuscation techniques. To simplify integrating
@@ -1069,7 +1069,7 @@ done elsewhere? I had:</p>
<pre><code> attroff(m(PAIR(L)));
h &amp;&amp; attron(m(PAIR(L)));</code></pre>
<p>That saved two bytes.</p>
<p>Second let’s look at the <code>B()</code> function: there were two things I thought of that
<p>Next let’s look at the <code>B()</code> function: there were two things I thought of that
would save some bytes (I no longer know how many but a few at least possibly six
or even more). I had the following code:</p>
<pre><code> if (V &amp;&amp; U &amp;&amp; o) { S(N); b(1); }</code></pre>
@@ -1132,7 +1132,7 @@ matter having a ‘o’ at 0,0 isn’t either).</p>
https://creativecommons.org/licenses/by-sa/4.0/
-->
<!-- AFTER: last line of markdown file: 2020/ferguson1/deobfuscation.md -->
<!-- AFTER: last line of markdown file: 2020/ferguson1/obfuscation.md -->
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- START: this line starts content from: inc/after-content.default.html -->
@@ -1192,7 +1192,7 @@ matter having a ‘o’ at 0,0 isn’t either).</p>
<div id="coda"><h3>Coda</h3>
<p>
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2020%2Fferguson1%2Fdeobfuscation.html" rel="nofollow">Nu HTML check this web page</a><br>
<a href="https://validator.w3.org/nu/?doc=https%3A%2F%2Fioccc-src.github.io%2Ftemp-test-ioccc%2F2020%2Fferguson1%2Fobfuscation.html" rel="nofollow">Nu HTML check this web page</a><br>
<a href="#top">Jump to top</a> <a href="#content">Jump to Content</a>
</p>
</div>
@@ -20,7 +20,7 @@ already knew that so no harm there, hey?
* [Cannibal collision detection](#cannibalcollision)
* [Collision detection when resizing the window of the game](#resizing)
- [Obfuscation](#obfuscation)
- [Skinning the snake &#x28;i.e., decreasing the iocccsize&#x29;](#skinning)
- [Skinning the snake &#x28;i.e. decreasing the iocccsize&#x29;](#skinning)
- [A few more interesting size optimisations](#size)
</div>
@@ -711,7 +711,7 @@ referring to another property: bitwise AND. For example consider the following:
in this part alone (not to mention other places)!
# Obfuscation in prog.3.c and prog.3-j.c
# Obfuscation in [prog.3.c](%%REPO_URL%%/2020/ferguson1/prog.3.c) and [prog.3-j.c](%%REPO_URL%%/2020/ferguson1/prog.3-j.c)
There are a few differences in this version that are worth noting. First of all
is a define that's in the compiler invocation Makefile is in the source file
@@ -891,7 +891,7 @@ But I then saved an extra byte by making it:
That saved two bytes.
Second let's look at the `B()` function: there were two things I thought of that
Next let's look at the `B()` function: there were two things I thought of that
would save some bytes (I no longer know how many but a few at least possibly six
or even more). I had the following code: