convert more spoiler into deobfuscation
This commit is contained in:
1 parent
4d6009b58f
commit
3aec80f057
20 files changed
+42
-40
No files matched your search
+1
-1
@@ -46,7 +46,7 @@ one of the all time best IOCCC entries from 1984.
|
||||
We also suggest that you take a very good look at how the
|
||||
[muth](muth/index.html) code makes full use of the C Pre-Processor.
|
||||
|
||||
...We'll stop spouting spoilers now. Have fun exploring all the entries!
|
||||
...We'll stop spouting deobfuscation information now. Have fun exploring all the entries!
|
||||
|
||||
|
||||
## Remarks on some of submissions that did not win
|
||||
|
||||
+1
-1
@@ -418,7 +418,7 @@ and look at the source code again.</p>
|
||||
one of the all time best IOCCC entries from 1984.</p>
|
||||
<p>We also suggest that you take a very good look at how the
|
||||
<a href="muth/index.html">muth</a> code makes full use of the C Pre-Processor.</p>
|
||||
<p>…We’ll stop spouting spoilers now. Have fun exploring all the entries!</p>
|
||||
<p>…We’ll stop spouting deobfuscation information now. Have fun exploring all the entries!</p>
|
||||
<h2 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h2>
|
||||
<p>The number of entries that would have made it into the final rounds
|
||||
would have been much higher had some people paid attention to rules 2
|
||||
|
||||
+1
-1
@@ -42,7 +42,7 @@ The [Most likely to be awarded - 2018/ciura](ciura/index.html) has an amazing vo
|
||||
There are also nods to entries of the years [2000/bellard](../2000/bellard/index.html),
|
||||
[2015/yang](../2015/yang/index.html), ...
|
||||
|
||||
...We'll stop spouting spoilers now. Have fun exploring all the entries!
|
||||
...We'll stop spouting deobfuscation information now. Have fun exploring all the entries!
|
||||
|
||||
|
||||
## Remarks on some of submissions that did not win
|
||||
|
||||
+1
-1
@@ -414,7 +414,7 @@ It is something completely different.</p>
|
||||
<p>The <a href="ciura/index.html">Most likely to be awarded - 2018/ciura</a> has an amazing vocabulary!</p>
|
||||
<p>There are also nods to entries of the years <a href="../2000/bellard/index.html">2000/bellard</a>,
|
||||
<a href="../2015/yang/index.html">2015/yang</a>, …</p>
|
||||
<p>…We’ll stop spouting spoilers now. Have fun exploring all the entries!</p>
|
||||
<p>…We’ll stop spouting deobfuscation information now. Have fun exploring all the entries!</p>
|
||||
<h2 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h2>
|
||||
<p>The number of entries that would have made it into the final rounds
|
||||
would have been much higher had some people paid attention to rules 2
|
||||
|
||||
+1
-1
@@ -38,7 +38,7 @@ These nods to not run afoul of the guideline:
|
||||
because the entry [2019/dogon](dogon/index.html) appropriately pays homage
|
||||
to past entries without blatantly reusing their code.
|
||||
|
||||
...We'll stop spouting spoilers now. Have fun exploring all the entries!
|
||||
...We'll stop spouting deobfuscation information now. Have fun exploring all the entries!
|
||||
|
||||
|
||||
## Remarks on some of submissions that did not win
|
||||
|
||||
+1
-1
@@ -415,7 +415,7 @@ are rather similar to previous entries</p>
|
||||
</blockquote>
|
||||
<p>because the entry <a href="dogon/index.html">2019/dogon</a> appropriately pays homage
|
||||
to past entries without blatantly reusing their code.</p>
|
||||
<p>…We’ll stop spouting spoilers now. Have fun exploring all the entries!</p>
|
||||
<p>…We’ll stop spouting deobfuscation information now. Have fun exploring all the entries!</p>
|
||||
<h2 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h2>
|
||||
<p>Some entries tried to get around the size limit by submitting a data
|
||||
file that was really C code and then blindly including code in prog.c.</p>
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ and [Snake - 2020/ferguson1](ferguson1/index.html).
|
||||
An entry, [kurdyukov1](kurdyukov1/index.html), pays homage to the previous entry
|
||||
[2015/hou](../2015/hou/index.html).
|
||||
|
||||
...We'll stop spouting spoilers now. Have fun exploring all the entries!
|
||||
...We'll stop spouting deobfuscation information now. Have fun exploring all the entries!
|
||||
|
||||
|
||||
## Remarks on some of submissions that did not win
|
||||
|
||||
@@ -495,7 +495,7 @@ left it might be:</p>
|
||||
Please note that modifier keys like ctrl aren’t detectable or at least I’m
|
||||
unaware of how to do so.</p>
|
||||
<h2 id="modifying-the-statusscore-line-table-of-variablesstats-below">Modifying the status/score line (table of variables/stats below)</h2>
|
||||
<h3 id="spoiler-warning">SPOILER WARNING</h3>
|
||||
<h3 id="deobfuscation-notice">DEOBFUSCATION NOTICE</h3>
|
||||
<p>Below I give a table of some variables/expressions along with the data types and
|
||||
their respective format specifiers of the data. Originally it was a lot more
|
||||
detailed but as I started obfuscating things variables started to disappear and
|
||||
|
||||
@@ -152,7 +152,7 @@ unaware of how to do so.
|
||||
|
||||
## Modifying the status/score line (table of variables/stats below)
|
||||
|
||||
### SPOILER WARNING
|
||||
### DEOBFUSCATION NOTICE
|
||||
|
||||
Below I give a table of some variables/expressions along with the data types and
|
||||
their respective format specifiers of the data. Originally it was a lot more
|
||||
|
||||
@@ -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 [spoilers.markdown][].</p>
|
||||
<p>I discuss how this mode works in <a href="spoilers.html">spoilers.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
|
||||
|
||||
@@ -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 [spoilers.markdown][].
|
||||
I discuss how this mode works in [spoilers.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
|
||||
|
||||
+1
-1
@@ -405,7 +405,7 @@ IOCCC list!</p>
|
||||
and <a href="ferguson1/index.html">Snake - 2020/ferguson1</a>.</p>
|
||||
<p>An entry, <a href="kurdyukov1/index.html">kurdyukov1</a>, pays homage to the previous entry
|
||||
<a href="../2015/hou/index.html">2015/hou</a>.</p>
|
||||
<p>…We’ll stop spouting spoilers now. Have fun exploring all the entries!</p>
|
||||
<p>…We’ll stop spouting deobfuscation information now. Have fun exploring all the entries!</p>
|
||||
<h2 id="remarks-on-some-of-submissions-that-did-not-win">Remarks on some of submissions that did not win</h2>
|
||||
<p>As a rule, we try to compile the entries on a variety of platforms. Quite a few
|
||||
entries this year could not be built or executed on some of them due to reliance
|
||||
|
||||
+3
-2
@@ -484,9 +484,10 @@ the top of the index.html for each entry as well. Keep in mind that C compilers
|
||||
often have bugs, or features which result the program failing to compile. You
|
||||
may have to do some syntax changing as we did to get old programs to compile on
|
||||
strict ANSI C compilers.</p>
|
||||
<p>Last, read the judges’ remarks/spoilers on the program. Hints for <code>foo.c</code> are
|
||||
<p>Last, read the judges’ remarks and deobfuscation information on the program. Hints for <code>foo.c</code> are
|
||||
given in <code>index.html</code>. Often they will contain suggested arguments or
|
||||
recommended data to use. Authors also sometimes give spoilers.</p>
|
||||
recommended data to use. Authors also sometimes provide deobfuscation information
|
||||
about their entries.</p>
|
||||
<p>If you do gain some understanding of how a program works, go back to the source
|
||||
and reexamine it using some of the techniques outlined above. See if you can
|
||||
convince yourself of why the program does what it does.</p>
|
||||
|
||||
@@ -128,9 +128,10 @@ often have bugs, or features which result the program failing to compile. You
|
||||
may have to do some syntax changing as we did to get old programs to compile on
|
||||
strict ANSI C compilers.
|
||||
|
||||
Last, read the judges' remarks/spoilers on the program. Hints for `foo.c` are
|
||||
Last, read the judges' remarks and deobfuscation information on the program. Hints for `foo.c` are
|
||||
given in `index.html`. Often they will contain suggested arguments or
|
||||
recommended data to use. Authors also sometimes give spoilers.
|
||||
recommended data to use. Authors also sometimes provide deobfuscation information
|
||||
about their entries.
|
||||
|
||||
If you do gain some understanding of how a program works, go back to the source
|
||||
and reexamine it using some of the techniques outlined above. See if you can
|
||||
|
||||
@@ -2811,8 +2811,8 @@ used.</li>
|
||||
<p>Also, it requires a space between identifiers. In short, use <code>(S K)</code> instead of
|
||||
<code>(SK)</code>, “`sk”, **i<em>i</em>i<em>ii</em>i<em>i</em>ii<code>, or</code>11111100011100`.</p>
|
||||
<p>Huge memory may be required to compile the program (about 300 MB on my machine).</p>
|
||||
<p>In addition, there are some limitations (and workarounds) mentioned in <a href="2013/endoh1/index.html#spoiler">Spoiler
|
||||
section</a>.</p>
|
||||
<p>In addition, there are some limitations (and workarounds) mentioned in the
|
||||
<a href="2013/endoh1/index.html#deobfuscation">Deobfuscation section</a>.</p>
|
||||
<p>–</p>
|
||||
<div id="2013_endoh3">
|
||||
<h2 id="endoh3">2013/endoh3</h2>
|
||||
|
||||
@@ -3508,8 +3508,8 @@ Also, it requires a space between identifiers. In short, use `(S K)` instead of
|
||||
|
||||
Huge memory may be required to compile the program (about 300 MB on my machine).
|
||||
|
||||
In addition, there are some limitations (and workarounds) mentioned in [Spoiler
|
||||
section](2013/endoh1/index.html#spoiler).
|
||||
In addition, there are some limitations (and workarounds) mentioned in the
|
||||
[Deobfuscation section](2013/endoh1/index.html#deobfuscation).
|
||||
|
||||
--
|
||||
|
||||
|
||||
@@ -766,7 +766,7 @@ over there.</p>
|
||||
then use the <a href="contact.html">How to contact the IOCCC</a> information to ask
|
||||
a private question.</p>
|
||||
<p><strong>IMPORTANT</strong>: When you ask your question (in public or as a private question)
|
||||
<strong>PLEASE</strong> try to <strong>NOT</strong> spoil the surprise of your pending submission.
|
||||
<strong>PLEASE</strong> try to <strong>NOT</strong> discuss detailed about your pending submission.
|
||||
Try to ask for question in a more generic way as this will help others
|
||||
with a similar question and this will not <strong>give away</strong> what you might be doing
|
||||
with your submission. If the <a href="judges.html">IOCCC judges</a> truly need more
|
||||
|
||||
@@ -504,7 +504,7 @@ then use the [How to contact the IOCCC](contact.html) information to ask
|
||||
a private question.
|
||||
|
||||
**IMPORTANT**: When you ask your question (in public or as a private question)
|
||||
**PLEASE** try to **NOT** spoil the surprise of your pending submission.
|
||||
**PLEASE** try to **NOT** discuss detailed about your pending submission.
|
||||
Try to ask for question in a more generic way as this will help others
|
||||
with a similar question and this will not **give away** what you might be doing
|
||||
with your submission. If the [IOCCC judges](judges.html) truly need more
|
||||
|
||||
@@ -2118,9 +2118,9 @@ primes.</p>
|
||||
<h2 id="winning-entry-1994westley">Winning entry: <a href="1994/westley/index.html">1994/westley</a></h2>
|
||||
<h3 id="winning-entry-source-code-westley.c-6">Winning entry source code: <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1994/westley/westley.c">westley.c</a></h3>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> converted the spoiler compiler options (provided by the author) to be
|
||||
<p><a href="#cody">Cody</a> converted the deobfuscation compiler options (provided by the author) to be
|
||||
compiler commands and added a script <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1994/westley/try.sh">try.sh</a> to
|
||||
automate the spoiler commands to make it easier to see the game in action from
|
||||
automate the deobfuscation commands to make it easier to see the game in action from
|
||||
start to finish.</p>
|
||||
<p>Cody also added the <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1994/westley/westley.alt.c">alternate version</a>
|
||||
that will look fine on terminals not set to 80 columns and the
|
||||
@@ -2183,7 +2183,7 @@ added.</p>
|
||||
<h3 id="winning-entry-source-code-leo.c-1">Winning entry source code: <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/leo.c">leo.c</a></h3>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/leo/try.sh">try.sh</a> script.</p>
|
||||
<p>At our change in how to deal with spoilers, Cody also uudecoded the spoiler provided
|
||||
<p>At our change in how to deal with deobfuscation, Cody also uudecoded the deobfuscation inforation provided
|
||||
by the author, putting it in <a href="1995/leo/spoiler.html">spoiler.html</a>.</p>
|
||||
<div id="1995_makarios">
|
||||
<h2 id="winning-entry-1995makarios">Winning entry: <a href="1995/makarios/index.html">1995/makarios</a></h2>
|
||||
@@ -2207,8 +2207,8 @@ calls which has the four args.</p>
|
||||
<h2 id="winning-entry-1995vanschnitz">Winning entry: <a href="1995/vanschnitz/index.html">1995/vanschnitz</a></h2>
|
||||
<h3 id="winning-entry-source-code-vanschnitz.c">Winning entry source code: <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.c">vanschnitz.c</a></h3>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the authors’ <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.alt.c">spoiler as a C
|
||||
file</a> as in 2023 we have decided that in most
|
||||
<p><a href="#cody">Cody</a> added the authors’ <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1995/vanschnitz/vanschnitz.alt.c">deobfuscation source code</a>
|
||||
as in 2023 we have decided that in most
|
||||
cases all the code should be available for the wider audience, without having to
|
||||
extract it. The exception is when the files are created by the entry or the
|
||||
entry decrypts the text or something like that.</p>
|
||||
@@ -2466,7 +2466,7 @@ this not only lets it work with systems without <code>gcc</code> (though in macO
|
||||
exist but is actually <code>clang</code>) as <code>cc</code> always should.
|
||||
Getting this entry to work was quite complicated but is also very interesting.</p>
|
||||
<p>To see how the macOS fixes works, see the <a href="1998/schweikh1/macos.html">macos.html</a>
|
||||
file but do note that this includes spoilers for both versions! The fixes to get
|
||||
file but do note that this includes deobfuscation information for both versions! The fixes to get
|
||||
it to work at all are described next.</p>
|
||||
<p>So what was wrong with the original?</p>
|
||||
<p>The call to <code>freopen(3)</code> was incorrect with the second arg (the mode) being
|
||||
@@ -4012,7 +4012,7 @@ symbols from being built with <code>rake</code> Cody also updated the
|
||||
<a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2014/endoh1/Rakefile">Rakefile</a> slightly.</p>
|
||||
<p><strong><em>Barely</em></strong> worth noting but done nonetheless, Cody renamed the <code>read_me.html</code>
|
||||
file to <a href="2014/endoh1/spoilers.html">spoilers.html</a> to be clearer in its purpose as
|
||||
it is a file with spoilers (and too close to index.html?).</p>
|
||||
it is a file with deobfuscation information.</p>
|
||||
<div id="2014_endoh2">
|
||||
<h2 id="winning-entry-2014endoh2">Winning entry: <a href="2014/endoh2/index.html">2014/endoh2</a></h2>
|
||||
<h3 id="winning-entry-source-code-prog.c-3">Winning entry source code: <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2014/endoh2//prog.c">prog.c</a></h3>
|
||||
@@ -4347,7 +4347,7 @@ configuration).</p>
|
||||
<h3 id="winning-entry-source-code-prog.c-36">Winning entry source code: <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2018/yang//prog.c">prog.c</a></h3>
|
||||
</div>
|
||||
<p><a href="#cody">Cody</a> added the <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2018/yang/try.sh">try.sh</a> script. This script will ask
|
||||
if the user wants to see some of the spoilers and only show them if they type
|
||||
if the user wants to see some of the deobfuscation information and only show them if they type
|
||||
<code>y</code> or <code>Y</code>.</p>
|
||||
<div id="2019">
|
||||
<h1 id="the-26th-ioccc"><a href="2019/index.html">2019 - The 26th IOCCC</a></h1>
|
||||
@@ -4424,7 +4424,7 @@ own sha512sum value.</p>
|
||||
<p>He also added the <a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2019/dogon/try.sh">try.sh</a> script.</p>
|
||||
<p>He also made it possible to easily redefine the memory macro <code>Z</code> at compilation
|
||||
time by improving the <code>Makefile</code>.</p>
|
||||
<p>He fixed a link in the spoiler source code. As a spoiler it felt more important
|
||||
<p>He fixed a link in the deobfuscation source code. It felt more important
|
||||
that this was done (some typos were fixed as well but only some - the purpose
|
||||
was to only correct spelling and only some, not to change wording or anything
|
||||
else).</p>
|
||||
|
||||
+9
-9
@@ -2455,9 +2455,9 @@ primes.
|
||||
### Winning entry source code: [westley.c](%%REPO_URL%%/1994/westley/westley.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) converted the spoiler compiler options (provided by the author) to be
|
||||
[Cody](#cody) converted the deobfuscation compiler options (provided by the author) to be
|
||||
compiler commands and added a script [try.sh](%%REPO_URL%%/1994/westley/try.sh) to
|
||||
automate the spoiler commands to make it easier to see the game in action from
|
||||
automate the deobfuscation commands to make it easier to see the game in action from
|
||||
start to finish.
|
||||
|
||||
Cody also added the [alternate version](%%REPO_URL%%/1994/westley/westley.alt.c)
|
||||
@@ -2546,7 +2546,7 @@ added.
|
||||
|
||||
[Cody](#cody) added the [try.sh](%%REPO_URL%%/1995/leo/try.sh) script.
|
||||
|
||||
At our change in how to deal with spoilers, Cody also uudecoded the spoiler provided
|
||||
At our change in how to deal with deobfuscation, Cody also uudecoded the deobfuscation inforation provided
|
||||
by the author, putting it in [spoiler.html](1995/leo/spoiler.html).
|
||||
|
||||
|
||||
@@ -2582,8 +2582,8 @@ calls which has the four args.
|
||||
### Winning entry source code: [vanschnitz.c](%%REPO_URL%%/1995/vanschnitz/vanschnitz.c)
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the authors' [spoiler as a C
|
||||
file](%%REPO_URL%%/1995/vanschnitz/vanschnitz.alt.c) as in 2023 we have decided that in most
|
||||
[Cody](#cody) added the authors' [deobfuscation source code](%%REPO_URL%%/1995/vanschnitz/vanschnitz.alt.c)
|
||||
as in 2023 we have decided that in most
|
||||
cases all the code should be available for the wider audience, without having to
|
||||
extract it. The exception is when the files are created by the entry or the
|
||||
entry decrypts the text or something like that.
|
||||
@@ -2940,7 +2940,7 @@ exist but is actually `clang`) as `cc` always should.
|
||||
Getting this entry to work was quite complicated but is also very interesting.
|
||||
|
||||
To see how the macOS fixes works, see the [macos.html](1998/schweikh1/macos.html)
|
||||
file but do note that this includes spoilers for both versions! The fixes to get
|
||||
file but do note that this includes deobfuscation information for both versions! The fixes to get
|
||||
it to work at all are described next.
|
||||
|
||||
So what was wrong with the original?
|
||||
@@ -5123,7 +5123,7 @@ symbols from being built with `rake` Cody also updated the
|
||||
|
||||
**_Barely_** worth noting but done nonetheless, Cody renamed the `read_me.html`
|
||||
file to [spoilers.html](2014/endoh1/spoilers.html) to be clearer in its purpose as
|
||||
it is a file with spoilers (and too close to index.html?).
|
||||
it is a file with deobfuscation information.
|
||||
|
||||
|
||||
<div id="2014_endoh2">
|
||||
@@ -5606,7 +5606,7 @@ configuration).
|
||||
</div>
|
||||
|
||||
[Cody](#cody) added the [try.sh](%%REPO_URL%%/2018/yang/try.sh) script. This script will ask
|
||||
if the user wants to see some of the spoilers and only show them if they type
|
||||
if the user wants to see some of the deobfuscation information and only show them if they type
|
||||
`y` or `Y`.
|
||||
|
||||
|
||||
@@ -5717,7 +5717,7 @@ He also added the [try.sh](%%REPO_URL%%/2019/dogon/try.sh) script.
|
||||
He also made it possible to easily redefine the memory macro `Z` at compilation
|
||||
time by improving the `Makefile`.
|
||||
|
||||
He fixed a link in the spoiler source code. As a spoiler it felt more important
|
||||
He fixed a link in the deobfuscation source code. It felt more important
|
||||
that this was done (some typos were fixed as well but only some - the purpose
|
||||
was to only correct spelling and only some, not to change wording or anything
|
||||
else).
|
||||
|
||||
Reference in new issue
Block a user