1Sat Oct 19 19:18:17 CDT 2013
2
3Version 13, added -Wall and fixed all warnings. This was triggered at the
4request of Rusmir Dusko who is the FFreeBSD maintainer for Founts.
5
6Thu Jul  8 21:59:26 PDT 1999
7
8Added fractal background, defaults to cloud palette. Change with 'f' key.
9Added various palettes for fractal background, change with 'c' key.
10Added 'h' option for hiding everything but the balls.
11Added 'r' option to make the hoses spin, the idea came from
12brig6320@kennedy.ecn.ou.edu.
13
14Wed Jun 30 21:18:42 PDT 1999
15
16Added presets by using keys 1-9 or shift 1-9 to store. 'x' key deletes
17all the hoses and blocks. Stores to $HOME/.fountspreset#. Doesn't write
18under win32, probably because name begins with '.'.
19
20Changed 'm' option so mixing still draws spheres instead of solid colored
21disk.
22
23Set up to use SDL_SetTimer() so speed is the same across machines. The
24balls move at a virtual speed of 100 frames/second. I was using the
25friendly pause() function in case the cpu finished drawing before the
26interrupt, but that doesn't port well. Instead I switched to an ugly
27busy wait, which is portable but wasteful. Oh well...There was no need
28to use threads to get the fixed virtual speed. After rendering a frame,
29I count how may interrupts occured and run the ball movement that many
30times. So on average the balls move at 100 frames/second, but are only
31rendered as fast as the machine can handle, up to 100 frames/second.
32
33
34Mon Jun 28 10:23:35 PDT 1999
35
36Lots of changes. I got rid of the data/ directory (and the ants and font
37stuff). The balls are now rendered and can be scaled on the fly. I also
38added the 'e' eye demo, where an array of human looking eyeballs look at
39the cursor. Kind of like xeyes. The balls are bigger in the founts part and
40I think they look better. Also more colors to choose from, and a different
41mechanism for coloring the balls. At startup the game figures out the
42ball size based on the window resolution. Then it renders 512 balls in
43all hues, 3 bits per gun (RGB). Then when the program wants a ball of a
44specific color, it chooses the correct rendered one.
45
46The rendering also does 8 or 16 bits directly. Doesn't work for other
47bits/pixel. It used to rely on SDL mapping 8 bits -> other resolutions,
48but I wanted more colors so I began writing the 16 bit code directly. Then
49I went back and dealt with the 8 bit rendering just for completeness. Now
50I'm too lazy to deal with 24 or 32 bits/pixel...
51
52I want the color selection to be different, perhaps right clicking on a
53hose will bring up a color wheel. I don't like having to drag the hoses
54down to the bottom colors to change their color, and it doesn't allow for
55enough colors.
56
57I also want to change the math so there are 2 threads, one which does the
58ball movement, and one that renders to the screen. The movement one I want
59to be fixed at 60 hz. So slower machines will just get a lower framerate
60but the balls will average out to the same speed. I haven't used the thread
61library yet. Probably I'll look at SDL code to see how they used it. Cool
62concept, niftier than fork().
63