TC-Patch V1.2
			       ~~~~~~~~~~~~~~~
		       Turbo-Copy-Patch for Filemanagers
		      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


   This program is freeware. Copyright by Tobias Winkler.
   Free for private use. Contact me before commercial use.

   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   !! Attention:                                                           !!
   !! ~~~~~~~~~~                                                           !!
   !! I wont provide any warranties about this program!                    !!
   !!                                                                      !!
   !! I WILL NOT BEAR ANY RESPONSIBILITIES FOR ANYTHING WHAT COULD HAPPEN! !!
   !!                                                                      !!
   !! This program will intercept and take over certain system-activities. !!
   !! A bug there can result in loss of data.                              !!
   !! I can not guarantee that the program is free of bugs!                !!
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

   If you want to reach me, see at the end of this file.

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³-What is TC-Patch?-³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
 TC-Patch, or TurboCopy-Patch, is a patch for common filemanagers like
 NortonCommander or UFO, which will speed up their copy-function by
 about 35% (UFO) or up to 75% (NC).

 NC and UFO are already supported by the default-configuration. But you
 can adjust TC-Patch to any other file-manager.

 How much it actually accelerates the copying-process of a certain program
 depends mainly on the fact, how optimized this program does it itself.
 For example, NortonCommander does it very unoptimized, so that copying
 needs only about 25% of the original time, if TC-Patch is working.
 UFO again does it better, and so can only be improved to do it in 65% of
 the normal time.
 And Volkov Commander (at least V4.99) uses an that optimized algorithm,
 that TC-Patch is only slightly faster, and sometimes even slower. (will
 have to work on that ;)
 Just try it with your favorite file-manager...

 TC-Patch will be installed as a TSR (just run it once to install, and
 again to uninstall).
 If installed, it will need about 2KByte of your base-memory, but can
 be loaded high.
 During the copy-process, it will need EMS-memory (at least 64KByte free),
 so you'll need an installed EMS-driver (e.g. EMM386 *without* NOEMS-
 switch).
 But the EMS-mem is really only needed *during* copying, so that it
 doesn't reduce the amount of available memory.

ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³-How does it work?-³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
 TC-Patch will intercept file-operations and try to recognize if it is
 part of a copy-action. The only possibility to recognize this for sure,
 is to test certain positions on the screen for certain text.

 This works, because all the known file-managers display a window, where
 they give information about their task and visualize the copy-progress.

 The drawback is, that they all have (sometimes only slightly) different
 output, so that I can't make a patch, working for all programs by default.
 You will have to give TC-Patch the information, where and what it shall
 search for on the screen. But more about this later.

 When recognizing a copy-action, TC-Patch will take over, and read (in a
 very efficient way) as much as it can into a buffer, located in the EMS-
 memory, and, when the buffer is full, then write the buffer to the
 target-file, repeating this until the complete file is copied.

 Attention: There are problems with drives whose drivers are using DMA-
 transfer, because DMA-transfer to/from EMS-memory (paged memory) is
 not allowed, and usually result in fatal-error-messages from your
 EMS-driver.
 As far as I know, the only drives affected are floppy-drives and maybe
 some CD-ROM-drives...
 Because of this TC-Patch can exclude certain drives, which will be
 treated as usual then (means: not accelerated).
 You can change the list of excluded drive in the TCCFG.DAT (see "Setting
 options" below.) The default list consists of A: and B:, which are
 usually floppy-drives.

 Going on....

 At this point, the program doesn't know yet that all the work is done
 already (because TC-Patch really completely took over... :-)), and
 still goes on copying. But that's no problem, because TC-Patch also
 intercepts this, and makes the program just think it's file-operations
 are working, while ignoring them and just returning the information the
 program expects.

 The only difference you would realize would be, that the copying begins,
 and the progression-display makes the first step, but then stopping for
 a time (depending on how large the file is) while the hard-disk is working,
 and suddenly quickly filling the last steps of the progression-bar.

 The other thing would be that pressing the ESC-key or the Ctrl-Break-combo
 wouldn't stop the copying immediately, but only then when it's done.

 Both problems (if you can call them "problems") are fixed too:

 The progression-bar will be updated by TC-Patch itself (it will try to
 locate the bar automatically) so that you shouldn't see a big difference
 (except, that it is filling faster ;). But TC-Patch will just use a
 slightly different character for filling the bar. It's a small dot, which
 shall signal, that it's active and took over. (But you can make it us a
 different character if you want. Just see "Setting options" below.)

 TC-Patch will recognize when ESC or the Ctrl-Break combination was pressed,
 and then will stop the current operation (in a recoverable way), and return
 the control to the program again.
 This way, breaking the copy-process works as usual, except the difference,
 that I currently can't stop it, if it is just writing the buffer-contents.
 (Maybe I will fix this in a future release.)
 This will delay the reaction, until it is done writing.


 Oh, by the way: By default there is an option activated, which will prevent
 TC-Patch from recognizing the copy-action, when the right shift-key is
 pressed when starting copying. Then the copying will work as if TC-Patch
 wouldn't be installed.
 This is a possiblity for you to disable TC-Patch temporarily, whyever.
 This feature can be disabled, by setting SHIFTDISABLE in TCCFG.DAT to 0.


ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³-Setting options for TC-Patch-³
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
 TC-Patch can be configured by editing the textfile TCCFG.DAT, and then
 transfering the options to TC-PATCH by running TCCFG.EXE.

 Mainly you will have to provide information about the filemanager you use.
 As said before, TC-Patch needs to know how it can *clearly* recognize the
 copying by testing the screen-contents.

 If you are using a program already known to TC-Patch (means, that this
 program has already a defined set of options in TCCFG.DAT) you will just
 have to edit the USED= settings, and provide the IDs for up to 2 programs
 in that line.
 I included support for 2 programs, because I can imagine (because I do)
 that some people are using not only one filemanager, just because there
 still isn't the perfect one. But not more than 2, to keep TC-Patch small
 and fast.

 Following is a list of known programs and their ID for the USED= option:

   program			  ³ ID
  ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄ
   Norton Commander V3.0 (English)³ NC3E
   Norton Commander V4.0 (English)³ NC4G
   Norton Commander V5.0 (English)³ NC5G
   UFO (V96)             (German) ³ UFOG

 Sorry that there aren't more, but I don't have access to other programs.
 So, if you add settings for another program, please tell me, so that I
 can include them in the next release.

 If your favorite program is not in this list, you can try to add own
 settings for it.
 You just have to provide the information *WHERE* TC-Patch can find *WHICH*
 text on the screen during the program is copying.

   Important is, that the text at this position really clearly signals a copy-
   action. Make sure it can't appear at this position, when no copying is
   in progress.

   The best choice seems to be the title of the info-window, which appears
   during copying, including 1 or 2 characters of the window-frame, just to
   be sure.
   The typical title is "Copy". (what a coincidence ;)
   But this idea keeps another problem, apart from the  problem:

   A file-move (usually named Rename/Move) across drives is a copying-action
   too. (with a following delete.... delete of the source-, not of the target-
   file, of course )
   And this move-action uses a nearly identical info-window, identical except
   the window-title.

   So, if you want to speed up these move-actions too (and I know you want :)
   you have to provide their text (usually "Move", again coincidential?) and
   it's position, too.

   Now that you have the text (e.g. "ÍÍ Copy ÍÍ") and it's position (e.g. 34
   chars to the right, and 5 lines down) you will add a line like the
   following to the end of the TCCFG.DAT (or at least behind the USED= entry).

   NC3E=34,5,"ÍÍ Copy ÍÍ",34,5,"ÍÍ Move ÍÍ"

   As you can see, the first word (NC3E) is the identifier (ID) of the related
   program, followed by the position, beginning with the horizontal position,
   counted from the left and begining with 0, and then the vertical position,
   counted from the top, and begining with 0, too.
   Then comes the actual text, (will be compared CASE-SENSITIVE!) which
   must be enclosed by quotation-marks.

   Following is a second set of position and text, which is used for a
   secondary function, also using the copy-function, and usually take to
   identify the Move-action.

   Some tips for obtaining these infos:
    - select a relatively big file and begin copying it
    - when the info-window appears, just hit the PAUSE-key
    - and now choose the position, where the text you want begins
       (you could mark it with the mouse-cursor, if it is active)
    - now remember the text really exactly (including the frame-characters,
       spaces and case (capitals))
    -  (maybe you should notice it on paper)
    - now begin counting the characters (choose a line with simply countable
	contents)
      If you are using a NC-style program, begin counting from the right-edge
      vertical line of the left panel. This line is usually at position 39
      and typically very close to the wanted text. Just count down to the
      left, until you reached your text.

    - now just count the lines until you text, which is quite easy

    - DON'T forget, that the first line, and the first character too, has
      position-number 0, which means ZERO, and not 1!

    - better notice these numbers too

    - now just hit ESC twice (1. to end the PAUSE-mode, 2. to stop copying)

    - And now you should repeat this while MOVING a big file
    - it's important that you move it to a different drive, else it is
      no copy-operation, and can produce different screen-output


 Sorry for this awkward procedure, but I currently have no time to make it
 simplier.
 Future versions of TCCFG will get a function which will make this much
 easier...

 Ok, other options are:

  ExclDrv=  which will define a list of drives (divided by commas)
	     which are excluded from the acceleration by TC-Patch
	     Excepted is any drive-name from A: to Z: (with or
	     without a colon) and from [: to `:
	    Default is A:,C:


  ShiftDisable=  If set to 0 (zero) the 
		  is disabled.
		 Default is 1

  PrgChar=  The character which is used to fill the progression-bar, and
	     signal that TC-Patch is working. This char must be enclosed
	     by quotation-marks.
	    Default is "ú"


 And as mentioned above:

  Used=  which will accept up to two IDs of programs whose copy-actions
	  will be accelerated.

	 Example: Used=NC3E,UFOG



 Ok, I think that's all for now... If there are questions left, just ask.



ÚÄÄÄÄÄÄÄÄÄ¿
³-Contact-³
ÀÄÄÄÄÄÄÄÄÄÙ
 If you want to reach me:

!! Attention: both of the following addresses will be valid until March '98 !!
!! only. (At least I hope so, because I'm going to begin my studies in	    !!
!! computer-science then. :-)						    !!
!! But you can try to reach me at my backup-address:			    !!
!!   tobias_winkler@rocketmail.com					    !!


	My Fido-Net address is:
		Tobias Winkler@2:2411/901.38  (Bummi-Box,Frankfurt/Oder)

	By Internet-EMail I can be reached at this address:
		Tobias_Winkler@p38.f901.n2411.z2.sesom.de

	If you cannot reach me there, try my backup-address:
		tobias_winkler@rocketmail.com


	Or via snail mail: Tobias Winkler
			   G.-Hauptmann-Str. 17
			   15234 Frankfurt (Oder)
			   Germany


Bye,
	TW. 

    Source: geocities.com/siliconvalley/sector/5552/others

               ( geocities.com/siliconvalley/sector/5552)                   ( geocities.com/siliconvalley/sector)                   ( geocities.com/siliconvalley)