home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / x / volume20 / xball / part05 < prev    next >
Encoding:
Text File  |  1993-05-26  |  45.2 KB  |  1,770 lines

  1. Newsgroups: comp.sources.x
  2. From: daven@ctron.com ("David N. Nedde")
  3. Subject: v20i005:  xball - simulate bouncing balls in a window, Part05/05
  4. Message-ID: <1993May24.202923.24363@sparky.imd.sterling.com>
  5. X-Md4-Signature: 906aa4bcac6fe710be0064c178b1e977
  6. Sender: chris@sparky.imd.sterling.com (Chris Olson)
  7. Organization: Sterling Software
  8. Date: Mon, 24 May 1993 20:29:23 GMT
  9. Approved: chris@sparky.imd.sterling.com
  10.  
  11. Submitted-by: daven@ctron.com ("David N. Nedde")
  12. Posting-number: Volume 20, Issue 5
  13. Archive-name: xball/part05
  14. Environment: X11, OSF/Motif, Athena
  15.  
  16. #! /bin/sh
  17. # This is a shell archive.  Remove anything before this line, then unpack
  18. # it by saving it into a file and typing "sh file".  To overwrite existing
  19. # files, type "sh file -c".  You can also feed this as standard input via
  20. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  21. # will see the following message at the end:
  22. #        "End of archive 5 (of 5)."
  23. # Contents:  XBall.ad README good_bitmaps on.xbm off.xbm man.xbm
  24. #   stipple.xbm xball.xbm xball-a.xbm xball-b.xbm xball-l.xbm
  25. #   xball-x.xbm sgi.xbm demo1 demo2 demo3 demo4 demo5 demo6 demo7
  26. #   demo8 demo9 demo10 demo11 demo12 demo13 demo14
  27. # Wrapped by daven@osiris on Tue May  4 16:35:09 1993
  28. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  29. if test -f 'XBall.ad' -a "${1}" != "-c" ; then 
  30.   echo shar: Will not clobber existing file \"'XBall.ad'\"
  31. else
  32. echo shar: Extracting \"'XBall.ad'\" \(16917 characters\)
  33. sed "s/^X//" >'XBall.ad' <<'END_OF_FILE'
  34. X!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  35. X! XBall.ad - xball resource file
  36. X!
  37. X! Copyright 1991, David Nedde
  38. X!
  39. X! Permission to use, copy, modify, and distribute this
  40. X! software and its documentation for any purpose and without fee
  41. X! is granted provided that the above copyright notice appears in all copies.
  42. X! It is provided 'as is' without express or implied warranty.
  43. X!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  44. X
  45. XXBall.delay:            100
  46. XXBall.gravity:            8
  47. XXBall.elasticity:        90
  48. XXBall.itemWidth:         10
  49. XXBall.itemHeight:        10
  50. XXBall.collide:        False
  51. XXBall.perpetual:      False
  52. XXBall.haltSim:        False
  53. X
  54. X
  55. XXBall.title: XBall - Written by David Nedde
  56. X
  57. XXBall*form.horizontalSpacing:   2
  58. XXBall*form.verticalSpacing:     2
  59. XXBall*form.width:               400
  60. XXBall*form.height:              400
  61. XXBall.allowShellResize:     True
  62. XXBall*resizable:                True
  63. X
  64. X
  65. X!!!!!!!!!!
  66. X! Menu Bar
  67. X!!!!!!!!!!
  68. X
  69. XXBall*menuBar.rightAttachment:  ATTACH_FORM
  70. XXBall*menuBar.leftAttachment:   ATTACH_FORM
  71. X! Athena resources
  72. XXBall*menuBar*MenuButton.borderWidth: 0
  73. XXBall*menuBar.borderWidth:            1
  74. XXBall.formAW*translations: #override        \n\
  75. X        <Key>q: menu_action( quit)        \n\
  76. X        Ctrl<Key>q: menu_action( quit)    \n\
  77. X        Ctrl<Key>c: menu_action( quit)    \n\
  78. X        <Key>c: menu_action( clear)       \n\
  79. X        <Key>r: menu_action( randomize)   \n\
  80. X        <Key>s: menu_action( stepSim)     \n\
  81. X        <Key>p: menu_action( perpetual)   \n\
  82. X        <Key>b: menu_action( ballCollide) \n\
  83. X        <Key>h: menu_action( haltSim)     \n\
  84. X        <Key>l: menu_action( loadBitmap)  \n\
  85. X        <Key>d: menu_action( runDemo)     \n\
  86. X        <Key>a: menu_action( about)       \n\
  87. X
  88. X
  89. X! File Submenu
  90. XXBall*file.labelString:         File
  91. XXBall*file.label:               File
  92. XXBall*file.mnemonic:            F
  93. XXBall*about.labelString:        About...
  94. XXBall*about.label:              About...        A
  95. XXBall*about.mnemonic:           A
  96. XXBall*about.accelerator:        <Key>A
  97. XXBall*about.acceleratorText:    A
  98. XXBall*runDemo.labelString:      Run Demo...
  99. XXBall*runDemo.label:            Run Demo...     D
  100. XXBall*runDemo.mnemonic:             D
  101. XXBall*runDemo.accelerator:      <Key>D
  102. XXBall*runDemo.acceleratorText:  D
  103. XXBall*loadBitmap.labelString:   Load Bitmap...
  104. XXBall*loadBitmap.label:         Load Bitmap...  L
  105. XXBall*loadBitmap.mnemonic:      L
  106. XXBall*loadBitmap.accelerator:   <Key>L
  107. XXBall*loadBitmap.acceleratorText: L
  108. XXBall*quit.labelString:         Quit
  109. XXBall*quit.label:               Quit            Q
  110. XXBall*quit.mnemonic:            Q
  111. XXBall*quit.accelerator:         <Key>Q
  112. XXBall*quit.acceleratorText:     Q
  113. X
  114. X! Action Submenu
  115. XXBall*actions.labelString:      Actions
  116. XXBall*actions.label:            Actions
  117. XXBall*actions.mnemonic:         A
  118. XXBall*clear.labelString:        Clear
  119. XXBall*clear.label:              Clear            C
  120. XXBall*clear.mnemonic:           C
  121. XXBall*clear.acceleratorText:    C
  122. XXBall*clear.accelerator:        <Key>C
  123. XXBall*randomize.labelString:    Randomize
  124. XXBall*randomize.label:          Randomize        R
  125. XXBall*randomize.mnemonic:       R
  126. XXBall*randomize.acceleratorText:R
  127. XXBall*randomize.accelerator:    <Key>R
  128. XXBall*stopDemo.labelString:     Stop Demo
  129. XXBall*stopDemo.label:           Stop Demo
  130. XXBall*stepSim.labelString:      Step Simulation
  131. XXBall*stepSim.label:            Step Simulation  S
  132. XXBall*stepSim.mnemonic:         S
  133. XXBall*stepSim.acceleratorText:  S
  134. XXBall*stepSim.accelerator:      <Key>S
  135. X
  136. X! Options Submenu
  137. XXBall*options.labelString:              Options
  138. XXBall*options.label:                    Options
  139. XXBall*options.mnemonic:                 O
  140. XXBall*perpetual.labelString:            Perpetual
  141. XXBall*perpetual.label:                  Perpetual        P
  142. XXBall*perpetual.mnemonic:               P
  143. XXBall*perpetual.acceleratorText:        P
  144. XXBall*perpetual.accelerator:            <Key>P
  145. XXBall*ballCollide.labelString:          Ball Collide
  146. XXBall*ballCollide.label:                Ball Collide     B
  147. XXBall*ballCollide.mnemonic:             B
  148. XXBall*ballCollide.acceleratorText:      B
  149. XXBall*ballCollide.accelerator:          <Key>B
  150. XXBall*haltSim.labelString:              Halt Simulation
  151. XXBall*haltSim.label:                    Halt Simulation  H
  152. XXBall*haltSim.mnemonic:                 H
  153. XXBall*haltSim.acceleratorText:          H
  154. XXBall*haltSim.accelerator:              <Key>H
  155. X
  156. X! Help Submenu
  157. XXBall*help.labelString:         Help
  158. XXBall*help.label:               Help
  159. XXBall*help.mnemonic:            H
  160. XXBall*onAuthor.labelString:     On Author...
  161. XXBall*onAuthor.label:           On Author...
  162. XXBall*onMenus.labelString:      On Menus...
  163. XXBall*onMenus.label:            On Menus...
  164. XXBall*onScroll.labelString:     On Scrollbars...
  165. XXBall*onScroll.label:           On Scrollbars...
  166. XXBall*onButtons.labelString:    On Buttons...
  167. XXBall*onButtons.label:          On Buttons...
  168. XXBall*onDemos.labelString:      On Demos...
  169. XXBall*onDemos.label:            On Demos...
  170. XXBall*onParams.labelString:     On Parameters...
  171. XXBall*onParams.label:           On Parameters...
  172. X
  173. X
  174. XXBall*elasticityBar.topAttachment:      ATTACH_WIDGET
  175. XXBall*elasticityBar.topWidget:          menuBar
  176. XXBall*elasticityBar.leftAttachment:     ATTACH_FORM
  177. X
  178. XXBall*elasticityBar.label.labelString:          Elasticity
  179. XXBall*elasticityBar.label.leftAttachment:       ATTACH_FORM
  180. XXBall*elasticityBar.label.leftOffset:           10
  181. XXBall*elasticityBar.label.topAttachment:        ATTACH_FORM
  182. XXBall*elasticityBar.label.bottomAttachment:     ATTACH_FORM
  183. X! Athena resources
  184. XXBall*elasticityBar.fromVert:                   menuBar
  185. XXBall*elasticityBar.label.label:                Elasticity
  186. XXBall*elasticityBar.label.borderWidth:          0
  187. X
  188. XXBall*elasticityBar.bar.width:          100
  189. XXBall*elasticityBar.bar.orientation:    HORIZONTAL
  190. XXBall*elasticityBar.bar.maximum:        100
  191. XXBall*elasticityBar.bar.minimum:        0
  192. XXBall*elasticityBar.bar.showValue:      True
  193. X! Athena resources
  194. XXBall*elasticityBar.bar.shown:          0.1
  195. XXBall*elasticityBar.borderWidth:        0
  196. XXBall*elasticityBar.label.borderWidth:  0
  197. XXBall*elasticityBar.feedback.borderWidth: 0
  198. XXBall*elasticityBar.defaultDistance:    0
  199. X
  200. X
  201. X
  202. XXBall*gravityBar.label.labelString:      Gravity
  203. XXBall*gravityBar.label.leftAttachment:   ATTACH_FORM
  204. XXBall*gravityBar.label.topAttachment:    ATTACH_FORM
  205. XXBall*gravityBar.label.bottomAttachment: ATTACH_FORM
  206. X! Athena resources
  207. XXBall*gravityBar.label.label:           Gravity
  208. XXBall*gravityBar.label.borderWidth:     0
  209. X
  210. XXBall*gravityBar.leftAttachment:        ATTACH_WIDGET
  211. XXBall*gravityBar.leftWidget:            elasticityBar
  212. XXBall*gravityBar.leftOffset:            20
  213. XXBall*gravityBar.topAttachment:         ATTACH_WIDGET
  214. XXBall*gravityBar.topWidget:             menuBar
  215. XXBall*gravityBar.bar.width:             100
  216. XXBall*gravityBar.bar.orientation:       HORIZONTAL
  217. XXBall*gravityBar.bar.maximum:           100
  218. XXBall*gravityBar.bar.minimum:           0
  219. XXBall*gravityBar.bar.showValue:         True
  220. X! Athena resources
  221. XXBall*gravityBar.fromVert:              menuBar
  222. XXBall*gravityBar.horizDistance:         20
  223. XXBall*gravityBar.fromHoriz:             elasticityBar
  224. XXBall*gravityBar.bar.shown:             0.1
  225. XXBall*gravityBar.borderWidth:           0
  226. XXBall*gravityBar.label.borderWidth:     0
  227. XXBall*gravityBar.feedback.borderWidth:  0
  228. XXBall*gravityBar.defaultDistance:       0
  229. X
  230. XXBall*canvas.resizable:                 True
  231. XXBall*canvas.borderWidth:               1
  232. XXBall*canvas.topAttachment:             ATTACH_WIDGET
  233. XXBall*canvas.topWidget:                 gravityBar
  234. XXBall*canvas.bottomAttachment:          ATTACH_FORM
  235. XXBall*canvas.rightAttachment:           ATTACH_FORM
  236. XXBall*canvas.leftAttachment:            ATTACH_FORM
  237. X! Athena resources
  238. XXBall*canvas.fromVert:                  gravityBar
  239. XXBall*canvas.width:                     400
  240. XXBall*canvas.height:                    330
  241. X
  242. X
  243. XXBall*help_dialog_popup.title:                      XBall Information
  244. XXBall*help_dialog_action_area.leftAttachment:       ATTACH_FORM
  245. XXBall*help_dialog_action_area.rightAttachment:      ATTACH_FORM
  246. XXBall*help_dialog_action_area.bottomAttachment:     ATTACH_FORM
  247. XXBall*help_dialog_action_area.close.labelString:    Close
  248. XXBall*help_dialog.close.label:                      Close
  249. XXBall*help_dialog.separator.rightAttachment:        ATTACH_FORM
  250. XXBall*help_dialog.separator.leftAttachment:         ATTACH_FORM
  251. XXBall*help_dialog.separator.topOffset:              5
  252. XXBall*help_dialog.separator.bottomAttachment:       ATTACH_WIDGET
  253. XXBall*help_dialog.separator.bottomWidget:           help_dialog_action_area
  254. XXBall*help_dialog*help_text.rows:                   12
  255. XXBall*help_dialog*help_text.columns:                60
  256. X! Athena Resources
  257. XXBall*help_dialog*help_textAW.displayCaret:         False
  258. XXBall*help_dialog*help_textAW.height:               150
  259. XXBall*help_dialog*help_textAW.width:                470
  260. XXBall*help_dialog*help_textAW.scrollHorizontal:     WhenNeeded
  261. XXBall*help_dialog*help_textAW.scrollVertical:       WhenNeeded
  262. X
  263. XXBall*help_dialog*close.accelerators: \
  264. X        <KeyPress>Escape: set() notify() unset() \n\
  265. X        <KeyPress>Return: set() notify() unset() \n\
  266. X
  267. X
  268. X
  269. X!!!!!!!!!!!
  270. X! Help text
  271. X!!!!!!!!!!!
  272. X!
  273. X! Note that since fallback resources cannot handle \n in the text,
  274. X! a ~ is used to indicate a newline.
  275. X!
  276. X!!!!!!!!!!
  277. X
  278. XXBall.pointerHelp: \
  279. X                   MOUSE BUTTON USAGE ~~~\
  280. XButton 1: o Hold down to create a ball. ~\
  281. X          o Throw the ball by moving the mouse and ~\
  282. X            letting go of button 1. ~\
  283. X          o The ball will be going the speed of the ~\
  284. X            pointer at release time. ~\
  285. XButton 2: o Hold down and move the mouse to create ~\
  286. X            random velocity balls. ~\
  287. XButton 3: o Hold down and move the mouse to create ~\
  288. X            zero velocity balls. \
  289. X
  290. XXBall.menuHelp: \
  291. X                   PULLDOWN MENU USAGE~~~\
  292. XFile~\
  293. X  About...        A description of the program and author~\
  294. X  Run Demo...     Allows you to execute XBall demo files~\
  295. X                  See 'Help On Demos' for demo file format~\
  296. X  Load Bitmap...  Load an X bitmap as a set of balls~\
  297. X                  Analogous Demo command: ~\
  298. X                    bitmap filename posx,posy~\
  299. X  Quit            Exits the program~~\
  300. XActions~\
  301. X  Clear           Clear the screen of balls~\
  302. X                  Analogous Demo command: clear~\
  303. X  Randomize       Give each ball a random velocity~\
  304. X                  Analogous Demo command: ~\
  305. X                    randomize minx,maxx,miny,maxy~\
  306. X  Stop Demo       Stops the execution of a demo in progress~\
  307. X                  Enabled by the Run Demo... menu option~\
  308. X                  Analogous Demo command: stop~\
  309. X  Step Simulation Perform one step of the Halted simulation~\
  310. X                  Enabled by the Halt Simulation menu option~~\
  311. XOptions~\
  312. X  Perpetual       If toggled on, balls will live forever~\
  313. X                  Analogous Demo command: perpetual on|off~\
  314. X                  Command line option: -perpetual True|False~\
  315. X  Ball Collide    If on, balls will collide with one another~\
  316. X                  Analogous Demo command: collide on|off~\
  317. X                  Command line option: -collide True|False~~\
  318. X  Help Simulation Stop the simulation.  You can then step the~\
  319. X                  simulation using Step Simulation menu option~~\
  320. XHelp~\
  321. X  On Menus      Help using the menu system~\
  322. X  On Scrollbars Help on the Elasticity and Gravity bars~\
  323. X  On Buttons    Help on using the mouse buttons to create balls~\
  324. X  On Demos      Help on the Demo language and how to run demos~\
  325. X  On Parameters Help with command-line arguments to xball \
  326. X
  327. X
  328. XXBall.scrollbarHelp: \
  329. X                      SCROLLBAR USAGE~~~\
  330. XElasticity~\
  331. X  o This scrollbar controls the balls' elasticity, or how~\
  332. X    much energy is lost each time the balls hit the ground.~\
  333. X  o Scrollbar to left:  low elasticity (eggs)~\
  334. X  o Scrollbar to right: high elasticity (superballs)~\
  335. X  o Demo command: elasticity %d~\
  336. X  o Command line options: -elasticity %d~~~\
  337. XGravity~\
  338. X  o This scrollbar controls the gravity, or how~\
  339. X    much vertical velocity is added (subtracted)~\
  340. X    from the balls for each iteration.~\
  341. X  o Scrollbar to the left:  Zero gravity (outer space)~\
  342. X  o Scrollbar to the right: Large gravity (Jupiter)~\
  343. X  o Demo command: gravity %d~\
  344. X  o Command line options: -gravity %d \
  345. X
  346. X
  347. XXBall.demoHelp: \
  348. X                     DEMO FILE COMMANDS~~\
  349. X  %s1, %s2... - Replace with a string~\
  350. X  %d1, %d2... - Replace with an integer~~\
  351. X  create %d1,%d2,%d3,%d4: Create a ball with x,y position~\
  352. X                          %d1,%d2 and an x & y velocity~\
  353. X                          of %d2,%d4~\
  354. X  randomize %d1,%d2,%d3,%d4: randomize velocities of all ~\
  355. X                balls on screen with:~\
  356. X                a max negative x velocity of %d1,~\
  357. X                a max positive x velocity of %d2,~\
  358. X                a max negative y velocity of %d3,~\
  359. X                a max positive y velocity of %d4,~\
  360. X  load_bitmap %s %d1,%d2: load a bitmap file (where %s is~\
  361. X                         the file path) to an x,y position~\
  362. X                         of %d1,%d2 on the screen~\
  363. X  set_velocity %s %d1,%d2: set ball velocities (%s is~\
  364. X                         relative or absolute) to the x ~\
  365. X                         and y velocities %d1,%d2~\
  366. X  gravity %d: set gravity to %d~\
  367. X  elasticity %d: set elasticity to %d~\
  368. X  backwards %d: Run simulation backwards %d iterations~\
  369. X  visible %s: Make ball display 'on' or 'off'~\
  370. X  iterate %d: simulate for %d iterations~\
  371. X  sleep %d: sleep for %d seconds~\
  372. X  perpetual %s: toggle perpetual (%s is 'on' or 'off')~\
  373. X  collide %s: toggle ball collision (%s is 'on' or 'off')~\
  374. X  window_width %d: Change window width to %d~\
  375. X  window_height %d: Change window height to %d~\
  376. X  backwards %d: Iterate backwards %d steps~\
  377. X  clear: delete all balls in window~\
  378. X  create_random %d1,%d2: create %d1 random balls with a ~\
  379. X                         max velocity of %d2~\
  380. X  exit or quit: quit the xball program if demo is not~\
  381. X                interactive~\
  382. X  stop: stop demo but leave program alive \
  383. X
  384. XXBall.startupHelp: \
  385. X                PROGRAM STARTUP PARAMETERS~~~\
  386. X Run xball -help for a list of command-line startup~\
  387. X parameters
  388. X
  389. XXBall.aboutString: \
  390. XXBall Version 3.0~~\
  391. X  April 1993~~\
  392. XThe Premire Ball Bouncing Software~~\
  393. X  Allows you to throw 3-D balls around in a 2-D space.~~\
  394. XAuthor (Send bugs, comments, and interesting demos to):~\
  395. X  David Nedde~\
  396. X  daven@ivy.wpi.edu~\
  397. X  Computer Science Department~\
  398. X  Worcester Polytechnic Institute~\
  399. X  Worcester, MA 01609~~\
  400. XCopyright 1990, 1993 David Nedde~\
  401. XPermission to use, copy, modify, and distribute this~\
  402. Xsoftware and its documentation for any purpose and~\
  403. Xwithout fee is granted provided that the above~\
  404. Xcopyright notice appears in all copies.  It is~\
  405. Xprovided \"as is\" without express or implied warranty. \
  406. X
  407. X
  408. X!!!!!!!!!!!!!!!!!
  409. X! Menu Definition
  410. X!!!!!!!!!!!!!!!!!
  411. X!
  412. X! Format:
  413. X!   pulldownName~
  414. X!     widgetName,widgetClass,menuCallbackName,optionalParams...~
  415. X!
  416. X! The widgetName is referenced above to set the menu's label.
  417. X!
  418. X! Note that the pulldownName of 'help' is automatically used as the help 
  419. X! pulldown.
  420. X!
  421. X! Avaliable WidgetClasses are:
  422. X!   PushButton   - push it and cause the action
  423. X!   ToggleButton - Push it and toggle the state
  424. X!   Separator    - A line in the menu
  425. X!
  426. X! Avaliable menuCallbackNames avaliable (none take optional parameters):
  427. X!   runDemo       - Lets user select a demo and run the demo
  428. X!   loadBitmap    - Lets user load a bitmap file
  429. X!   quit          - quits xball program
  430. X!   clear         - Clear all balls from the screen
  431. X!   randomize     - Randomize all balls from the screen
  432. X!   stopDemo      - Stop a demo in progress
  433. X!   stepSim       - Steps the simulation once (if simulation halted)
  434. X!   perpetual     - Toggles perpetual balls state
  435. X!   ballCollide   - Toggles colliding ball state
  436. X!   haltSim       - Toggles halting the simulation
  437. X!   about         - Displays help about the program
  438. X!   onMenus       - Displays help on the menus
  439. X!   onScroll      - Displays help on setting elasticity and gravity
  440. X!   onButtons     - Displays help on using the mouse buttons to create balls
  441. X!   onDemos       - Displays help on writing a demo
  442. X!   onParams      - Displays help on command-line arguments
  443. X!
  444. X!!!!!!!!!!!!!!!!!
  445. X
  446. XXBall.menuDef: \
  447. X\
  448. X    file~\
  449. X    about,PushButton,about~\
  450. X    runDemo,PushButton,runDemo~\
  451. X    loadBitmap,PushButton,loadBitmap~\
  452. X    separator,Separator~\
  453. X    quit,PushButton,quit~\
  454. X    actions~\
  455. X    clear,PushButton,clear~\
  456. X    randomize,PushButton,randomize~\
  457. X    stopDemo,PushButton,stopDemo~\
  458. X    stepSim,PushButton,stepSim~\
  459. X    options~\
  460. X    perpetual,ToggleButton,perpetual~\
  461. X    ballCollide,ToggleButton,ballCollide~\
  462. X    haltSim,ToggleButton,haltSim~\
  463. X    help~\
  464. X    about,PushButton,about~\
  465. X    onMenus,PushButton,onMenus~\
  466. X    onScroll,PushButton,onScroll~\
  467. X    onButtons,PushButton,onButtons~\
  468. X    onDemos,PushButton,onDemos~\
  469. X    onParams,PushButton,onParams~\
  470. X
  471. END_OF_FILE
  472. if test 16917 -ne `wc -c <'XBall.ad'`; then
  473.     echo shar: \"'XBall.ad'\" unpacked with wrong size!
  474. fi
  475. # end of 'XBall.ad'
  476. fi
  477. if test -f 'README' -a "${1}" != "-c" ; then 
  478.   echo shar: Will not clobber existing file \"'README'\"
  479. else
  480. echo shar: Extracting \"'README'\" \(2506 characters\)
  481. sed "s/^X//" >'README' <<'END_OF_FILE'
  482. XXBall Version 3.0 - 5/93
  483. X
  484. X  This program simulates bouncing balls in a window.  You create the
  485. Xballs in a variety of ways, and can set the gravity, elasticity,
  486. Xwhether balls collide or not, etc.
  487. X
  488. X  Since the last version, I have added Motif support, 3-d shaded
  489. Xballs, and a demo running facility.
  490. X
  491. X  Software features include user-configurable menus, and a DrawingArea
  492. Xwidget for use with other Athena widgets.
  493. X
  494. X  XBall compiles using either Motif or Athena Widgets (See the
  495. XImakefile to select the one you want).  It been compiled and run on a
  496. XSun Sparc, IBM RS6000, SGI Iris and DecStation 5000, using their
  497. Xstandard C compiler.  The Athena version works using X11R4 or X11R5.
  498. X
  499. X  To compile, run xmkmf (and Make Makefiles if Athena widgets used).
  500. XThen make.  A standard Make.motif and Make.athena have been provided
  501. Xif you do not have xmkmf.  If you have undefined symbols, such as
  502. Xusleep or regex, see the Imakefile for symbols to define, xmkmf,
  503. Xremove the *.o files, and recompile.
  504. X
  505. X  All resources are contained within the program as fallback
  506. Xresources, so, it is not strictly neccessary to install the
  507. Xapp-defaults file, except that when using Athena widgets, since the
  508. Xkeyboard accelerators will not work if the app-defauls file is not
  509. Xinstalled.
  510. X
  511. X  To run the included demos, type 'run_demos'.
  512. X
  513. X  Here are the recommended values for the delay to slow down balls.
  514. XThis delay can be set in the Imakefile, or when run as xball -delay 1000.
  515. X  Sun Sparc         100
  516. X  IBM RS6000      10000
  517. X  SGI Iris          100  (Uncomment MYLDLIBS in Imakefile if using Motif)
  518. X  DecStation 5000   180  (Comment out HAVE_USLEEP in Imakefile)
  519. X
  520. X
  521. X  Please send bugs, comments, suggestions, and interesting demos to:
  522. Xdaven@ivy.wpi.edu.
  523. X
  524. X
  525. XCopying Policy:
  526. X   Copyright 1993 David Nedde
  527. X   Permission to use, copy, modify, and distribute this software
  528. X   and its documentation for any purpose and without fee is granted
  529. X   provided that the above copyright notice appears in all copies.
  530. X   It is provided "as is" without express or implied warranty.
  531. X
  532. XTwo files have additional copying policies:
  533. X  act_area.c:
  534. X    Written by Dan Heller.  Copyright 1991, O'Reilly && Associates.
  535. X    This program is freely distributable without licensing fees and
  536. X    is provided without guarantee or warrantee expressed or implied.
  537. X    This program is -not- in the public domain.
  538. X  filemenu.c
  539. X    Copyright 1989 The University of Texas at Austin
  540. X    Copyright 1990 Microelectronics and Computer Technology Corporation
  541. X    Author:      Po Cheung
  542. END_OF_FILE
  543. if test 2506 -ne `wc -c <'README'`; then
  544.     echo shar: \"'README'\" unpacked with wrong size!
  545. fi
  546. # end of 'README'
  547. fi
  548. if test -f 'good_bitmaps' -a "${1}" != "-c" ; then 
  549.   echo shar: Will not clobber existing file \"'good_bitmaps'\"
  550. else
  551. echo shar: Extracting \"'good_bitmaps'\" \(257 characters\)
  552. sed "s/^X//" >'good_bitmaps' <<'END_OF_FILE'
  553. XA list of bitmaps that are interesting when loaded as balls.  These
  554. Xfiles should be in /usr/include/X11/bitmaps:
  555. X
  556. X  2x2
  557. X  boxes
  558. X  cntr_ptr
  559. X  cross_weave
  560. X  dot
  561. X  keyboard16
  562. X  left_ptr
  563. X  right_ptr
  564. X  scales
  565. X  sipb
  566. X  star
  567. X  target
  568. X  xlogo11
  569. X  xlogo16
  570. X  xlogo32
  571. END_OF_FILE
  572. if test 257 -ne `wc -c <'good_bitmaps'`; then
  573.     echo shar: \"'good_bitmaps'\" unpacked with wrong size!
  574. fi
  575. # end of 'good_bitmaps'
  576. fi
  577. if test -f 'on.xbm' -a "${1}" != "-c" ; then 
  578.   echo shar: Will not clobber existing file \"'on.xbm'\"
  579. else
  580. echo shar: Extracting \"'on.xbm'\" \(194 characters\)
  581. sed "s/^X//" >'on.xbm' <<'END_OF_FILE'
  582. X#define on_width 10
  583. X#define on_height 10
  584. Xstatic char on_bits[] = {
  585. X   0x00, 0x03, 0x80, 0x01, 0x80, 0x00, 0xc0, 0x00, 0x40, 0x00, 0x61, 0x00,
  586. X   0x23, 0x00, 0x36, 0x00, 0x1c, 0x00, 0x18, 0x00};
  587. END_OF_FILE
  588. if test 194 -ne `wc -c <'on.xbm'`; then
  589.     echo shar: \"'on.xbm'\" unpacked with wrong size!
  590. fi
  591. # end of 'on.xbm'
  592. fi
  593. if test -f 'off.xbm' -a "${1}" != "-c" ; then 
  594.   echo shar: Will not clobber existing file \"'off.xbm'\"
  595. else
  596. echo shar: Extracting \"'off.xbm'\" \(197 characters\)
  597. sed "s/^X//" >'off.xbm' <<'END_OF_FILE'
  598. X#define off_width 10
  599. X#define off_height 10
  600. Xstatic char off_bits[] = {
  601. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  602. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
  603. END_OF_FILE
  604. if test 197 -ne `wc -c <'off.xbm'`; then
  605.     echo shar: \"'off.xbm'\" unpacked with wrong size!
  606. fi
  607. # end of 'off.xbm'
  608. fi
  609. if test -f 'man.xbm' -a "${1}" != "-c" ; then 
  610.   echo shar: Will not clobber existing file \"'man.xbm'\"
  611. else
  612. echo shar: Extracting \"'man.xbm'\" \(114 characters\)
  613. sed "s/^X//" >'man.xbm' <<'END_OF_FILE'
  614. X#define man_width 5
  615. X#define man_height 7
  616. Xstatic char man_bits[] = {
  617. X   0x11, 0x11, 0x0a, 0x04, 0x0e, 0x15, 0x15};
  618. END_OF_FILE
  619. if test 114 -ne `wc -c <'man.xbm'`; then
  620.     echo shar: \"'man.xbm'\" unpacked with wrong size!
  621. fi
  622. # end of 'man.xbm'
  623. fi
  624. if test -f 'stipple.xbm' -a "${1}" != "-c" ; then 
  625.   echo shar: Will not clobber existing file \"'stipple.xbm'\"
  626. else
  627. echo shar: Extracting \"'stipple.xbm'\" \(96 characters\)
  628. sed "s/^X//" >'stipple.xbm' <<'END_OF_FILE'
  629. X#define stipple_width 2
  630. X#define stipple_height 2
  631. Xstatic char stipple_bits[] = {
  632. X   0x01, 0x02};
  633. END_OF_FILE
  634. if test 96 -ne `wc -c <'stipple.xbm'`; then
  635.     echo shar: \"'stipple.xbm'\" unpacked with wrong size!
  636. fi
  637. # end of 'stipple.xbm'
  638. fi
  639. if test -f 'xball.xbm' -a "${1}" != "-c" ; then 
  640.   echo shar: Will not clobber existing file \"'xball.xbm'\"
  641. else
  642. echo shar: Extracting \"'xball.xbm'\" \(479 characters\)
  643. sed "s/^X//" >'xball.xbm' <<'END_OF_FILE'
  644. X#define xball_width 32
  645. X#define xball_height 16
  646. Xstatic char xball_bits[] = {
  647. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  648. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x1e, 0xc0, 0x18,
  649. X   0x88, 0x24, 0x80, 0x10, 0x50, 0x24, 0x87, 0x10, 0x20, 0x1c, 0x88, 0x10,
  650. X   0x50, 0x24, 0x8f, 0x10, 0x88, 0xa4, 0x88, 0x10, 0x88, 0x1e, 0xcf, 0x39,
  651. X   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
  652. X   0x00, 0x00, 0x00, 0x00};
  653. END_OF_FILE
  654. if test 479 -ne `wc -c <'xball.xbm'`; then
  655.     echo shar: \"'xball.xbm'\" unpacked with wrong size!
  656. fi
  657. # end of 'xball.xbm'
  658. fi
  659. if test -f 'xball-a.xbm' -a "${1}" != "-c" ; then 
  660.   echo shar: Will not clobber existing file \"'xball-a.xbm'\"
  661. else
  662. echo shar: Extracting \"'xball-a.xbm'\" \(126 characters\)
  663. sed "s/^X//" >'xball-a.xbm' <<'END_OF_FILE'
  664. X#define xball_a_width 5
  665. X#define xball_a_height 7
  666. Xstatic char xball_a_bits[] = {
  667. X   0x00, 0x00, 0x0e, 0x10, 0x1e, 0x11, 0x1e};
  668. END_OF_FILE
  669. if test 126 -ne `wc -c <'xball-a.xbm'`; then
  670.     echo shar: \"'xball-a.xbm'\" unpacked with wrong size!
  671. fi
  672. # end of 'xball-a.xbm'
  673. fi
  674. if test -f 'xball-b.xbm' -a "${1}" != "-c" ; then 
  675.   echo shar: Will not clobber existing file \"'xball-b.xbm'\"
  676. else
  677. echo shar: Extracting \"'xball-b.xbm'\" \(126 characters\)
  678. sed "s/^X//" >'xball-b.xbm' <<'END_OF_FILE'
  679. X#define xball_b_width 5
  680. X#define xball_b_height 7
  681. Xstatic char xball_b_bits[] = {
  682. X   0x0f, 0x12, 0x12, 0x0e, 0x12, 0x12, 0x0f};
  683. END_OF_FILE
  684. if test 126 -ne `wc -c <'xball-b.xbm'`; then
  685.     echo shar: \"'xball-b.xbm'\" unpacked with wrong size!
  686. fi
  687. # end of 'xball-b.xbm'
  688. fi
  689. if test -f 'xball-l.xbm' -a "${1}" != "-c" ; then 
  690.   echo shar: Will not clobber existing file \"'xball-l.xbm'\"
  691. else
  692. echo shar: Extracting \"'xball-l.xbm'\" \(126 characters\)
  693. sed "s/^X//" >'xball-l.xbm' <<'END_OF_FILE'
  694. X#define xball_l_width 4
  695. X#define xball_l_height 7
  696. Xstatic char xball_l_bits[] = {
  697. X   0x06, 0x04, 0x04, 0x04, 0x04, 0x04, 0x0e};
  698. END_OF_FILE
  699. if test 126 -ne `wc -c <'xball-l.xbm'`; then
  700.     echo shar: \"'xball-l.xbm'\" unpacked with wrong size!
  701. fi
  702. # end of 'xball-l.xbm'
  703. fi
  704. if test -f 'xball-x.xbm' -a "${1}" != "-c" ; then 
  705.   echo shar: Will not clobber existing file \"'xball-x.xbm'\"
  706. else
  707. echo shar: Extracting \"'xball-x.xbm'\" \(126 characters\)
  708. sed "s/^X//" >'xball-x.xbm' <<'END_OF_FILE'
  709. X#define xball_b_width 5
  710. X#define xball_b_height 7
  711. Xstatic char xball_b_bits[] = {
  712. X   0x11, 0x11, 0x0a, 0x04, 0x0a, 0x11, 0x11};
  713. END_OF_FILE
  714. if test 126 -ne `wc -c <'xball-x.xbm'`; then
  715.     echo shar: \"'xball-x.xbm'\" unpacked with wrong size!
  716. fi
  717. # end of 'xball-x.xbm'
  718. fi
  719. if test -f 'sgi.xbm' -a "${1}" != "-c" ; then 
  720.   echo shar: Will not clobber existing file \"'sgi.xbm'\"
  721. else
  722. echo shar: Extracting \"'sgi.xbm'\" \(446 characters\)
  723. sed "s/^X//" >'sgi.xbm' <<'END_OF_FILE'
  724. X#define sgi_width 20
  725. X#define sgi_height 20
  726. Xstatic char sgi_bits[] = {
  727. X   0x80, 0x08, 0x00, 0x60, 0x35, 0x00, 0x18, 0xc5, 0x00, 0x06, 0x05, 0x03,
  728. X   0x04, 0x05, 0x01, 0x18, 0xc5, 0x00, 0x60, 0x30, 0x00, 0x84, 0x0d, 0x01,
  729. X   0x1a, 0xc2, 0x02, 0x62, 0x30, 0x02, 0x82, 0x0d, 0x02, 0x32, 0x65, 0x02,
  730. X   0x0c, 0x85, 0x01, 0x60, 0x35, 0x00, 0x18, 0xc5, 0x00, 0x04, 0x05, 0x01,
  731. X   0x04, 0x05, 0x01, 0x18, 0xc5, 0x00, 0x60, 0x35, 0x00, 0x80, 0x08, 0x00};
  732. END_OF_FILE
  733. if test 446 -ne `wc -c <'sgi.xbm'`; then
  734.     echo shar: \"'sgi.xbm'\" unpacked with wrong size!
  735. fi
  736. # end of 'sgi.xbm'
  737. fi
  738. if test -f 'demo1' -a "${1}" != "-c" ; then 
  739.   echo shar: Will not clobber existing file \"'demo1'\"
  740. else
  741. echo shar: Extracting \"'demo1'\" \(358 characters\)
  742. sed "s/^X//" >'demo1' <<'END_OF_FILE'
  743. X# Load a bitmap, randomize, and let fall through once.
  744. X
  745. Xcollide    off
  746. Xperpetual  off
  747. X
  748. Xload_bitmap xball.xbm 10,10
  749. X#load_bitmap /usr/include/X11/bitmaps/left_ptr 0,0
  750. Xgravity      0
  751. Xiterate 50
  752. Xsleep 1
  753. X
  754. Xgravity     10
  755. Xrandomize   -10,10,-10,10
  756. Xperpetual   on
  757. X
  758. Xiterate     30
  759. X
  760. Xelasticity  80
  761. Xgravity     30
  762. X
  763. Xiterate    200
  764. X
  765. Xperpetual  off
  766. X
  767. Xiterate    200
  768. X
  769. Xexit
  770. END_OF_FILE
  771. if test 358 -ne `wc -c <'demo1'`; then
  772.     echo shar: \"'demo1'\" unpacked with wrong size!
  773. fi
  774. # end of 'demo1'
  775. fi
  776. if test -f 'demo2' -a "${1}" != "-c" ; then 
  777.   echo shar: Will not clobber existing file \"'demo2'\"
  778. else
  779. echo shar: Extracting \"'demo2'\" \(369 characters\)
  780. sed "s/^X//" >'demo2' <<'END_OF_FILE'
  781. X# Put up xball bitmap with random balls not colliding in zero gravity
  782. X# Turn on collide so bitmap image gets destroyed
  783. X# turn on gravity
  784. X
  785. Xcollide off
  786. Xelasticity 100
  787. Xload_bitmap xball.xbm 0,0
  788. Xgravity 0
  789. Xcreate_random 30,15
  790. Xiterate 160
  791. X
  792. Xelasticity 50
  793. Xcollide on
  794. Xiterate 50
  795. X
  796. Xgravity 40
  797. Xiterate 10
  798. X
  799. Xgravity 50
  800. Xiterate 10
  801. X
  802. Xgravity 60
  803. Xiterate 10
  804. X
  805. Xgravity 70
  806. Xiterate 100
  807. X
  808. Xexit
  809. END_OF_FILE
  810. if test 369 -ne `wc -c <'demo2'`; then
  811.     echo shar: \"'demo2'\" unpacked with wrong size!
  812. fi
  813. # end of 'demo2'
  814. fi
  815. if test -f 'demo3' -a "${1}" != "-c" ; then 
  816.   echo shar: Will not clobber existing file \"'demo3'\"
  817. else
  818. echo shar: Extracting \"'demo3'\" \(268 characters\)
  819. sed "s/^X//" >'demo3' <<'END_OF_FILE'
  820. X# Load bitmap with all balls having the same velocity
  821. X# After they bounce down, have them fall through
  822. X# once
  823. X
  824. Xcollide off
  825. Xload_bitmap xball.xbm 0,0
  826. Xset_velocity abs 3,-10
  827. Xgravity 10
  828. Xelasticity 85
  829. Xperpetual on
  830. X
  831. Xiterate 700
  832. X
  833. Xperpetual off
  834. Xgravity 20
  835. X
  836. Xiterate 200 
  837. Xexit
  838. END_OF_FILE
  839. if test 268 -ne `wc -c <'demo3'`; then
  840.     echo shar: \"'demo3'\" unpacked with wrong size!
  841. fi
  842. # end of 'demo3'
  843. fi
  844. if test -f 'demo4' -a "${1}" != "-c" ; then 
  845.   echo shar: Will not clobber existing file \"'demo4'\"
  846. else
  847. echo shar: Extracting \"'demo4'\" \(277 characters\)
  848. sed "s/^X//" >'demo4' <<'END_OF_FILE'
  849. X# have random balls form xball
  850. X
  851. Xvisible off
  852. X
  853. Xcollide off
  854. Xelasticity 100
  855. Xgravity 0
  856. Xload_bitmap xball.xbm 0,0
  857. X
  858. Xrandomize -10,10,-10,10
  859. Xbackwards 100
  860. X
  861. Xvisible on
  862. X
  863. Xiterate 99
  864. X
  865. Xset_velocity abs 0,0
  866. Xgravity 0
  867. Xsleep 1
  868. Xrandomize -10,10,-13,7
  869. Xgravity 10
  870. Xelasticity 85
  871. Xiterate 300
  872. X
  873. Xexit
  874. END_OF_FILE
  875. if test 277 -ne `wc -c <'demo4'`; then
  876.     echo shar: \"'demo4'\" unpacked with wrong size!
  877. fi
  878. # end of 'demo4'
  879. fi
  880. if test -f 'demo5' -a "${1}" != "-c" ; then 
  881.   echo shar: Will not clobber existing file \"'demo5'\"
  882. else
  883. echo shar: Extracting \"'demo5'\" \(297 characters\)
  884. sed "s/^X//" >'demo5' <<'END_OF_FILE'
  885. X# Backwards with gravity into xball bitmap
  886. X
  887. Xvisible off
  888. X
  889. Xcollide off
  890. Xelasticity 100
  891. Xload_bitmap xball.xbm 0,-60
  892. Xgravity 10
  893. Xrandomize -3,3,0,3
  894. X#set_velocity rel 0,1
  895. X
  896. Xiterate 20
  897. X
  898. Xvisible on
  899. Xbackwards 21
  900. X
  901. Xset_velocity abs 0,0
  902. Xgravity 0
  903. Xsleep 1
  904. Xrandomize 10
  905. Xgravity 20
  906. Xelasticity 85
  907. Xiterate 200
  908. X
  909. Xexit
  910. END_OF_FILE
  911. if test 297 -ne `wc -c <'demo5'`; then
  912.     echo shar: \"'demo5'\" unpacked with wrong size!
  913. fi
  914. # end of 'demo5'
  915. fi
  916. if test -f 'demo6' -a "${1}" != "-c" ; then 
  917.   echo shar: Will not clobber existing file \"'demo6'\"
  918. else
  919. echo shar: Extracting \"'demo6'\" \(272 characters\)
  920. sed "s/^X//" >'demo6' <<'END_OF_FILE'
  921. X# Xball word collides with itself horizontally
  922. X
  923. X
  924. Xload_bitmap xball.xbm 0,0
  925. X#load_bitmap /usr/include/X11/bitmaps/left_ptr 0,0
  926. X
  927. Xcollide off
  928. Xset_velocity abs 10,0
  929. Xgravity 0
  930. Xelasticity 100
  931. X
  932. X
  933. Xiterate 100
  934. X
  935. Xcollide on
  936. X
  937. Xiterate 150
  938. X
  939. Xelasticity 80
  940. Xgravity 30
  941. X
  942. Xiterate 300
  943. X
  944. Xexit
  945. X
  946. X
  947. END_OF_FILE
  948. if test 272 -ne `wc -c <'demo6'`; then
  949.     echo shar: \"'demo6'\" unpacked with wrong size!
  950. fi
  951. # end of 'demo6'
  952. fi
  953. if test -f 'demo7' -a "${1}" != "-c" ; then 
  954.   echo shar: Will not clobber existing file \"'demo7'\"
  955. else
  956. echo shar: Extracting \"'demo7'\" \(145 characters\)
  957. sed "s/^X//" >'demo7' <<'END_OF_FILE'
  958. X# Tall window of raining balls
  959. X
  960. Xwindow_width 190
  961. Xwindow_height 700
  962. Xelasticity 80
  963. Xcollide off
  964. Xcreate_random 50,30
  965. Xperpetual on
  966. Xiterate 500
  967. Xexit
  968. X
  969. X
  970. END_OF_FILE
  971. if test 145 -ne `wc -c <'demo7'`; then
  972.     echo shar: \"'demo7'\" unpacked with wrong size!
  973. fi
  974. # end of 'demo7'
  975. fi
  976. if test -f 'demo8' -a "${1}" != "-c" ; then 
  977.   echo shar: Will not clobber existing file \"'demo8'\"
  978. else
  979. echo shar: Extracting \"'demo8'\" \(971 characters\)
  980. sed "s/^X//" >'demo8' <<'END_OF_FILE'
  981. Xcollide on
  982. X
  983. Xcreate 200,20,0,0
  984. Xiterate 40
  985. Xcreate 200,20,0,0
  986. Xiterate 80
  987. Xcreate 200,20,0,0
  988. Xiterate 40
  989. Xcreate 200,20,0,0
  990. Xiterate 40
  991. Xcreate 200,20,0,0
  992. Xiterate 20
  993. Xcreate 200,20,0,0
  994. Xiterate 20
  995. Xcreate 200,20,0,0
  996. Xiterate 10
  997. Xcreate 200,20,0,0
  998. Xiterate 10
  999. Xcreate 200,20,0,0
  1000. Xiterate 5
  1001. Xcreate 200,20,0,0
  1002. Xiterate 5
  1003. Xcreate 200,20,0,0
  1004. Xiterate 5
  1005. Xcreate 200,20,0,0
  1006. Xiterate 5
  1007. Xcreate 200,20,0,0
  1008. Xiterate 5
  1009. Xcreate 200,20,0,0
  1010. Xiterate 5
  1011. Xcreate 200,20,0,0
  1012. Xiterate 5
  1013. Xcreate 200,20,0,0
  1014. Xiterate 5
  1015. Xcreate 200,20,0,0
  1016. Xiterate 5
  1017. Xcreate 200,20,0,0
  1018. Xiterate 5
  1019. Xcreate 200,20,0,0
  1020. Xiterate 5
  1021. Xcreate 200,20,0,0
  1022. Xiterate 5
  1023. Xcreate 200,20,0,0
  1024. Xiterate 5
  1025. Xcreate 200,20,0,0
  1026. Xiterate 5
  1027. Xcreate 200,20,0,0
  1028. Xiterate 5
  1029. Xcreate 200,20,0,0
  1030. Xiterate 5
  1031. Xcreate 200,20,0,0
  1032. Xiterate 5
  1033. Xcreate 200,20,0,0
  1034. Xcreate 200,20,0,0
  1035. Xiterate 5
  1036. Xcreate 200,20,0,0
  1037. Xiterate 5
  1038. Xcreate 200,20,0,0
  1039. Xiterate 5
  1040. Xcreate 200,20,0,0
  1041. Xiterate 5
  1042. Xcreate 200,20,0,0
  1043. Xiterate 5
  1044. Xcreate 200,20,0,0
  1045. Xiterate 5
  1046. Xcreate 200,20,0,0
  1047. X
  1048. Xiterate 50
  1049. X
  1050. Xcreate 0,0,4,0
  1051. X
  1052. Xiterate 400
  1053. X
  1054. Xexit
  1055. END_OF_FILE
  1056. if test 971 -ne `wc -c <'demo8'`; then
  1057.     echo shar: \"'demo8'\" unpacked with wrong size!
  1058. fi
  1059. # end of 'demo8'
  1060. fi
  1061. if test -f 'demo9' -a "${1}" != "-c" ; then 
  1062.   echo shar: Will not clobber existing file \"'demo9'\"
  1063. else
  1064. echo shar: Extracting \"'demo9'\" \(1288 characters\)
  1065. sed "s/^X//" >'demo9' <<'END_OF_FILE'
  1066. Xcollide off
  1067. Xgravity 10
  1068. Xelasticity 90
  1069. Xwindow_width 400
  1070. X
  1071. X
  1072. Xcreate 10,20,0,0
  1073. Xiterate 3
  1074. Xcreate 20,20,0,0
  1075. Xiterate 3
  1076. Xcreate 30,20,0,0
  1077. Xiterate 3
  1078. Xcreate 40,20,0,0
  1079. Xiterate 3
  1080. Xcreate 50,20,0,0
  1081. Xiterate 3
  1082. Xcreate 60,20,0,0
  1083. Xiterate 3
  1084. Xcreate 70,20,0,0
  1085. Xiterate 3
  1086. Xcreate 80,20,0,0
  1087. Xiterate 3
  1088. Xcreate 90,20,0,0
  1089. Xiterate 3
  1090. Xcreate 100,20,0,0
  1091. Xiterate 3
  1092. Xcreate 110,20,0,0
  1093. Xiterate 3
  1094. Xcreate 120,20,0,0
  1095. Xiterate 3
  1096. Xcreate 130,20,0,0
  1097. Xiterate 3
  1098. Xcreate 140,20,0,0
  1099. Xiterate 3
  1100. Xcreate 150,20,0,0
  1101. Xiterate 3
  1102. Xcreate 160,20,0,0
  1103. Xiterate 3
  1104. Xcreate 170,20,0,0
  1105. Xiterate 3
  1106. Xcreate 180,20,0,0
  1107. Xiterate 3
  1108. Xcreate 190,20,0,0
  1109. Xiterate 3
  1110. Xcreate 200,20,0,0
  1111. Xiterate 3
  1112. Xcreate 210,20,0,0
  1113. Xiterate 3
  1114. Xcreate 220,20,0,0
  1115. Xiterate 3
  1116. Xcreate 230,20,0,0
  1117. Xiterate 3
  1118. Xcreate 240,20,0,0
  1119. Xiterate 3
  1120. Xcreate 250,20,0,0
  1121. Xiterate 3
  1122. Xcreate 260,20,0,0
  1123. Xiterate 3
  1124. Xcreate 270,20,0,0
  1125. Xiterate 3
  1126. Xcreate 280,20,0,0
  1127. Xiterate 3
  1128. Xcreate 290,20,0,0
  1129. Xiterate 3
  1130. Xcreate 300,20,0,0
  1131. Xiterate 3
  1132. Xcreate 310,20,0,0
  1133. Xiterate 3
  1134. Xcreate 320,20,0,0
  1135. Xiterate 3
  1136. Xcreate 330,20,0,0
  1137. Xiterate 3
  1138. Xcreate 340,20,0,0
  1139. Xiterate 3
  1140. Xcreate 350,20,0,0
  1141. Xiterate 3
  1142. Xcreate 360,20,0,0
  1143. Xiterate 3
  1144. Xcreate 370,20,0,0
  1145. Xiterate 3
  1146. Xcreate 380,20,0,0
  1147. Xiterate 3
  1148. Xcreate 390,20,0,0
  1149. X
  1150. Xiterate 60
  1151. X
  1152. Xcreate 0,310,3,0
  1153. X
  1154. Xperpetual off
  1155. X
  1156. Xiterate 40
  1157. X
  1158. Xiterate 300
  1159. X
  1160. Xperpetual on
  1161. X
  1162. Xiterate 300
  1163. X
  1164. Xperpetual off
  1165. X
  1166. Xcollide on
  1167. Xcreate 5,20,0,0
  1168. X
  1169. Xiterate 200
  1170. X
  1171. Xexit
  1172. END_OF_FILE
  1173. if test 1288 -ne `wc -c <'demo9'`; then
  1174.     echo shar: \"'demo9'\" unpacked with wrong size!
  1175. fi
  1176. # end of 'demo9'
  1177. fi
  1178. if test -f 'demo10' -a "${1}" != "-c" ; then 
  1179.   echo shar: Will not clobber existing file \"'demo10'\"
  1180. else
  1181. echo shar: Extracting \"'demo10'\" \(6234 characters\)
  1182. sed "s/^X//" >'demo10' <<'END_OF_FILE'
  1183. X# Draw word and then drop it
  1184. X# This demo was made by uncommenting the printf in item.c: item__create.
  1185. X# Then, run xball, redirecting output to your demo file.  
  1186. X# Set the gravity to 0, then draw something with mouse button 3.  
  1187. X# Quit xball, modify the demo a litlle, and you are dome
  1188. X
  1189. Xgravity 0
  1190. Xelasticity 60
  1191. Xwindow_width 650
  1192. Xcreate 33,60,0,0
  1193. Xiterate 1
  1194. Xcreate 33,82,0,0
  1195. Xiterate 1
  1196. Xcreate 35,108,0,0
  1197. Xiterate 1
  1198. Xcreate 37,132,0,0
  1199. Xiterate 1
  1200. Xcreate 39,150,0,0
  1201. Xiterate 1
  1202. Xcreate 39,164,0,0
  1203. Xiterate 1
  1204. Xcreate 40,176,0,0
  1205. Xiterate 1
  1206. Xcreate 41,179,0,0
  1207. Xiterate 1
  1208. Xcreate 34,58,0,0
  1209. Xiterate 1
  1210. Xcreate 40,56,0,0
  1211. Xiterate 1
  1212. Xcreate 62,55,0,0
  1213. Xiterate 1
  1214. Xcreate 82,55,0,0
  1215. Xiterate 1
  1216. Xcreate 92,58,0,0
  1217. Xiterate 1
  1218. Xcreate 108,70,0,0
  1219. Xiterate 1
  1220. Xcreate 124,86,0,0
  1221. Xiterate 1
  1222. Xcreate 136,102,0,0
  1223. Xiterate 1
  1224. Xcreate 139,122,0,0
  1225. Xiterate 1
  1226. Xcreate 136,140,0,0
  1227. Xiterate 1
  1228. Xcreate 128,160,0,0
  1229. Xiterate 1
  1230. Xcreate 122,176,0,0
  1231. Xiterate 1
  1232. Xcreate 114,186,0,0
  1233. Xiterate 1
  1234. Xcreate 98,192,0,0
  1235. Xiterate 1
  1236. Xcreate 82,195,0,0
  1237. Xiterate 1
  1238. Xcreate 72,196,0,0
  1239. Xiterate 1
  1240. Xcreate 69,197,0,0
  1241. Xiterate 10
  1242. Xcreate 147,183,0,0
  1243. Xiterate 10
  1244. Xcreate 218,185,0,0
  1245. Xiterate 1
  1246. Xcreate 217,177,0,0
  1247. Xiterate 1
  1248. Xcreate 217,165,0,0
  1249. Xiterate 1
  1250. Xcreate 217,153,0,0
  1251. Xiterate 1
  1252. Xcreate 218,141,0,0
  1253. Xiterate 1
  1254. Xcreate 218,127,0,0
  1255. Xiterate 1
  1256. Xcreate 219,115,0,0
  1257. Xiterate 1
  1258. Xcreate 219,101,0,0
  1259. Xiterate 1
  1260. Xcreate 218,85,0,0
  1261. Xiterate 1
  1262. Xcreate 217,73,0,0
  1263. Xiterate 1
  1264. Xcreate 217,65,0,0
  1265. Xiterate 1
  1266. Xcreate 218,57,0,0
  1267. Xiterate 1
  1268. Xcreate 221,53,0,0
  1269. Xiterate 1
  1270. Xcreate 225,51,0,0
  1271. Xiterate 1
  1272. Xcreate 231,52,0,0
  1273. Xiterate 1
  1274. Xcreate 239,60,0,0
  1275. Xiterate 1
  1276. Xcreate 243,74,0,0
  1277. Xiterate 1
  1278. Xcreate 247,90,0,0
  1279. Xiterate 1
  1280. Xcreate 250,106,0,0
  1281. Xiterate 1
  1282. Xcreate 252,120,0,0
  1283. Xiterate 1
  1284. Xcreate 255,134,0,0
  1285. Xiterate 1
  1286. Xcreate 258,146,0,0
  1287. Xiterate 1
  1288. Xcreate 260,156,0,0
  1289. Xiterate 1
  1290. Xcreate 263,164,0,0
  1291. Xiterate 1
  1292. Xcreate 265,167,0,0
  1293. Xiterate 1
  1294. Xcreate 267,171,0,0
  1295. Xiterate 1
  1296. Xcreate 269,173,0,0
  1297. Xiterate 1
  1298. Xcreate 271,175,0,0
  1299. Xiterate 1
  1300. Xcreate 272,176,0,0
  1301. Xiterate 1
  1302. Xcreate 274,173,0,0
  1303. Xiterate 1
  1304. Xcreate 276,163,0,0
  1305. Xiterate 1
  1306. Xcreate 278,147,0,0
  1307. Xiterate 1
  1308. Xcreate 278,133,0,0
  1309. Xiterate 1
  1310. Xcreate 279,123,0,0
  1311. Xiterate 1
  1312. Xcreate 278,113,0,0
  1313. Xiterate 1
  1314. Xcreate 276,101,0,0
  1315. Xiterate 1
  1316. Xcreate 275,91,0,0
  1317. Xiterate 1
  1318. Xcreate 275,81,0,0
  1319. Xiterate 1
  1320. Xcreate 275,73,0,0
  1321. Xiterate 1
  1322. Xcreate 276,69,0,0
  1323. Xiterate 1
  1324. Xcreate 277,67,0,0
  1325. Xiterate 1
  1326. Xcreate 278,63,0,0
  1327. Xiterate 10
  1328. Xcreate 321,134,0,0
  1329. Xiterate 1
  1330. Xcreate 327,135,0,0
  1331. Xiterate 1
  1332. Xcreate 337,133,0,0
  1333. Xiterate 1
  1334. Xcreate 345,131,0,0
  1335. Xiterate 1
  1336. Xcreate 351,128,0,0
  1337. Xiterate 1
  1338. Xcreate 353,124,0,0
  1339. Xiterate 1
  1340. Xcreate 354,118,0,0
  1341. Xiterate 1
  1342. Xcreate 350,108,0,0
  1343. Xiterate 1
  1344. Xcreate 348,98,0,0
  1345. Xiterate 1
  1346. Xcreate 344,95,0,0
  1347. Xiterate 1
  1348. Xcreate 341,96,0,0
  1349. Xiterate 1
  1350. Xcreate 333,97,0,0
  1351. Xiterate 1
  1352. Xcreate 327,100,0,0
  1353. Xiterate 1
  1354. Xcreate 317,106,0,0
  1355. Xiterate 1
  1356. Xcreate 309,116,0,0
  1357. Xiterate 1
  1358. Xcreate 307,128,0,0
  1359. Xiterate 1
  1360. Xcreate 308,140,0,0
  1361. Xiterate 1
  1362. Xcreate 312,150,0,0
  1363. Xiterate 1
  1364. Xcreate 315,160,0,0
  1365. Xiterate 1
  1366. Xcreate 323,166,0,0
  1367. Xiterate 1
  1368. Xcreate 335,168,0,0
  1369. Xiterate 1
  1370. Xcreate 355,170,0,0
  1371. Xiterate 1
  1372. Xcreate 365,170,0,0
  1373. Xiterate 1
  1374. Xcreate 365,168,0,0
  1375. Xiterate 1
  1376. Xcreate 368,168,0,0
  1377. Xiterate 10
  1378. Xcreate 425,110,0,0
  1379. Xiterate 1
  1380. Xcreate 419,112,0,0
  1381. Xiterate 1
  1382. Xcreate 409,116,0,0
  1383. Xiterate 1
  1384. Xcreate 401,119,0,0
  1385. Xiterate 1
  1386. Xcreate 395,125,0,0
  1387. Xiterate 1
  1388. Xcreate 392,131,0,0
  1389. Xiterate 1
  1390. Xcreate 390,139,0,0
  1391. Xiterate 1
  1392. Xcreate 392,145,0,0
  1393. Xiterate 1
  1394. Xcreate 396,153,0,0
  1395. Xiterate 1
  1396. Xcreate 404,161,0,0
  1397. Xiterate 1
  1398. Xcreate 407,163,0,0
  1399. Xiterate 1
  1400. Xcreate 411,165,0,0
  1401. Xiterate 1
  1402. Xcreate 431,169,0,0
  1403. Xiterate 1
  1404. Xcreate 447,173,0,0
  1405. Xiterate 1
  1406. Xcreate 440,57,0,0
  1407. Xiterate 1
  1408. Xcreate 439,63,0,0
  1409. Xiterate 1
  1410. Xcreate 437,73,0,0
  1411. Xiterate 1
  1412. Xcreate 436,85,0,0
  1413. Xiterate 1
  1414. Xcreate 437,95,0,0
  1415. Xiterate 1
  1416. Xcreate 438,107,0,0
  1417. Xiterate 1
  1418. Xcreate 440,119,0,0
  1419. Xiterate 1
  1420. Xcreate 442,133,0,0
  1421. Xiterate 1
  1422. Xcreate 445,145,0,0
  1423. Xiterate 1
  1424. Xcreate 446,153,0,0
  1425. Xiterate 1
  1426. Xcreate 449,161,0,0
  1427. Xiterate 1
  1428. Xcreate 453,169,0,0
  1429. Xiterate 1
  1430. Xcreate 457,173,0,0
  1431. Xiterate 1
  1432. Xcreate 461,176,0,0
  1433. Xiterate 10
  1434. Xcreate 521,102,0,0
  1435. Xiterate 1
  1436. Xcreate 519,103,0,0
  1437. Xiterate 1
  1438. Xcreate 515,104,0,0
  1439. Xiterate 1
  1440. Xcreate 509,106,0,0
  1441. Xiterate 1
  1442. Xcreate 501,109,0,0
  1443. Xiterate 1
  1444. Xcreate 495,113,0,0
  1445. Xiterate 1
  1446. Xcreate 489,119,0,0
  1447. Xiterate 1
  1448. Xcreate 486,129,0,0
  1449. Xiterate 1
  1450. Xcreate 483,139,0,0
  1451. Xiterate 1
  1452. Xcreate 482,149,0,0
  1453. Xiterate 1
  1454. Xcreate 485,155,0,0
  1455. Xiterate 1
  1456. Xcreate 491,158,0,0
  1457. Xiterate 1
  1458. Xcreate 503,161,0,0
  1459. Xiterate 1
  1460. Xcreate 519,163,0,0
  1461. Xiterate 1
  1462. Xcreate 527,164,0,0
  1463. Xiterate 1
  1464. Xcreate 531,162,0,0
  1465. Xiterate 1
  1466. Xcreate 533,56,0,0
  1467. Xiterate 1
  1468. Xcreate 531,66,0,0
  1469. Xiterate 1
  1470. Xcreate 529,74,0,0
  1471. Xiterate 1
  1472. Xcreate 528,82,0,0
  1473. Xiterate 1
  1474. Xcreate 526,92,0,0
  1475. Xiterate 1
  1476. Xcreate 527,104,0,0
  1477. Xiterate 1
  1478. Xcreate 528,114,0,0
  1479. Xiterate 1
  1480. Xcreate 530,124,0,0
  1481. Xiterate 1
  1482. Xcreate 532,134,0,0
  1483. Xiterate 1
  1484. Xcreate 534,144,0,0
  1485. Xiterate 1
  1486. Xcreate 538,152,0,0
  1487. Xiterate 1
  1488. Xcreate 541,155,0,0
  1489. Xiterate 1
  1490. Xcreate 542,155,0,0
  1491. Xiterate 1
  1492. Xcreate 570,113,0,0
  1493. Xiterate 1
  1494. Xcreate 582,115,0,0
  1495. Xiterate 1
  1496. Xcreate 594,115,0,0
  1497. Xiterate 1
  1498. Xcreate 608,114,0,0
  1499. Xiterate 1
  1500. Xcreate 618,111,0,0
  1501. Xiterate 1
  1502. Xcreate 621,107,0,0
  1503. Xiterate 1
  1504. Xcreate 623,103,0,0
  1505. Xiterate 1
  1506. Xcreate 621,95,0,0
  1507. Xiterate 1
  1508. Xcreate 619,89,0,0
  1509. Xiterate 1
  1510. Xcreate 616,87,0,0
  1511. Xiterate 1
  1512. Xcreate 610,85,0,0
  1513. Xiterate 1
  1514. Xcreate 602,85,0,0
  1515. Xiterate 1
  1516. Xcreate 598,86,0,0
  1517. Xiterate 1
  1518. Xcreate 595,89,0,0
  1519. Xiterate 1
  1520. Xcreate 587,97,0,0
  1521. Xiterate 1
  1522. Xcreate 579,105,0,0
  1523. Xiterate 1
  1524. Xcreate 573,113,0,0
  1525. Xiterate 1
  1526. Xcreate 571,121,0,0
  1527. Xiterate 1
  1528. Xcreate 570,125,0,0
  1529. Xiterate 1
  1530. Xcreate 570,131,0,0
  1531. Xiterate 1
  1532. Xcreate 572,135,0,0
  1533. Xiterate 1
  1534. Xcreate 575,138,0,0
  1535. Xiterate 1
  1536. Xcreate 583,142,0,0
  1537. Xiterate 1
  1538. Xcreate 591,145,0,0
  1539. Xiterate 1
  1540. Xcreate 605,146,0,0
  1541. Xiterate 1
  1542. Xcreate 619,148,0,0
  1543. Xiterate 1
  1544. Xcreate 631,149,0,0
  1545. Xiterate 1
  1546. Xcreate 637,148,0,0
  1547. Xiterate 1
  1548. Xcreate 640,147,0,0
  1549. Xiterate 1
  1550. Xcreate 652,155,0,0
  1551. Xiterate 1
  1552. Xcreate 75,241,0,0
  1553. Xiterate 1
  1554. Xcreate 119,237,0,0
  1555. Xiterate 1
  1556. Xcreate 167,233,0,0
  1557. Xiterate 1
  1558. Xcreate 213,227,0,0
  1559. Xiterate 1
  1560. Xcreate 253,224,0,0
  1561. Xiterate 1
  1562. Xcreate 287,223,0,0
  1563. Xiterate 1
  1564. Xcreate 319,225,0,0
  1565. Xiterate 1
  1566. Xcreate 337,231,0,0
  1567. Xiterate 1
  1568. Xcreate 337,233,0,0
  1569. Xiterate 1
  1570. Xcreate 334,245,0,0
  1571. Xiterate 1
  1572. Xcreate 331,259,0,0
  1573. Xiterate 1
  1574. Xcreate 333,261,0,0
  1575. Xiterate 1
  1576. Xcreate 336,262,0,0
  1577. Xiterate 1
  1578. Xcreate 346,264,0,0
  1579. Xiterate 1
  1580. Xcreate 368,266,0,0
  1581. Xiterate 1
  1582. Xcreate 396,266,0,0
  1583. Xiterate 1
  1584. Xcreate 430,264,0,0
  1585. Xiterate 1
  1586. Xcreate 468,260,0,0
  1587. Xiterate 1
  1588. Xcreate 510,257,0,0
  1589. Xiterate 1
  1590. Xcreate 564,257,0,0
  1591. Xiterate 1
  1592. Xcreate 596,254,0,0
  1593. Xiterate 1
  1594. Xcreate 618,251,0,0
  1595. Xiterate 1
  1596. Xcreate 656,253,0,0
  1597. Xiterate 1
  1598. Xcreate 657,253,0,0
  1599. Xiterate 30
  1600. Xset_velocity rel 0,-7
  1601. Xgravity 10
  1602. Xiterate 150
  1603. Xexit
  1604. END_OF_FILE
  1605. if test 6234 -ne `wc -c <'demo10'`; then
  1606.     echo shar: \"'demo10'\" unpacked with wrong size!
  1607. fi
  1608. # end of 'demo10'
  1609. fi
  1610. if test -f 'demo11' -a "${1}" != "-c" ; then 
  1611.   echo shar: Will not clobber existing file \"'demo11'\"
  1612. else
  1613. echo shar: Extracting \"'demo11'\" \(930 characters\)
  1614. sed "s/^X//" >'demo11' <<'END_OF_FILE'
  1615. Xcollide on
  1616. Xcreate 184,25,0,0
  1617. Xcreate 184,25,0,0
  1618. Xcreate 184,25,0,0
  1619. Xcreate 184,25,0,0
  1620. Xcreate 184,25,0,0
  1621. Xcreate 184,25,0,0
  1622. Xcreate 184,25,0,0
  1623. Xcreate 184,25,0,0
  1624. Xcreate 184,25,0,0
  1625. Xcreate 184,25,0,0
  1626. Xcreate 184,25,0,0
  1627. Xcreate 184,25,0,0
  1628. Xcreate 184,25,0,0
  1629. Xcreate 184,25,0,0
  1630. Xcreate 184,25,0,0
  1631. Xcreate 184,25,0,0
  1632. Xcreate 184,25,0,0
  1633. Xcreate 184,25,0,0
  1634. Xcreate 184,25,0,0
  1635. Xcreate 184,25,0,0
  1636. Xcreate 184,25,0,0
  1637. Xcreate 184,25,0,0
  1638. Xcreate 184,25,0,0
  1639. Xcreate 184,25,0,0
  1640. Xcreate 184,25,0,0
  1641. Xcreate 184,25,0,0
  1642. Xcreate 184,25,0,0
  1643. Xcreate 184,25,0,0
  1644. Xcreate 184,25,0,0
  1645. Xcreate 184,25,0,0
  1646. Xcreate 184,25,0,0
  1647. Xcreate 184,25,0,0
  1648. Xcreate 184,25,0,0
  1649. Xcreate 184,25,0,0
  1650. Xcreate 184,25,0,0
  1651. Xcreate 184,25,0,0
  1652. Xcreate 184,25,0,0
  1653. Xcreate 184,25,0,0
  1654. Xcreate 184,25,0,0
  1655. Xcreate 184,25,0,0
  1656. Xcreate 184,25,0,0
  1657. Xcreate 184,25,0,0
  1658. Xcreate 184,25,0,0
  1659. Xcreate 184,25,0,0
  1660. Xcreate 184,25,0,0
  1661. Xcreate 184,25,0,0
  1662. Xcreate 184,25,0,0
  1663. Xcreate 184,25,0,0
  1664. Xcreate 184,25,0,0
  1665. Xcreate 14,53,1,0
  1666. X
  1667. X
  1668. Xiterate 300
  1669. X
  1670. Xexit
  1671. END_OF_FILE
  1672. if test 930 -ne `wc -c <'demo11'`; then
  1673.     echo shar: \"'demo11'\" unpacked with wrong size!
  1674. fi
  1675. # end of 'demo11'
  1676. fi
  1677. if test -f 'demo12' -a "${1}" != "-c" ; then 
  1678.   echo shar: Will not clobber existing file \"'demo12'\"
  1679. else
  1680. echo shar: Extracting \"'demo12'\" \(216 characters\)
  1681. sed "s/^X//" >'demo12' <<'END_OF_FILE'
  1682. X
  1683. Xload_bitmap xball-x.xbm 10,10
  1684. Xiterate 10
  1685. Xload_bitmap xball-b.xbm 90,10
  1686. Xiterate 10
  1687. Xload_bitmap xball-a.xbm 170,10
  1688. Xiterate 10
  1689. Xload_bitmap xball-l.xbm 250,10
  1690. Xiterate 10
  1691. Xload_bitmap xball-l.xbm 310,10
  1692. Xiterate 200
  1693. X
  1694. Xexit
  1695. END_OF_FILE
  1696. if test 216 -ne `wc -c <'demo12'`; then
  1697.     echo shar: \"'demo12'\" unpacked with wrong size!
  1698. fi
  1699. # end of 'demo12'
  1700. fi
  1701. if test -f 'demo13' -a "${1}" != "-c" ; then 
  1702.   echo shar: Will not clobber existing file \"'demo13'\"
  1703. else
  1704. echo shar: Extracting \"'demo13'\" \(227 characters\)
  1705. sed "s/^X//" >'demo13' <<'END_OF_FILE'
  1706. Xelasticity 50
  1707. X
  1708. Xload_bitmap xball-x.xbm 10,10
  1709. Xiterate 20
  1710. Xload_bitmap xball-b.xbm 10,10
  1711. Xiterate 20
  1712. Xload_bitmap xball-a.xbm 10,10
  1713. Xiterate 20
  1714. Xload_bitmap xball-l.xbm 10,10
  1715. Xiterate 20
  1716. Xload_bitmap xball-l.xbm 10,10
  1717. Xiterate 200
  1718. X
  1719. Xexit
  1720. END_OF_FILE
  1721. if test 227 -ne `wc -c <'demo13'`; then
  1722.     echo shar: \"'demo13'\" unpacked with wrong size!
  1723. fi
  1724. # end of 'demo13'
  1725. fi
  1726. if test -f 'demo14' -a "${1}" != "-c" ; then 
  1727.   echo shar: Will not clobber existing file \"'demo14'\"
  1728. else
  1729. echo shar: Extracting \"'demo14'\" \(134 characters\)
  1730. sed "s/^X//" >'demo14' <<'END_OF_FILE'
  1731. Xelasticity 90
  1732. Xload_bitmap man.xbm 10,10
  1733. Xiterate 60
  1734. Xload_bitmap man.xbm 160,10
  1735. Xiterate 60
  1736. Xload_bitmap man.xbm 310,10
  1737. Xiterate 400
  1738. X
  1739. Xexit
  1740. END_OF_FILE
  1741. if test 134 -ne `wc -c <'demo14'`; then
  1742.     echo shar: \"'demo14'\" unpacked with wrong size!
  1743. fi
  1744. # end of 'demo14'
  1745. fi
  1746. echo shar: End of archive 5 \(of 5\).
  1747. cp /dev/null ark5isdone
  1748. MISSING=""
  1749. for I in 1 2 3 4 5 ; do
  1750.     if test ! -f ark${I}isdone ; then
  1751.     MISSING="${MISSING} ${I}"
  1752.     fi
  1753. done
  1754. if test "${MISSING}" = "" ; then
  1755.     echo You have unpacked all 5 archives.
  1756.     rm -f ark[1-9]isdone
  1757. else
  1758.     echo You still need to unpack the following archives:
  1759.     echo "        " ${MISSING}
  1760. fi
  1761. ##  End of shell archive.
  1762. exit 0
  1763.  
  1764. exit 0 # Just in case...
  1765. -- 
  1766.   // chris@IMD.Sterling.COM       | Send comp.sources.x submissions to:
  1767. \X/  Amiga - The only way to fly! |    sources-x@imd.sterling.com
  1768.  "It's intuitively obvious to the |
  1769.   most casual observer..."        | GCS d+/-- p+ c++ l+ m+ s++/+ g+ w+ t+ r+ x+
  1770.