home *** CD-ROM | disk | FTP | other *** search
/ Black Box 4 / BlackBox.cdr / editors / hypsh40c.arj / PGRES110.LZH / PROGRESS.DOC < prev    next >
Text File  |  1991-04-15  |  35KB  |  866 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                     PROGRESS -- A Resident Program Shell
  21.                                Version 1.10
  22.                                 April 1991
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36. PROGRESS resident swapping program- or DOS-shell.
  37. Version 1.10, april 1991
  38.  
  39. (c) Werner Knudsen
  40.     Tulipanvej 5
  41.     DK-2600 Glostrup
  42.     Denmark
  43.  
  44. PROGRESS       A Resident Program Shell                         Page 3
  45.  
  46.  
  47. 2   Overview - The PROGRESS system
  48.  
  49.  
  50. ------- Overview -------------------------------------------------------
  51.  
  52. Wouldn't it be a progress, if you could make any program resident? Now
  53. the PROGRESS has come!
  54.  
  55. PROGRESS can be configurated to pop up almost any program from within
  56. almost any non-graphical application. Wouldn't you like to be able to
  57. pop up your favourite editor, database or spreadsheet while working
  58. inside another program? Wouldn't you like to be able to choose, during
  59. pop up, which program to start?
  60.  
  61. Now you can do all that, and more .. with PROGRESS. And, while resident,
  62. it takes up only about 6K memory.
  63.  
  64. The PROGRESS system consists of two programs:
  65.  
  66. - the PGRES program, which is the main program, handles installation,
  67.   configuration and pop up.
  68.  
  69. - the PGR program allows popup from the DOS prompt, and makes it
  70.   possible to check for PGRES, for example within batch programs.
  71.  
  72. The two programs are described in details below.
  73.  
  74. 3   the PGRES program - General information    
  75.  
  76.  
  77. PGRES is a TSR (Terminate and Stay Resident) program that can activate
  78. a program or a DOS shell while almost any application is running, hence
  79. providing the ability to run DOS commands or run other applications
  80. within programs that didn't originally allow it. PGRES keeps only about
  81. 6K of normal DOS memory when it goes resident, but can provide up to
  82. about 600K of free DOS space when it pops up.
  83.  
  84. PGRES uses two forms of swapping technology to maximize the amount of
  85. memory available to the shell. First, PGRES is a swappable TSR: when its
  86. hot key is pressed, PGRES swaps out the applications loaded after it and
  87. swaps itself in. Most of the memory area that it reclaims in this way
  88. isn't used directly by PGRES. Besides the code, data, and stack space
  89. that PGRES actually uses, it retains a variable amount of heap space
  90. that provides the free RAM for the DOS shell itself. Second, PGRES uses
  91. a swapping DOS shell: after the swappable TSR takes control, it swaps
  92. the TSR's code and data back out, shrinks its memory allocation to the
  93. minimum, and calls the DOS EXEC function to activate a program, or a
  94. DOS command line. The amount of memory free for this can range from 30K
  95. to over 600K depending on when and how PGRES was loaded. After you
  96. terminate the program, or type "Exit" at the command line, the sequence
  97. is reversed and the original application regains control.
  98.  
  99. For reasons that aren't clear at this time, PGRES does not work with
  100. PC-DOS 2.0 or 2.1. Either piece of swapping technology -- swappable
  101. TSR's or swapping exec -- works fine by itself, but the two don't
  102. combine. Interestingly, AT&T DOS version 2.11 works with PGRES, which
  103.  
  104. PROGRESS       A Resident Program Shell                         Page 4
  105.  
  106. suggests the presence of a bug in the earlier DOS versions. PGRES.EXE as
  107. supplied will not load for any DOS version prior to 3.00.
  108.  
  109.  
  110.  
  111. 4   Installation - How to install PGRES
  112.  
  113. ------- Installing PGRES -----------------------------------------------
  114.  
  115. PGRES will use either EMS (expanded memory) or disk space for its
  116. swapping medium. When using EMS, it consumes about X+45 kilobytes of EMS
  117. space (rounded up to the nearest 16K boundary), where X is the amount of
  118. RAM to be free when the DOS shell starts. When using disk, it uses about
  119. n*(X+15)+30 kilobytes of space, where n is either 1 or 2 depending on
  120. whether single or double file swapping is used. The single file swapping
  121. option is described in more detail below.
  122.  
  123.  
  124. 5   Default - The default behavior   
  125.  
  126. You can install PGRES simply by typing its name at the DOS command line.
  127. It provides the following default behavior:
  128.  
  129.   - all RAM that is free at the time PGRES is loaded, less about 20K,
  130.     will be available to the shell - EMS, if available, will be used
  131.     for swap space - dual swap files located in the root directory of
  132.     drive C: will be used if EMS is not available - swap files will be
  133.     marked hidden - hot key will be <Alt><F1>, with <Alt> activating
  134.     on-screen configuration during popup - the mouse state will be saved
  135.     and restored if the mouse driver allows it. Programs will be
  136.     executed through the DOS Comspec.
  137.  
  138.     All of these defaults may be modified by using the command line
  139.     options or on-screen configuration described below.
  140.  
  141.  
  142.  
  143. 6   Options - Description of command line options 
  144.  
  145. ------- PGRES command line options -------------------------------------
  146.  
  147. The following table summarizes the PGRES command line options:
  148.  
  149.   /1           single swap file
  150.   /A           visible attribute for swap files
  151.   /C           invoke on-screen configuration
  152.   /D           force disk swapping even if EMS available
  153.   /Fkbytes     specify approx. kbytes free within shell
  154.   /Khexkeys    specify TSR hot keys in hex
  155.   /M           disable swap message
  156.   /O           switch between DOS shell and program shell
  157.   /Pprogram    specify program to shell to - $-variables allowed
  158.   /Rparam      specify program parameters - $-variables allowed
  159.   /Spath       specify path for swap files - $-variables allowed
  160.   /U           unload TSR
  161.   /V           remove mouse management code
  162.   /Y           exec programs directly, or through Comspec
  163.   /? or ?      show the command line options
  164.  
  165. PROGRESS       A Resident Program Shell                         Page 5
  166.  
  167.  
  168. The "/" option prefix may be substituted by "-". Spaces are not allowed
  169. inside command line options, and the options must be separated by
  170. spaces.
  171.  
  172. The "switching" options, eg. /L, will switch the option back and forth
  173. when mentioned several times. The other options, like /S, will retain
  174. the value from the LAST time they are mentioned.
  175.  
  176. Options may be placed in a configuration file, as described below.
  177.  
  178.  
  179. 7   /1 - Single swap file   
  180.  
  181. When disk space is used for swapping, PGRES normally uses three swap
  182. files. Two of the files are used to activate the swappable TSR. The
  183. first such file holds the PGRES code and data and the other one holds
  184. the memory contents that PGRES overwrites. The third file is used for
  185. the DOS shell itself and consumes about 30K bytes, which is typically
  186. much smaller than the first two. When the /1 option is specified, PGRES
  187. uses a small intermediate buffer which removes the need for one of the
  188. first two files and thus cuts its disk space requirement by up to a
  189. factor of two (see the formula above). However, the intermediate buffer
  190. slows swapping since the swap file is read in smaller (2K byte vs. 64K
  191. byte) blocks and since an extra memory-to-memory move is required.
  192. Nevertheless, the single swap file option is advantageous if it allows
  193. the swap files to fit entirely on a RAM disk. Note that the intermediate
  194. buffer increases the size of the PGRES resident core by 2K bytes as well.
  195.  
  196.  
  197. 8   /A - Visible / hidden swap files 
  198.  
  199. When the /A option is specified, PGRES leaves its swap files visible and
  200. unprotected. Don't delete or overwrite the swap files (which are named
  201. PGSWAP01.!!!, PGSWAP02.!!!, PGSWAP03.!!!) while PGRES is loaded. Note
  202. that PGRES deletes its own swap files when it is unloaded. Although
  203. PGRES cannot delete the swap files if you turn the machine off while
  204. PGRES is still loaded, it will correctly overwrite them the next time
  205. it's loaded again.
  206.  
  207.  
  208. 9   /C - View or change PGRES configuration
  209.  
  210. The /C option puts you into the on-screen configuration mode, which is
  211. described in details below.
  212.  
  213.  
  214. 10   /D - Use Disk when EMS is available
  215.  
  216. The /D option forces PGRES to use disk space for swapping even if
  217. sufficient EMS space is available. You'd specify this option if you have
  218. other applications that will need the EMS space, or if you have an
  219. extended memory RAM disk that you prefer to use for swapping. Note that
  220. PGRES allocates space for the TSR-swapping requirement when it goes
  221. resident. At the time it pops up, it allocates another 30K bytes of EMS
  222. or disk space for the shell itself.
  223.  
  224.  
  225. PROGRESS       A Resident Program Shell                         Page 6
  226.  
  227.  
  228. 11   /F - Free Kbytes for shell  
  229.  
  230. /F lets you specify how many kilobytes of RAM space you'd like to remain
  231. free for a program or DOS. The larger this number, the larger your swap
  232. space requirements will be. The smallest allowed parameter is 30, since
  233. DOS itself won't do much with less than 30KB free. If you don't specify
  234. a /F option, the free space within the shell will be the amount of
  235. memory that was free when PGRES was loaded, less about 20K.
  236.  
  237.  
  238. 12   /K - Popup HotKey    
  239.  
  240. /K allows you to specify a hot key other than the default <Alt><F1>,
  241. with <Alt> for on-screen configuration during popup. The format of the
  242. option is /Fxxxx[,yyyy]. The x and y parameters following /K must be in
  243. hexadecimal. In xxxx the high byte specifies the shift key combination
  244. and the low byte specifies the scan code of the trigger key.
  245. The yyyy part denotes the config shift key, which is described below.
  246.  
  247. The shift key codes are:
  248.  
  249.   None       - 00
  250.   RightShift - 01
  251.   LeftShift  - 02
  252.   Ctrl       - 04
  253.   Alt        - 08
  254.  
  255. Valid scan codes (in hexadecimal) are:
  256.  
  257.   A - 1E      N - 31      0 - 0B      F1 - 3B      [ - 1A
  258.   B - 30      O - 18      1 - 02      F2 - 3C      ; - 27
  259.   C - 2E      P - 19      2 - 03      F3 - 3D      , - 33
  260.   D - 20      Q - 10      3 - 04      F4 - 3E      / - 35
  261.   E - 12      R - 13      4 - 05      F5 - 3F      \ - 2B
  262.   F - 21      S - 1F      5 - 06      F6 - 40      ] - 1B
  263.   G - 22      T - 14      6 - 07      F7 - 41      ' - 28
  264.   H - 23      U - 16      7 - 08      F8 - 42      . - 34
  265.   I - 17      V - 2F      8 - 09      F9 - 43      ` - 29
  266.   J - 24      W - 11      9 - 0A      F10- 44
  267.   K - 25      X - 2D                  F11- 57
  268.   L - 26      Y - 15                  F12- 58
  269.   M - 32      Z - 2C
  270.  
  271. For example, 0244 means <LeftShift><F10>, 0820 means <Alt><D>, while
  272. 0517,04 means <Ctrl><RightShift><I> with <Ctrl> as config key.
  273.  
  274. Please notice, that although the scan codes for 1-9, A-Z and F1-F10 are
  275. quite dependable, the rest of the scan codes may not work with explicit
  276. keyboard definitions, eg. the danish KEYB,DK.
  277.  
  278.  
  279. 13   config shift key - Key to invoke on-screen configuration
  280.  
  281.  
  282. In the optional yyyy part of the /K option the low byte specifies the
  283. shift key code for on-screen configuration. This is the key you keep
  284. depressed while popping up, when you wish to reconfigure PGRES
  285.  
  286. PROGRESS       A Resident Program Shell                         Page 7
  287.  
  288. interactively. If the code is 0000, the popup of on-screen configuration
  289. is disabled.
  290.  
  291. Please notice, that all of the hexadecimal key values can be generated
  292. for you from the configuration screen.
  293.  
  294.  
  295. 14   /M - Disable swapping message   
  296.  
  297. /M disables the swapping message, which PGRES normally displays whenever
  298. it is swapping to disk or to EMS when it judges that the swap delay
  299. would be noticeable. /M is particularly useful when you're swapping to a
  300. RAM disk.
  301.  
  302.  
  303. 15   /O - Operating system shell   
  304.  
  305. /O lets you switch between the default Program shell, and a DOS shell.
  306. If you do not specify a program name, PGRES will change into activating
  307. a DOS shell, even if this option is not used.
  308.  
  309.  
  310. 16   /R - Parameters to the program
  311.  
  312. /R lets you specify parameters to the program, you want to shell to. By
  313. default it is blank. When this option is placed in the configuration
  314. file, it can contain space characters, which you cannot enter from the
  315. command line. For example the lines
  316.  
  317. /PHS
  318. /R-R -A HELP.HYP
  319.  
  320. in the configuration file will tell HyperShell to open HELP.HYP, and
  321. restart on the frame, it left in HELP.HYP last time, using the
  322. HyperShell restart file RESTART.HSF, with auto-referencing.
  323.  
  324. This option is limited to a length of 66 characters.
  325. $-variables of any kind are allowed in this option.
  326.  
  327.  
  328. 17   /P - Name of program to shell to
  329.  
  330. /P lets you specify the name of the program, you want to shell to.
  331. If it is not fully identified (eg. C:\HYPSHELL\HS.EXE), PGRES must be
  332. able to find it somewhere on the DOS PATH.
  333.  
  334. This option is limited to a length of 66 characters.
  335. $-variables of any kind are allowed in this option.
  336.  
  337.  
  338. 18   /S - Swap file directory   
  339.  
  340. /S specifies an alternate drive and directory for the swap files. The
  341. default location is C:\. All three swap files go to the same place. Note
  342. that the parameter to /S should specify a complete path name, including
  343. a drive and directory but no filename.
  344.  
  345. This option is limited to a length of 66 characters.
  346.  
  347. PROGRESS       A Resident Program Shell                         Page 8
  348.  
  349. $-variables of the environment variable kind are allowed in this option.
  350.  
  351.  
  352. 19   /U - Unload PGRES
  353.  
  354. /U unloads PGRES, if it is found safe to do so.
  355.  
  356.  
  357. 20   /V - Mouse management code   
  358.  
  359. When /V is specified, PGRES doesn't execute its mouse management code.
  360. This option does nothing unless a mouse is installed. By default, PGRES
  361. saves and reinitializes the mouse state before it starts the DOS shell
  362. and restores the mouse before returning control to the underlying
  363. application. For some mouse drivers, notably recent versions of
  364. Microsoft MOUSE.COM and MOUSE.SYS, the call to reinitialize the mouse
  365. takes an annoyingly long time (a second or so). /V removes this delay,
  366. but if you run a program that enables the mouse within your DOS shell,
  367. you may see a phantom mouse cursor when you return to the interrupted
  368. application.
  369.  
  370.  
  371. 21   /Y - Execute directly, or through Comspec
  372.  
  373. The Y option will switch between running programs directly, or through
  374. the DOS Comspec, usually COMMAND.COM. The default for this is DOS
  375. Comspec.
  376.  
  377.  
  378. 22   $-variables - Transferring data to PGRES
  379.  
  380.  
  381. You can transfer data from the running application to PGRES by means of
  382. $-variables. These variables will be evaluated and replaced in the PGRES
  383. configuration at the time of installation or popup.
  384.  
  385. There are four types of $-variables:
  386.  
  387.      $              Word from text cursor position
  388.      $(x,y)         Word from x,y screen position
  389.      $(?prompt)     Ask the user for a value
  390.      $(EnvVar)      Value of environment variable
  391.  
  392.  
  393. 23   Word from text cursor position - $ 
  394.  
  395.  
  396. A $ character without no (parameters) will evaluate to the word under
  397. the text cursor position at the time of popup. The word can consist of
  398. all international letters and numbers.
  399.  
  400. Example: If the word under the cursor is "Test", then the Parameter
  401.          option            /R$.HXP
  402.          will evaluate to  /RTest.HXP
  403.  
  404.  
  405. PROGRESS       A Resident Program Shell                         Page 9
  406.  
  407.  
  408. 24   Word from x,y screen position - $(x,y) 
  409.  
  410.  
  411. A $ character with an (x,y) pair as parameter will evaluate to the word at
  412. the the absolute screen position at the time of popup, where x is the
  413. column and y is the row. The top left position is numbered (1,1). The
  414. word can consist of all international letters and numbers.
  415.  
  416. Example: If the word under position 78,25 is "PCF", then the Parameter
  417.          option            /R$(78,25).EXE
  418.          will evaluate to  /RPCF.EXE
  419.  
  420.  
  421. 25   Ask the user for a value - $(?prompt)
  422.  
  423.  
  424. A $ character where the first character of the (parameter) is ? will
  425. evaluate to the answer, the user gives to a prompt. The text after "?"
  426. will be used as prompt. If no prompt is defined, ie. $(?), will prompt
  427. the user will be prompted with "Enter parameters:".
  428.  
  429. Example: The Program option     /P$(?Enter program name:)
  430.          will prompt the user with "Enter program name:", and use the
  431.          answer as the program call.
  432.  
  433. Please note, that the prompt contains spaces. This can be obtained by
  434. placing the option in a PGRES.CFG file.
  435.  
  436.  
  437. 26   Value of environment variable - $(EnvVar)
  438.  
  439.  
  440. If the parameter to a $ character is neither a screen coordinate nor a
  441. prompt, PGRES will check the DOS environment for a variable value. The $
  442. parameter will evaluate to this value, or to a blank, if no value exists.
  443.  
  444. You can use this feature to define options with spaces from DOS, or a
  445. batch file. As an example, see the lines
  446.  
  447.     set frame=Additional information
  448.     PGRES /PHS /Rhelp $(frame)
  449.  
  450. which will configure PGRES for the HyperFile "HELP.HYP" starting on the
  451. frame "Additional information".
  452.  
  453. You can also use this to define a swap file path.
  454.  
  455.  
  456. 27   Examples - PGRES command line examples
  457.  
  458. Here are some examples of PGRES command line options:
  459.  
  460. PGRES /F90 /PHS
  461.   Installs PGRES to start HS, searching by default for HOME.HYP, with
  462.   about 90K bytes available, which often is enough. The actual amount
  463.   will vary slightly depending on the version of DOS.
  464.  
  465.  
  466. PROGRESS       A Resident Program Shell                         Page 10
  467.  
  468. PGRES /F200 /O
  469.   Installs PGRES to support a DOS shell with about 200K bytes free. The
  470.   actual amount will vary slightly depending on the version of DOS.
  471.   PGRES will need about 256K bytes of EMS space, or 450KB of disk space
  472.   with dual file swap, or 245KB of disk space with single file swap.
  473.  
  474. SET TMP=G:\
  475. HSRES /D /1 /A /M /S$(TMP)
  476.   Forces PGRES to swap to disk, using single file swapping, leaving the swap
  477.   file visible, turning off the swap message, and locating the swap file in
  478.   the root directory of drive G (which is presumably a RAM disk).
  479.  
  480. HSRES /K0844 /R$(?Options:)
  481.   PGRES will activate when <Alt><F10> is pressed, and ask for options.
  482.  
  483. PGRES /U
  484.   Unloads PGRES.
  485.  
  486. PGRES /?
  487.   Displays the PGRES command line options.
  488.  
  489.  
  490.  
  491. 28   Using PGRES - How to use the installation/popup program
  492.  
  493. ------- Using PROGRESS ----------------------------------------------------
  494.  
  495. You install PROGRESS with the PGRES program. Once has been installed,
  496. just press the hot key. After a short swapping delay, the screen will
  497. clear and the configured program or the DOS prompt will appear. When you
  498. want to return, just exit from the program or type EXIT from the DOS
  499. command line to return to the interrupted application.
  500.  
  501. If you, after pressing the hot key, keep the config shift key depressed
  502. while PGRES is popping up, it will enter the on-screen configuration
  503. described below.
  504.  
  505. If PGRES cannot shell when you request it, it will beep and return to
  506. the current application.
  507.  
  508.  
  509.  
  510. 29   the PGR program - Checking for PGRES
  511.  
  512.  
  513. Popup from the DOS command line is not possible, but you can run the
  514. small PGR program, and then pop up PGRES. When inside PGR, you can write
  515. a word, to be transferred to PGHSRES as word from text cursor position.
  516.  
  517. You can also use PGR to check, whether PGRES is installed or not, by the
  518. call:
  519.  
  520. PGR ?
  521.  
  522. PGR will return a value which can be tested by the DOS errorlevel.
  523. 0 means PGRES not installed, 1 means PGRES currently installed. See the
  524. enclosed EXAMPLE.BAT for ways to use this feature.
  525.  
  526.  
  527. PROGRESS       A Resident Program Shell                         Page 11
  528.  
  529. Exception: The on-screen configuration can be popped up (by keeping the
  530. config shift key depressed after pressing the hot key combination) even
  531. from the DOS command line.
  532.  
  533.  
  534.  
  535. 30   Configuration - On-screen configuration    
  536.  
  537. ------- Configurating PGRES --------------------------------------------
  538.  
  539. The configuration screen can be entered by writing PGRES /C on the
  540. command line, or by keeping the config shift key depressed while popping
  541. up, until the screen shows up. If you release the key before the screen
  542. emerges, the popup will continue without configuration.
  543.  
  544. On the configuration screen you can see the current values of the PGRES
  545. options. By pressing the key corresponding to an option you are allowed
  546. to change this option, by switching or by entering a new value.
  547.  
  548. You can define the popup key (option K) by pressing the hotkey
  549. combination, and then confirming by pressing the main key again, without
  550. Alt, Ctrl or Shift keys. If the combination is accepted, you are
  551. prompted to define the config shift key, or to disable popup
  552. configuration.
  553.  
  554. PGRES will show both the hotkey combination and the hexadecimal
  555. representation.
  556.  
  557.  
  558. 31   Exit keys - How to end on-screen configuration
  559.  
  560.  
  561. You can exit by pressing "X" (or "U" for unload).
  562.  
  563. After pressing X, you are prompted to press G og Q to Go on, or Quit.
  564.  
  565. If you choose to go on, one of two things may happen:
  566.  
  567. 1. If you entered the screen while popping up, the "Program options",
  568.    eg. the /P program name, will immediately be activated at the next
  569.    popup. The rest of the options, the "swapping options" will, if
  570.    written to the CFG file, be activated after the next PGRES
  571.    installation.
  572.  
  573. 2. If you entered the screen from the command line by PGRES /C, all
  574.    options will be activated in the installation.
  575.  
  576. If you choose to quit, the pop up or installation is terminated.
  577.  
  578. You can use the "G" og "Q" keys as short cuts directly from the
  579. configuration screen.
  580.  
  581.  
  582. 32   unload - How to remove PGRES from memory
  583.  
  584.  
  585. The "U" key is used to unload or avoid installing PGRES, before exiting
  586. on-screen configuration.
  587.  
  588. PROGRESS       A Resident Program Shell                         Page 12
  589.  
  590.  
  591. PGRES will only unload itself, if it is safe to do so. If it is unsafe,
  592. the U option will not be shown on the configuration screen.
  593.  
  594. After a successfull unload, all memory and disk space used by PGRES will
  595. again be free.
  596.  
  597. You can also unload PGRES from memory by typing PGRES /U from the DOS
  598. command line. The unload will succeed only if no TSRs that grab
  599. interrupt vectors have been loaded after PGRES. PGRES will also refuse
  600. to unload if you try to do so from within its own DOS shell.
  601.  
  602.  
  603. 33   PGRES.CFG - Configuration file    
  604.  
  605.  
  606. If you during on-screen configuration press the "W" key, PGRES will
  607. write the current configuration into a file called PGRES.CFG. You are
  608. prompted to specify whether the file shall be written in the directory,
  609. that was current when PGRES was installed, or in the program directory
  610. where PGRES.EXE is found. The CFG file is an Ascii file, containing an
  611. option on each line of the file. You may edit it with any Ascii editor.
  612.  
  613. PGRES allows comments, in the form of lines starting with a ";".
  614.  
  615. When PGRES is called from the command line, it looks first for options
  616. in this file. It is searched, first in the current directory, and, if
  617. not found here, in the PGRES program directory. PGRES validates the
  618. options, and uses them, if they are OK. Options in the PGRES.CFG file
  619. can be overruled by entering options on the command line.
  620.  
  621. If you rename the PGRES.EXE file, the new name will be used for the CFG
  622. file as well.
  623.  
  624.  
  625.  
  626. 34   Restrictions - What you can't do  
  627.  
  628. ------- Restrictions ---------------------------------------------------
  629.  
  630. PGRES may not be loaded "high" using such utilities as QEMM, QRAM, or
  631. 386MAX. PGRES requires a large amount of contiguous RAM space that must
  632. immediately follow its kernel in memory.
  633.  
  634. Like any swappable TSR, PGRES should not be loaded before programs or
  635. TSRs that contain hardware interrupt handlers. Examples include network
  636. shells, asynchronous communications programs, and multitasking operating
  637. systems.
  638.  
  639. You may not pop up PGRES when you're at the DOS command line. (This is
  640. not a critical restriction, of course, but it's the first thing that
  641. most people try.) PGRES protects itself against such a request and just
  642. beeps and returns to the command line. The limitation arises because of
  643. the way DOS manages its internal stacks. For related reasons, you may
  644. not shell to DOS while you're at the DEBUG or EDLIN command line.
  645. Similarly, you may not shell to DOS when you're within another TSR that
  646. was popped up at the DOS command line. The techniques PGRES uses to
  647. detect that it was popped up at the command line may be fooled by
  648.  
  649. PROGRESS       A Resident Program Shell                         Page 13
  650.  
  651. multitasking operating systems such as DesqView; use PGRES carefully in
  652. these situations.
  653.  
  654. You may not pop to DOS from within a program operating in graphics mode.
  655. This is not a limitation of the swappable TSR itself; PGRES simply
  656. doesn't know how to save and restore the state of a graphics screen.
  657.  
  658. Do not install another TSR while within a PGRES shell. The most likely
  659. result will be a system hang when you return from the shell.
  660.  
  661. As mentioned above, PGRES can't be used with DOS 2.x.
  662.  
  663.  
  664. 35   Acknowledgments - To whom do I owe thanks
  665.  
  666. ------- Acknowledgments ------------------------------------------------
  667.  
  668. I couldn't have made this program without the features in Turbo Powers
  669. fantastic Object Professional package. Especially their POPDOS example
  670. program was a great help to me.
  671.  
  672. I wouldn't have made this program, if Nick Taylor hadn't written such a
  673. great hypertext system, HyperShell. It just HAD to have a resident
  674. option to make it's possibilities even greater, so I made HSRES, a
  675. resident shell for HyperShell. PROGRESS is generalized from HSRES, to
  676. allow a similar powerful residency for other programs, too.
  677.  
  678.  
  679. 36   Shareware - The Shareware distribution method
  680.  
  681. PROGRESS is a Shareware product. Shareware is a distribution method, not
  682. a type of software. With Shareware you get the ultimate money-back
  683. guarantee...if you don't use the product, you don't pay for it.
  684.  
  685. Shareware is not free software. Copyright laws apply to both Shareware
  686. and commercial software, and the copyright holder retains all rights,
  687. with a few specific exceptions as stated in this document. Shareware
  688. authors are accomplished programmers, just like commercial authors, and
  689. the programs are of comparable quality. (In both cases, you will find
  690. good programs and bad ones!) The main difference is in the method of
  691. distribution. The author specifically grants the right to copy and
  692. distribute the SHAREWARE VERSION of the software to anyone as long as no
  693. remuneration is received for the distribution of the software unless
  694. permission is granted in writing by the author.
  695.  
  696. Shareware distribution gives users a chance to try software before
  697. buying it. If you try a Shareware program and continue using it, you are
  698. expected to register the software with the author. With
  699. registration, you will receive the latest version of the software
  700. without the evaluation titles and messages. With shareware you are
  701. able to try the software on your computer with your own set of
  702. peripherals, the only way to know if it will function in your own
  703. environment. After deciding that PROGRESS is a software product that you
  704. will use, then and only then do you pay for it. The ultimate trust from
  705. the author! When you do pay for the software, you pay only for the
  706. software, not for advertisement for the software which can cost many
  707. times what the software actually costs.
  708.  
  709.  
  710. PROGRESS       A Resident Program Shell                         Page 14
  711.  
  712.  
  713. 37   License - License Agreement
  714.  
  715.  License Agreement
  716.  ------------------
  717.  
  718.  By installing PROGRESS on your system, you indicate your agreement to
  719.  the following terms and conditions. If you do not agree to these
  720.  conditions, you should not install and use the PROGRESS system.
  721.  PROGRESS, and the accompanying supporting programs and documentation
  722.  will be collectively referred to as PROGRESS.
  723.  
  724.  Users of PROGRESS must accept this disclaimer of warranty: "PROGRESS is
  725.  supplied as is. The author disclaims all warranties, expressed or
  726.  implied, including, without limitation, the warranties of
  727.  merchantability and of fitness for any purpose. The author assumes no
  728.  liability for damages, direct or consequential, which may result from
  729.  the use of PROGRESS."
  730.  
  731.  PROGRESS is a "shareware program" and is provided at no charge to
  732.  the user for evaluation. Feel free to share the SHAREWARE VERSION with
  733.  your friends, but please do not give it away altered or as part of
  734.  another system. The essence of "user-supported" software is to provide
  735.  personal computer users with quality software without high prices, and
  736.  yet to provide incentive for programmers to continue to develop new
  737.  products. If you find this program useful and find that you are using
  738.  PROGRESS and continue to use PROGRESS after a 30 day trial period, you
  739.  must make a registration payment to Werner Knudsen, or any
  740.  authorized agent. The registration fee will license one copy
  741.  for use on any one computer at any one time. You must treat this
  742.  software just like a book. An example is that this software may be used
  743.  by any number of people and may be freely moved from one computer
  744.  location to another, so long as there is no possibility of it being
  745.  used at one location while it's being used at another. Just as a book
  746.  cannot be read by two different persons at the same time.
  747.  
  748.  Commercial users (every user except personal users) of PROGRESS must
  749.  register and pay for their copies of PROGRESS within 30 days of first
  750.  use or their license is withdrawn. Site-License arrangements may be
  751.  made by contacting Werner Knudsen, or any authorized agent. Rights to
  752.  distribute PROGRESS with your own applications may be obtained by
  753.  contacting Werner Knudsen, or any authorized agent.
  754.  
  755.  Anyone distributing PROGRESS for any kind of remuneration must first
  756.  contact Werner Knudsen at the address on the title page for
  757.  authorization.
  758.  
  759.  You are encouraged to pass the SHAREWARE VERSION of PROGRESS along to
  760.  your friends for evaluation. Please encourage them to register their
  761.  copy if they find that they can use it. All registered users will, upon
  762.  registration, receive a copy of the latest version of PROGRESS.
  763.  Distribution of registered copies of PROGRESS is a violation of
  764.  copyright laws.
  765.  
  766.  
  767. PROGRESS       A Resident Program Shell                         Page 15
  768.  
  769.  
  770. 38   Registration - Registration Fees And What You Get
  771.  
  772.  
  773. To register your copy of PROGRESS, print the file PROGRESS.REG, complete
  774. this form, and send along with your registration fee to Werner
  775. Knudsen. You will receive the latest version of the program along with
  776. the latest documentation. The fully registered version of the program
  777. removes all references to evaluation. Registered users will receive
  778. notice of all updates made to the program and these updates will be
  779. supplied to registered users for a nominal charge. Every effort will be
  780. made to supply updates to registered users at the lowest possible cost.
  781.  
  782. The evaluation version of PROGRESS contains 100% of the capabilities of
  783. the registered version. Those who register PROGRESS will receive the
  784. latest release of the software and documentation and will receive update
  785. offers in the mail at a minimal cost as they become available.
  786.  
  787. The registration fees for PROGRESS are noted on the registration form.
  788. Prices are subject to to change without notice.
  789.  
  790.  
  791. 39   Software Support - How do you get help?
  792.  
  793.  
  794. If you are a registered user, support for PROGRESS may be obtained by
  795. writing to Werner Knudsen. The support is chargeable on a time and
  796. materials basis at mutually agreed rates.
  797.  
  798. Bug reports and suggestions for improvements are welcomed from all
  799. users, including unregistered users evaluating the product.
  800.  
  801. All bug reports and problems from registered users will be responded to.
  802. All problems should be posted to the provided address. Full details of
  803. problems should be included, along with descriptions of the actual PGRES
  804. configuration, if this would be of assistance in solving a problem. Bug
  805. reports should indicate the full circumstances of the bug, including the
  806. machine type, monitor type, the version of PROGRESS, the memory size,
  807. the version of MSDOS (or DRDOS), details of resident programs, and any
  808. other relevant information.
  809.  
  810.  
  811. 40   History - PROGRESS version history
  812.  
  813. ------- PROGRESS Version History ---------------------------------------
  814.  
  815. Version 1.10  14.apr.1991
  816.   Added $-variables in configuration parameters.
  817.  
  818.   Improved exit from configuration screen. Removed bug when changing
  819.   free bytes at installation time.
  820.  
  821. Version 1.00   4.apr.1991
  822.   First official release.
  823.  
  824. PROGRESS                      INDEX
  825.  
  826. $-variables - Transferring data to PGRES                              8
  827. /1 - Single swap file                                                 5
  828. /A - Visible / hidden swap files                                      5
  829. /C - View or change PGRES configuration                               5
  830. /D - Use Disk when EMS is available                                   5
  831. /F - Free Kbytes for shell                                            6
  832. /K - Popup HotKey                                                     6
  833. /M - Disable swapping message                                         7
  834. /O - Operating system shell                                           7
  835. /P - Name of program to shell to                                      7
  836. /R - Parameters to the program                                        7
  837. /S - Swap file directory                                              7
  838. /U - Unload PGRES                                                     8
  839. /V - Mouse management code                                            8
  840. /Y - Execute directly, or through Comspec                             8
  841. Acknowledgments - To whom do I owe thanks                             13
  842. Ask the user for a value - $(?prompt)                                 9
  843. Configuration - On-screen configuration                               11
  844. Default - The default behavior                                        4
  845. Examples - PGRES command line examples                                9
  846. Exit keys - How to end on-screen configuration                        11
  847. History - PROGRESS version history                                    15
  848. Installation - How to install PGRES                                   4
  849. License - License Agreement                                           14
  850. Options - Description of command line options                         4
  851. Overview - The PROGRESS system                                        3
  852. PGRES.CFG - Configuration file                                        12
  853. Registration - Registration Fees And What You Get                     15
  854. Restrictions - What you can't do                                      12
  855. Shareware - The Shareware distribution method                         13
  856. Software Support - How do you get help?                               15
  857. Using PGRES - How to use the installation/popup program               10
  858. Value of environment variable - $(EnvVar)                             9
  859. Word from text cursor position - $                                    8
  860. Word from x,y screen position - $(x,y)                                9
  861. config shift key - Key to invoke on-screen configuration              6
  862. the PGR program - Checking for PGRES                                  10
  863. the PGRES program - General information                               3
  864. the PROGRESS system - A Resident Program Shell                        1
  865. unload - How to remove PGRES from memory                              11
  866.