@DATABASE EasyPatch.guide @NODE MAIN "EasyPatch 1.40" @{B}EasyPatch 1.40@{UB} * The Requester Destroyer * Copyright 1995-98 by Alessandro Zummo All Rights Reserved CardWare @{I}The Final Release@{UI} Winners, support the CardWare concept @{"Introduction " Link "Intro" } What is EasyPatch @{"Copyright " Link "Copy" } Legal info @{"Installation " Link "Installation" } How to get going? @{"Configuration" Link "Configuration" } Preferences @{"Usage " Link "Usage" } Read this! @{"Utilities " Link "Easy" } Support programs @{"Interactive " Link "WWW" } @{B}Interactive Page!@{UB} @{"Tips " Link "Tips" } :-) @{"Known bugs " Link kb } :-( @{"MUI " Link "MUI" } About MUI @{"Author " Link "Author" } The programmer @{"Greetings " Link "Greetings" } Who have contacted me @{"History " Link "History" } Changes are listed here @ENDNODE @NODE Intro "Introduction" EasyPatch is a proggy that is able to cancel some types of requesters before they are opened. EasyPatch patches the following functions (in a system-compatibile way): reqtools.library /rtEZRequest() intuition.library/EasyRequest() intuition.library/AutoRequest() muimaster.library/MUI_Requester() Here is an @{"example" LINK "Requesters.iff/Main"} of requesters generated by these functions. EasyPatch can also deal correctly with the requesters that change their gadgets. And finally.... EasyPatch is @{"CARDWARE" Link "Author"} Oh.. i've seen a lot of cracked versions of EasyPatch...simply useless..you can get the full version from my homepage. @ENDNODE @NODE Copy "Copyright" This software is subject to the "Standard Amiga FD-Software Copyright Note" It is Cardware as defined in paragraph 4c. If you like it and use it regularly please send a postcard to the @{"author" Link Author}. For more information please read @{"AFD-COPYRIGHT" Link "AFD-COPYRIGHT/Main"}. EasyPatch is Copyright © 1995-1998 By @{"Alessandro Zummo" Link Author}. All the support utilities are Copyright © 1995-1998 by @{"Alessandro Zummo" Link Author}. ClipWrite is Copyright © 1997 by Jody Tierney @ENDNODE @NODE kb "Known bugs" Stefan Haase has signaled me an incompatibility of EasyPatch with DiskSalv 11.32. He said that DiskSalv goes in guru when clicking on the Device Information gadget after the end of any disk operation. Unluckly my copy of DiskSalv (Aminet) behaves correctly. If anyone notice such a bug, or any other bug, feel free to write me at my email address. Thanks. @ENDNODE @NODE Installation "Installation" 1) Delete old versions of EasyPatch & EasyList 2) Use the supplied installer script 3) Run the config script when a requester that you would cancel is opened 4) Send a postcard to the @{"Author" Link "Author"} @ENDNODE @NODE Usage "Usage" EasyPatch can be started both from workbench and from a CLI. If something goes wrong you will see an error message, else you should send a postcard to the @{"Author" Link "Author"}. @ENDNODE @NODE Configuration "Configuration" NOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTE You can't use these keywords as command line arguments!!!!!!!!!!! You can insert these keywords only in the configuration file which, for default, is @{I}S:EasyPatch.List@{UI} NOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTENOTE (See also @{"Tooltypes" Link "Tooltypes"}) The config file is should have @{B}one@{UB} entry for line, in the following format: TITLE/A,TEXT/A,RC=RETURNCODE/N,AT=ALL_TOGETHER/S,CS=CASE_SENSITIVE/S,PRESSGAD/K, TIMES/N/K,PERIOD/N/K: All AmigaDos wildcards are supported in TITLE & TEXT TITLE/A = The title of the requester to be suppressed. TEXT/A = The text of the requester to be suppressed. @{"RC/N" Link Tips} = The code to be returned to the calling program. AT/S = Suppress the requester only if both TEXT & TITLE matches. CS/S = The comparison is maded case-sensitivly. PRESSGAD/K = EasyPatch returns to the calling program by pressing the gadget selected with this option (This is useful for requesters with mutant gadgets). This option overrides RC. However RC is little faster and less expensive than PRESSGAD. TIMES/N/K = These parameters are used to choice how many PERIOD/N/K = TIMES a requester should be patched in a PERIOD of seconds. If the requester will be intercepted by EasyPatch too many times in the period, it will be opened and the counter will be zeroed. (Better you enclose the TITLE and the TEXT string between two #?) Line starting with ';' are treated as @{B}comments@{UB} Examples: #?Alex#? #?Kill#? AT EasyPatch destroys all requesters that have Alex in the title @{B}AND@{UB} Kill in the text. #?Alex#? #?Kill#? EasyPatch destroys all requesters that have Alex in the title @{B}OR@{UB} Kill in the text. #?Alex#? #?Kill#? AT RC=3 EasyPatch destroys all requesters that have Alex in the title @{B}AND@{UB} Kill in the text and returns 3 to the calling program. #?Alex#? #?Kill#? AT PERIOD=60 TIMES=3 This requester will be patched only three times in a period of 60 seconds, starting from the first time the requester will be intercepted by EasyPatch. The fourth time the requester will be opened and the counter will be zeroed, so it can be patched another three times in a period. @ENDNODE @NODE Tooltypes "Tooltypes" Name Default Type Description ---------------------------------------------------------------------------- CX_HOTKEY lcommand esc STRING The hotkey of the commodity CX_PRIORITY 0 NUMERIC The priority of the commodity INTUITIONPATCH YES BOOL Intuition patch MUIPATCH NO BOOL MuiMastes patch REQTOOLSPATCH NO BOOL ReqTools patch WARNIFNOEXIT YES BOOL You'll be warned if something goes wrong... PATCHLIST s:EasyPatch.List STRING Config file ToolTypes can also be used as arguments in the command line (but only if they are enclosed in double quotes): Example: EasyPatch "CX_HOTKEY=rcommand esc" "MUIPATCH=YES" @ENDNODE @NODE Easy "Support Utilities" @{B}EasyList@{UB} - Lists preference entries This utility can be called both from wb and cli @{B}EasyStat@{UB} - Gives some info about the status of EasyPatch This utility can be called both from wb and cli @{B}EasyConfig@{UB} - Only for internal use by the installation script @ENDNODE @NODE Tips "Tips" @{I}About Versions & Revisions@{UI} @{"Vers & Revs" Link "VR"} @{I}How to identify a @{"requester" LINK "Requesters.iff/Main"}@{UI} It's really simple! Launch EasyStat before and after the requester has appeared. If you'll see a change in the "Intercepted" voice you can be sure that is a requester. @{I}How to calculate the RC for a gadget@{UI} Ok.. let's start! THIS IS A REQUESTER...er.. ok...maybe.... / / / +---------------------------+ |Alex | +---------------------------+ | +-----------------------+ | | | | | | | TRY TO KILL ME! | | | | | | | | | | | +-----------------------+ | | Gad1 Gad2 Gad3 Gadn Gad0 | +---------------------------+ Gad? are gadgets.... The RC for Gad 1 is 1 The RC for Gad 2 is 2 The RC for Gad n is n The RC for the last gadget (Gad0) is 0 The general rule is: The RC for the rightmost gadget is always 0, the others gets the RC in base of their position. So, if you want that EasyPatch presses the second gadget (Gad2) write RC=2 mmm...if this is too difficult, you can 1) Write to the author 2) Use the PRESSGAD option @ENDNODE @NODE Author "Author" Snail mail: Alessandro Zummo Via S. Francesco d'Assisi, 27 10122 - Torino Italy ----------------------------------------------- Send me a postcard!!! You'll make me happy!!!!! ----------------------------------------------- Internet: azummo@ita.flashnet.it Homepage: http://freepage.logicom.it/azummo/ If my email address should change you should be able to find the new one with a simple search on Altavista or on my homepage. @{"Use the interactive page to perform TCP actions!" LINK "WWW"} @ENDNODE @NODE WWW "Interactive Page" @{I}This is probably the first AmigaGuide Interactive page!@{UI} From here you can send an @{B}e-mail@{UB} to the author using @{"Yam" RX "SendMail.rexx Yam"}, @{"IBrowse or Voyager" RX "SendMail.rexx"}, or simply past the address to the @{"clipboard" RX "SendMail.rexx Clip"}, or you can click @{"here" RX "GotoHomePage.rexx"} to fly to the @{B}homepage@{UB} with IBrowse, Voyager and AWeb or simply copy the address to the @{"clipboard" RX "GotoHomePage.rexx Clip"}. Note 1: Be sure your browser is loaded @{B}before@{UB} clicking on the buttons. Note 2: I've seen some clones of this page somewhere in the archives I downloaded from the net. I'm happy of this, but give the credit where the credit is due. @ENDNODE @NODE Greetings "Greetings" I would like to thank the following people: Alessandro Gerelli For his bug-reports and for holding the temporany EasyPatch homepage. Jody Tierney For ClipWrite. Henrik Nilsson They have translated this guidefile Johan Alfredsson and the installer script into the Swedish language. Eric Gerard For the MagicCountry icon package Andrea Latina For his bug reports Duncan "Dunx" Gow He has "beautified" the homepage! ...who sended me a postcard: Eddy Witkowski Mount Gambier, South Australia Jon Ward Canterbury, England Jason Parker Nottingham, England Henrik Nilsson Askim, Sverige Stefan Haase Berlin, Germany ...and who writed me: John Wasilewski London, England Cristian Castellari Unknown, Italy Roberto Patriarca Unknown, Italy Phil Beazly Unknown, Unknown Andy Reeves Unknown, England Hardy Unknown, Unknown Noe Gonzalez Ronquillo Mexico City, Mexico Giuseppe Ammendolia Unknown, Italy Dave Unknown, Unknown Luc Gilbert Unknown, France ...and the others i've probably forgot. @ENDNODE @NODE History "History" 0.xx * Internal versions 0.78ß * First public version 0.79ß - Bug Fix 0.80ß - Bug Fix (now rtEZRequest() works properly) 0.81ß - Bug Fix (Test the ToolTypes, NOW!) 0.82ß + New argument: PRESSGAD * Version 0.32 of EasyList - BugFix in EasyList version string + 68020 version added. 0.83ß - Fixed some Enforcer Hits * EasyList version number upgraded 0.84ß - Fixed Enforcer Hit with system requesters * EasyList version number upgraded 1.0 - Removed limitations * EasyList version number upgraded - Fixed some bugs 1.01 - Ops.. fixed a debug info + Added EasyStat + EasyList can now be called from Wb - Fixed Enforcer Hit with mutant gadgets - Fixed Enforcer Hit with preferences + Added 030/040/060 versions ---- From here the Version is that of the archive ---- 1.02 - Fixed a little bug in EasyStat + Improved EasyList + Added rules for version numbers + Improved Exit function + Added support for SetMan & PatchControl * EasyStat version number upgraded * EasyList version number upgraded - Fixed a bug ..sometimes a double start was not handled correctly ! Not released 1.11 + Major inprovements + Speedup! + Now requires less memory - Fixed some Enforcer hits * Probably there are no more bugs! :-) * EasyStat & EasyList upgraded (with a few changes) 1.21 + Added EasyConfig (only for Config script use) - Minor bug fix & improvements + Comments are now allowed in config file + Added notification of config file + Added Aminet version (called EasyPatcha.lha) * Changed my Internet address - Fixed documentation - Fixed minor bug in support utilities + Released on Aminet! 1.22 + EasyPatch now has an homepage + Added sendmail in AmigaGuide file - Fixed installation bug - Fixed configuration bug - Fixed EasyConfig bug when requesters are too large + Speedup! + Some optimizations + Added GotoURL in AmigaGuide file 1.23 - Fixed a little bug with AutoRequest()s, sorry :-( 1.24 - Lost sources from 1.02 to 1.22..sigh :-( - Removed a little imperfection + Added the calling task name in the requester title (Only when the requester hasn't his own title..) * Changed the interactive page + Remember: www.logicom.it/personal/azummo/EasyPatch.html - Fixed installation bug on 68000 equipped machines - Fixed version string in EasyConfig 1.25 - Fixed a bug with some requesters. Sorry :-( 1.26 - Not released - Activation/deactivation from Commodity Exchange now really works. * The hotkey status cannot be reflected by the Commodity Exchange. There's only a way to handle with Act/Deactivate cycle gadget, and if i deactivate EasyPatch in that way hotkey will not be recognized until a manual reactivation. - Fixed a bug in EasyConfig, when a requester goes up after the first one 1.31 + Added some routines and reworked some others * Reworked internal structures + Added TIMES/N/K and PERIOD/N/K + The homepage has reached the 100th hit! + Added swedish documentation - Fixed a mungwall hit introduced in 1.24 - Changed homepage: http://freepage.logicom.it/azummo/EasyPatch.html 1.32 - Fixed the installation of the interactive scripts * The homepage has overtaked the 250th hit! + Added AFD-COPYRIGHT note - Updated my address :-) - Updated arexx scripts 1.33 - Changed some behaviours - Recompiled under SAS/C 6.58 - Minor bug fix + The homepage now is http://freepage.logicom.it/azummo/ 1.40 - Fixed some really nasty bugs :-( - Fixed a bug with mui requesters.. no more crashes now - Recompiled with SAS/C 6.59 - The support utilities are now smarter 8-) - Updated this doc * EasyPatch is Y2K compliant, as usual.... - EasyPatch is now faster @ENDNODE @NODE MUI "Magic User Interface" This application patches :-) MUI - MagicUserInterface (c) Copyright 1993-1997 by Stefan Stuntz MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of an application has the ability to customize the outfit according to his personal taste. MUI is distributed as shareware. To obtain a complete package containing lots of examples and more information about registration please look for a file called "muiXXusr.lha" (XX means the latest version number) on your local bulletin boards or on public domain disks. If you want to register directly, feel free to send DM 30.- or US$ 20.- to Stefan Stuntz Eduard-Spranger-Straße 7 80935 München GERMANY @ENDNODE @NODE VR "Versions and revisions" ok..let's start with this strange chapter.... Each EasyPatch archive has this format: EasyPatchVerRev.lha (i.e. EasyPatch101.lha ) Ver is composed of one or more numbers Rev is composed of two numbers (only if Rev = 0 then Rev may have only one number) How VerRev is determined? Well..good question... it is the same of the highest VerRev of the executables in the archive Now.. how we can determine the version of EasyPatch required by one of the support utilities?.... Let's suppose an archive called EasyPatch102.lha with EasyPatch 1.01 EasyList 1.01 EasyStat 1.02 EasyList and EasyStat requires an EasyPatch with a Rev >= 0 (1.0 in this example) Now let's suppose we have EasyStat 1.18: it requires EasyPatch with a Rev >= 10 (i.e. 1.15) NOTE: 1.25 > 1.2 (Commodore rulez!) ok... Here is (...insert a gingle here...) the THEOREM OF VERSIONS AND REVISIONS Assume: VerP as the Version of the main program VerS as the Version of the support program RevP1 as the the first number of the Revision of the main program RevP2 as the the second number of the Revision of the main program RevS1 as the the first number of the Revision of the support program RevS2 as the the second number of the Revision of the support program The relation is: VerP = VerS RevP1 = RevS1 RevP2 >= 0 & <= 9 NOTE: If this is too difficult, use only proggys that are distribuited in the same archive...you will not have any problem! @ENDNODE