Format/typo check 1988/isaak/README.md

Added a section with historical notes about the entry (that is I added
the section heading and put the respective text, some of which I
previously added, under it).

This file should be in good order except perhaps a pending issue of
formatting the alternate code/to build/try sections.
This commit is contained in:
Cody Boone Ferguson committed 2023-10-18 08:34:22 -07:00
1 parent 1248d962f4
commit 5832e2b656
1 file changed
+30 -17
+30 -17
View File
@@ -1,11 +1,7 @@
# Best visuals # Best visuals
Mark Isaak Mark Isaak<br>
Imagen Corporation US
2650 San Tomas Expy.
Santa Clara, CA
95052-8101
US
## To build: ## To build:
@@ -13,6 +9,10 @@ US
make all make all
``` ```
There is an alternate version, the original, that can't be compiled in modern
systems but can be if you have an old enough compiler. See [Alternate
code](#alternate-code) below.
## To run: ## To run:
```sh ```sh
@@ -29,28 +29,41 @@ The original entry starts with the line:
``` ```
This works on some systems. Why? Note that `#include <stdio.h>` is given on 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. 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 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 using that macro for `#define`.
systems if you can even get it to compile.
This version will not likely work on modern systems if you can even get it to
compile.
#### To build:
```sh
make alt
```
Use `isaak.alt` as you would `isaak` above.
## Judges' remarks: ## Judges' remarks:
NOTE: The program relies heavily on ASCII. Don't even think of running it on The program relies heavily on ASCII. Don't even think of running it on
an EBCDIC machine. If you named the file anything other than [isaak.c](isaak.c), an EBCDIC machine.
you had to change the `#include` on line 6. This limitation has been fixed by
using the `__FILE__` macro. ### Historical notes about the original entry:
NOTE: If you named the file anything other than [isaak.c](isaak.c), you had to
change the `#include` on line 6. This limitation has been fixed by using the
`__FILE__` macro.
NOTE: The use of null comments to separate macros to construct different tokens 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 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. `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 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() that returns a `char *`. 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: *`. Due to the above problems, we placed the output of this program in the
isaak.encode. To read this file do: file: isaak.encode. To read this file do.
```sh ```sh
uudecode < isaak.encode uudecode < isaak.encode
@@ -58,7 +71,7 @@ cat isaak.output
``` ```
Since this was fixed, this file is not strictly necessary. See the Since this was fixed, this file is not strictly necessary. See the
[isaak.orig.c](isaak.orig.c) for the original source. [isaak.alt.c](isaak.alt.c) for the original source.
FYI: We are likely to be more strict about portability in the future. FYI: We are likely to be more strict about portability in the future.