diff --git a/2020/ferguson1/README.md b/2020/ferguson1/README.md
index d00bccbe9..19849ff9e 100644
--- a/2020/ferguson1/README.md
+++ b/2020/ferguson1/README.md
@@ -29,60 +29,60 @@ and non-zero).
### Variables:
* **WAIT**
- 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**
- 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**
- 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**
- 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**
- 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**
- 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**
- 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**
- 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**
- 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).
On a more serious note look at bugs.html.
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 Sur inspired the shedding mode. Anyway I always loved the game and it’s similar to Snake in several ways.
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).
@@ -668,7 +668,7 @@ not show the arrows but then that brings an old problem back.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.
I can think of at the least the following:
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 SHED and SHEDS 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.
For the fascinating science behind snake slithering see Snake walk: The physics of slithering. For the bizarre thought of snake human hybrids see 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).
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.
@@ -786,7 +786,7 @@ for itself but in the game it is and I went all the way instead of only halfway.But if you have a problem with it you can always enable cannibalism and keep walls passable and not worry about dying.
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.
I submitted three Snake versions; these are the other layouts for those few (more likely none) who are interested to see them.
@@ -829,7 +829,7 @@ first, clearing the screen, which the play.sh and snake-colours.sh scripts also both do.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 Don Yang, Dave
diff --git a/2020/ferguson2/README.md b/2020/ferguson2/README.md
index 70d04fa90..02f68776a 100644
--- a/2020/ferguson2/README.md
+++ b/2020/ferguson2/README.md
@@ -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
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 2014 Morse audio transcoder by < Vik can be used to allow for the actual sound of it. With my entry we can complete the loop!
The author Nathan Sidwell of the 1992 Worst Abuse of the Rules had this to say about his program:
@@ -580,7 +580,7 @@ it was before his time in the IOCCC; but before the other judges could answer Ilya Kurdyukov 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. -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).
@@ -599,7 +599,7 @@ The first one is reflector B and the second is reflector C. pairs.After that you can input the string and it’ll go from there.
BTW: There’s a much more entertaining (and delicious) challenge or exercise in
recode.html (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 - I have included a supplementary program recode.c 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.U
$ echo IOCCC | ./prog | ./dorssel
..- ..- -- -- -..-The recode.c configurator
+The recode.c configurator
The parser is in a sense rather rudimentary but allows for both interactive and automatic (e.g. via the recode program) input. This does mean that @@ -772,7 +772,7 @@ accomplished and made use of! :)
$ echo ABC | ./prog | ./prog ABCThe layout of recode.c isn’t too significant (but see below) but I want to mention prog.c especially:
@@ -796,7 +796,7 @@ ended his life. (I later made a bug fix but I consider this inconsequential).…because it seems so wrong in C code at first glance. Also what does the ‘this’ refer to?
-It’s an Enigma machine simulator! Isn’t that proof that it’s obfuscated itself?! :) Silliness aside obfuscation.txt has some of the ways I think this entry is obfuscated. To decipher try:
@@ -818,7 +818,7 @@ wordOBFUSCATION:
2OB5FU1SC2ATIONCDEFGHJKLMPQRYZ
OB FU SC ATION
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.
@@ -900,7 +900,7 @@ part. 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.Is it possible to add Kriegsmarine 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.
-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.
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.
-The Wehrmacht was the defence force in full which included the Heer (army), @@ -1017,7 +1017,7 @@ don’t think there need be any addition to the recode program - at least not that.
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 Don Yang, Dave