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