From aa0468d03b3d6b6406a2fb010f54371a3726f113 Mon Sep 17 00:00:00 2001
From: Cody Boone Ferguson <53008573+xexyl@users.noreply.github.com>
Date: Mon, 6 May 2024 07:54:12 -0700
Subject: [PATCH] Fixes in presentation of 1988/isaak
The uuencoded file isaak.encode was removed. Instead the output was put
in isaak.output.txt. This has the same manifest priority as the encoded
file. This file is strictly for historical remarks in the index.html
file and not needed beyond that. Perhaps it should be in the secondary
file list but that can be decided later.
The file isaak.alt.c is now compilable. It is the isaak.orig.c that is
not. The difference is with an old enough compiler/system it might be
that the alt version will work. In modern systems the isaak.c will work.
Manifest updated for the file changes.
Thanks file updated with this and possibly other earlier changes in
1988. 1988 is not done yet but as these problems were found working on
it I felt like I should commit them now too.
---
1988/isaak/.entry.json | 10 +++---
1988/isaak/README.md | 37 +++++++++++---------
1988/isaak/index.html | 33 +++++++++--------
1988/isaak/isaak.alt.c | 37 ++++++++++----------
1988/isaak/isaak.encode | 68 ------------------------------------
1988/isaak/isaak.output.txt | 39 +++++++++++++++++++++
thanks-for-help.html | 25 +++++++------
thanks-for-help.md | 27 +++++++-------
tmp/manifest.csv | 2 +-
tmp/manifest.numbers | Bin 1307005 -> 1329559 bytes
tmp/path_list.built.txt | 1 +
tmp/path_list.found.txt | 2 +-
tmp/path_list.manifest.txt | 2 +-
tmp/path_list.required.txt | 1 -
14 files changed, 134 insertions(+), 150 deletions(-)
delete mode 100644 1988/isaak/isaak.encode
create mode 100644 1988/isaak/isaak.output.txt
diff --git a/1988/isaak/.entry.json b/1988/isaak/.entry.json
index bd9e0c046..5dfe31bba 100644
--- a/1988/isaak/.entry.json
+++ b/1988/isaak/.entry.json
@@ -42,12 +42,12 @@
"entry_text" : "original source"
},
{
- "file_path" : "isaak.encode",
+ "file_path" : "isaak.output.txt",
"inventory_order" : 180,
- "OK_to_edit" : true,
- "display_as" : "xxencode",
- "display_via_github" : true,
- "entry_text" : "uuencoded sample output"
+ "OK_to_edit" : false,
+ "display_as" : "text",
+ "display_via_github" : false,
+ "entry_text" : "program output"
},
{
"file_path" : "1988_isaak.tar.bz2",
diff --git a/1988/isaak/README.md b/1988/isaak/README.md
index 94fad95cb..06b6a0b40 100644
--- a/1988/isaak/README.md
+++ b/1988/isaak/README.md
@@ -18,8 +18,9 @@ code](#alternate-code) below.
## Alternate code:
-The original version of this code is in [isaak.alt.c](%%REPO_URL%%/1988/isaak/isaak.alt.c).
-The original entry starts with the line:
+The original version of this code is in
+[isaak.alt.c](%%REPO_URL%%/1988/isaak/isaak.alt.c), with a minor fix so that it
+will compile. The original entry starts with the line:
```
main(){};
@@ -29,10 +30,11 @@ This works on some systems. Why? Note that `#include
./isaak
The original version of this code is in isaak.alt.c. -The original entry starts with the line:
+The original version of this code is in +isaak.alt.c, with a minor fix so that it +will compile. The original entry starts with the line:
main(){};
This works on some systems. Why? Note that #include <stdio.h> is given on
the last line. Why is this needed? Note the unusual calls to sprintf(3).
This version also relied on being able to define #define to something else and
-using that macro for #define.
This version will not likely work on modern systems if you can even get it to -compile.
+using that macro for#define. This was fixed, however, so that you can at
+least compile it in modern systems.
+This version will not likely work on modern systems even though you should be +able to compile it.
make alt
+Use isaak.alt as you would isaak above.
The program relies heavily on ASCII. Don’t even think of running it on an EBCDIC machine.
-NOTE: If you named the file anything other than isaak.c, you had to
-change the #include on line 6. This limitation has been fixed by using the
-__FILE__ macro.
NOTE: If you named the file anything other than isaak.c, you had to
+change the #include on line 6. This limitation has been fixed in
+isaak.c and
+isaak.alt.c by using the __FILE__ macro.
NOTE: The use of null comments to separate macros to construct different tokens
from a single macro (e.g., "O/**/O" creates either ++ or -- by defining
O to be + or -) may cause some strict ANSI C preprocessors to object.
NOTE: Most System V machines were not be able to execute this program correctly
due to the fact that BSD style systems have an sprintf(3) that returns a char *. Due to the above problems, we placed the output of this program in the
-file: isaak.encode. To read this file do.
uudecode < isaak.encode
- cat isaak.output
-Since this was fixed, this file is not strictly necessary. See the -isaak.alt.c for the original source.
+file isaak.output.txt. +Since this was fixed, this file is not strictly necessary, but we keep it for +historical purposes (decoded as it used to be uuencoded). See the +isaak.orig.c for the original source.
FYI: We are likely to be more strict about portability in the future.
No remarks were provided by the author.
@@ -464,7 +467,7 @@ file: isaak.encode. To read this file do.First of all, as noted above, the entry required -traditional-cpp (which
-not all compilers support clang does not support). It needed
-that option in modern systems because of two things it did:
clang does not support). It needed that option in modern systems because of
+two things it did:
#define a(x)get/***/x/***/id())
/* ... */
@@ -922,10 +922,10 @@ that option in modern systems because of two things it did:
/* ... */
case_2:L(!--V){O/*/*/c*c+c);wait(A+c*c-c);L(!Z)f(A,"\n",c);return(A*getgid());};C++;
-This macro, a, formed the functions (the names) getuid() and getgid(), but
+
This macro, a, formed the function names getuid() and getgid(), but
this no longer works. The code still uses the macro a to form the names but
it’s done differently, using the C token paste operator ##. It’s done like
-thus:
--- i/1988/dale/dale.c
+++ w/1988/dale/dale.c
@@ -9,18 +9,18 @@
@@ -953,24 +953,27 @@ modern compilers do not allow directives like:
#define O close(
/* ... */
However, to keep the entry as close to as possible in look, Cody kept the _
-macro in place it’s just no longer used.
See the index.html file for details on the original code, provided as an alt
-version in case you have an older compiler or wish to try -traditional-cpp.
Cody also provided the try.sh script.
Cody fixed this to work for modern systems. The problem was that the important
-function, a redefinition of exit(), was not being called in main(). The
-original version is in 1988/isaak/isaak.alt.c. See the
+function, a redefinition of exit(3), was not being called in main(). Earlier
+fixes that let it compile, but not work with modern systems, can be found in
+1988/isaak/isaak.alt.c. See the
index.html file for more details.
Cody also uudecoded and removed the file isaak.encode, putting the output in
+isaak.output.txt. This was done strictly for historical remarks that can be
+found in the index.html file.
Cody added the alt code which is code that we suggested at the time of -publication, in the remarks, to help understand the entry, and for fun.
+Cody added the alt code +which is code that we suggested at the time of publication, in the remarks, to +help understand the entry, and for fun.
U0$SpH6q!;@>uh
z_jL|Bodb_|gU`F+#Jlkr={bfWNeBN9ze! sipCVvoGY^~_x<@(@O7moe1fzv5i5*|QCyh+Z+TXSU9#7h-HBxq|4BjqSx?jB76|
zEs+eRi-d*Xlq%&BjjFuOV9b|`7iS9NdpcED(5`Y;DQZemgn(qhvNYeC+(!7V;|||(
zSEJ0!3=D-(L|*3fP*q`{XdEoyL}2e?)>={+EQ0=OW#{~4i}(p7@5u=$+E5I`*}rW(
zASE<;E&UXdG*1-QZ{}|UabRz7xy2(|_$8991 itvEnZ10qWou<~KRx*$v`4Kprn~2Y?;_Fu)iuh45@B{$J&?>oI|uXBZjRKROFU|JLnbs
zLkfPag=TorKXam*HtQDKk2-FPbA+Jl(HVbE`F{EzF%M=Ys^CiS{+g
4`Pggq$Z*Fks#?vJYJ4GcYP)JuHKJ+T%)Dipb5_L;|
zS?pp6h7>hf-7;B(R0H>?akzmgh5go}`2DXj9<=z#K5>3HM&s|b0~b4M73
)4QLN{*0RH6$j-5;B6OD+`Xt)FLB;
z@|f(wF1x847-$g$!*a?YH|Y)1MrV;_