Add unobfuscated alt code to 2020/otterness

This code was found on the author's web page about the entry and has
been added as prog.alt.c. I added the try.alt.sh script as well.

Manifest updated and rebuilt .entry.json and index.html files.
This commit is contained in:
Cody Boone Ferguson committed 2024-07-15 10:46:22 -07:00
1 parent 12320c548d
commit 94bdb2c1d8
14 files changed
+411 -4

No files matched your search

+41
View File
@@ -4,6 +4,9 @@
make
```
There is an unobfuscated version for those who wish to see the original final
prior to obfuscation. See [Alternate code](#alternate-code) below.
### Bugs and (Mis)features:
@@ -33,6 +36,37 @@ Now play `output.mid` and `output2.mid` in an audio player that can play MIDI
files.
## Alternate code:
### NOTICE to those who wish for a greater challenge:
**If you want a greater challenge, don't check this version**:
just try to understand the program via the entry source.
If you get stuck, come back and take a look at the alternate, unobfuscated code,
described by the author as:
> If you're curious about the un-obfuscated program that I originally wrote,
this was the final working version. I tried to keep the functions names and
comments understandable, but it will make a lot more sense to readers familiar
with the MIDI "SMF" file format.
... at their [web page about the
entry](https://www.nathanotterness.com/2021/04/obfuscated_c_2020.html).
## Alternate use:
Use `prog.alt` as you would `prog`.
### Alternate try:
``` <!---sh-->
./try.alt.sh
```
## Judges' remarks:
In an entry that boasts not using literals, one would expect to see
@@ -105,6 +139,13 @@ especially true for "live performance" .mid files.
correctly parse, but I have rarely seen this in practice. The largest
cause of program failures, in my experience, has been Limitation 2.
### NOTICE to those who wish for a greater challenge:
**If you want a greater challenge, don't read any further**:
just try to understand the program via the source.
If you get stuck, come back and read below for additional hints and information.
#### Obfuscation notes