fix Makefile and README.md for 2000/schneiderwent
NOTE: This program does not compile.
This commit is contained in:
1 parent
000823d86b
commit
1717b46c94
2 files changed
+61
-53
No files matched your search
@@ -75,8 +75,8 @@ CWARN= -Wall -Wextra -pedantic ${CSILENCE}
|
|||||||
# Compiler standard
|
# Compiler standard
|
||||||
#
|
#
|
||||||
#CSTD=
|
#CSTD=
|
||||||
CSTD= -ansi
|
#CSTD= -ansi
|
||||||
#CSTD= -std=gnu99
|
CSTD= -std=gnu99
|
||||||
|
|
||||||
# Compiler bit architecture
|
# Compiler bit architecture
|
||||||
#
|
#
|
||||||
@@ -101,7 +101,7 @@ CINCLUDE=
|
|||||||
#CINCLUDE= -include stdlib.h
|
#CINCLUDE= -include stdlib.h
|
||||||
#CINCLUDE= -include stdio.h
|
#CINCLUDE= -include stdio.h
|
||||||
#CINCLUDE= -include stdlib.h -include stdio.h
|
#CINCLUDE= -include stdlib.h -include stdio.h
|
||||||
#CINCLUDE= -I ${X11_INCDIR}
|
#CINCLUDE= -I ${X11_INCDIR} -I ${X11_INCDIR}/X11
|
||||||
#CINCLUDE= `${SDL2_CONFIG} --cflags`
|
#CINCLUDE= `${SDL2_CONFIG} --cflags`
|
||||||
|
|
||||||
# Optimization
|
# Optimization
|
||||||
@@ -138,8 +138,7 @@ CC= cc
|
|||||||
#
|
#
|
||||||
ifeq ($(CC),clang)
|
ifeq ($(CC),clang)
|
||||||
#
|
#
|
||||||
CSILENCE+= -Wno-missing-variable-declarations -Wno-poison-system-directories \
|
CSILENCE+= -Wno-missing-variable-declarations -Wno-poison-system-directories
|
||||||
-Wno-shorten-64-to-32 -Wno-sign-conversion
|
|
||||||
#
|
#
|
||||||
CWARN+= -Weverything
|
CWARN+= -Weverything
|
||||||
#
|
#
|
||||||
@@ -324,4 +323,3 @@ pluto: charon
|
|||||||
@echo "dwarf is a type of planet"
|
@echo "dwarf is a type of planet"
|
||||||
@echo "therefore, $@ is a planet"
|
@echo "therefore, $@ is a planet"
|
||||||
@echo "having lots of planets is good feature because supernovae can help ${MAKE} a lot of them"
|
@echo "having lots of planets is good feature because supernovae can help ${MAKE} a lot of them"
|
||||||
|
|
||||||
@@ -1,63 +1,73 @@
|
|||||||
Most Timely Output:
|
# Most Timely Output:
|
||||||
|
|
||||||
Craig Schneiderwent
|
Craig Schneiderwent
|
||||||
WI, USA
|
WI, USA
|
||||||
|
|
||||||
## To build:
|
# To build:
|
||||||
|
|
||||||
make all
|
```sh
|
||||||
|
make
|
||||||
|
```
|
||||||
|
|
||||||
### To run
|
### To run:
|
||||||
|
|
||||||
./schneiderwent schneiderwent.data
|
```sh
|
||||||
|
./schneiderwent datafile
|
||||||
|
```
|
||||||
|
|
||||||
## Judges' comments
|
### Try:
|
||||||
|
|
||||||
Very nice play by the rules and portable text obfuscation.
|
```sh
|
||||||
This far surpasses old tricks like adding or subtracting 1
|
./schneiderwent schneiderwent.data
|
||||||
from every character in a C string.
|
```
|
||||||
|
|
||||||
Translating the messages into your language of preference while
|
## Judges' comments:
|
||||||
keeping the program portable between different encodings
|
|
||||||
(Chinese, Japanese, Russian - anyone?) may be an entertaining task.
|
|
||||||
|
|
||||||
## Author's comments
|
Very nice play by the rules and portable text obfuscation.
|
||||||
|
This far surpasses old tricks like adding or subtracting 1
|
||||||
|
from every character in a C string.
|
||||||
|
|
||||||
This entry displays the current time to the console, for example:
|
Translating the messages into your language of preference while
|
||||||
|
keeping the program portable between different encodings
|
||||||
|
(Chinese, Japanese, Russian - anyone?) may be an entertaining task.
|
||||||
|
|
||||||
it's just after ten 'til 6 in the evening
|
## Author's comments:
|
||||||
|
|
||||||
FWIW, none of the compilers with which this entry was tested issued
|
This entry displays the current time to the console, for example:
|
||||||
any warnings or errors in compiling the source for this entry. No
|
|
||||||
doubt lint will complain about the goto statements.
|
|
||||||
|
|
||||||
The schneiderwent.data file consists of the values used by multiple
|
it's just after ten 'til 6 in the evening
|
||||||
table lookups. This is simply good program design, separating
|
|
||||||
these values from the source code allows changing the behavior of
|
|
||||||
the application without recompiling.
|
|
||||||
|
|
||||||
Having learned COBOL at an early age, the pthreads of my thought
|
FWIW, none of the compilers with which this entry was tested issued
|
||||||
processes tend to be translated into code in a verbose manner. Some
|
any warnings or errors in compiling the source for this entry. No
|
||||||
of the #defines in this entry's code are to mitigate this personal
|
doubt lint will complain about the goto statements.
|
||||||
deficiency.
|
|
||||||
|
|
||||||
Obfuscation in this entry consists of:
|
The schneiderwent.data file consists of the values used by multiple
|
||||||
|
table lookups. This is simply good program design, separating
|
||||||
|
these values from the source code allows changing the behavior of
|
||||||
|
the application without recompiling.
|
||||||
|
|
||||||
> printfing console messages stored as EBCDIC character values - this
|
Having learned COBOL at an early age, the pthreads of my thought
|
||||||
is not an attempt at encryption, but rather at cross platform
|
processes tend to be translated into code in a verbose manner. Some
|
||||||
compatibility
|
of the #defines in this entry's code are to mitigate this personal
|
||||||
> ASCII character values are calculated from the EBCDIC in a
|
deficiency.
|
||||||
particularly ugly abuse of the '?' operator
|
|
||||||
> detection of whether to print the ASCII or EBCDIC values is done by
|
Obfuscation in this entry consists of:
|
||||||
taking the remainder of dividing the character 'J' by 2 - the ASCII
|
|
||||||
value of the character is even, the EBCDIC value is odd
|
> printfing console messages stored as EBCDIC character values - this
|
||||||
> the messages to be printfed are determined via multiple table
|
is not an attempt at encryption, but rather at cross platform
|
||||||
lookups and bitmasked values
|
compatibility
|
||||||
> for minutes, the bit position turned on is multiplied by two
|
> ASCII character values are calculated from the EBCDIC in a
|
||||||
to determine the message to be printfed
|
particularly ugly abuse of the '?' operator
|
||||||
> for hours, the straight bit position is used
|
> detection of whether to print the ASCII or EBCDIC values is done by
|
||||||
> this entry mostly eschews function calls for the often overlooked
|
taking the remainder of dividing the character 'J' by 2 - the ASCII
|
||||||
setjmp/longjmp combination
|
value of the character is even, the EBCDIC value is odd
|
||||||
> the trigraphs are not there as obfuscation nor are they there to
|
> the messages to be printfed are determined via multiple table
|
||||||
annoy the judges - it's just the easiest way to get around the
|
lookups and bitmasked values
|
||||||
absence of square brackets in a normal 3270 environment
|
> for minutes, the bit position turned on is multiplied by two
|
||||||
|
to determine the message to be printfed
|
||||||
|
> for hours, the straight bit position is used
|
||||||
|
> this entry mostly eschews function calls for the often overlooked
|
||||||
|
setjmp/longjmp combination
|
||||||
|
> the trigraphs are not there as obfuscation nor are they there to
|
||||||
|
annoy the judges - it's just the easiest way to get around the
|
||||||
|
absence of square brackets in a normal 3270 environment
|
||||||
Reference in new issue
Block a user