home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #30 / NN_1992_30.iso / spool / comp / os / linux / 20934 < prev    next >
Encoding:
Text File  |  1992-12-20  |  9.9 KB  |  197 lines

  1. Newsgroups: comp.os.linux
  2. Path: sparky!uunet!elroy.jpl.nasa.gov!sdd.hp.com!saimiri.primate.wisc.edu!usenet.coe.montana.edu!news.u.washington.edu!hardy.u.washington.edu!opium
  3. From: opium@hardy.u.washington.edu (Just dance and move your body)
  4. Subject: [ANNOUNCE:] xfishtank2.2 src/bin uploaded to sunsite X11/Incoming
  5. Message-ID: <1992Dec18.083110.29960@u.washington.edu>
  6. Sender: news@u.washington.edu (USENET News System)
  7. Organization: University of Washington, Seattle
  8. Date: Fri, 18 Dec 1992 08:31:10 GMT
  9. Lines: 186
  10.  
  11. All I did to compile it was add: '|| defined(linux)' to the end of line 49
  12. of xfish.c, and added: '#ifdef linux signal(SIGUSR1, toggle_secure); #else' 
  13. at line 1469 followed by '#endif /* LINUX */' at line 1495.
  14.  
  15. I didn't figure this out for myself either, I just looked at the port of
  16. xfishtank1.0 at sunsite /pub/Linux/X11/demos/xfishtank.tar.Z
  17. done by:    Dave Black dlbb0@amdahl.com
  18.  
  19. I included the source and 'stripped' binary compiled with gcc2.2.2d7 and the 
  20. jump4.1 libs under linux-0.99 and Xfree86v1.1
  21.  
  22. I've been using it for months now without any problems.  Much improved over 
  23. xfishtank1.0, there are loads of new 'way cool' fish which posess the ability 
  24. to swim on top of gifs!!
  25.  
  26. One last note, the current Makefile was generated by my Xfree86v1.1 xmkmf
  27. and uses a -m486 CCOPTION, I don't know if this would cause it to not work
  28. on other machines or not (the binary, if it doesn't work try changing it to
  29. -m386, and recompiling) ???  
  30.  
  31. I'm uploading it to sunsite.unc.edu  /pub/Linux/X11/Incoming
  32.  
  33. If somebody knows how to post this to comp.os.linux.announce I would
  34. appreciate it!!  8-)
  35. And could anybody tell me how I could make it the default screensaver for X11??
  36.  
  37. Eric Nelson <opium@hardy.u.washington.edu>
  38.  
  39. Here is the README:
  40.  
  41.        ********************** FUN WITH FISH *********************
  42.  
  43. There are lots of programs for lots of platforms to make fish swim in the
  44. background of your screen.  This is a modification of an old one called
  45. xfish (also called Xaquarium), that I have added more features to.
  46.  
  47. To not confuse you (or confuse you more) I will call this modified xfish
  48. "xfishtank". ['A rose by any other name...' and all that]
  49.  
  50.  
  51. How is this different?  I started with you basic xfish, and I kept the
  52. bubbles (actually I re-wrote some of the bubble code, but it LOOKS the same).
  53. I changed the rest of the code to allow any number of multicolored fish to
  54. swim around.  Each fish can have up to 255 colors, but on startup the program
  55. takes all the colors from all the fish, and squeezes them down to all fit
  56. into the default colormap as best it can.  Any fish can be any size in
  57. width and height.  To make them look more like they are swimming, fish are
  58. animated (Very simple 2 frame animation) [I got this idea from watching
  59. the AfterDark fish on the Mac].  Fish CANNOT swim over each other, they
  60. will turn around if they are about to collide.  I had a version that
  61. had fish swiming over each other, it was WAY to slow to be something to run
  62. on your background while working, so I deleted it.
  63.  
  64. xfishtank -help to see the command line options.
  65.  
  66.  
  67.        ********************** NEW FUN WITH FISH *********************
  68.  
  69. Since the original version, I have received various comments and bug fixes.
  70. This version I know runs on SGIs running 4.0, Sparcs running 4.1, 
  71. Decstations running 4.1, and RS6000s running 3.1.  However, there were mongo
  72. memory leaks in the X server distributed with the RS6000, so I had to compile
  73. the X11R5 server and use that.
  74.  
  75. As you add more fish (especially very colorful fish) the total color use set
  76. becomes quite large (greater than 255).  I added 2 new options to help you
  77. deal with this.  By default xfishtank would find the total color use set
  78. for all the fish you requested, and then start allocating out of the default
  79. colormap until it filled up, it would then match the rest of the colors to
  80. whatever colors it could get.  This first come first serve color allocation
  81. can give really bad results for large color sets.  I added the -m option
  82. to allow you to specify that the program should cut the color use set down
  83. to the number you specify with the -m option before starting to allocate
  84. out of the default colormap.  The algorithm used by -m is considerably better
  85. than first come first serve.  Also, having xfishtank use ALL the available
  86. cells in the default colormap can be bad.  The -C options lets you limit how
  87. many cells xfishtank will take out of the default colormap.
  88. In the first come first serve senario colors are allocated for the fish,
  89. in the order of appearance in the FishList file, and then from the backgound
  90. picture if one exists.
  91.  
  92. Finally, due to popular demand, I put back in my clipmask code.  By setting
  93. the -d option (for Do clipping), xfishtank will swim its fish over whatever
  94. you already have on your root window.  WARNING:  This will slow down your
  95. machine!  The reason I took this code out originally was it slowed my 
  96. machine down too much for me to comfortably work.  But if you think you have
  97. a really spiffy fast workstation, go ahead and give it a try.
  98.  
  99. If you use the -d option and notice some flicker (which I expect you will),
  100. this is because xfishtank is just doing an XClearArea, and letting the root
  101. redraw its background.  If you know what you want your background picture to
  102. be, use -p <image_file> instead of -d.  The image_file needs to be a gif
  103. image.  Since xfishtank now knows what your background is, xfishtank with
  104. the -p option should have much less flicker.  However, it suffers the
  105. disadvantage that you can't change the background picture without restarting
  106. xfishtank.
  107.  
  108. The intrepid explorer of the source code will notice that there are some
  109. options not described in xfishtank -help.  In particular -o -and -D.  These
  110. options aren't described because they were stuff I was fussing with and couldn't
  111. get to work.  I left them in on this release so that if someone else wanted
  112. to try and get them to work, they could see what I had already tried.  The -o
  113. option lets fish try and swim on top of each other.  It looks ugly no matter
  114. how I do it, if you can fix it, great.  -D is a special option that is only
  115. active if you have also specified -d and -p.  Normally you never want to specify
  116. both -d and -p because it doesn't make the animation any better, and it
  117. slightly messes up fish to bubble intersections.  However, if you specify
  118. -d -D -o -p you will get as close as I could get to proper fish intersections.
  119. And when you see how crumby these are, and how slow it makes your machine
  120. you will know why I gave up.
  121.  
  122. Ok, I'll fess up, I'm lying, I did actually get good fish to fish intersections
  123. but only by writing a completely different version of xfishtank that has
  124. each fish be a shaped override-redirect window, that moves itself, and changes
  125. its shape-mask to animate.  This looks REALLY COOL, but grinds any and all
  126. X servers to a complete standstill.
  127.  
  128.  
  129.        ********************** NEW FISH PICTURES *********************
  130.  
  131. This release contains a grand total of 29 fish!  These fish were carefully
  132. created through lots of hard work, and the help of many many people who
  133. sent me pictures of fish, non-copyrighted gifs of fish, and allowed me to
  134. borrow their scanners.  I'm not going to try and name them all here, there
  135. are lots of you, and I'm afraid I may miss someone.  You all know who you are,
  136. and you have my heartfelt thanks, I couldn't have done this without you.
  137.  
  138.  
  139.        ********************** TROUBLE WITH FISH *********************
  140.  
  141. There is a scarcity of good fish pictures in the world, and they are all
  142. protected by lawyers.  Here is the solution I propose.
  143.  
  144. Any of you with talent can edit up any pictures you want, somehow get them
  145. into GIF format, and import them into your xfishtank.  The program
  146. "giftofish" that I am supplying here takes as input any 2 GIF files,
  147. and creates a xfishtank header file for that fish.  The 2 files must have
  148. the same width and height, and must both have the same background color.
  149. The pictures are assumed to be the two frames of an animated fish swiming right.
  150. Put this new header file into your fishmaps directory, edit the FishList
  151. file to add the prefix of that header file, and increment the total fishcount
  152. on the first line of that file.  Now recompile xfishtank, and your new fish
  153. will be used.  Also, the program fishtogif will extract the two gifs from
  154. any fish header file so you can touch up what you already have.
  155.  
  156. Other fish sources:
  157.     The AfterDark fish on the Mac are beautiful.  If you
  158. have already shelled out the money to Berkely Systems Software to buy those
  159. fish, and you also want to see them on your UNIX box, here is what you do.
  160. If you can transfer the Mac fish files to UNIX, run the "gofish" program 
  161. supplied here, it will write out the fish into two intermediate files.
  162. The files will look strange, they are my own format, just feed them to the
  163. giftofish program (which understands that format), and it will create a
  164. fish header file for you.
  165.     OpenWindows 3.0 comes with some fish pictures.  If you have purchased
  166. Openwindows, and want to use those pictures, the program "rasttofish" 
  167. supplied here will read one of their sun raster fish pictures, and produce
  168. a xfishtank header file for it.  Note, the Openwindows fish are only one
  169. frame, so the won't be animated.
  170.     There is apparently a PC Windows program with some swimming fish.
  171. The individual fish are stored in .fsh files.  The program pcfshtofish
  172. will turn one of these .fsh files into an xfishtank header file.
  173.  
  174.  
  175.             ********************** THANKS *********************
  176.  
  177. A really big thanks to well over 100 wonderful people who after downloading
  178. the last version of xfishtank took the time to send me such pleasant,
  179. complimentary, and supportive e-mail.  This version was never planned, but
  180. all of you have made me feel better about writing this code than anything
  181. that any employer has ever paid me for.
  182.  
  183.  
  184. As usual, mail any problems, questions, complaints, reccommendations, and
  185. cookies to me.
  186.  
  187. Eric Bina
  188. 508 E. Michigan, #35
  189. Urbana, IL 61801
  190.  
  191. ebina@ncsa.uiuc.edu
  192.  
  193. (217)344-9101
  194. Work(217)244-6133
  195.  
  196.  
  197.