Update 1994 winning entries' README.md files

Format and typo fixes.
This commit is contained in:
Cody Boone Ferguson committed 2023-04-14 06:28:42 -07:00
1 parent ee4ee3497d
commit 2501c808c6
9 files changed
+155 -119

No files matched your search

+24 -17
View File
@@ -1,14 +1,16 @@
# Best X11 Program
Teemu Rantanen
Helsinki University of Technology
Melkonkatu 5 A 8
00210 Helsinki
Finland
Teemu Rantanen
Helsinki University of Technology
Melkonkatu 5 A 8
00210 Helsinki
Finland
## To build:
make all
```sh
make all
```
## To run:
@@ -98,13 +100,13 @@ the fourth is a variation of that with more nice effects.
The first parameter is the operating-mode of the program. There are 4 fractal
pairs, 3 display modes, making total of 12 modes. `Screensize` is half of the
pairs and 3 display modes, making total of 12 modes. `screensize` is half of the
actual `screenlength/width`. I.e. if you use 128 as a second parameter, you will
get two 256x256 windows.
The program needs reasonable values for both of these parameters to
operate. A good first try could be "0 128" or "8 128". `Colormap` has
to be piped into the programs standard input.
operate. A good first try could be "0 128" or "8 128". The `colormap` has
to be redirected into the programs standard input via the `colormapfile`.
Note that you will need approximately `(second_parameter^2)*64` bytes of free
main memory or the machine will swap heavily (memory references are quite random
@@ -112,23 +114,23 @@ and may confuse paging algorithms easily). This means that for 512x512 windows
you will need 4M of memory.
### `Colormapfile`:
### `colormapfile`
This is the file from which program reads colors for screen `colormap`. The
first line of the file must be a number between `3..254`. This informs the
program how many colors there are to be expected. This is also the maximum
number of iterations used on picture calculations. Lines after that are X11
color names. The program expects to find, and it uses, the number of colors
color names. The program expects to find, and will use, the number of colors
reported on the first line.
There are two `colormapfiles` to start with. One with colors and another with
There are two `colormapfile`s to start with. One with colors and another with
only black and white. If you have enough colors on your display you can use the
one with colors (even on `grayscale`). The other is meant mainly for a one bit
plane display (on which the picture looks terrible compared to a 8 bit plane
display).
### Compilation:
### Compilation
You should compile this entry with an optimizing compiler with the
highest level of optimization possible. You will also need an ANSI
@@ -157,6 +159,8 @@ between the X server and the client is slow. (Don't try this on 9600 bps modem
line. I did ;) )
### Obfuscation
Obfuscation is done on different levels. Almost none of it is made at the macro
level, so `cpp`ing the code won't give you much. Perhaps most notable is the
algorithmic obfuscation. Simple formula has been turned into something
@@ -166,33 +170,36 @@ left out of the program because speed of animation was one of the key issues.
Well, obfuscated or not, some of the effects are very nice ;)
### Memory refreshment:
### Memory refreshment
Mandelbrot set is calculated from the formula
```
2
Z = Z + Z
n+1 n 0
```
and the Julian set is calculated from the formula
```
2
Z = Z + C
n+1 n
```
where `C` is the same throughout the picture. Both calculation are finished
when `|Z| >= 2.0`. For the other fractals, the basic methods are the same but
the formula is different (look at the source ;)
the formula is different (look at the source ;) )
Note that Mandelbrot and Julian on this program aren't exactly correct. Find out
why ;)
### Bugs:
### Bugs
- No error checking. If DISPLAY is not set program dumps core. This may also
happen if a request of some of the resources fails e.g. getting colors.