~ubuntu-branches/ubuntu/natty/xbill/natty

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
XBill history:

0.01 (7/21/94):  
	- Bill moves, and he's in color too.  You can even click on
		him and he excaims "OUCH!" or "SPLAT!"
	- window resizing is very wrong
	
0.02 (7/22/94):	
	- program no longer guaranteed to run predictably for 
		longer than nine years (sorry)
	- ridiculously improved code style (no really a lot!)
	- added linked list unit and support for multiple monsters
	- added support for computers
	- bill says "POW!!!!!!" on button 2
	- improved Makefile
	- remembered to include app-defaults file in tar

0.03 (7/24/94):
	- forgot to initialize a variable.  either the stupid aix compiler 
		initialized it anyway or we were really lucky testing it.
	- removed annoying flicker
	- has multiple computers on the screen with random OSes
	- has multiple bills moving on the screen in random directions
	- used sxpm to create smaller .xpm files, minor savings in memoy
		and executable size, easier to edit pixmaps
	- left button (button 1) removes bills from screen
	- right button (button 3) now resets computers to wingdows.

0.04 (7/25/94):
	- got masking to work (well, maybe not...)
	- bill now carries the wingdows box around
	- event handling/speed improved

0.1 (7/26/94):
	- masking really works now
	- fixed computer pixmap so it looks nice(r)
	- randomized computer layout now leaves room for bill to stand on right
	- support for bills walking in, standing at computers and walking out
	- bills walk towards a specific computer to plunder (primitive ai)
	- bill turns off computer, 'steals' native os and installs wingdows
	- count of bills remaining is kept: decreased when bill enters screen
					  - increased if bill leaves
	- bill is killable in all states
	- computer reset to native os on right button
	- cleaned up code and internal structures
	- event handling/speed really improved (optimized for the new code)
	- server lag problems identified
	- linked list unit fixed so that function to move between lists works
	- window resizing is still very wrong
	
0.2 (8/14/94)
	- programmers woke up after being asleep since 7/26.	
	- code structures were fixed very much (again)
	- bill faces in the direction he's walking
	- bill explodes in a gory shower of blood when clicked on (yeah!)
	- bill drops os when killed
	- the os stays on the ground when bill is killed if it had been stolen
	- the os bounces up and down while bill carries it
	- changed default cursor (matias will have to draw a better one later)
	- cursor changes during drag and drop operation
	- drag and drop works!  there's a little hack involved, but not 
		too bad...
	- bill now smart enough to notice that a computer is already
		corrupted and find a new one
	- game ends if all computers are lost

0.21 (8/15/94)
	- attempt to port code to athena widgets.  it compiles and
		runs w/o motif now (i hate C macros) a bit
	- improved the makefile.  an imakefile one day maybe...

0.22 (8/16/94)
	- when bill leaves the field, he drops the os he's carrying
	- status bar widget now does something

0.3 (8/23/94)
	- improved responsiveness a lot :)
	- menubar does something (new game, pause and quit buttons) if 
		motif is used.
	- levels now exist (barely)
	- yet more code cleanup

0.31 (8/24/94)
	- a few things depend on the level (freq. and number of appearing
		bills, number of computers, step size)
	- bug where a computer is ignored if off is removed
	- menu code written.
	- athena code started.  this works more or less, but not too well.
		i'd recommend using motif and/or a statically linked binary.

0.32 (9/18/94)
	- about box works.  help almost works also.
	- a bunch of bugs fixed
	- have an Imakefile now (thanks to Greg Seidman - anthro@cs.umd.edu)

0.9 (11/28/94 - a bit busier during school)
	- warp to arbitrary level works
	- game pauses when cursor leaves window
	- cursor warps to near upper left corner of opened dialog boxes
	- redefined both reset and drag to right button (button 3),
		added -1 option for people with a one button mouse.
		-1 may slow the game down a bit. 
	- added -l, -L to specify starting level
	- added -v for version info
	- improved pictures a lot
	- added confirmations for actions
	- game now pauses well
	- fixed level difficulty stuff
	- bill walks at two speeds
	- minimizes to an icon (a cool one too...)
	- scoring improved
	- window cannot be resized now, no matter how hard you try :)
	- much cooler animations for bill replacing os
	- added high score list
	- fixed lots of silly bugs
	- made program not die from colormap error (i hope)

1.0 (4/5/95-4/9/95)
	- remembered that the game's not done yet :)
	- replaced usleep() calls with XtAppAddTimeout().  should make
		the game more responsive
	- changed all popup windows to modal dialogs.  cleans up code
		a lot
	- removed Athena support, since it would take too long to finish.
	- made a couple pixmaps a bit smaller
	- changed colors to gray.  why not?
	- finally got everything to work with full colormaps
	- got rid of app-defaults file.  Not really used anyway
	- Only uses one button now (any button).  Easier to play.
	- Some Imakefile fixes

1.1 (4/16/95)
	- modularized widget code, and added Athena widget support (rewritten
		from scratch).  The game looks better with Motif, but that's
		not too important.
	- made pause button only active during game play
	- warping to a level starts a game if one isn't being played
	- fixed a potentially nasty bug that could cause bills to get lost
	- works in TrueColor now (I think - it works in 16 bit mode at least)

1.1a (9/22/95)
	- fixed bug where getopt() returned a char instead of an int.
	- fixed bug where hitting Enter when entering a high score
		corrupted the high score file.
	- don't fclose() nonexistant files any more.
	- added BSD as another operating system (patches by Joerg Wunsch,
		joerg_wunsch@uriah.heep.sax.de)
	- it was really easy to play forever by guarding one computer.  Now
		you lose when there's only one computer left running its
		normal OS.
	- added man page, written by Pekka Marjola (marjola@trshp.ntc.nokia.com)

2.0 (1/23/1997)
	- changed around some timer code.
	- removed Athena DrawingArea widget since CoreWidget works too.
	- massive code reorganization to improve portability to other
		GUIs, languages, etc.
	- Some computers are connected by network cables
	- When a computer with a network cable becomes infected, it will
		release a spark down the cable which will infect the
		computer on the other end.  Pouring the bucket of water
		on the spark will extinguish it.
	- Made cursors and various other images look better.
	- Removed references to defenestration.dorm.umd.edu, which no
		longer exists.
	- Added Red Hat logo (fixed broken Red Hat patch).
	- Added GNU Hurd logo
	- Added Linux penguin logo
	- The BSD, Red Hat, Linux, OS/2, and Hurd operating systems are
		interchangable on the 2 PC computers.
	- The score is now displayed in the playing field.
	- Made Athena version far better looking.
	- Motif version almost completely works with Lesstif.

2.1 (11/15/2001)
	- converted all code from C++ into C.
	- cleaned up pretty much all of the code.
	- modified build system to use GNU autoconf instead of imake.
	- made the UI system modular, and created modules for the Athena
	  and Motif widget sets.  By default, both are built into the
	  binary.
	- added a GTK front end.
	- added an option to use a larger playing field.
	- changed the Athena front end to use Xaw3d when possible.
	- add Palm OS/CPU (images borrowed from pBill and heavily modified)