Fix typos, formatting and thank yous (add links)

In some files changed the formatting was fixed to be a proper markdown
file.

There were some typos including that some README.md files that linked to
/winners.html#Cody_Boone_Ferguson actually linked to the non-existent
file /years which obviously would not work.

I also added links to the rest of the places I have fixed entries (but
see below) and I did the same for Yusuke Endoh's fixes.

As well apparently one entry I thought he fixed to compile under modern
systems does not seem to so that entry will have to be revisited another
time. That entry was 1993/jonth.

Those are the main changes here if not all of them.
This commit is contained in:
Cody Boone Ferguson committed 2023-03-18 05:16:31 -07:00
1 parent ecaa022948
commit fa682003eb
24 files changed
+146 -113

No files matched your search

+6 -4
View File
@@ -6,10 +6,12 @@ Dave Decot
make all make all
NOTE: On modern systems this entry requires the option `-traditional-cpp` which NOTE: [Yusuke Endoh](/winners.html#Yusuke_Endoh) supplied a patch so that this
clang does not support. We thank Yusuke Endoh for his patch which allows the entry would compile with gcc.
entry to compile under gcc! Please be advised that gcc under macOS is actually
clang so this will not compile with the default gcc under macOS. NOTE: this entry requires a compiler that supports `-traditional-cpp`. Note that
clang does not support it and in macOS gcc is actually clang so this will not
compile with the default compiler in macOS.
## To run: ## To run:
+3 -3
View File
@@ -11,9 +11,9 @@ Jack Applin [with help from Robert Heckendorn]
./applin ./applin
NOTE: Yusuke Endoh provided a patch to get this to not issue a bus error. Thank NOTE: [Yusuke Endoh](/winners.html#Yusuke_Endoh) provided a patch to get this to
you Yusuke! We note that this entry does not work under macOS. Try it out and not issue a bus error. Thank you Yusuke! We note that this entry does not work
see for yourself what happens! under macOS. Try it out and see for yourself what happens!
## Judges' comments: ## Judges' comments:
+1 -1
View File
@@ -10,7 +10,7 @@ USA
make all make all
NOTE: [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to
compile and work with clang (it already worked with gcc). The problem was that compile and work with clang (it already worked with gcc). The problem was that
clang is more strict about the type of second arg to main(). However simply clang is more strict about the type of second arg to main(). However simply
changing it to a `char **` and updating the `*s` to `**s` caused a segfault. By changing it to a `char **` and updating the `*s` to `**s` caused a segfault. By
+6 -5
View File
@@ -11,11 +11,12 @@ Paoli, PA.
make all make all
NOTE: Cody Boone Ferguson got this to compile and work with clang. It did not [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) got this to
work with clang because it is more strict about the second and third args to compile and work with clang. It did not work with clang because it is more
main() and the third arg was an int. He notes that he tried to keep the picture strict about the second and third args to main() and the third arg was an int.
as close to the original. The line lengths are the same but some spaces had to He notes that he tried to keep the picture as close to the original. The line
be changed to non-spaces. Thank you Cody for your help! lengths are the same but some spaces had to be changed to non-spaces. Thank you
Cody for your help!
## Try: ## Try:
+5 -2
View File
@@ -11,11 +11,14 @@ US of A
make all make all
We used a patch provided by [Yusuke Endoh](/winners.html#Yusuke_Endoh) to make
this work with gcc. Thank you Yusuke!
NOTE: On modern systems this entry requires the option `-traditional-cpp` which NOTE: On modern systems this entry requires the option `-traditional-cpp` which
clang does not support. Please be advised that gcc under macOS is actually clang does not support. Please be advised that gcc under macOS is actually
clang so this will not compile with the default gcc under macOS. As this entry clang so this will not compile with the default gcc under macOS. As this entry
stood in modern systems it did not work even when compiled. We used a patch stood in modern systems it did not work even when compiled.
provided by Yusuke Endoh to make it work. Thank you Yusuke!
## Judges' comments: ## Judges' comments:
+3 -2
View File
@@ -11,8 +11,9 @@ USA
make all make all
NOTE: Cody Boone Ferguson fixed this so it could compile on modern systems. For [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for
the original file see below. modern systems. For the original file see below. Thank you Cody for your
assistance!
## Alternate code: ## Alternate code:
+2 -1
View File
@@ -13,7 +13,8 @@
NOTE: we were able to get this to compile under modern systems with a patch from NOTE: we were able to get this to compile under modern systems with a patch from
Yusuke Endoh. Thank you for your assistance Yusuke! [Yusuke Endoh](/winners.html#Yusuke_Endoh). Thank you for your assistance
Yusuke!
## To run: ## To run:
+8 -6
View File
@@ -16,12 +16,14 @@ to get this to compile under gcc. Thank you Yusuke for your assistance!
[Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) got this to work with [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) got this to work with
clang by further changing the variable `a` to be not the third argument to clang by further changing the variable `a` to be not the third argument to
`main()` and instead be a variable declared in `main()`. Cody also bug fixed it `main()` and instead be a variable declared in `main()`.
so that the high score file would work (it was not even being created) and after
this making sure the terminal stayed sane (the letter `u` could not be typed and Cody also bug fixed it so that the high score file would work (it was not even
echo was disabled outright after the segfault fix / high score file was being created) and after this making sure the terminal stayed sane (the letter
reinstated). We thank you for your assistance Cody (he cynically notes that he `u` could not be typed and echo was disabled outright after the segfault fix /
did it because tetris just has to work)! high score file was reinstated). We thank you for your assistance Cody (he
cynically notes that he did it because tetris just has to work)!
### Alternate code: ### Alternate code:
+1 -1
View File
@@ -12,7 +12,7 @@
make all make all
NOTE: [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) was able to get [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) was able to get
this to partially work with clang; clang requires that the second, third and this to partially work with clang; clang requires that the second, third and
fourth args to main() be `char **`. Only `westley.c` and `ver0.c` (see below) will fourth args to main() be `char **`. Only `westley.c` and `ver0.c` (see below) will
compile with clang. It's possible to get ver1.c to compile too but this causes compile with clang. It's possible to get ver1.c to compile too but this causes
+4 -2
View File
@@ -14,8 +14,10 @@
./cmills [starting_cash] ./cmills [starting_cash]
NOTE: we used a patch from Yusuke Endoh to get this to work in modern systems We used a patch from [Yusuke Endoh](/winners.html#Yusuke_Endoh) to get this to
(it resulted in a bus error otherwise). Thank you Yusuke for your assistance! work in modern systems (it resulted in a bus error otherwise). Thank you Yusuke
for your assistance!
### Try: ### Try:
+2 -2
View File
@@ -11,8 +11,8 @@
make all make all
Modern compilers could not compile this entry but Yusuke Endoh supplied a patch [Yusuke Endoh](/winners.html#Yusuke_Endoh) fixed this for modern systems. Thank
which lets it compile. Thank you Yusuke! you Yusuke!
### To run ### To run
+3 -2
View File
@@ -23,8 +23,9 @@
make all make all
NOTE: as `btoa` is not common we used a ruby script from Yusuke Endoh. Thank you NOTE: as `btoa` is not common we used a ruby script from [Yusuke
Yusuke for your implementation of `btoa`! Endoh](/winners.html#Yusuke_Endoh). Thank you Yusuke for your implementation of
`btoa`!
### Try: ### Try:
+2 -1
View File
@@ -20,7 +20,8 @@ Modern compilers might fail to compile this entry:
but we were able to get it to compile with modern compilers by specifying the but we were able to get it to compile with modern compilers by specifying the
`-ansi` flag with a tip from Yusuke Endoh. Thank you Yusuke! `-ansi` flag with a tip from [Yusuke Endoh](/winners.html#Yusuke_Endoh). Thank
you Yusuke!
### To run: ### To run:
+19 -5
View File
@@ -17,16 +17,28 @@
make all make all
NOTE: modern compilers had a problem with this entry because the `exit(3)` [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to work with
function returns void but [Cody Boone Ferguson](/winners#Cody_Boone_Ferguson) modern computers; `exit(3)` returns void but the function was used in a binary
got it to work with the use of a comma operator. Thank you Cody! expression so this would not even compile. Thank you Cody for your assistance!
### To run
## To run:
./tbr ./tbr
# enter some shell commands
## Try:
./tbr
ls -l tbr tbr.c
# notice how the following does not work:
ls tbr*
# try figuring out how this entry works in an editor:
vi tbr.c
# then figure out how to exit vi :-)
## Judges' comments ## Judges' comments:
This program touches on a well known Unix utility, the 6th edition Bourne Shell This program touches on a well known Unix utility, the 6th edition Bourne Shell
@@ -54,6 +66,8 @@ of the program which we include below:
## Author's comments ## Author's comments
Rot13:
Guvf cebtenz vf n ehqvzragnel furyy. Vg qbrf v/b erqverpgvba, cvcrf Guvf cebtenz vf n ehqvzragnel furyy. Vg qbrf v/b erqverpgvba, cvcrf
naq pq. Vg syntf reebef ba snvyrq puqve'f, bcra'f, perng'f naq pq. Vg syntf reebef ba snvyrq puqve'f, bcra'f, perng'f
rkrpic'f, sbex'f naq n srj flagnk reebef. rkrpic'f, sbex'f naq n srj flagnk reebef.
+6 -4
View File
@@ -11,10 +11,12 @@
make all make all
NOTE: thanks to Yusuke Endoh for the pointing out that `atof()` nowadays needs [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed some segfaults
`#include <stdlib.h>` in order to get this to work. Thanks also to Cody Boone under modern (and in some cases earier) systems with this entry. Thank you Cody!
Ferguson for fixing some segfaults under modern (and in some cases earlier)
systems with this entry. [Yusuke Endoh](/winners.html#Yusuke_Endoh) pointed out that `atof` nowadays
needs `#include <stdlib.h>` which was used in order to get this to work
initially. Thank you Yusuke!
## To run: ## To run:
-1
View File
@@ -183,7 +183,6 @@ all: data ${TARGET}
supernova deep_magic magic charon pluto supernova deep_magic magic charon pluto
${PROG}: ${PROG}.c ${PROG}: ${PROG}.c
@echo "NOTE: This entry might not compile when using modern compilers."
${CC} ${CFLAGS} $< -o $@ ${LIBS} ${CC} ${CFLAGS} $< -o $@ ${LIBS}
# alternative executable # alternative executable
+32 -26
View File
@@ -12,24 +12,30 @@
### To run ### To run
./westley 1 ./westley number
NOTE: [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for modern
compile under modern systems. Thank you Cody for your assistance! systems. Thank you Cody for your assistance!
NOTE: this entry will segfault without an arg and will enter an infinite loop if NOTE: this entry will segfault without an arg and will enter an infinite loop if
input is not a number (or is a negative number). input is not a positive number.
## Try:
./westley 1
./westley 2
./westley 3
./westley 5
## Judges' comments ## Judges' comments
usage: westley <number>
If you would rather "Daisy" someone other than Westley, rename If you would rather "Daisy" someone other than Westley, rename
the program as needed. :-) the program as needed. :-)
Read each block of code as if it were a piece of correspondence. Read each block of code as if it were a piece of correspondence.
For example, the first block of code would read: For example, the first block of code would read:
charlie, charlie,
doubletime me, OXFACE! doubletime me, OXFACE!
@@ -37,30 +43,30 @@ input is not a number (or is a negative number).
mainly die, charly, *die* mainly die, charly, *die*
signed charlotte signed charlotte
The original source had control-L's after each code block. To The original source had control-L's after each code block. To
make it easier on news readers, we converted each control-L to make it easier on news readers, we converted each control-L to
a blank line. a blank line.
Some modern compilers will not accept '1s' as a short integer - for Some modern compilers will not accept '1s' as a short integer - for
these compilers we replaced the instances of `1s` with `1`. these compilers we replaced the instances of `1s` with `1`.
## Author's comments ## Author's comments
This is a "Picking the Daisy" simulation. Now, instead of mangling a This is a "Picking the Daisy" simulation. Now, instead of mangling a
daisy, simply run this program with the number of petals desired as daisy, simply run this program with the number of petals desired as
the argument. the argument.
This is a good counter-example to peoples' complaints that C doesn't This is a good counter-example to peoples' complaints that C doesn't
have an "English-like" syntax. have an "English-like" syntax.
Lint complains about everything - null effect, xxx may be used before Lint complains about everything - null effect, xxx may be used before
set, statement not reached, return(e) and return. Lint dumps core set, statement not reached, return(e) and return. Lint dumps core
on some systems. My personal favorite lint complaint is on some systems. My personal favorite lint complaint is
"warning: eroticism unused in function main". "warning: eroticism unused in function main".
Also obviously, (char)lotte and (char*)lie are incompatible types... Also obviously, `(char)lotte` and `(char*)lie` are incompatible types...
Copyright (c) 1990, Landon Curt Noll & Larry Bassel. Copyright (c) 1990, Landon Curt Noll & Larry Bassel.
All Rights Reserved. Permission for personal, educational or non-profit use is All Rights Reserved. Permission for personal, educational or non-profit use is
+6 -6
View File
@@ -7,13 +7,13 @@
make all make all
NOTE: [Cody Boone Ferguson](/winners#Cody_Boone_Ferguson) fixed this for modern [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for modern
systems. There were two invalid operands to binary expression (`char *` and systems. There were two invalid operands to binary expression (`char *` and
`void` and `int` and `void`) to resolve and a feature of the C pre-processor `void` and `int` and `void`) to resolve and additionally a mis-feature of the C
which no longer works had to be changed as well. In particular `#define C =G` in pre-processor which no longer works had to be changed as well in order to get
a macro to make `+=` and similar operators no longer works. The invalid operands this to compile. In particular the macro `C`, defined as `C =G` to make `+=` and
to binary expressions were resolved with the comma operator. Thank you Cody for similar operators no longer works. The invalid operands to binary expressions
your assistance! were resolved with the comma operator. Thank you Cody for your assistance!
### Try: ### Try:
+4 -5
View File
@@ -11,10 +11,9 @@
make all make all
NOTE: [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this for clang by
work with clang by changing the third and fourth arg of main() to be ints inside changing the third and fourth arg of main() to be ints inside main(); clang
main(); clang requires args 2 - 4 to be `char **`. Thank you Cody for your requires args 2 - 4 to be `char **`. Thank you Cody for your assistance!
assistance!
### To run ### To run
@@ -29,7 +28,7 @@ assistance!
Where lat and long correspond to your latitude and longitude. Where lat and long correspond to your latitude and longitude.
NOTE: you must have a terminal that wraps at 80 columns (!) in order for this to NOTE: you **MUST** have a terminal that wraps at 80 columns (!) in order for this to
show correctly! show correctly!
+11 -12
View File
@@ -10,7 +10,8 @@
make all make all
NOTE: This entry might not compile when using modern compilers. NOTE: this entry might not compile with modern systems.
### To run ### To run
@@ -18,24 +19,22 @@
## Judges' comments ## Judges' comments
Use 'h' and 'l' to shift objects left or right. Use 'k' to Use 'h' and 'l' to shift objects left or right. Use 'k' to
rotate and press SPACE to drop. rotate and press SPACE to drop.
This program's output may be even more obfuscated when played This program's output may be even more obfuscated when played
on inverse video. :-) on inverse video. :-)
Yusuke Endoh provided a patch which allows this entry to compile on modern
systems. Thank you Yusuke!
## Author's comments ## Author's comments
This is jonth (jon's t(h)etris) for the X Window System. This is jonth (jon's t(h)etris) for the X Window System.
This program is also an example of data abstraction. The X array is This program is also an example of data abstraction. The X array is
after initialization hidden by the well defined macros t, u and F. after initialization hidden by the well defined macros t, u and F.
This program is highly portable as it runs on a "Notebook" size SPARC. This program is highly portable as it runs on a "Notebook" size SPARC.
This program will not work on machines with sizeof(int)!=sizeof(void *). This program will not work on machines with sizeof(int)!=sizeof(void *).
Copyright (c) 1993, Landon Curt Noll & Larry Bassel. Copyright (c) 1993, Landon Curt Noll & Larry Bassel.
All Rights Reserved. Permission for personal, educational or non-profit use is All Rights Reserved. Permission for personal, educational or non-profit use is
+4 -4
View File
@@ -14,10 +14,10 @@
make all make all
NOTE: [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to [Cody Boone Ferguson](/winners.html#Cody_Boone_Ferguson) fixed this to compile
compile with modern systems. As he loved the references in the code that could and work with modern systems. As he loved the references in the code that could
not compile he just commented it out (as little as possible). Thank you Cody for not compile he just commented out as little as possible to get this to compile.
your assistance! Thank you Cody for your assistance!
### To run ### To run
+9 -8
View File
@@ -47,16 +47,17 @@ output as a depiction of a person holding two flags, using only ASCII
characters (semaphore smileys, if you will). For example, given the characters (semaphore smileys, if you will). For example, given the
input "Hello, world!", the output will be: input "Hello, world!", the output will be:
<> <> <> <> <> <> <> <> <> <> <> <>
_() ()/ ()/ ()/ _\) () (/_ _\) _() ()/ ()/ ()/ _\) () (/_ _\)
[] /^ |^^ /^^ /^^ [] ^^ |^^| ^^ [] [] ^^ [] /^ |^^ /^^ /^^ [] ^^ |^^| ^^ [] [] ^^
<>[ [][ <>][ <>][ ][ [][] ][ ][ <>[ [][ <>][ <>][ ][ [][] ][ ][
<> [] <> []
_()_ ()/ |() () _()_ ()/ |() ()
[] ^^ [] /^^ ^^| |^^| [] ^^ [] /^^ ^^| |^^|
][ <>][ ][] [][] ][ <>][ ][] [][]
The program is obfuscated without the use of the preprocessor or any The program is obfuscated without the use of the preprocessor or any
special compilation parameters. In fact, the program doesn't even special compilation parameters. In fact, the program doesn't even
+3 -3
View File
@@ -31,12 +31,12 @@ This code is an nice compact example of a Modular Fast Fourier Transform.
While its output is very specific, the internal FFT has a wide variety While its output is very specific, the internal FFT has a wide variety
of uses. of uses.
Can you modify this code to produce primes such as 23523*2^70000-1, Can you modify this code to produce primes such as `23523*2^70000-1,
48594^65536+1 or 6917!-1? 48594^65536+1` or `6917!-1`?
### Alternate code: ### Alternate code:
This program prints the biggest known prime number (2^6972593-1) This program printed the biggest known prime number (2^6972593-1)
in base 10. It requires a few minutes. It uses a Modular Fast in base 10. It requires a few minutes. It uses a Modular Fast
Fourier Transform to compute this number in a reasonable amount Fourier Transform to compute this number in a reasonable amount
of time (the usual method would take ages !). of time (the usual method would take ages !).
+6 -7
View File
@@ -1,12 +1,11 @@
# Best Utility: # Best Utility:
Bernd Meyer Bernd Meyer
Monash University, Melbourne, Australia Monash University, Melbourne, Australia
1/832 Blackburn Rd 1/832 Blackburn Rd
Clayton, VIC 3168 Clayton, VIC 3168
Australia Australia
http://byron.csse.monash.edu.au/
http://byron.csse.monash.edu.au/
# To build: # To build: