home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1996 February / PCWK0296.iso / sharewar / os2 / grafika / ssaver24 / ssdll.hlp (.txt) < prev    next >
OS/2 Help File  |  1995-08-19  |  33KB  |  783 lines

  1.  
  2. ΓòÉΓòÉΓòÉ 1. About ScreenSaver ΓòÉΓòÉΓòÉ
  3.  
  4.                                    Version 2.4
  5.  
  6.                      Copyright (C) 1993-95 Siegfried Hanisch
  7.  
  8.                      This program is dedicated to Michaela.
  9.  
  10.  
  11. Permission to copy and distribute this software and its documentation for any 
  12. purpose and without charging more than a nominal fee for copying is hereby 
  13. granted, provided that the above copyright notice appear in all copies and that 
  14. both that copyright notice and this permission notice appear in supporting 
  15. documentation. 
  16. THIS SOFTWARE IS PROVIDED "AS IS". Siegfried Hanisch DISCLAIMS ALL WARRANTIES, 
  17. EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO IMPLIED WARRANTIES 
  18. OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE 
  19. PRODUCT. SHOULD THE PROGRAM PROVE DEFECTIVE, THE PURCHASER ASSUMES THE RISK OF 
  20. PAYING THE ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION AND 
  21. ANY INCIDENTAL OR CONSEQUENTIAL DAMAGES. IN NO EVENT WILL Siegfried Hanisch BE 
  22. LIABLE FOR ANY DAMAGES WHATSOEVER (INCLUDING WITHOUT LIMITATION DAMAGES FOR 
  23. LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION 
  24. AND THE LIKE) ARISING OUT OF THE USE OR THE INABILITY TO USE THIS PRODUCT EVEN 
  25. IF Siegfried Hanisch HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 
  26.  
  27. Please note that from version 1.3 on ScreenSaver is Shareware not Freeware. 
  28. If you intend to use the program for more than 30 days of testing, you have to 
  29. register. There are some features that are only available to registered users. 
  30.  
  31. ScreenSaver is an easy-to-use 32-bit screen saver for OS/2. 
  32.  
  33. When ScreenSaver is started, it monitors your keyboard and mouse activity in 
  34. the backgound. If there has not been any activity for some time, the saver 
  35. becomes active. It stays active until the mouse is moved or clicked or a key is 
  36. pressed. You can set various options by double clicking ScreenSaver in the 
  37. window list (press Ctrl+Esc to show the window list). If you want to quit 
  38. ScreenSaver, press the "Exit ScreenSaver" button in the configuration panel. 
  39.  
  40. ScreenSaver has the advantage of low memory consumption and very low CPU usage 
  41. - this means virtually no performance impact on your normal work. 
  42.  
  43. ScreenSaver has a very modular structure: It searches its directory for saver 
  44. modules and selects a module randomly when the saver becomes active. Therefore 
  45. it is very easy to extend ScreenSaver by just copying new saver modules to its 
  46. directory. 
  47.  
  48. There is password protection similar to the OS/2 lockup feature. 
  49. It is possible to use Deskpic modules with ScreenSaver. Just copy them to the 
  50. ScreenSaver directory. 
  51. There is DPMS support for "Green" monitors. 
  52. Starting with version 2.3, there is support for DOS fullscreen sessions. 
  53. In version 2.2, there is support for Win-OS/2 fullscreen sessions. 
  54. Sample source code for do-it-yourself saver modules is included in the archive; 
  55. see Creating new saver modules for information on how to create your own 
  56. modules. 
  57. Even for people who don't know anything about programming it is possible to 
  58. create their own saver modules; see Creating bitmap saver modules for more 
  59. information. 
  60.  
  61. Related information: 
  62. Options notebook controls 
  63. Contacting the author 
  64. Registration 
  65.  
  66. All trademarks are the property of their respective owners. 
  67.  
  68.  
  69. ΓòÉΓòÉΓòÉ 2. Options notebook controls ΓòÉΓòÉΓòÉ
  70.  
  71. The options notebook allows you to select various ScreenSaver options. The 
  72. settings take effect immediately. 
  73.  
  74. It contains the following controls: 
  75. Close button 
  76. Exit ScreenSaver button 
  77. Timeout slider 
  78. Saver now corner 
  79. Saver now corner enabled 
  80. Corner delay 
  81. Saver never corner 
  82. Saver never corner enabled 
  83. Saver enabled check box 
  84. Monitor fullscreen sessions check box 
  85. Copy settings button 
  86. Mouse sensing check box 
  87. Configure module button 
  88. Test module button 
  89. Available saver modules list box 
  90. Low priority check box 
  91. Selected only check box 
  92. New module slider 
  93. Password protection settings 
  94. Green (DPMS) monitor support settings 
  95.  
  96. Related information: 
  97. About ScreenSaver 
  98. Registration 
  99.  
  100.  
  101. ΓòÉΓòÉΓòÉ 2.1. Close button ΓòÉΓòÉΓòÉ
  102.  
  103. The "Close" button closes the Options notebook. You can also press the Hide 
  104. button in the top right corner of the dialog window. 
  105.  
  106. Related information: 
  107. Options notebook controls 
  108. About ScreenSaver 
  109.  
  110.  
  111. ΓòÉΓòÉΓòÉ 2.2. Exit ScreenSaver button ΓòÉΓòÉΓòÉ
  112.  
  113. Use the "Exit ScreenSaver" button to end ScreenSaver. 
  114.  
  115. Related information: 
  116. Options notebook controls 
  117.  
  118.  
  119. ΓòÉΓòÉΓòÉ 2.3. Timeout slider ΓòÉΓòÉΓòÉ
  120.  
  121. With the "Timeout" slider you can adjust the time after which the saver becomes 
  122. active. 
  123.  
  124. Related information: 
  125. Options notebook controls 
  126. About ScreenSaver 
  127.  
  128.  
  129. ΓòÉΓòÉΓòÉ 2.4. Saver now corner ΓòÉΓòÉΓòÉ
  130.  
  131. Use these radio buttons to select the corner of the screen into which you have 
  132. to move the mouse pointer to activate the saver immediately. 
  133.  
  134. Related information: 
  135. Saver now corner enabled 
  136. Corner delay 
  137. Options notebook controls 
  138.  
  139.  
  140. ΓòÉΓòÉΓòÉ 2.5. Saver now corner enabled ΓòÉΓòÉΓòÉ
  141.  
  142. With this check box you can enable and disable the "saver now" feature. 
  143.  
  144. Related information: 
  145. Saver now corner 
  146. Corner delay 
  147. Options notebook controls 
  148.  
  149.  
  150. ΓòÉΓòÉΓòÉ 2.6. Corner delay ΓòÉΓòÉΓòÉ
  151.  
  152. With this check box you can choose if there is a short delay before a module is 
  153. activated when the mouse pointer is moved into the "Saver now" corner. This 
  154. feature is useful if you don't want a module to be activated when you 
  155. accidentially move the mouse into the "Saver now" corner. 
  156.  
  157. Related information: 
  158. Saver now corner 
  159. Saver now corner enabled 
  160. Options notebook controls 
  161.  
  162.  
  163. ΓòÉΓòÉΓòÉ 2.7. Saver never corner ΓòÉΓòÉΓòÉ
  164.  
  165. With these radio buttons you can select the corner of the screen into which you 
  166. have to move the mouse pointer to temporarily disable monitoring mouse and 
  167. keyboard activity. 
  168.  
  169. Related information: 
  170. Options notebook controls 
  171.  
  172.  
  173. ΓòÉΓòÉΓòÉ 2.8. Saver never corner enabled ΓòÉΓòÉΓòÉ
  174.  
  175. With this check box you can enable and disable the "saver never" feature. 
  176.  
  177. Related information: 
  178. Saver never corner 
  179. Options notebook controls 
  180.  
  181.  
  182. ΓòÉΓòÉΓòÉ 2.9. Saver enabled check box ΓòÉΓòÉΓòÉ
  183.  
  184. Use the "Saver enabled" check box to enable or disable screen saving. 
  185.  
  186. Related information: 
  187. Options notebook controls 
  188.  
  189.  
  190. ΓòÉΓòÉΓòÉ 2.10. Monitor fullscreen sessions check box ΓòÉΓòÉΓòÉ
  191.  
  192. If monitoring of fullscreen sessions is enabled, ScreenSaver will switch from 
  193. an active fullscreen session to the Presentation Manager when the timeout 
  194. interval expires to do its saver action. When a key is pressed or the mouse is 
  195. moved, ScreenSaver switches back to the fullscreen session. 
  196.  
  197. This option is not available on OS/2 2.0. 
  198.  
  199. Related information: 
  200. Win-OS/2 fullscreen support 
  201. DOS fullscreen support 
  202. Options notebook controls 
  203.  
  204.  
  205. ΓòÉΓòÉΓòÉ 2.11. Copy settings button ΓòÉΓòÉΓòÉ
  206.  
  207. This button executes a special function; under normal circumstances, you should 
  208. not need to use it. 
  209.  
  210. Use this button to extract the ScreenSaver settings (such as timeout, hot 
  211. corners, password, module settings etc.) from the OS/2 INI file (where they are 
  212. usually stored) to a local INI file called SSAVER.INI 
  213.  
  214. You can now distribute this INI file across the network (or make it accessible 
  215. on some network drive). 
  216. If you now invoke ScreenSaver by typing 
  217. ssaver -i SSAVER.INI 
  218. the settings are read from the given INI file (SSAVER.INI in this case) instead 
  219. of the OS/2 INI file; the user can not change any of the settings (ScreenSaver 
  220. does not show up in the window list); the user can not end ScreenSaver (except 
  221. with some "kill" utility). 
  222. There exists a little program, SHOWDLG.EXE, which displays the Options notebook 
  223. even if ScreenSaver is not in the window list. Invoke it with the name of a 
  224. password file (created with sspasswd.exe) and the contained password to show 
  225. the Options notebook. Changes to any settings are NOT stored in the INI file. 
  226. It is not recommended to make the SHOWDLG.EXE utility accessible to users but 
  227. only to the system administrator. 
  228.  
  229. Note that modules written for ScreenSaver version 1.4 and below will read their 
  230. settings from OS2.INI instead of the alternate INI file. 
  231.  
  232. Related information: 
  233. Options notebook controls 
  234.  
  235.  
  236. ΓòÉΓòÉΓòÉ 2.12. Mouse sensing check box ΓòÉΓòÉΓòÉ
  237.  
  238. The "Mouse sensing" check box enables or disables monitoring of mouse movement 
  239. while the saver is active. This means, if mouse sensing is disabled and the 
  240. saver is active, the saver can only be stopped by pressing a key or clicking a 
  241. mouse button, but not by moving the mouse; this may be useful if you do not 
  242. want the saver to stop if you accidentially touch the mouse. 
  243.  
  244. Related information: 
  245. Options notebook controls 
  246.  
  247.  
  248. ΓòÉΓòÉΓòÉ 2.13. Configure module button ΓòÉΓòÉΓòÉ
  249.  
  250. This button displays the configuration dialog of the saver module which is 
  251. selected in the list box. You can also double click on the list box item to 
  252. display the corresponding configuration dialog. Press the '+' or '-' keys to 
  253. directly enable or disable a saver module (this does not work for Deskpic 
  254. modules ). 
  255.  
  256. Related information: 
  257. Options notebook controls 
  258.  
  259.  
  260. ΓòÉΓòÉΓòÉ 2.14. Test module button ΓòÉΓòÉΓòÉ
  261.  
  262. This button activates the saver module that is selected in the list box. To 
  263. stop the test, either move the mouse or click a mouse button or press a key. 
  264.  
  265. Related information: 
  266. Options notebook controls 
  267.  
  268.  
  269. ΓòÉΓòÉΓòÉ 2.15. Available saver modules list box ΓòÉΓòÉΓòÉ
  270.  
  271. The "Available saver modules" list box shows all available saver modules. 
  272. Double clicking on a list box item displays the corresponding configuration 
  273. dialog. A plus sign in front of a module name means the module is enabled, a 
  274. minus sign means it is disabled. You can enable or disable a module in its 
  275. configuration dialog, or by highlighting it and pressing '+' or '-' (this does 
  276. not work for Deskpic modules ). When the timeout interval expires, ScreenSaver 
  277. chooses one of the enabled saver modules randomly. If all modules are disabled, 
  278. the built-in "Eternal Blackness" module is used for screen saving. 
  279.  
  280. If you want another font in the list box, choose one from the font palette and 
  281. drag it into the list box. 
  282.  
  283. Related information: 
  284. Options notebook controls 
  285. About ScreenSaver 
  286. Contacting the author 
  287. Registration 
  288.  
  289.  
  290. ΓòÉΓòÉΓòÉ 2.16. Low priority check box ΓòÉΓòÉΓòÉ
  291.  
  292. Use the "Low priority" check box to decide wether the saver, when activated, 
  293. should run with low priority or normal priority. On low priority the saver gets 
  294. CPU time only when no other application requests CPU time. Normal priority 
  295. means the saver shares CPU usage with all other tasks; this means the animation 
  296. is smoother, but other applications may run slightly slower. Some saver module 
  297. animations may work considerably slower when low priority is disabled. 
  298.  
  299. Related information: 
  300. Options notebook controls 
  301.  
  302.  
  303. ΓòÉΓòÉΓòÉ 2.17. Selected only check box ΓòÉΓòÉΓòÉ
  304.  
  305. Use the "Selected only" check box to tell ScreenSaver to use only the module 
  306. which is selected in the Available saver modules list box, regardless of the 
  307. enabled/disabled state of the modules. 
  308.  
  309. Related information: 
  310. Options notebook controls 
  311.  
  312.  
  313. ΓòÉΓòÉΓòÉ 2.18. New module slider ΓòÉΓòÉΓòÉ
  314.  
  315. With this slider, you can adjust the time after which the module in use is 
  316. stopped and another one is started. 
  317.  
  318. Related information: 
  319. Options notebook controls 
  320.  
  321.  
  322. ΓòÉΓòÉΓòÉ 3. Password protection settings ΓòÉΓòÉΓòÉ
  323.  
  324. This notebook page lets you change your password, enable/disable password 
  325. protection and startup locking; you can set an external password file and the 
  326. size of the password entry dialog window. 
  327.  
  328. When you install ScreenSaver, the predefined password is 
  329. I will send money 
  330. to remind you to register ScreenSaver :-) 
  331.  
  332. The password is case sensitive. If you have the impression that the system is 
  333. not unlocked although you typed in the correct password, please check if Caps 
  334. Lock is active. 
  335.  
  336. In order to change any of the settings, you must enter the current password in 
  337. the "Password" entry field. 
  338.  
  339. To change your password, you must enter the current password and the new 
  340. password (enter the new password twice for verification). 
  341.  
  342. If you enter a file name into the "External password file" entry field, you can 
  343. unlock the system either with the password stored in this file or with the 
  344. local password. This may be useful if you want a systemwide password on your 
  345. network which can be maintained in a single location. 
  346. Use the program "sspasswd.exe" to create the external password file. 
  347.  
  348. Related information: 
  349. Options notebook controls 
  350.  
  351.  
  352. ΓòÉΓòÉΓòÉ 4. Green (DPMS) monitor support settings ΓòÉΓòÉΓòÉ
  353.  
  354. With the slider, you can set the number of minutes after which the monitor is 
  355. switched into off mode (calculated from the time when the mouse / keyboard 
  356. timeout occurred). 
  357.  
  358. With the group of radio buttons, set the type of video card you use. 
  359.  
  360.      (S)VGA, XGA and 8514/A choices are for SVGA, XGA and 8514/A or compatible 
  361.       cards. 
  362.  
  363.      Try VESA only if you have a VESA compliant SVGA card. 
  364.       In VESA mode, you have the option to switch the monitor into "Suspend" 
  365.       state instead of "Off". 
  366.  
  367.      For ATI mach8 and mach32 cards, use 8514/A. If this does not work, try 
  368.       VESA. 
  369.  
  370.      For ATI mach64, use VESA. 
  371.  
  372.      Try S3 if you have a S3 card and (S)VGA and VESA modes do not work. Not 
  373.       all S3 cards support this way of monitor switching. 
  374.  
  375.  When your monitor is switched off, you can wake it up by pressing a key 
  376.  (except for the Ctrl, Alt and Shift keys), by clicking a mouse button or by 
  377.  moving the mouse (if the "Mouse sensing while monitor is off" check box is 
  378.  unchecked, using the mouse does not wake up the monitor). 
  379.  
  380.  Please note that your monitor must support DPMS power saving modes. 
  381.  
  382.  If mode switching does not work as expected or the computer hangs after 
  383.  switching the monitor on again, play around with the Power Management settings 
  384.  in your BIOS. 
  385.  According to a user, the following works for AMI BIOS: 
  386.  
  387.      PM: User Defined 
  388.  
  389.      PM Mode: Via IRQ 15 (free interrupt address) 
  390.  
  391.      Break Switch: RC PIN 
  392.  
  393.      PM Controller: APM 
  394.  
  395.      All PM EVENTS enabled, including IRQ 8 (RCT, OS2) 
  396.  
  397.      Problems can occur when choosing PM Mode GREEN. 
  398.  
  399.  Remember that you use this program at your own risk! 
  400.  
  401.  Users who are not registered are given the possibility to test DPMS support 
  402.  (the monitor is switched on again after 30 seconds). Full functionality is 
  403.  only available to registered users. 
  404.  
  405.  Related information: 
  406.  Options notebook controls 
  407.  
  408.  
  409. ΓòÉΓòÉΓòÉ 5. Win-OS/2 fullscreen support ΓòÉΓòÉΓòÉ
  410.  
  411. Starting with version 2.2, there is support for Win-OS/2 fullscreen sessions. 
  412. The installation program copies the file SSWKICK.SCR to your Win-OS/2 directory 
  413. and sets this screen saver module as the active screen saver module in the 
  414. SYSTEM.INI file in your Win-OS/2 directory. To set the timeout for Win-OS/2 
  415. sessions, start the Program Manager and use the "Desktop" section of the 
  416. "Control Panel". 
  417.  
  418.  
  419. ΓòÉΓòÉΓòÉ 6. DOS fullscreen support ΓòÉΓòÉΓòÉ
  420.  
  421. Starting with version 2.3, there is support for DOS fullscreen sessions. 
  422.  
  423. The installation program copies the file SSDKICK.COM to your OS/2 DOS directory 
  424. (\OS2\MDOS) and adds a line to your AUTOEXEC.BAT file to load this proram when 
  425. a DOS session is started. 
  426. The timeout value for DOS fullscreen sessions can be set in the AUTOEXEC.BAT 
  427. file on your OS/2 boot drive (for example, to set a timeout of 10 minutes, 
  428. change the line containing SSDKICK.COM to "SSDKICK.COM 10"); the default 
  429. timeout is 5 minutes. To disable the DOS saver, set the timeout to 0. 
  430.  
  431. There are some restrictions: 
  432.  
  433.      In DOS fullscreen sessions, only the keyboard is monitored. Therefore, if 
  434.       you use a program that uses mostly mouse input, it may happen that 
  435.       ScreenSaver switches to the desktop because it thinks the DOS session is 
  436.       idle, although you are working with the mouse. If this happens, disable 
  437.       the DOS saver for this session by calling SSDKICK with a parameter of 0 
  438.       (for example, write a small batch file to start your DOS program with a 
  439.       line reading "SSDKICK 0" followed by a line which calls the actual 
  440.       program). 
  441.  
  442.      Some games use rather dirty programming techniques which prevent the DOS 
  443.       saver from getting keyboard and/or timer information. In this case, 
  444.       either the DOS saver never kicks in, or it kicks in when it should not. 
  445.       If this happens, disable the DOS saver for this session (see above). 
  446.  
  447.  
  448. ΓòÉΓòÉΓòÉ 7. Creating your own saver modules ΓòÉΓòÉΓòÉ
  449.  
  450. The following two sections describe how to create saver modules: 
  451. Creating bitmap saver modules 
  452. Creating new saver modules 
  453.  
  454.  
  455. ΓòÉΓòÉΓòÉ 7.1. Creating bitmap saver modules ΓòÉΓòÉΓòÉ
  456.  
  457. Even for a non-programmer, it is VERY easy to create new bitmap saver modules. 
  458. There are six steps involved in doing so: 
  459.  
  460.    1. Open an OS/2 command session, change your working directory to the 
  461.       ScreenSaver directory, and make sure the files BITMAPS.RES, BITMAPS.SS_, 
  462.       BMPSAMP.RC and MAKEMOD.EXE are there. If they are not, unzip them from 
  463.       the file CUSTBMP.ZIP (CUSTBMP.ZIP can be found in the ScreenSaver 
  464.       distribution file). 
  465.    2. Get some pictures in bitmap format (*.BMP). 
  466.       You can create bitmaps by scanning photographs, you can convert existing 
  467.       pictures from other formats (*.GIF, *.TIF etc.) to bitmap format with 
  468.       appropriate software, or you can draw them yourself (with the OS/2 Icon 
  469.       Editor or Paintbrush or any other program that can handle bitmap files). 
  470.       Copy all the bitmaps you want to use to the ScreenSaver directory. 
  471.    3. Choose a name for the new saver module and a name for the file in which 
  472.       your saver is stored. The name for the file must be exactly 8 characters 
  473.       long; the name of the saver module should have a maximum length of 32 
  474.       characters. Now type "COPY BMPSAMP.RC FILENAME.RC" and press Enter 
  475.       (replace FILENAME with the file name you chose). Load the new file into 
  476.       an editor. You can use the OS/2 system editor E.EXE to edit the file. 
  477.    4. Replace the string "Custom Bitmaps" with the name you chose for your 
  478.       saver module. Do not change the number in front of the string. 
  479.    5. Insert lines with the name of your bitmap files. The lines must have the 
  480.       following format: 
  481.  
  482.             BITMAP number bitmap-file-name
  483.  
  484.       The numbers must be consecutive and in ascending order (in the first line 
  485.       inserted number must be 1, in the second 2 and so on). 
  486.       There is no limit on the number of bitmaps in your saver module. Now save 
  487.       the file and quit the editor. 
  488.    6. Type "MAKEMOD FILENAME" (again, replace FILENAME with the file name you 
  489.       chose) and press Enter. If everything is ok, MAKEMOD tells you that it 
  490.       created the new module. In case of an error, MAKEMOD prints an error 
  491.       message and some hints what you should do; it is most likely that you 
  492.       mistyped the name of a bitmap file. 
  493.       If module creation was successful you have to restart ScreenSaver. The 
  494.       name of the new module should be listed in the "Available saver modules" 
  495.       list box then. 
  496.  
  497.  The following tutorial shows how to build a new bitmap module. 
  498.  Assume that you want to use the three bitmaps ME.BMP, YOU.BMP and DOG_BOO.BMP; 
  499.  you chose the name of the saver module to be "My Family" and the name of the 
  500.  saver module file to be "MYFAMILY". 
  501.  You enter 
  502.  
  503.   COPY BMPSAMP.RC MYFAMILY.RC
  504.  
  505.  at the command prompt. Then edit the new file (in this example we use the OS/2 
  506.  system editor E.EXE) 
  507.  
  508.   E MYFAMILY.RC
  509.  
  510.  and change the file contents to look like this. 
  511.  
  512.  The part of the file that is marked green  (the text between "/*" and "*/") is 
  513.  a comment. You can include your own comments if you like. 
  514.  The red text is the module name you insert and the cyan text are the lines 
  515.  enumerating the bitmap files. The rest of the text has to be there; don't 
  516.  alter it. Note that the name of the module and the names of the bitmap files 
  517.  have to be enclosed in double quotation marks. 
  518.  
  519.   /*
  520.    MYFAMILY.RC
  521.    resource file for custom bitmaps saver module
  522.   */
  523.   STRINGTABLE
  524.   {
  525.    1 "My Family"
  526.   }
  527.   BITMAP 1 "ME.BMP"
  528.   BITMAP 2 "YOU.BMP"
  529.   BITMAP 3 "DOG_BOO.BMP"
  530.  
  531.  Now save the file, quit the editor and type 
  532.  
  533.   MAKEMOD MYFAMILY
  534.  
  535.  at the command prompt. MAKEMOD prints a few messages as it works, and finally 
  536.  a success message or a self-explanatory error message. 
  537.  Now you restart ScreenSaver. The item "My Family" should appear in the list 
  538.  box. 
  539.  
  540.  Related information: 
  541.  Creating new saver modules 
  542.  
  543.  
  544. ΓòÉΓòÉΓòÉ 7.2. Creating new saver modules ΓòÉΓòÉΓòÉ
  545.  
  546. You should have some experience with Presentation Manager programming and 
  547. knowledge of the C programming language to create your own saver modules. 
  548. The ScreenSaver archive comprises sample source code that shows you how to do 
  549. it. Unzip the files sample.c, sample.h, sample.rc, sample.dlg, sample.def and 
  550. sample.mak from the file SAMPLE.ZIP (SAMPLE.ZIP can be found in the ScreenSaver 
  551. distribution file) and copy these files to some other name of your choice (keep 
  552. the original extensions). If you compile and link in another directory than the 
  553. ScreenSaver directory, also copy the file SSAVER.ICO to your working directory. 
  554. Now take a look at these files. They are are commented and contain something 
  555. like 
  556.  
  557. /*
  558.  $$$$$ insert code here $$$$$
  559.  ... comment ...
  560.  
  561.  $$$$$ for example $$$$$
  562.  ... example code ...
  563. */
  564.  
  565. at those places where you should fill in your code. You can't miss it. Be sure 
  566. to read the comments before inserting your code. 
  567. In the "for example" sections of the comments you will find the source code of 
  568. the "Pyramids" saver module that comes with the ScreenSaver distribution. You 
  569. can use it as a template for creating your own saver modules. 
  570. After having successfully compiled your new module the first time, you can use 
  571. the Dialog Editor to edit the *.RES file and change the configure dialog if 
  572. required. 
  573. You should be able to use EMX0.9a (or higher) or the IBM compiler to build new 
  574. modules. Maybe other compilers work too, but I have not tested that. 
  575.  
  576. Now some explanations how a saver module works: 
  577. After the timeout occurred, the ScreenSaver program loads a saver module into 
  578. memory and makes it start screen saving. The saver module creates a window that 
  579. has the size of the whole screen. It then starts another thread (the one you 
  580. will have to write the code for) that draws anything it wants in this window; 
  581. see the sample code for more information. When the ScreenSaver program stops 
  582. the saver module, this thread ends, the window is destroyed and the saver 
  583. module is unloaded from memory. The idea is, that this independent thread can 
  584. run with idle time priority without considering any processing of PM messages. 
  585.  
  586. Related information: 
  587. Creating bitmap saver modules 
  588.  
  589.  
  590. ΓòÉΓòÉΓòÉ 8. Note for users of OS/2 2.1 ΓòÉΓòÉΓòÉ
  591.  
  592. There is a problem in OS/2 2.1 which sometimes prevents applications from 
  593. saving their data to the OS/2 INI-files. Therefore, if you experience that the 
  594. ScreenSaver options are not saved correctly, please try the following solution: 
  595.  
  596. Add the line 
  597.  
  598. attrib -r x:\os2\os2*.ini
  599.  
  600. to the file x:\startup.cmd (x is the drive letter of your boot drive; if the 
  601. file x:\startup.cmd does not exist, create it) and reboot. 
  602.  
  603.  
  604. ΓòÉΓòÉΓòÉ 9. Using Deskpic modules ΓòÉΓòÉΓòÉ
  605.  
  606. It is now possible to use Deskpic modules with ScreenSaver. 
  607. Deskpic is a public domain OS/2 screen saver written by John Ridges. A lot of 
  608. saver modules exist for this program. They can be found at the usual locations 
  609. such as Internet FTP sites and BBSs. 
  610.  
  611. The saver module files have the extension *.DSS. In order to use them with 
  612. ScreenSaver, just copy them into the ScreenSaver directory. 
  613.  
  614. Deskpic modules are marked with "[Deskpic]" in the list box. The only 
  615. restriction is that you can not enable or disable them by pressing '+' or '-'; 
  616. you have to use the module configuration dialog to do so. 
  617.  
  618.  
  619. ΓòÉΓòÉΓòÉ 10. Adding ScreenSaver to the Desktop menu ΓòÉΓòÉΓòÉ
  620.  
  621. You can create a Desktop menu entry with which you can activate ScreenSaver 
  622. (comparable to moving the mouse into the "Saver now corner"). Follow the steps 
  623. below to create this Desktop menu entry: 
  624.  
  625.    1. Open the Desktop settings notebook (click mouse button 2 somewhere on the 
  626.       desktop background and select Open->Settings from the popup menu; if you 
  627.       use OS/2 Warp V3, select Settings from the popup menu). 
  628.  
  629.    2. In the settings notebook, select "Menu" 
  630.  
  631.    3. In the "Available menus" list box, select (click on) the first entry. 
  632.  
  633.    4. In the BOTTOM half of the dialog, click on the "Create another..." push 
  634.       button (ATTENTION! There are two push buttons with equal text). 
  635.  
  636.    5. The "Menu Item Settings" dialog shows up. In the "Menu item name" entry 
  637.       field, type "Activate ScreenSaver" or whatever you want to name your menu 
  638.       entry. 
  639.  
  640.    6. In the "Name" entry field, enter the full path and filename of SSKICK.EXE 
  641.       (SSKICK.EXE can be found in the ScreenSaver directory). Assuming that the 
  642.       ScreenSaver directory is E:\SSAVER, type "E:\SSAVER\SSKICK.EXE". 
  643.       Alternatively, you can use the "Find program" button to locate SSKICK.EXE 
  644.  
  645.    7. Click on the "OK" button to close the dialog. 
  646.  
  647.    8. Close the Desktop settings notebook by pressing Alt+F4 or by double 
  648.       clicking the system menu. 
  649.  
  650.  You should disable "Mouse sensing" if you use the Desktop menu to activate 
  651.  ScreenSaver. 
  652.  
  653.  
  654. ΓòÉΓòÉΓòÉ 11. Command line switches ΓòÉΓòÉΓòÉ
  655.  
  656. There exist the following command line switches: 
  657.  
  658.      -r key Your Name 
  659.       With the -r switch, you can enter registation information. See 
  660.       Registration. 
  661.  
  662.      -i SSAVER.INI 
  663.       For the use of this switch, see Copy settings button. 
  664.  
  665.      -t 
  666.       This switch causes ScreenSaver to make the options notebook unaccessible 
  667.       to users. See also Copy settings button. 
  668.  
  669.  
  670. ΓòÉΓòÉΓòÉ 12. Contacting the author ΓòÉΓòÉΓòÉ
  671.  
  672. There is a WWW page for ScreenSaver where you can get the latest info. Check 
  673. out http://stud1.tuwien.ac.at/~e8925811/ssaver.html 
  674.  
  675. To get the latest Shareware version, please download it from the Internet FTP 
  676. archive hobbes.nmsu.edu (filename is os2/graphics/ssaver*.zip), from CompuServe 
  677. (OS2BVEN forum), from America Online (OS/2 forum library) or from various BBSs. 
  678. A German version of ScreenSaver is available (hobbes.nmsu.edu: 
  679. os2/graphics/ssavrg*.zip). 
  680.  
  681. My mail address is 
  682.  
  683. Dipl.-Ing. Siegfried Hanisch 
  684. Einsiedlergasse 6/16 
  685. A - 1050 Vienna 
  686. AUSTRIA / EUROPE 
  687.  
  688. Internet e-mail: 
  689. ssaver@ibm.net  (ScreenSaver related mail only) 
  690. or 
  691. siggih@ibm.net 
  692. Fido: Siegfried Hanisch @ 2:310/15 (checked unregularly) 
  693.  
  694. My WWW home page is http://stud1.tuwien.ac.at/~e8925811/home.html 
  695.  
  696. Please send any suggestions, comments or bug reports to one of the above 
  697. addresses. 
  698.  
  699. If you have questions concerning the programming of new saver modules, please 
  700. contact me via e-mail. 
  701.  
  702. Related information: 
  703. Registration 
  704.  
  705.  
  706. ΓòÉΓòÉΓòÉ 13. Registration ΓòÉΓòÉΓòÉ
  707.  
  708. ScreenSaver is Shareware. This means, if you intend to use the program for more 
  709. than 30 days of testing, you have to register. There are some features that are 
  710. only available to registered users. 
  711.  
  712. The registration fee for ScreenSaver is 28 US$ / 40 DM / 280 ATS. 
  713.  
  714. The registration is valid for all future Shareware versions of ScreenSaver, 
  715. including PowerPC. 
  716.  
  717. There are several ways to register ScreenSaver: 
  718.  
  719.      Send cash (or an EuroCheque if in Europe; please fill in 280 ATS if doing 
  720.       so) to the following mail address: 
  721.  
  722.             Dipl.-Ing. Siegfried Hanisch
  723.             Einsiedlergasse 6/16
  724.             A - 1050 Vienna
  725.             AUSTRIA / EUROPE
  726.  
  727.      You can register by contacting BMT Micro : 
  728.  
  729.             By Mail:
  730.              BMT Micro
  731.              452 Horn Rd
  732.              Wilmington, NC 28412-2411
  733.              USA
  734.             By Phone:
  735.              (910) 791-7052   Voice orders, questions, etc.
  736.              (800) 414-4268   Voice orders only (toll free in USA and Canada)
  737.             By Fax:
  738.              (910) 350-2937   (please print or type clearly)
  739.             By BBS:
  740.              (910) 350-8061   (10 lines, all 14.4)
  741.              (910) 799-0923   (28.8 line)
  742.  
  743.       BMT Micro accept Visa, American Express, Mastercard, Discover, Optima, 
  744.       Eurocard, Cashiers Checks, Money Orders, Personal Checks.  Payment must 
  745.       be in US Currency.  No cash please! 
  746.       No charge for 1st Class shipping anywhere in the world.  Priority 
  747.       shipping extra and will be explained when the order is placed. 
  748.       A form for registering via fax or mail can be found in the file 
  749.       REGISTER.DOC in the ScreenSaver directory. 
  750.       If you live in the USA, registration can also be done by phone with your 
  751.       checking or savings account (including bank money market and NOW 
  752.       accounts). For more information on this, see the file REGISTER.DOC in the 
  753.       ScreenSaver directory. 
  754.  
  755.      CompuServe users only: You can register ScreenSaver by entering the SWREG 
  756.       forum and registering product 7075. Registration fee when registering 
  757.       through CIS is 30 US$ 
  758.  
  759.      For users in Austria only:  Sie k╨ñnnen den Betrag auf folgendes Konto 
  760.       einzahlen oder ╨æberweisen:Bank Austria, BLZ 20151, Kto.Nr. 709353049, 
  761.       lautend auf Siegfried Hanisch.  Bitte teilen Sie mir auch Ihre e-mail- 
  762.       oder Post-Adresse mit, damit ich Ihnen die Registrierungsnummer zukommen 
  763.       lassen kann (meine Adresse finden Sie unter Contacting the author). 
  764.       Wenn Sie mit der Registrierungsinformation eine Diskette mit der 
  765.       aktuellen Version zugeschickt bekommen m╨ñchten, bitte 290 ATS ╨æberweisen. 
  766.  
  767.      For users in Germany only:  Sie k╨ñnnen den Betrag auf folgendes Konto 
  768.       einzahlen oder ╨æberweisen:Dresdner Bank, BLZ 76080040, Kto.Nr. 45422942, 
  769.       lautend auf Anneliese Hanisch. Bitte teilen Sie mir ** unbedingt ** per 
  770.       e-mail oder Post Ihre Adresse (e-mail oder Post) mit, damit ich Ihnen die 
  771.       Registrierungsinformation zukommen lassen kann. Auf den Bankausz╨ægen ist 
  772.       die Adresse meist unvollst╨öndig, falsch oder ╨æberhaupt nicht vorhanden. 
  773.       Meine Adresse finden Sie unter Contacting the author. 
  774.       Wenn Sie mit der Registrierungsinformation eine Diskette mit der 
  775.       aktuellen Version zugeschickt bekommen m╨ñchten, bitte 42 DM ╨æberweisen. 
  776.  
  777.  Registered users receive a registration key. You can then enter the 
  778.  registration information by typing 
  779.  ssaver -r key Your Name 
  780.  
  781.  For multi-user or site licences, please contact me or BMT Micro. 
  782.  For updates from the "SDS OS/2 Essentials" version of ScreenSaver, contact BMT 
  783.  Micro.