change headings to not be links
This commit is contained in:
1 parent
e8395a2eea
commit
aa31700b42
4 files changed
+89
-89
No files matched your search
+49
-49
@@ -29,60 +29,60 @@ and non-zero).
|
||||
### Variables:
|
||||
|
||||
* **WAIT**<br>
|
||||
positive or negative integer that changes how long to wait for
|
||||
a key press prior to moving again. < 0 blocks which allows
|
||||
for complete control over movement at your own pace. Default
|
||||
231; you can move faster by holding down or rapidly pressing an
|
||||
arrow key.
|
||||
positive or negative integer that changes how long to wait for
|
||||
a key press prior to moving again. < 0 blocks which allows
|
||||
for complete control over movement at your own pace. Default
|
||||
231; you can move faster by holding down or rapidly pressing an
|
||||
arrow key.
|
||||
|
||||
* **WALLS**<br>
|
||||
whether the walls are passable or impassable. Default passable,
|
||||
1; 0 makes walls impassable where you die if you hit a wall.
|
||||
whether the walls are passable or impassable. Default passable,
|
||||
1; 0 makes walls impassable where you die if you hit a wall.
|
||||
|
||||
* **EVADE**<br>
|
||||
how many movements the Snake moves before the bug (well
|
||||
insect; see notes below about why bugs) will move to
|
||||
another location in the field. Default 300; 0 disables.
|
||||
how many movements the Snake moves before the bug (well
|
||||
insect; see notes below about why bugs) will move to
|
||||
another location in the field. Default 300; 0 disables.
|
||||
|
||||
* **SIZE**<br>
|
||||
initial size of the Snake. Note that it grows by one per
|
||||
move so at the default 5 it will not initially be 5
|
||||
characters long! < 0 is likely an immediate win.
|
||||
initial size of the Snake. Note that it grows by one per
|
||||
move so at the default 5 it will not initially be 5
|
||||
characters long! < 0 is likely an immediate win.
|
||||
|
||||
* **MAXSIZE**<br>
|
||||
the maximum size the Snake can become before the game is
|
||||
won. < 0 is the maximum size based on terminal dimensions;
|
||||
any other size will be capped based on the terminal
|
||||
dimensions to prevent problems. Note that when **SIZE+GROW >=
|
||||
MAXSIZE** you win _before_ you grow to the full size!
|
||||
the maximum size the Snake can become before the game is
|
||||
won. < 0 is the maximum size based on terminal dimensions;
|
||||
any other size will be capped based on the terminal
|
||||
dimensions to prevent problems. Note that when **SIZE+GROW >=
|
||||
MAXSIZE** you win _before_ you grow to the full size!
|
||||
|
||||
* **GROW**<br>
|
||||
size to grow every time you eat a bug. Default 5; negative
|
||||
values are allowed. 'Negativity' creates for fun gameplay modes with
|
||||
enough creativity. See [gameplay.html](gameplay.html)
|
||||
GitHub) as well as [play.sh](play.sh) for some examples.
|
||||
size to grow every time you eat a bug. Default 5; negative
|
||||
values are allowed. 'Negativity' creates for fun gameplay modes with
|
||||
enough creativity. See [gameplay.html](gameplay.html)
|
||||
GitHub) as well as [play.sh](play.sh) for some examples.
|
||||
|
||||
* **SHED**<br>
|
||||
every **SHED** movements you will grow (> 0), shrink (< 0) or
|
||||
stay the same length (0) by the **SHEDS** (below) value. Again
|
||||
with creativity you can create some fun gameplay modes. NOTE:
|
||||
the concept of shedding in this game is a misnomer; see notes
|
||||
below.
|
||||
every **SHED** movements you will grow (> 0), shrink (< 0) or
|
||||
stay the same length (0) by the **SHEDS** (below) value. Again
|
||||
with creativity you can create some fun gameplay modes. NOTE:
|
||||
the concept of shedding in this game is a misnomer; see notes
|
||||
below.
|
||||
|
||||
* **SHEDS**<br>
|
||||
every **SHED** movements will impact what this value means: grow
|
||||
(> 0), shrink (< 0) or not at all (0). Exception: if the snake
|
||||
eats a bug the counter isn't incremented. Again with creativity
|
||||
you can create some fun gameplay modes here. For instance you
|
||||
can grow upon eating a bug but shrink every **SHED** movements
|
||||
and then it's a battle of whether you win by **SIZE < 0** or
|
||||
**SIZE >= MAXSIZE**. See [play.sh](play.sh) for examples.
|
||||
NOTE: the concept of shedding in this game is a misnomer; see
|
||||
notes below.
|
||||
every **SHED** movements will impact what this value means: grow
|
||||
(> 0), shrink (< 0) or not at all (0). Exception: if the snake
|
||||
eats a bug the counter isn't incremented. Again with creativity
|
||||
you can create some fun gameplay modes here. For instance you
|
||||
can grow upon eating a bug but shrink every **SHED** movements
|
||||
and then it's a battle of whether you win by **SIZE < 0** or
|
||||
**SIZE >= MAXSIZE**. See [play.sh](play.sh) for examples.
|
||||
NOTE: the concept of shedding in this game is a misnomer; see
|
||||
notes below.
|
||||
|
||||
* **CANNIBAL**<br>
|
||||
whether you can go through the Snake or not. Default is 0
|
||||
(cannot - die if you try).
|
||||
whether you can go through the Snake or not. Default is 0
|
||||
(cannot - die if you try).
|
||||
|
||||
|
||||
## Try:
|
||||
@@ -274,11 +274,11 @@ On a more serious note look at [bugs.html](bugs.html).
|
||||
|
||||
|
||||
<div id="naqs">
|
||||
### <a href="#toc">NAQs/IAQs (Never/Infrequently Asked Questions)</a>
|
||||
### NAQs/IAQs (Never/Infrequently Asked Questions)
|
||||
</div>
|
||||
|
||||
<div id="inspirations">
|
||||
#### <a href="#toc">Do I have any inspirations for this entry?</a>
|
||||
#### Do I have any inspirations for this entry?
|
||||
</div>
|
||||
|
||||
There are two in particular. First is a long time mate of mine wrote a bash
|
||||
@@ -315,7 +315,7 @@ Snake in several ways.
|
||||
|
||||
|
||||
<div id="features">
|
||||
#### <a href="#toc">Are there any features I thought of that I wanted to implement but did not get to for some reason or another?</a>
|
||||
#### Are there any features I thought of that I wanted to implement but did not get to for some reason or another?
|
||||
</div>
|
||||
|
||||
Yes. I thought it would be fun if there were other obstacles for the snake (in
|
||||
@@ -341,7 +341,7 @@ who plays it enjoys it as much as I enjoyed writing/playing it.
|
||||
|
||||
|
||||
<div id="easier">
|
||||
#### <a href="#toc">Are there ways that one can make this game easier?</a>
|
||||
#### Are there ways that one can make this game easier?
|
||||
</div>
|
||||
|
||||
I can think of at the least the following:
|
||||
@@ -379,7 +379,7 @@ I can think of at the least the following:
|
||||
|
||||
|
||||
<div id="harder">
|
||||
#### <a href="#toc">Are there ways to make it harder?</a>
|
||||
#### Are there ways to make it harder?
|
||||
</div>
|
||||
|
||||
- Decrease the size of the game.
|
||||
@@ -429,7 +429,7 @@ a pun and every pun deserves to be shed).
|
||||
|
||||
|
||||
<div id="moult">
|
||||
#### <a href="#toc">How do snakes grow in real life?</a>
|
||||
#### How do snakes grow in real life?
|
||||
</div>
|
||||
|
||||
They grow through a process called moulting - shedding their skin (other
|
||||
@@ -440,7 +440,7 @@ shorter. I don't like the words because it's rather a misnomer but what I had
|
||||
chosen before was longer - STRETCH and STRETCHES.
|
||||
|
||||
<div id="other">
|
||||
#### <a href="#toc">Any other interesting things about snakes?</a>
|
||||
#### Any other interesting things about snakes?
|
||||
</div>
|
||||
|
||||
For the fascinating science behind snake slithering see [Snake walk: The physics
|
||||
@@ -451,7 +451,7 @@ do not know) and they really do tell the truth as they see it (even if
|
||||
impossible).
|
||||
|
||||
<div id="opposite">
|
||||
#### <a href="#toc">Why can you go the opposite direction and so immediately die when not cannibalising?</a>
|
||||
#### Why can you go the opposite direction and so immediately die when not cannibalising?
|
||||
</div>
|
||||
|
||||
When Ilya Kurdyukov was playing with this he questioned why this is possible
|
||||
@@ -476,7 +476,7 @@ walls passable and not worry about dying.
|
||||
|
||||
|
||||
<div id="chocolatecake">
|
||||
#### <a href="#toc">Do you have any **DELICIOUS CHOCOLATE CAKE** recipes?</a>
|
||||
#### Do you have any **DELICIOUS CHOCOLATE CAKE** recipes?
|
||||
</div>
|
||||
|
||||
Why yes I do! So good in fact that even my late stepmum who didn't even like
|
||||
@@ -510,7 +510,7 @@ been warned.
|
||||
|
||||
|
||||
<div id="alt">
|
||||
#### <a href="#toc">What are the files prog.2.c, prog.3.c, prog.3-j.c and prog.alt.c ?</a>
|
||||
#### What are the files prog.2.c, prog.3.c, prog.3-j.c and prog.alt.c ?
|
||||
</div>
|
||||
|
||||
I submitted three Snake versions; these are the other layouts for those few
|
||||
@@ -532,7 +532,7 @@ both do.
|
||||
## Author's dedication:
|
||||
|
||||
<div id="winning">
|
||||
### <a href="#toc">Winning thoughts, dedications and thanks</a>
|
||||
### Winning thoughts, dedications and thanks
|
||||
</div>
|
||||
|
||||
Once again I'm honoured to win along with some of the other veterans who I have
|
||||
|
||||
+11
-11
@@ -616,10 +616,10 @@ unsigned arithmetic.</p></li>
|
||||
</ul>
|
||||
<p>On a more serious note look at <a href="bugs.html">bugs.html</a>.</p>
|
||||
<div id="naqs">
|
||||
<h3 id="naqsiaqs-neverinfrequently-asked-questions"><a href="#toc">NAQs/IAQs (Never/Infrequently Asked Questions)</a></h3>
|
||||
<h3 id="naqsiaqs-neverinfrequently-asked-questions">NAQs/IAQs (Never/Infrequently Asked Questions)</h3>
|
||||
</div>
|
||||
<div id="inspirations">
|
||||
<h4 id="do-i-have-any-inspirations-for-this-entry"><a href="#toc">Do I have any inspirations for this entry?</a></h4>
|
||||
<h4 id="do-i-have-any-inspirations-for-this-entry">Do I have any inspirations for this entry?</h4>
|
||||
</div>
|
||||
<p>There are two in particular. First is a long time mate of mine wrote a bash
|
||||
implementation of Snake several years ago (uncoloured, no cheat modes, hardcoded
|
||||
@@ -649,7 +649,7 @@ it was done in <a href="https://en.wikipedia.org/wiki/Surround_(video_game)">Sur
|
||||
inspired the shedding mode. Anyway I always loved the game and it’s similar to
|
||||
Snake in several ways.</p>
|
||||
<div id="features">
|
||||
<h4 id="are-there-any-features-i-thought-of-that-i-wanted-to-implement-but-did-not-get-to-for-some-reason-or-another"><a href="#toc">Are there any features I thought of that I wanted to implement but did not get to for some reason or another?</a></h4>
|
||||
<h4 id="are-there-any-features-i-thought-of-that-i-wanted-to-implement-but-did-not-get-to-for-some-reason-or-another">Are there any features I thought of that I wanted to implement but did not get to for some reason or another?</h4>
|
||||
</div>
|
||||
<p>Yes. I thought it would be fun if there were other obstacles for the snake (in
|
||||
my mind I was thinking of barriers like the walls but in the field).</p>
|
||||
@@ -668,7 +668,7 @@ not show the arrows but then that brings an old problem back.</p>
|
||||
<p>Nevertheless I am quite happy with the features in the game and I hope everyone
|
||||
who plays it enjoys it as much as I enjoyed writing/playing it.</p>
|
||||
<div id="easier">
|
||||
<h4 id="are-there-ways-that-one-can-make-this-game-easier"><a href="#toc">Are there ways that one can make this game easier?</a></h4>
|
||||
<h4 id="are-there-ways-that-one-can-make-this-game-easier">Are there ways that one can make this game easier?</h4>
|
||||
</div>
|
||||
<p>I can think of at the least the following:</p>
|
||||
<ul>
|
||||
@@ -704,7 +704,7 @@ considered a filthy cheat but both modes are quite fun (one being enabled by
|
||||
default; does that mean it’s not actually a cheat mode?).</li>
|
||||
</ul>
|
||||
<div id="harder">
|
||||
<h4 id="are-there-ways-to-make-it-harder"><a href="#toc">Are there ways to make it harder?</a></h4>
|
||||
<h4 id="are-there-ways-to-make-it-harder">Are there ways to make it harder?</h4>
|
||||
</div>
|
||||
<ul>
|
||||
<li>Decrease the size of the game.</li>
|
||||
@@ -752,7 +752,7 @@ you make use of your talents for financial gain or at least a world record.
|
||||
Either way I tip my proverbial snakeskin hat to you (animal cruelty but a pun is
|
||||
a pun and every pun deserves to be shed).</p>
|
||||
<div id="moult">
|
||||
<h4 id="how-do-snakes-grow-in-real-life"><a href="#toc">How do snakes grow in real life?</a></h4>
|
||||
<h4 id="how-do-snakes-grow-in-real-life">How do snakes grow in real life?</h4>
|
||||
</div>
|
||||
<p>They grow through a process called moulting - shedding their skin (other
|
||||
creatures also moult). This takes place over some days and unlike humans snakes
|
||||
@@ -761,7 +761,7 @@ variables <strong>SHED</strong> and <strong>SHEDS</strong> for simplicity and be
|
||||
shorter. I don’t like the words because it’s rather a misnomer but what I had
|
||||
chosen before was longer - STRETCH and STRETCHES.</p>
|
||||
<div id="other">
|
||||
<h4 id="any-other-interesting-things-about-snakes"><a href="#toc">Any other interesting things about snakes?</a></h4>
|
||||
<h4 id="any-other-interesting-things-about-snakes">Any other interesting things about snakes?</h4>
|
||||
</div>
|
||||
<p>For the fascinating science behind snake slithering see <a href="https://www.bbc.co.uk/news/science-environment-35563941">Snake walk: The physics
|
||||
of slithering</a>. For the bizarre thought of snake human hybrids see <a href="http://www.macroevolution.net/snake-human-hybrids.html">human
|
||||
@@ -770,7 +770,7 @@ in there too because I believe that people actually believe in this (how/why I
|
||||
do not know) and they really do tell the truth as they see it (even if
|
||||
impossible).</p>
|
||||
<div id="opposite">
|
||||
<h4 id="why-can-you-go-the-opposite-direction-and-so-immediately-die-when-not-cannibalising"><a href="#toc">Why can you go the opposite direction and so immediately die when not cannibalising?</a></h4>
|
||||
<h4 id="why-can-you-go-the-opposite-direction-and-so-immediately-die-when-not-cannibalising">Why can you go the opposite direction and so immediately die when not cannibalising?</h4>
|
||||
</div>
|
||||
<p>When Ilya Kurdyukov was playing with this he questioned why this is possible
|
||||
when other implementations don’t have it this way. There are a few reasons.</p>
|
||||
@@ -786,7 +786,7 @@ for itself but in the game it is and I went all the way instead of only halfway.
|
||||
<p>But if you have a problem with it you can always enable cannibalism and keep
|
||||
walls passable and not worry about dying.</p>
|
||||
<div id="chocolatecake">
|
||||
<h4 id="do-you-have-any-delicious-chocolate-cake-recipes"><a href="#toc">Do you have any <strong>DELICIOUS CHOCOLATE CAKE</strong> recipes?</a></h4>
|
||||
<h4 id="do-you-have-any-delicious-chocolate-cake-recipes">Do you have any <strong>DELICIOUS CHOCOLATE CAKE</strong> recipes?</h4>
|
||||
</div>
|
||||
<p>Why yes I do! So good in fact that even my late stepmum who didn’t even like
|
||||
chocolate (except white chocolate) loved this cake. It’s a double-layered
|
||||
@@ -813,7 +813,7 @@ been warned.</li>
|
||||
<li>Pay attention to the rest of the notes as well! They’re crucial.</li>
|
||||
</ul>
|
||||
<div id="alt">
|
||||
<h4 id="what-are-the-files-prog.2.c-prog.3.c-prog.3-j.c-and-prog.alt.c"><a href="#toc">What are the files prog.2.c, prog.3.c, prog.3-j.c and prog.alt.c ?</a></h4>
|
||||
<h4 id="what-are-the-files-prog.2.c-prog.3.c-prog.3-j.c-and-prog.alt.c">What are the files prog.2.c, prog.3.c, prog.3-j.c and prog.alt.c ?</h4>
|
||||
</div>
|
||||
<p>I submitted three Snake versions; these are the other layouts for those few
|
||||
(more likely none) who are interested to see them.</p>
|
||||
@@ -829,7 +829,7 @@ first, clearing the screen, which the play.sh and snake-colours.sh scripts also
|
||||
both do.</p>
|
||||
<h2 id="authors-dedication">Author’s dedication:</h2>
|
||||
<div id="winning">
|
||||
<h3 id="winning-thoughts-dedications-and-thanks"><a href="#toc">Winning thoughts, dedications and thanks</a></h3>
|
||||
<h3 id="winning-thoughts-dedications-and-thanks">Winning thoughts, dedications and thanks</h3>
|
||||
</div>
|
||||
<p>Once again I’m honoured to win along with some of the other veterans who I have
|
||||
a huge amount of respect for; there’s <a href="../../authors.html#Don_Yang">Don Yang</a>, <a href="../../authors.html#Dave_Burton">Dave
|
||||
|
||||
+16
-16
@@ -116,12 +116,12 @@ There is a good deal of useful documentation that is provided with this entry:
|
||||
|
||||
|
||||
* [recode.html][] (or [recode.html](recode.html) if reading on GitHub)
|
||||
- Some useful information about [recode.c](recode.c)
|
||||
- Some useful information about [recode.c](recode.c)
|
||||
|
||||
|
||||
* [chocolate-cake.html][] (or [chocolate-cake.html](chocolate-cake.html) if reading on GitHub)
|
||||
- Because most of us could use some *Double-layered Chocolate Fudge Cake*!
|
||||
- NOTE: see [recode.html][] (or [recode.html](recode.html) for details about how to decrypt this!
|
||||
- Because most of us could use some *Double-layered Chocolate Fudge Cake*!
|
||||
- NOTE: see [recode.html][] (or [recode.html](recode.html) for details about how to decrypt this!
|
||||
|
||||
|
||||
[recode.html]: recode.html
|
||||
@@ -175,7 +175,7 @@ I have more information on this entry like the testing procedure at
|
||||
</div>
|
||||
|
||||
<div id="ioccc">
|
||||
### <a href="#toc">IOCCC: an Enigma?</a>
|
||||
### IOCCC: an Enigma?
|
||||
</div>
|
||||
|
||||
Is there a better single word that could describe the code that is IOCCC? I'm
|
||||
@@ -209,7 +209,7 @@ With my entry we can complete the loop!
|
||||
|
||||
|
||||
<div id="nathan">
|
||||
### <a href="#toc">The 1992 Nathan Sidwell entry</a>
|
||||
### The 1992 Nathan Sidwell entry
|
||||
</div>
|
||||
|
||||
The author [Nathan Sidwell](../../authors.html#Nathan_Sidwell) of the [1992 Worst
|
||||
@@ -251,7 +251,7 @@ leave this in for historical purposes.
|
||||
|
||||
|
||||
<div id="usage">
|
||||
### <a href="#toc">Usage</a>
|
||||
### Usage
|
||||
</div>
|
||||
|
||||
If you run the program by itself it'll use the default settings and prompt you
|
||||
@@ -282,7 +282,7 @@ pairs](https://www.cryptomuseum.com/crypto/enigma/i/sb.htm).
|
||||
After that you can input the string and it'll go from there.
|
||||
|
||||
<div id="example">
|
||||
#### <a href="#toc">Example run</a>
|
||||
#### Example run
|
||||
</div>
|
||||
|
||||
BTW: There's a much more entertaining (and delicious) challenge or exercise in
|
||||
@@ -413,7 +413,7 @@ What about the other [Morse code entry](../../1998/dorssel/dorssel.c)?
|
||||
```
|
||||
|
||||
<div id="recode">
|
||||
### <a href="#toc">The recode.c configurator</a>
|
||||
### The recode.c configurator
|
||||
</div>
|
||||
|
||||
I have included a supplementary program [recode.c][] that can do a number of
|
||||
@@ -449,7 +449,7 @@ For examples using it (and a delicious challenge) see [recode.html][] (or
|
||||
|
||||
|
||||
<div id="parsersubtlety">
|
||||
### <a href="#toc">A parser subtlety that could cause confusion</a>
|
||||
### A parser subtlety that could cause confusion
|
||||
</div>
|
||||
|
||||
The parser is in a sense rather rudimentary but allows for both interactive and
|
||||
@@ -527,7 +527,7 @@ accomplished and made use of! :)
|
||||
```
|
||||
|
||||
<div id="layout">
|
||||
### <a href="#toc">On the source code layout</a>
|
||||
### On the source code layout
|
||||
</div>
|
||||
|
||||
The layout of [recode.c][] isn't too significant (but see below) but I want to
|
||||
@@ -563,7 +563,7 @@ As for [recode.c][] though I really love this:
|
||||
|
||||
|
||||
<div id="obfuscation">
|
||||
### <a href="#toc">Obfuscation</a>
|
||||
### Obfuscation
|
||||
</div>
|
||||
|
||||
|
||||
@@ -602,7 +602,7 @@ word `OBFUSCATION`:
|
||||
```
|
||||
|
||||
<div id="bugs">
|
||||
### <a href="#toc">Bugs, limitations, differences from the real Enigma machines and general notes</a>
|
||||
### Bugs, limitations, differences from the real Enigma machines and general notes
|
||||
</div>
|
||||
|
||||
Ways that my simulator differs from the real thing. Not all of these are bugs
|
||||
@@ -698,7 +698,7 @@ to have it at A but again I do not know.
|
||||
|
||||
|
||||
<div id="kriegsmarine">
|
||||
### <a href="#toc">Kriegsmarine support?</a>
|
||||
### Kriegsmarine support?
|
||||
</div>
|
||||
|
||||
Is it possible to add [Kriegsmarine](https://en.wikipedia.org/wiki/Kriegsmarine)
|
||||
@@ -727,7 +727,7 @@ greatly.
|
||||
|
||||
|
||||
<div id="portability">
|
||||
### <a href="#toc">Portability</a>
|
||||
### <a href="#toc">Portability
|
||||
</div>
|
||||
|
||||
I have tested it under macOS, Fedora and CentOS Linux and all seems okay under
|
||||
@@ -751,7 +751,7 @@ my website) are the same under Fedora, CentOS and macOS.
|
||||
|
||||
|
||||
<div id="resources">
|
||||
### <a href="#toc">Resources</a>
|
||||
### Resources
|
||||
</div>
|
||||
|
||||
#### A note on Wehrmacht, its branches and other agencies and their Enigma machines
|
||||
@@ -874,7 +874,7 @@ that.
|
||||
## Author's dedication:
|
||||
|
||||
<div id="winning">
|
||||
### <a href="#toc">Winning thoughts, dedications and thanks</a>
|
||||
### Winning thoughts, dedications and thanks
|
||||
</div>
|
||||
|
||||
Once again I'm honoured to win along with some of the other veterans who I have
|
||||
|
||||
+13
-13
@@ -521,7 +521,7 @@ from one of the greatest tragedies in the history of mankind.</p>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="ioccc">
|
||||
<h3 id="ioccc-an-enigma"><a href="#toc">IOCCC: an Enigma?</a></h3>
|
||||
<h3 id="ioccc-an-enigma">IOCCC: an Enigma?</h3>
|
||||
</div>
|
||||
<p>Is there a better single word that could describe the code that is IOCCC? I’m
|
||||
sure there are some other words that are equally as valid but I believe ‘Enigma’
|
||||
@@ -549,7 +549,7 @@ and the <a href="../../2014/vik/index.html">2014 Morse audio transcoder</a> by <
|
||||
Vik</a> can be used to allow for the actual sound of it.
|
||||
With my entry we can complete the loop!</p>
|
||||
<div id="nathan">
|
||||
<h3 id="the-1992-nathan-sidwell-entry"><a href="#toc">The 1992 Nathan Sidwell entry</a></h3>
|
||||
<h3 id="the-1992-nathan-sidwell-entry">The 1992 Nathan Sidwell entry</h3>
|
||||
</div>
|
||||
<p>The author <a href="../../authors.html#Nathan_Sidwell">Nathan Sidwell</a> of the <a href="../../1992/nathan/index.html">1992 Worst
|
||||
Abuse of the Rules</a> had this to say about his program:</p>
|
||||
@@ -580,7 +580,7 @@ it was before his time in the IOCCC; but before the other judges could answer
|
||||
<a href="../../authors.html#Ilya_Kurdyukov">Ilya Kurdyukov</a> sent a link to the original 1992
|
||||
code. As of 4 March 2023 the original before unseen code was published but I
|
||||
leave this in for historical purposes.</p>
|
||||
<h3 id="usage"><a href="#toc">Usage</a></h3>
|
||||
<h3 id="usage">Usage</h3>
|
||||
<p>If you run the program by itself it’ll use the default settings and prompt you
|
||||
for input (end with EOF). At that point it’ll process the input string and print
|
||||
the result (after finishing the enciphering).</p>
|
||||
@@ -599,7 +599,7 @@ The first one is reflector B and the second is reflector C.</p>
|
||||
pairs</a>.</p>
|
||||
<p>After that you can input the string and it’ll go from there.</p>
|
||||
<div id="example">
|
||||
<h4 id="example-run"><a href="#toc">Example run</a></h4>
|
||||
<h4 id="example-run">Example run</h4>
|
||||
</div>
|
||||
<p>BTW: There’s a much more entertaining (and delicious) challenge or exercise in
|
||||
<a href="recode.html">recode.html</a> (if you’re reading this on GitHub check the
|
||||
@@ -681,7 +681,7 @@ too. Notice also how it showed the same output that my program gave it - <code>U
|
||||
<pre><code> $ echo IOCCC | ./prog | ./dorssel
|
||||
..- ..- -- -- -..-</code></pre>
|
||||
<div id="recode">
|
||||
<h3 id="the-recode.c-configurator"><a href="#toc">The recode.c configurator</a></h3>
|
||||
<h3 id="the-recode.c-configurator">The recode.c configurator</h3>
|
||||
</div>
|
||||
<p>I have included a supplementary program <a href="recode.c">recode.c</a> that can do a number of
|
||||
things which acts as a kind of wrapper and configurator to my entry. By default
|
||||
@@ -709,7 +709,7 @@ make it more flexible by a wrapper program.</p>
|
||||
<a href="recode.html">recode.html</a> if reading on GitHub). See also the <a href="recode.1">recode.1</a> and
|
||||
<a href="enigma.1">enigma.1</a> man pages.</p>
|
||||
<div id="parsersubtlety">
|
||||
<h3 id="a-parser-subtlety-that-could-cause-confusion"><a href="#toc">A parser subtlety that could cause confusion</a></h3>
|
||||
<h3 id="a-parser-subtlety-that-could-cause-confusion">A parser subtlety that could cause confusion</h3>
|
||||
</div>
|
||||
<p>The parser is in a sense rather rudimentary but allows for both interactive and
|
||||
automatic (e.g. via the <a href="recode.c">recode</a> program) input. This does mean that
|
||||
@@ -772,7 +772,7 @@ accomplished and made use of! :)</p>
|
||||
$ echo ABC | ./prog | ./prog
|
||||
ABC</code></pre>
|
||||
<div id="layout">
|
||||
<h3 id="on-the-source-code-layout"><a href="#toc">On the source code layout</a></h3>
|
||||
<h3 id="on-the-source-code-layout">On the source code layout</h3>
|
||||
</div>
|
||||
<p>The layout of <a href="recode.c">recode.c</a> isn’t too significant (but see below) but I want to
|
||||
mention <a href="prog.c">prog.c</a> especially:</p>
|
||||
@@ -796,7 +796,7 @@ ended his life. (I later made a bug fix but I consider this inconsequential).</p
|
||||
/ This is *not* what you think:</code></pre>
|
||||
<p>…because it seems so wrong in C code at first glance. Also what does the
|
||||
‘this’ refer to?</p>
|
||||
<h3 id="obfuscation"><a href="#toc">Obfuscation</a></h3>
|
||||
<h3 id="obfuscation">Obfuscation</h3>
|
||||
<p>It’s an <a href="https://en.wikipedia.org/wiki/Enigma_machine">Enigma machine</a> simulator! Isn’t
|
||||
that proof that it’s obfuscated itself?! :) Silliness aside <a href="obfuscation.txt">obfuscation.txt</a>
|
||||
has some of the ways I think this entry is obfuscated. To decipher try:</p>
|
||||
@@ -818,7 +818,7 @@ word <code>OBFUSCATION</code>:</p>
|
||||
<pre><code> 2OB5FU1SC2ATIONCDEFGHJKLMPQRYZ
|
||||
OB FU SC ATION</code></pre>
|
||||
<div id="bugs">
|
||||
<h3 id="bugs-limitations-differences-from-the-real-enigma-machines-and-general-notes"><a href="#toc">Bugs, limitations, differences from the real Enigma machines and general notes</a></h3>
|
||||
<h3 id="bugs-limitations-differences-from-the-real-enigma-machines-and-general-notes">Bugs, limitations, differences from the real Enigma machines and general notes</h3>
|
||||
</div>
|
||||
<p>Ways that my simulator differs from the real thing. Not all of these are bugs
|
||||
and some could be considered features; others are just differences.</p>
|
||||
@@ -900,7 +900,7 @@ part.</p>
|
||||
online simulator so I presume it is correct. It might be that the Germans tended
|
||||
to have it at A but again I do not know.</p>
|
||||
<div id="kriegsmarine">
|
||||
<h3 id="kriegsmarine-support"><a href="#toc">Kriegsmarine support?</a></h3>
|
||||
<h3 id="kriegsmarine-support">Kriegsmarine support?</h3>
|
||||
</div>
|
||||
<p>Is it possible to add <a href="https://en.wikipedia.org/wiki/Kriegsmarine">Kriegsmarine</a>
|
||||
support? I thought so by adding the additional rotors but looking at it again it
|
||||
@@ -922,7 +922,7 @@ be found in the source code verbatim and you could confirm it by looking them
|
||||
up; however much more would have to be done in order to get them to work, than
|
||||
to just put the strings in. Again the way I set things up complicates this
|
||||
greatly.</p>
|
||||
<h3 id="portability"><a href="#toc">Portability</a></h3>
|
||||
<h3 id="portability"><a href="#toc">Portability</h3>
|
||||
<p>I have tested it under macOS, Fedora and CentOS Linux and all seems okay under
|
||||
these platforms. When I was in the final stages of obfuscation I made an error
|
||||
somehow (or else maybe the vim formatting caused a problem - I have seen this
|
||||
@@ -938,7 +938,7 @@ input was put in correctly because as soon as a letter differs the entire
|
||||
sequence will be off.</p>
|
||||
<p>The results of my test script (not included here but I will probably have it on
|
||||
my website) are the same under Fedora, CentOS and macOS.</p>
|
||||
<h3 id="resources"><a href="#toc">Resources</a></h3>
|
||||
<h3 id="resources">Resources</h3>
|
||||
<h4 id="a-note-on-wehrmacht-its-branches-and-other-agencies-and-their-enigma-machines">A note on Wehrmacht, its branches and other agencies and their Enigma machines</h4>
|
||||
<p>The <a href="https://en.wikipedia.org/wiki/Wehrmacht">Wehrmacht</a> was the defence force
|
||||
in full which included the <a href="https://en.wikipedia.org/wiki/German_Army_(1935%E2%80%931945)">Heer</a> (army),
|
||||
@@ -1017,7 +1017,7 @@ don’t think there need be any addition to the recode program - at least not
|
||||
that.</p>
|
||||
<h2 id="authors-dedication">Author’s dedication:</h2>
|
||||
<div id="winning">
|
||||
<h3 id="winning-thoughts-dedications-and-thanks"><a href="#toc">Winning thoughts, dedications and thanks</a></h3>
|
||||
<h3 id="winning-thoughts-dedications-and-thanks">Winning thoughts, dedications and thanks</h3>
|
||||
</div>
|
||||
<p>Once again I’m honoured to win along with some of the other veterans who I have
|
||||
a huge amount of respect for; there’s <a href="../../authors.html#Don_Yang">Don Yang</a>, <a href="../../authors.html#Dave_Burton">Dave
|
||||
|
||||
Reference in new issue
Block a user