Add 2018/endoh1/try.sh + format/typo checks

The try.sh script shows each input file first so that one can see how it
turns out as a GIF file. The input files include those not suggested by
the judges including the source code itself (the author suggested it has
a message too).

The README.md file has been format/typo checked.
This commit is contained in:
Cody Boone Ferguson committed 2023-12-13 09:20:13 -08:00
1 parent 58e46cf4b1
commit 6b74e04bf4
3 files changed
+70 -6

No files matched your search

+8 -6
View File
@@ -14,16 +14,17 @@ make
### Try:
To see the input files and feed them to the program, redirecting to GIF files:
```sh
./prog < golem.txt > golem.gif
./prog < smily.txt > smily.gif
./try.sh
```
## Judges' remarks:
To get the best experience, use a GIF viewer that can handle animated gifs.
On OS X you can use Safari using "open -a Safari smily.gif"
To get the best experience, use a GIF viewer that can handle animated GIFs.
With macOS you can use Safari using `open -a Safari smily.gif`.
Some things to consider are that this 2.5KiB gem encodes a 96 character 8x8
font (naively this could already take 6144 bytes) and a GIF encoder. But
@@ -44,8 +45,9 @@ cc -o prog prog.c
./prog < invisible.txt > invisible.gif
```
Open invisible.gif and then wait a minute. You will see a hidden message.
Can you tell the difference between letters that leaves the mark and ones that does not?
Open `invisible.gif` with a GIF viewer that can show animated GIFs and then wait
a minute. You will see a hidden message. Can you tell the difference between
letters that leave the mark and ones that do not?
Other examples:
+52
View File
@@ -0,0 +1,52 @@
#!/usr/bin/env bash
#
# try.sh - demonstrate IOCCC winner 2018/endoh1
#
# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it
# this way allows us to have the user specify a different compiler in an easy
# way.
if [[ -z "$CC" ]]; then
CC="cc"
fi
make CC="$CC" all >/dev/null || exit 1
# clear screen after compilation so that only the entry is shown
clear
read -r -n 1 -p "Press any key to show prog.c (space = next page, q = quit): "
echo 1>&2
less -EXF prog.c
echo "$ ./prog < prog.c > prog.gif" 1>&2
./prog < prog.c > prog.gif
echo 1>&2
read -r -n 1 -p "Press any key to show golem.txt (space = next page, q = quit): "
echo 1>&2
less -EXF golem.txt
echo "$ ./prog < golem.txt > golem.gif" 1>&2
./prog < golem.txt > golem.gif
echo 1>&2
read -r -n 1 -p "Press any key to show smily.txt (space = next page, q = quit): "
echo 1>&2
less -EXF smily.txt
echo "$ ./prog < smily.txt > smily.gif" 1>&2
./prog < smily.txt > smily.gif
echo 1>&2
read -r -n 1 -p "Press any key to show invisible.txt (space = next page, q = quit): "
less -EXF invisible.txt
echo "$ ./prog < invisible.txt > invisible.gif" 1>&2
./prog < invisible.txt > invisible.gif
echo 1>&2
echo "Now open the GIF files prog.gif, golem.gif, smily.gif and invisible.gif" 1>&2
echo "in a GIF viewer that can display animation in animated GIFs." 1>&2
echo 1>&2
echo "If you use macOS you can open them all in Safari, one tab per image, like: " 1>&2
echo 1>&2
echo " open -a Safari prog.gif golem.gif smily.gif invisible.gif" 1>&2
echo 1>&2
echo "Once they're open make sure to watch as they change form." 1>&2
+10
View File
@@ -3968,6 +3968,16 @@ work for Windows, based on the author's remarks.
Internet Wayback Machine.
## <a name="2018_endoh1"></a>[2018/endoh1](/2018/endoh1/prog.c) ([README.md](/2018/endoh1/README.md))
[Cody](#cody) added the [try.sh](/2018/endoh1/try.sh) script which shows the
input files one at a time and after each one is shown, it feeds it to the
program, redirecting the output to the respective GIF file. It then will inform
the user they should open it in a GIF viewer that can show animation in animated
GIF files. It offers an example command for macOS like the judges did in their
remarks. The input files offered includes the prog.c as the author,
[Yusuke](#yusuke), suggested that it too has a secret.
## <a name="2018_endoh2"></a>[2018/endoh2](/2018/endoh2/prog.c) ([README.md](/2018/endoh2/README.md))