Merge pull request #60 from xexyl/readmes
This commit is contained in:
13 files changed
+115
-25
No files matched your search
+11
-11
@@ -6,20 +6,11 @@ Anonymous
|
||||
|
||||
make all
|
||||
|
||||
## To run:
|
||||
## Try:
|
||||
|
||||
|
||||
./anonymous
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
The author was too embarrassed that he/she could write such trash, so I
|
||||
promised to protect their identity. I will say that the author of this
|
||||
program has a well known connection with the C programming language.
|
||||
|
||||
This program is a unique variation on the age old "Hello, world"
|
||||
program. What reads like a read may be written like a write!
|
||||
|
||||
NOTE: this entry will probably not work under macOS with the Apple chips (Intel
|
||||
should be fine though we have no way to test this; if anyone can confirm whether
|
||||
this will work under macOS with an Intel chip we'd appreciate if you let us
|
||||
@@ -28,7 +19,6 @@ specifically, on modern systems one might need to specify `-m32` (though this
|
||||
actually doesn't seem to be the case) but the Apple chips which are arm64 based
|
||||
will not compile this entry:
|
||||
|
||||
|
||||
ld: unknown/unsupported architecture name for: -arch armv4t
|
||||
clang: error: linker command failed with exit code 1 (use -v to see invocation)
|
||||
make: *** [anonymous] Error 1
|
||||
@@ -53,6 +43,16 @@ If we add to the CFLAGS `-include unistd.h` we will run into another problem:
|
||||
ssize_t read(int, void *, size_t) __DARWIN_ALIAS_C(read);
|
||||
^
|
||||
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
The author was too embarrassed that they could write such trash, so I
|
||||
promised to protect their identity. I will say that the author of this
|
||||
program has a well known connection with the C programming language.
|
||||
|
||||
This program is a unique variation on the age old "Hello, world"
|
||||
program. What reads like a read may be written like a write!
|
||||
|
||||
## Author's comments:
|
||||
|
||||
No comments were provided by the author.
|
||||
|
||||
@@ -44,8 +44,50 @@ couldn't! :-)
|
||||
|
||||
## Author's comments:
|
||||
|
||||
No comments were provided by the author.
|
||||
These comments, found at
|
||||
[https://lainsystems.com/posts/exploring-mullender-dot-c/](https://lainsystems.com/posts/exploring-mullender-dot-c/),
|
||||
were provided by Sjoerd Mullender years later. We thank the author of the
|
||||
article for the quote!
|
||||
|
||||
I have never known a lot about the VAX assembly, so we used the C compiler to
|
||||
create the VAX code. We didn't write it ourselves from scratch as we did with
|
||||
the PDP code. This is the reason why the VAX code is more complex, including the
|
||||
extra data after the PDP code.
|
||||
|
||||
Robbert and I were students at the VU (Free University in Amsterdam) at the time
|
||||
(mathematics with CS as our major since there was no CS curriculum when we
|
||||
started). We had an assignment to create a pair of programs for the computer
|
||||
networks course. The programs were supposed to send data reliably from one
|
||||
program to the other over an unreliable channel. This channel was simulated with
|
||||
a pair of pipes.
|
||||
|
||||
We decided for fun to create an obfuscated set of programs, only for the PDP, to
|
||||
do this, but circumventing the channel. (I.e. cheating, hence the needed
|
||||
obfuscation.) Our programs worked and we handed them in.
|
||||
|
||||
Of course, the teacher had a good laugh and then rejected our submission. (We
|
||||
knew him well, so we could get away with this.)
|
||||
|
||||
Then the IOCCC came along. I don’t remember how we heard about it, but at the
|
||||
time there was a world-wide messaging network Usenet where we read a bunch of
|
||||
newsgroups. I’m sure it was announced there and we saw it.
|
||||
|
||||
Since we had just recently created these obfuscated programs we decided we could
|
||||
use the same technique for an obfuscated C program. We upped the ante a bit by
|
||||
making it “portable”.
|
||||
|
||||
To add to the obfuscation, we used different formats for the integers in the
|
||||
array, some in decimal, some in octal, some in hexadecimal, and when the value
|
||||
would fit, some as an ASCII character.
|
||||
|
||||
The rest is history.
|
||||
|
||||
Since this was the first contest, we hadn't seen any old entries, nor had any of
|
||||
the other contestants. Of course we knew about #define and tricks you could do
|
||||
with that, but we didn't need that for this program. In fact, we made it as
|
||||
“standard” as possible. At the time there was this program called “cb” for C
|
||||
beautifier which would re-indent your program to make the layout look better. Our
|
||||
program is idempotent under cb.
|
||||
|
||||
Copyright (c) 1984, Landon Curt Noll.
|
||||
All Rights Reserved. Permission for personal, educational or non-profit use is
|
||||
|
||||
@@ -6,7 +6,7 @@ Jack Applin [with help from Robert Heckendorn]
|
||||
|
||||
make all
|
||||
|
||||
## To run:
|
||||
## Try:
|
||||
|
||||
./applin
|
||||
|
||||
|
||||
@@ -8,6 +8,9 @@ Col. G. L. Sicherman
|
||||
|
||||
NOTE: This entry requires a compiler that support `-traditional-cpp`.
|
||||
|
||||
## Try:
|
||||
|
||||
./sicherman < sicherman.c
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
|
||||
@@ -10,6 +10,10 @@ USA
|
||||
|
||||
make all
|
||||
|
||||
## To run:
|
||||
|
||||
./applin
|
||||
|
||||
### Try:
|
||||
|
||||
sh applin.c
|
||||
|
||||
@@ -10,6 +10,13 @@ Sweden
|
||||
|
||||
make all
|
||||
|
||||
|
||||
|
||||
## Try:
|
||||
|
||||
./august
|
||||
|
||||
|
||||
NOTE: this entry is very likely to core dump after its output.
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
@@ -13,10 +13,17 @@ UK
|
||||
NOTE: this entry uses gets() so you might get a warning about this when
|
||||
compiling and running this program with some systems.
|
||||
|
||||
## To run:
|
||||
|
||||
./hague
|
||||
# enter some text
|
||||
|
||||
### Try:
|
||||
|
||||
./hague
|
||||
[enter some text]
|
||||
IOCCC
|
||||
International Obfuscated C Code Contest
|
||||
Jim Hague
|
||||
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
@@ -17,6 +17,10 @@ main() and the third arg was an int. He notes that he tried to keep the picture
|
||||
as close to the original. The line lengths are the same but some spaces had to
|
||||
be changed to non-spaces. Thank you Cody for your help!
|
||||
|
||||
## Try:
|
||||
|
||||
./marshall
|
||||
|
||||
# Judges' comments:
|
||||
|
||||
This program prints the name of the picture. The layout is somewhat
|
||||
|
||||
@@ -20,6 +20,8 @@ Santa Monica, CA
|
||||
cat biggar.c | ./biggar | od -c
|
||||
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
By changing the compile line you can make this program do anything you
|
||||
want. This is a very efficient way to transfer source, though it
|
||||
increases the size of Makefiles.
|
||||
@@ -38,7 +40,6 @@ entry](../wall/README.md) regarding Mark's contribution but it seems to have
|
||||
been lost in time. If anyone knows about its whereabouts we'd appreciate letting
|
||||
us know. Thanks!
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
Passes BSD and UTS lint. At least one version of lint is thrown into
|
||||
an infinite loop by this entry.
|
||||
|
||||
@@ -12,7 +12,6 @@ On System V systems, we had to compile with `-Dindex=strchr`.
|
||||
To compile on a 16 bit machine, change 300000 to 30000.
|
||||
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
### Try:
|
||||
|
||||
@@ -25,14 +24,16 @@ Ask yourself what happens to `foo.md` if you try:
|
||||
|
||||
./ph 40 < README.md > foo.md
|
||||
|
||||
Folding at the wrong length may be equivalent to a "Spindle or Mutilate" operation. For example:
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
Folding at the wrong length may be equivalent to a "Spindle or Mutilate" operation. For example:
|
||||
|
||||
./heckbert 40 < heckbert.c > ph.c ; make ph ; ./ph 20 < heckbert.c > bar.c ; make bar
|
||||
|
||||
|
||||
Try not to
|
||||
[Fold, Spindle or Mutilate](https://repository.library.brown.edu/studio/item/bdr:788264/PDF/)
|
||||
files. :-)
|
||||
files. :-)
|
||||
|
||||
|
||||
## Author's comments:
|
||||
@@ -41,7 +42,7 @@ No comments were provided by the author.
|
||||
|
||||
|
||||
The judges used this program to fold up very long lines which the
|
||||
BSD fold(1) was unable to process. This program has been added
|
||||
BSD fold(1) was unable to process. This program has been added
|
||||
to the contest tool chest.
|
||||
|
||||
|
||||
|
||||
@@ -21,8 +21,8 @@ USA
|
||||
|
||||
### Alternate code
|
||||
|
||||
An alternate version of this entry, `hines.alt.c`.
|
||||
With older compilers you can try the alt version:
|
||||
An alternate version of this entry is in `hines.alt.c`. With older compilers you
|
||||
can try the alt version:
|
||||
|
||||
make alt
|
||||
|
||||
|
||||
@@ -17,12 +17,18 @@ compiler.
|
||||
./lievaart
|
||||
# enter a level and start playing as described below
|
||||
|
||||
./lievaart2
|
||||
# enter a level and start playing as described below
|
||||
|
||||
NOTE: if you enter invalid input the program will enter an infinite loop
|
||||
displaying a string like `"You:"` repeatedly.
|
||||
|
||||
## Try:
|
||||
|
||||
To see what it would have looked like without the size restrictions:
|
||||
|
||||
./lievaart2
|
||||
# enter a level and start playing as described below
|
||||
|
||||
|
||||
## Judges' remarks:
|
||||
|
||||
We believe that you too will be amazed at just how much power Mr. Lievaart
|
||||
|
||||
+16
-1
@@ -9,7 +9,14 @@ Panorama City, CA 91402 USA
|
||||
|
||||
make all
|
||||
|
||||
## Judges' comments:
|
||||
## To run:
|
||||
|
||||
|
||||
./wall
|
||||
# enter some strings
|
||||
|
||||
./wall | some_command
|
||||
# enter some strings
|
||||
|
||||
### Try:
|
||||
|
||||
@@ -35,6 +42,9 @@ and enter some input like:
|
||||
quit # for the cat version
|
||||
|
||||
|
||||
## Judges' comments:
|
||||
|
||||
|
||||
What we found amazing was how the flow of control was transferred
|
||||
between subroutines. Careful inspection will show that the array of
|
||||
pointers to functions named 'vi' refers to functions which seem to not
|
||||
@@ -44,6 +54,11 @@ done and how it is being exploited?
|
||||
|
||||
Some compilers complained about this file, so we changed: '=++I' to '= ++I'.
|
||||
|
||||
|
||||
## Author's comments:
|
||||
|
||||
No comments were provided by the author.
|
||||
|
||||
Copyright (c) 1987, Landon Curt Noll & Larry Bassel.
|
||||
All Rights Reserved. Permission for personal, educational or non-profit use is
|
||||
granted provided this this copyright and notice are included in its entirety
|
||||
|
||||
Reference in new issue
Block a user