1XBill history: 2 30.01 (7/21/94): 4 - Bill moves, and he's in color too. You can even click on 5 him and he excaims "OUCH!" or "SPLAT!" 6 - window resizing is very wrong 7 80.02 (7/22/94): 9 - program no longer guaranteed to run predictably for 10 longer than nine years (sorry) 11 - ridiculously improved code style (no really a lot!) 12 - added linked list unit and support for multiple monsters 13 - added support for computers 14 - bill says "POW!!!!!!" on button 2 15 - improved Makefile 16 - remembered to include app-defaults file in tar 17 180.03 (7/24/94): 19 - forgot to initialize a variable. either the stupid aix compiler 20 initialized it anyway or we were really lucky testing it. 21 - removed annoying flicker 22 - has multiple computers on the screen with random OSes 23 - has multiple bills moving on the screen in random directions 24 - used sxpm to create smaller .xpm files, minor savings in memoy 25 and executable size, easier to edit pixmaps 26 - left button (button 1) removes bills from screen 27 - right button (button 3) now resets computers to wingdows. 28 290.04 (7/25/94): 30 - got masking to work (well, maybe not...) 31 - bill now carries the wingdows box around 32 - event handling/speed improved 33 340.1 (7/26/94): 35 - masking really works now 36 - fixed computer pixmap so it looks nice(r) 37 - randomized computer layout now leaves room for bill to stand on right 38 - support for bills walking in, standing at computers and walking out 39 - bills walk towards a specific computer to plunder (primitive ai) 40 - bill turns off computer, 'steals' native os and installs wingdows 41 - count of bills remaining is kept: decreased when bill enters screen 42 - increased if bill leaves 43 - bill is killable in all states 44 - computer reset to native os on right button 45 - cleaned up code and internal structures 46 - event handling/speed really improved (optimized for the new code) 47 - server lag problems identified 48 - linked list unit fixed so that function to move between lists works 49 - window resizing is still very wrong 50 510.2 (8/14/94) 52 - programmers woke up after being asleep since 7/26. 53 - code structures were fixed very much (again) 54 - bill faces in the direction he's walking 55 - bill explodes in a gory shower of blood when clicked on (yeah!) 56 - bill drops os when killed 57 - the os stays on the ground when bill is killed if it had been stolen 58 - the os bounces up and down while bill carries it 59 - changed default cursor (matias will have to draw a better one later) 60 - cursor changes during drag and drop operation 61 - drag and drop works! there's a little hack involved, but not 62 too bad... 63 - bill now smart enough to notice that a computer is already 64 corrupted and find a new one 65 - game ends if all computers are lost 66 670.21 (8/15/94) 68 - attempt to port code to athena widgets. it compiles and 69 runs w/o motif now (i hate C macros) a bit 70 - improved the makefile. an imakefile one day maybe... 71 720.22 (8/16/94) 73 - when bill leaves the field, he drops the os he's carrying 74 - status bar widget now does something 75 760.3 (8/23/94) 77 - improved responsiveness a lot :) 78 - menubar does something (new game, pause and quit buttons) if 79 motif is used. 80 - levels now exist (barely) 81 - yet more code cleanup 82 830.31 (8/24/94) 84 - a few things depend on the level (freq. and number of appearing 85 bills, number of computers, step size) 86 - bug where a computer is ignored if off is removed 87 - menu code written. 88 - athena code started. this works more or less, but not too well. 89 i'd recommend using motif and/or a statically linked binary. 90 910.32 (9/18/94) 92 - about box works. help almost works also. 93 - a bunch of bugs fixed 94 - have an Imakefile now (thanks to Greg Seidman - anthro@cs.umd.edu) 95 960.9 (11/28/94 - a bit busier during school) 97 - warp to arbitrary level works 98 - game pauses when cursor leaves window 99 - cursor warps to near upper left corner of opened dialog boxes 100 - redefined both reset and drag to right button (button 3), 101 added -1 option for people with a one button mouse. 102 -1 may slow the game down a bit. 103 - added -l, -L to specify starting level 104 - added -v for version info 105 - improved pictures a lot 106 - added confirmations for actions 107 - game now pauses well 108 - fixed level difficulty stuff 109 - bill walks at two speeds 110 - minimizes to an icon (a cool one too...) 111 - scoring improved 112 - window cannot be resized now, no matter how hard you try :) 113 - much cooler animations for bill replacing os 114 - added high score list 115 - fixed lots of silly bugs 116 - made program not die from colormap error (i hope) 117 1181.0 (4/5/95-4/9/95) 119 - remembered that the game's not done yet :) 120 - replaced usleep() calls with XtAppAddTimeout(). should make 121 the game more responsive 122 - changed all popup windows to modal dialogs. cleans up code 123 a lot 124 - removed Athena support, since it would take too long to finish. 125 - made a couple pixmaps a bit smaller 126 - changed colors to gray. why not? 127 - finally got everything to work with full colormaps 128 - got rid of app-defaults file. Not really used anyway 129 - Only uses one button now (any button). Easier to play. 130 - Some Imakefile fixes 131 1321.1 (4/16/95) 133 - modularized widget code, and added Athena widget support (rewritten 134 from scratch). The game looks better with Motif, but that's 135 not too important. 136 - made pause button only active during game play 137 - warping to a level starts a game if one isn't being played 138 - fixed a potentially nasty bug that could cause bills to get lost 139 - works in TrueColor now (I think - it works in 16 bit mode at least) 140 1411.1a (9/22/95) 142 - fixed bug where getopt() returned a char instead of an int. 143 - fixed bug where hitting Enter when entering a high score 144 corrupted the high score file. 145 - don't fclose() nonexistant files any more. 146 - added BSD as another operating system (patches by Joerg Wunsch, 147 joerg_wunsch@uriah.heep.sax.de) 148 - it was really easy to play forever by guarding one computer. Now 149 you lose when there's only one computer left running its 150 normal OS. 151 - added man page, written by Pekka Marjola (marjola@trshp.ntc.nokia.com) 152 1532.0 (1/23/1997) 154 - changed around some timer code. 155 - removed Athena DrawingArea widget since CoreWidget works too. 156 - massive code reorganization to improve portability to other 157 GUIs, languages, etc. 158 - Some computers are connected by network cables 159 - When a computer with a network cable becomes infected, it will 160 release a spark down the cable which will infect the 161 computer on the other end. Pouring the bucket of water 162 on the spark will extinguish it. 163 - Made cursors and various other images look better. 164 - Removed references to defenestration.dorm.umd.edu, which no 165 longer exists. 166 - Added Red Hat logo (fixed broken Red Hat patch). 167 - Added GNU Hurd logo 168 - Added Linux penguin logo 169 - The BSD, Red Hat, Linux, OS/2, and Hurd operating systems are 170 interchangable on the 2 PC computers. 171 - The score is now displayed in the playing field. 172 - Made Athena version far better looking. 173 - Motif version almost completely works with Lesstif. 174 1752.1 (11/15/2001) 176 - converted all code from C++ into C. 177 - cleaned up pretty much all of the code. 178 - modified build system to use GNU autoconf instead of imake. 179 - made the UI system modular, and created modules for the Athena 180 and Motif widget sets. By default, both are built into the 181 binary. 182 - added a GTK front end. 183 - added an option to use a larger playing field. 184 - changed the Athena front end to use Xaw3d when possible. 185 - add Palm OS/CPU (images borrowed from pBill and heavily modified) 186