@database MCP.guide @master AOS4:Archive/MCP1.44u/Guides/MCP_eng.guide @$VER: MCP.guide 2004 1.44«English» @author "Dieter Groppé" @(c) "Dieter Groppé" @font XHelvetica.font 13 @index fet_features @width 104 @remark Created with Heddley v1.20ß © Edd Dumbill 1994-5 @node "Main" "Documentation for MCP v1.44" Master Control Program v1.44 © 2001 - 2004 by @{"Dieter Groppé " link "author" 0} © 1994 - 1999 by @{" ALiENDESiGN " link "aliendesign" 0} @{" Document " link "historyguide" 0} last changed: 3 Sep 2004 @{" Introduction " link "introduction" 0} What is MCP and what does it do? @{" Features " link "fet_features" 0} The reason MCP is so popular. @{" Requirements " link "requirements" 0} What MCP needs to run. @{" Installation " link "installation" 0} How to get going? @{" Starting MCPPrefs" link "mcpprefs" 0} The Preferencesprogram. @{" Versions " link "over" 0} Different versions of MCP ? @{" Starting " link "start" 0} Starting MCP @{" Support Programs " link "supportprograms" 0} Supportprograms that come with MCP @{" Registration " link "registration" 0} It's Free, so do it! @{" How to get MCP " link "howtoget" 0} 24 hour support! @{" Legal Department " link "liability" 0} We are not to blame! @{" Contact us/Bugreports " link "contactus" 0} New Ideas, Bug Reports, Getting Involved @{" Bugs and wishlist" link "bugs" 0} Known Bugs and Expansion Wishlist @{" FAQs" link "mcp.html/main" 0} Frequently Asked Questions @{" Thanks " link "thanks" 0} People who helped. @endnode @node "author" "Author of MCP" Since Version 1.34 (October 2001:) Dieter Groppé Cologne/Germany EMAIL: MCP@dgroppe.de WWW: www.dgroppe.de Please supply useful remarks to emails, otherwise the SPAM-filter will not let it through. For donations please add a remark 'MCP' Postbank Köln BLZ: 37010050 Konto.Nr.: 325742502 @{" Contact information. " link "contactus" 0} @endnode @node "ALiENDESiGN" "Alien Design" ALiENDESiGN Main Authors: Michael Knoke Stefan Sommerfeld Berliner Str. 33 Kaulbachstr. 3 14612 Falkensee 14612 Falkensee Germany Germany Phone: +49-[0]3322-22440 Phone: +49-[0]3322-202452 E-Mail: knoke@cs.tu-berlin.de E-Mail: zerocom@cs.tu-berlin.de Additional Authors: Vincent Schöttke Soeren Sonnenburg Phone: +49-[0]3322-3202 E-Mail: fox@aliendesign.net As of October 2001 @{" Dieter Groppé " link "author" 0} has taken over development. May The Force Be With You, And Don't Forget AMIGA THE RULING QUALITY @endnode @node "over" "MCP versions" There are currently 8 different versions of MCP. MCP - 68000 Version of MCP MCP020 - 68020+ Version of MCP MCPcommodity - 68000 C-Version limited function MCP MCPCommodity020 - 60020+ C-Version limited function MCP The installscript will install the right version of MCP and MCPcommodity your processor. MCPcommodity is normally not used Of all these versions there is a special Aminet version because of legal reasons. The 68020 version is optimized for 68020 or higher, it will use optimized code for the recognized processor, also for 060. Because there were no registrations for the 68000 and 68010 since November 2002 the next versions are no longer in the archive: MCP - 68000 Version of MCP MCPcommodity - 68000 C-Version limited function MCP If there is no interest in these versions the corresponding source code will be removed. @endnode @node "start" "Starting MCP" @{u}Start@{uu}: MCP can be started from Workbench or CLI. When started from Workbench no additional parameters are needed When started from CLI there is a possibility to add the parameter (not case dependant) NOLMB - suppresses the looking for mousebutton joystickbutton or capslock button Starting MCP should normally be done very early in the startup-sequence (see @{"installation" link "installation" 0} ). MCP works like this when started: - test to verify the right processor for the programversion - test to verify whether MCP is already running - The way it was started is tested (WB or CLI) - when started from CLI, the Parameter is read (if present) - when started from cli and the parameter NOLMB was not present, the mousebutton, joystickbutton or capslockbutton are read - MCP detaches from the main task - ENV: is searched for, if this not available c:ENV-Handler or L:HappyENV-Handler are searched for and started - the configuration file is read and tested - MCP initializes its Routines Important: 1) If you are using ARQ and you want to have both ARQ and the @{"Assignwedge" link "fet_assignwedge" 0} operating, you must start MCP like this: c:Patchcontrol #?ARQ c:MCP . . RUN >NIL: ARQ 2) If you have switched on the function @{"No IconBorder" link "fet_noiconborder" 0} and it doesn't work then an other program patches this call. In the most cases it's a monitor driver (for example Piccolo) and then you should type the following text behind @{"PatchControl" link "supportprograms" 0}: c:Patchcontrol #?Piccolo (or an other monitor driver) or c:Patchcontrol #?ARQ #?Piccolo This function is integrated directly into the OS since version 3.5 and not much of a problem anymore. For @{"starting MCPPrefs" link "mcpprefs" 0} you can read more here. @endnode @node "fet_features" "Features" Global @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" Save | Use | Test | Cancel " link "fet_saveusetest" 0} If you want to use a feature you have to set it on, even for the features that have a separate page or window. @{b}Features without Patches@{ub} @{" Alert-History " link "fet_alerthistory" 0} @{" AppIcon " link "fet_appicon" 0} @{" AssignPrefs " link "fet_assignprefs" 0} @{" Screen Activation " link "fet_screensact" 0} @{" Screen Blanker " link "fet_screenblanker" 0} @{" Screen Dimmer " link "fet_screendimmer" 0} @{" ScreensMenu " link "fet_screensmenu" 0} @{" CapsShift " link "fet_capsshift" 0} @{" Default PubScreen " link "fet_defpubscreen" 0} @{" DOS-WildStar " link "fet_wildstar" 0} @{" Window menu " link "fet_windowsmenu" 0} ## new ## @{" HotKeys " link "fet_hotkeys" 0} @{" NoCapslock " link "fet_nocapslock" 0} @{" Logbook " link "fet_logbook" 0} ## new ## @{" MapUmlauts " link "fet_mapumlauts" 0} @{" Mouse-Speeder " link "fet_mousespeeder" 0} @{" Pointer Blanker " link "fet_pointerblank" 0} @{" Mount HappyENV " link "fet_happyenv" 0} @{" Maximize active window " link "fet_maximizeactwin" 0} ## new ## @{" Power Saver " link "fet_powersave" 0} @{" Processor " link "fet_processor" 0} @{" PubModes " link "fet_pubmodes" 0} @{" Set Quantum " link "fet_setquantum" 0} @{" Snap " link "fet_snap" 0} @{" SUN Options " link "fet_sunoptions" 0} @{" Replace Topaz " link "fet_notopaz" 0} @{" TrackDisk Prefs " link "fet_changetd" 0} @{" Wait Validate " link "fet_waitvalidate" 0} @{" Activation of Workbenchtitle " link "fet_wbtitleactive" 0} @{b}Features with Patches@{ub} @{" AlertTimeOut " link "fet_alerttimeout" 0} @{" AppChange " link "fet_appchange" 0} @{" AssignWedge " link "fet_assignwedge" 0} @{" Requester Timeout " link "fet_reqtimeout" 0} @{" AutoMount " link "fet_automount" 0} @{" ScreenManager " link "fet_promotor" 0} @{" BorderBlank " link "fet_borderblank" 0} @{" CacheFont " link "fet_cachefont" 0} @{" CopyMemQuick " link "fet_copymemquick" 0} @{" CycleToMenu " link "fet_cycletomenu" 0} @{" Font Search " link "fet_fontsearch" 0} @{" FrameIHack " link "fet_frameihack" 0} @{" Harddisk Prefs " link "fet_hdprefs" 0} @{" Force HiRes Pointer " link "fet_hirespointer" 0} @{" Force NewLook-Menus " link "fet_forcenewlook" 0} @{" Library Search " link "fet_libsearch" 0} @{" Lock Patch " link "fet_lockpatch" 0} @{" MCPVarNames " link "fet_mcpvarnames" 0} @{" Menu Textshadow " link "fet_menushaddow" 0} @{" NoGuru " link "fet_noguru" 0} @{" No DisplayBeep " link "fet_nodisplaybeep" 0} @{" No IconBorder " link "fet_noiconborder" 0} @{" New GadTools " link "fet_newgadtools" 0} @{" New ToolTypes " link "fet_tooltypes" 0} @{" NewEdit " link "fet_newedit" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} @{" PatchMath " link "fet_patchmath" 0} @{" PatchOpenWB " link "fet_patchopenwb" 0} @{" PatchRGB32 " link "fet_patchrgb32" 0} @{" QuickDraw " link "fet_quickdraw" 0} @{" QuickLayers " link "fet_quicklayers" 0} @{" RAMPatch " link "fet_rampatch" 0} @{" ReqTools Patch " link "fet_rtpatch" 0} @{" ShapeShifter Patch " link "fet_shapeshifter" 0} @{" Memory Patch " link "fet_memorypatch" 0} @{" SysIHack " link "fet_sysihack" 0} @{" Title Clock " link "fet_wbclock" 0} @{" ToolAlias " link "fet_toolalias" 0} @{" VirtualIcons " link "fet_virtualicons" 0} @{" Solid WindowMoving " link "fet_movewindow" 0} @{" Solid WindowSizing " link "fet_sizewindow" 0} @{" WBAbout " link "fet_wbabout" 0} @{" WBGauge " link "fet_wbgauge" 0} @{" Change WorkbenchTitle " link "fet_wbtitle" 0} @endnode @node "fixjump" "FixJump" FixJump V1.0 (C) Copyright 1997 by ALiENDESiGN Introduction: This program will fix all problems with jumping bootpictures. Installation: Start it before your bootpicture program and after the needed monitors in your startup-sequence. It's not allowed to open a screen before the FixJump command and, therefore, it's recommended to start the needed monitors, then call 'FixJump' and then start the Picviewer. For Example: ... Devs:Monitors/Multiscan C:FixJump C:OpenAWS .... all other calls follow here How does it work: It will set the right overscan values in all started monitors. It only loads the overscan.prefs out of the ENVARC:. Author: Stefan Sommerfeld Kaulbachstr. 3 14612 Falkensee Germany @endnode @node "historyguide" "History of Guidefile" History of Guidefile 23.10.2001 First changes in the German guide -changed Author and Copyright -Aliendesign logo removed -Missing parts translated and completed from the English guide -Misc. completions 10.11.2001 Updated English guide from German. 14.12.2001 Updated English guide from the German version 1.36. 02.02.2002 added new stuff to guide and updated it from German 21.03.2002 Updated to 1.38. Added link to MCP-History.guide. NewTooltypes link didn't work in English guide; fixed 06.04.2002 added newsletter info in " How to get MCP " and v1.39 functions. 30.04.2002 added version 1.39 appicon, all variables moved to own page linked with WBTitle, WBClock and Appicon. 04.05.2002 updated English guide from German 31.12.2002 added logbook, Maximize active window, Window menu and updated NoGuru, screensmenu and buglist to 1.41. 29.08.2002 - version 1.40 VirtualIcons, Idlecounter FAQ added, new variables added, corrected some writing mistakes. Author Kontonr added. 03.12.2002 - version 1.41 added. Logfile and windowsmenu added, NoGuru changed. 06.02.2003 updated to 1.42. changed NoGuru,Variables,Bugs, about, installation, start, requirement logbook and reqtimeout. 01.09.2003 updated to 1.43 fet_maximizeactwindow, fet_hotkeys and fet_quicklayers expanded. - 08.09.03 fet_mcpvarnames, hotk_changelogbook, hotk_insertstring, hotk_deactivatemcp added. fet_sizewindow corrected. 18.10.2003 Assignmanager expanded and corrected, Author expanded, Requirements NList and NListview-Subclassen mentioned. 21.10.2003 Support Tools (supportedtools) MCPAssign supplemented for V 1.1. 22.10.2003 Start of MCPPrefs (mcpprefs) in Mainmenue and Start of MCP inserted. 03.12.2003 many little bugs removed and links added. 10.12.2003 Assignprefs extended and remove a Bug. Delaytime in NoGuru added. 03.03.2004 - Version 1.44 fet_sysihack 2 correction of spelling errors, fet_Cachefonts addedfor OS3.9 updates and supplements: Copymemquick, Quickdraw, Quicklayers, Forcenewlookmenu, Cycle2Menu, Force HiresPointer, FrameIHack, SysIHack, MathPatch, PatchOpenWB, Dos Lock, RamPatch, Screendimmer, Virtual Icons, AppIcon, DefaulPubScreen, Processor. 23.03.2004 hotk_switchkeymap added. new link in fet_hotkeys added. fet_Sysihack hint to Adddatatypes added. fet_libsearch completely rewrittten. 24.08.2004 orthographical corrections and missing translations added. fet_Menushaddow newly made. and added in "Functions"-Link. fet_Screendimmer "more than 8-bit"-remark changed. Ready for Release-translation. Known MCP bugs and wishlist can be found @{" here " link "bugs" 0} The full MCP Program history can be found in @{" MCP-History.guide. " link "MCP-History.guide/MAIN" 0} @endnode @node "installation" "Installation" Automatic method: The easiest way of installing MCP is via the supplied Installer-Script. The script is written in such a way that nothing will be overwritten! Please remove all programs which have the same or nearly the same functions as MCP, since they could cause Problems. After the successful installation you must insert the MCP-call to the startup-sequence. This call should be early in the script to use all functions. @{bg shine} z.B. Startup-Sequence:@{bg back} C:SetPatch QUIET C:PatchControl [...] C:Copy ENVARC: RAM:ENV ALL QUIET NOREQ C:Assign ENV: RAM:ENV C:MCP ... all the following commands are placed here ! The automatic install tries to start MCP directly after available ENV:-devices. This means that it tries to find a "Assign ENV:". "MountENV", "Env-Handler" or "Happyenv" entry and insert MCP after that. If more than one entry exists it will take the last one. If no entry is found the install will ask for another batch-script in which Env: is assigned, if no entry is found again then MCP will not be added! in that case it will have to be inserted manually (see below). Please do not change the Hunks in the MCP !!! (e.g. with Hunkmerge from Imploder) *** OR *** NOTE: The Install script runs ConvertAP and ConvertAM automatically. Manual method: Copy the appropriate MCP program (68000/68020+) to your "C:" directory. Copy the MCP Commodity (68000/68020+) in the desired directory. Copy the @{"PatchControl" link "supportprograms" 0} program to your "C:" directory. Copy the "mcpsupport2.library" into your "LIBS:" directory. Copy the "mcpgfx.library" into your "LIBS:" directory. Copy the "MCPPrefs" program into your "Prefs" directory. Copy the contents of "ENVARC:" into their respected places. Copy "GuruHistory" and "MCP.gurudat" to your "S:" directory. (be sure to set the paths for these files in the MCPPrefs program) Copy the documentation to your preferred location.This could be C:,S:, or Help: end rename the file to MCP.guide (Or MCPPrefs will not find it ) Add the following lines to your "Startup-Sequence" file: C:SetPatch QUIET C:PatchControl [...] C:Copy ENVARC: RAM:ENV ALL QUIET NOREQ ;These two lines can be removed C:Assign ENV: RAM:ENV ; if HappyEnv or Env-Handler is used C:MCP ...all the following commands are placed here ! Note: If you are using Arq,please also read @{"Start" link "start" 0} . @endnode @node "supportprograms" "Support Programs" @{fg shine}PatchControl:@{fg text} This program gives the possibility to securely remove System-Patches without requiring a reboot or causing a crash. MCP uses this program to remove patches. @{fg shine}ConvertAP:@{fg text} This program converts all Assigns from the program "AssignmentPrefs" to the MCP format. After starting this program, all assigns will be copied to MCP and you can use MCP instead of "AssignmentPrefs". @{fg shine}ConvertAM:@{fg text} This program converts all Assigns from the program "AssignmentManager" to the MCP format. After starting this program, all assigns will be copied to MCP and you can use MCP instead of "AssignmentManager". @{fg shine}FixJump:@{fg text} This program stops the annoying jumping of the screen if you show a boot picture and the startup-sequence starts IPrefs. This program is no part of MCP. You can get more information on the @{"FixJump" link "fixjump" 0} page in this guide.. @{fg shine}MCPAssigns:@{fg text} This program makes all MCP-Assigns from the MCP config file. This file will be automatically searched in ENV:MCP2/. MCPAssigns is useful if you need a startup-sequence without MCP. Assigns of type "hold/lock" and "hold/path" are suported from MCP V1.43 and MCPAssigns V1.1. MCPAssign will not - in opposition to MCP - create the targetdirectory. In case it does not exist, the assign will not be executed. @{fg shine}ShowPatches:@{fg text} This program shows all patches which are made after the start of PatchControl and which are currently active. This command has 2 parameters: TASK allows the output of a certain task LIBRARY limits the list of libraries both parameters are allowed together and are processed as logical AND Wildcards are not allowed e.g. Showpatches TASK MCP LIBRARY diskfont will show "MCP V1.37" and also the "diskfont.library" @{i}Note: The install script automatically runs ConvertAP and ConvertAM.@{ui} @endnode @node "introduction" "Introduction" Some time ago, in July 1994, a new project began: a Workbench-Utility incorporating a diverse set of features, features which nobody had ever dared to put into one small package. First, only a few, small features were implemented; but then, MCP became more powerful. Now it's time for the whole world to enjoy MCP. The routines are compatible and usable on (hopefully) all Amiga machines. Try MCP and you will see that you can't live without it! At the designing stage, we ardently renounced the support of Kickstart 1.x, since every serious Amiga user is working on Kickstart 2.x or 3.x. We would be happy if MCP is used often, and we promise to continue to develop MCP. MCP was coded in 100% Assembler to optimize your Amiga operating-environment. It will greatly unburden your startup-sequence by @{"replacing" link "replacing" 0} many of those single-package utilities. Furthermore, the code of MCP is mostly implemented in a more professional and CPU-efficient way. This is one of the first public releases of MCP. There are probably some bugs in it, and we hope that many of you will help us to remove them so that MCP can be the best all-encompassing utility available. In October 2001 I took over the project after exactly 2 years of inactivity. There are surely some errors left to fix and I hope to get much support so MCP can become the best control program. Some of the features of MCP: · Moving & Sizing of solid windows (Fully SystemConform) · CrunchPatch (Let programs load crunched files!) · MouseAccelerator · AssignWedge · Automatic Screen Activation · Requester Timeout · Exchange AppIcons · WBTitle-Clock · CacheFont · Assign-Manager · ReqToolsPatch · MousePointer-Blanker · new Workbench-Titlebar · ToolAlias (changing the Default Tool in the icons) · Drive NoClick · Screenblanker · NoGuru (Prevents some resets) · DOS star (* instead of #?) · Hotkeys · Screen- and windowmenus · virtuel Icons for write disabled media like CDs · quick view of system states p.e. with an appicon · logging of system states or values For the full list go to @{" Features " link "fet_features" 0} @endnode @node "replacing" "Replacing" For those users of MagicCX we want you to refer to the following advantages: · it's FreeWare ! · it doesn't use as much memory (in comparison to the functionality) · it offers extraordinary characteristics, which can't be found in MagicCX @endnode @node "liability" "Liability" With the usage of MCP you agree to the following: THERE IS NO LIABILITY TO THIS PROGRAM-PACKAGE,IN REFERENCE TO THE ASSERTED LAWS. THE COPYRIGHT OWNERS, AND/OR A THIRD PARTY, PLACE THIS PROGRAM PACKAGE AT YOUR DISPOSAL "AS IS" (EXCEPT WHERE THIS IS FIXED ANYWHERE ELSE IN A WRITTEN WAY) WITHOUT ANY GUARANTEE IN ANY FORM (INDIRECT OR DIRECT FORM). THE FULL RISK OF QUALITY AND FUNCTIONALITY OF THIS PROGRAM IS AT YOUR OWN. IF THE PROGRAM HAS A BUG, YOU HAVE TO PAY ALL COSTS OF THE NECESSARY SERVICE-WORKS AND REPAIRS FOR YOURSELF. UNDER NO CIRCUMSTANCES, THE COPYRIGHT OWNERS OR A THIRD PARTY DISTRIBUTING THIS PROGRAM PACKAGE, AS ALLOWED, JUST BEFORE, CAN NOT BE HELD RESPONSIBLE FOR ANY DAMAGE CAUSED IN ANY USUAL, SPECIAL, OR ACCIDENTAL WAY OR BY THE PROGRAM PACKAGE (SURROUNDING BUT NOT RESTRICTED ARE THE LOSS OF DATA OR NOTCORRECTLY DISPLAYED DATA OR LOSSES CAUSED BY YOU OR A THIRD PARTY OR BY A FAULTY WORK OF THIS PROGRAM PACKAGE WITH OTHER PROGRAMS), ALSO IF THE OWNER OR A THIRD PARTY HAS BEEN POINTED AT SUCH POSSIBILITIES OF DAMAGE. Distribution: MCP is FreeWare! It's really a great program, but it isn't released as ShareWare. Nowadays everybody makes his program ShareWare. What's up guys? Don't make money! Make good tools! You are free to distribute MCP as long as the original archive is kept in tact. Commercial use or its inclusion in other software packages is expressly prohibited without prior consent from @{" Dieter Groppé " link "author" 0} }. You are not allowed to make money with the distribution of MCP, especially the selling price of the disk with MCP may not be higher then $5 or the same amount in other currency respectively, with the exception of disks from Computermagazines. @endnode @node "muifo" "MUI Info" The MCPPrefs program uses MUI - MagicUserInterface (c) Copyright 1993-98 by Stefan Stuntz MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of a MUI-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, public domain disks, or any Aminet sight. 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 Phone: +49-89-313-1248 E-Mail: stuntz@informatik.tu-muenchen.de NOTES: 1) It is not necessary to register MUI to use MCP-Prefs, but you should consider registering, as you will be able to save the graphical look of MCPPrefs. 2) MUI is only needed by the "MCP Prefs" program. The MCP itself runs independently from MUI and from its libraries. 3) It's enough to have the MUI-Libraries in your 'LIBS:' directory to start the Prefsprogram. @endnode @node "contactus" "Contact us" New Ideas: If anybody has new ideas, you should tell us. We will try to included them in future versions of MCP. It would also be nice to get permission to integrate Assemblersource of existing tools into Mcp. Bug Reports: Because of the time involved in developing and documentation I can't test everything 100%. I will not use betatesters so I would be very happy to hear about any ERRORS. Of course we're strongly interested in running MCP on all machines BUG-free. That's why we are grateful about any objective criticism. But, before you send us a BUG report please ask yourself the following: · Has MCP been installed properly? · Are all system requirements fulfilled? · Have you removed all programs, doing the (nearly) same thing? · Has the MCP-config file been changed only with the Prefs-Program? (Changing by hand is not recommended and may be deadly if not done correctly.) · Is the bug or function not already in the @{"bug / wishlist" link "bugs" 0}? If you can answer all the questions with a simple yes, then tell us about the BUG. An exact description of it is very important. The more detailed the description, the more quickly the BUG may be removed! If someone, who's not registered, finds a BUG, you must also report your system-configuration (type of machine, processor, kickstart; see the @{" Registration " link "registration" 0} section) and the version number of MCP. This report should be sent to one of the @{" Author " link "author" 0}. Every mail will be read and probably answered!! Developing: I invite any programmers to join the developing of MCP. If you want to improve MCP, you should contact @{" me " link "author" 0}. I have a full-time job and not that much free time. @endnode @node "registration" "Registration" MCP is FreeWare and MailWare! We hope, that many of you use this program and that through your letters and registration, we can remove as many bugs as fast as possible. If you have written your own ShareWare program, we would be happy if you send us a keyfile for it. We would invite whoever uses MCP to register FOR FREE because I am interested in how many people are using MCP regularly. You can register on my WWW-Page online! http://reg.dgroppe.de or send the registration form below, or the equivalent of its information, to the @{" Authors " link "author" 0} E-Mail address. If anybody wishes to send some money for the support of MCP, we would be very happy. With this money, we will improve the support of MCP by sending more versions via snail-mail and send a couple of disks to computer fairs. @endnode @node "requirements" "Requirements" Requirements to the system: · An Amiga Computer · Kickstart v2.04 or higher · A MC68020 or higher for the 020 version or a MC68000/10 for the plain version. · @{"MUI" link "muifo" 0} (Magic User Interface) v2.1 or greater for the MCP Prefs. MUI v3.0 or above is necessary to use the drag and drop feature of the MCP prefs program and to use the new MUI help bubbles. For some functions of MCPprefs the NList and NListView-Subclasses of MUI are needed. (Higher version recommended) NOTE: Some Features may have additional requirements, check the documentation before reporting that it doesn't work! Optional (used when found) programs are: - SegTracker - reqtools.library (included) - asl.library - disassembler.library (included) - ppc.library - p96.library - cgxsystem.library - retina.library Next to the native Amiga graphicssystem the Retina P96 and CGX system are also supported. The 68k version of MCP has only minimal PPC support, but uses both PowerUp and WarpUp. @endnode @node "howtoget" "How to get MCP" The easiest way to get the newest MCP is our Homepage at: http://mcp.dgroppe.de There also is a Newsletter for MCP announcing new versions or important bugfixes. You can subscribe to it by sending an email to: mcpinfo-subscribe@yahoogroups.de @endnode @node "thanks" "Thanks" A thank you to the following people: · Michael Knoke for the Sourcecode of MCP · Jacek Pizczek jr for making a new MCPPrefs, coding and other help · SoloGNT for ASM-Pro · Stefan Stunz for @{" MUI. " link "muifo" 0} · Commodore for the Amiga, one of the best computers ever built! · The translators: 'TechRat' Richard Mulder for English Philippe Bovier for French Javier de las Rivas for Spanish Fuvio Peruggi for Italian Jan Anderson for Swedish Màrton Dósa for Hungarian Michael Malyshev for Russian · The Betatesters: 'Berga'David Bergantin, Marcin Kurek, Stefan Martens, Andrew Boyarintsev and all others · All the people that have send me bugreports and invest a lot of time in my Testversions ... and offcourse all that have helped before: · Mario Cattaneo for the best beta-testing and for preparing the whole MCP archive (and the overworked installation script). · Flite for the very nice MCP-Logo in the Prefs. · Trevor Moris for the MCP-Drawer icon, the smoothed MCP-Logo and a 16 color mousepointer. · Torsten Bach (LSI) for Betatesting, new ideas, the icons and the first German documentation o · Michael Gollmick for making the English translation · Kamel Biskri for the idea of the iconborder patch. (Big greetings ;-) · Jan 'One' Skypala for the '_asl.library' · Eetu Ojanen for info about the Gary and Ramsey · Walter Trautmann for financial support - Jason Parker for the MCP-NewIcons · All guys who have sent us some money without request · All ßetatesters of the MCP · All registered users (especially Martin Steigerwald for the News checking ;-) · All people who sent us Bugreports and new suggestions · Amiga Technologies for the resurrection of the Amiga. · Jason Parker for the NewIcons package for MCP · Eric Totel for his wonderful MUI-Builder · Nico François and Magnus Holmgren for the cool ReqTools.library · T.F.A (especially Price) for the great ASM-One v1.29 Guides: · Andre Jonsson Swedish · Riccardo Varotto Italian · David Le Corfec French · Michal Kozusznik Polish · Hermes Trismegistus German · Valery Bogatchev Russian Catalogs: · Martin Caspersson & Swedish Fredrik Hallenberg · Giovanni Addabbo Italian · David Le Corfec French · Michal Kozusznik Polish · Bo Thorsen & Danish Mark Holm · Sinisa Lolic Croatian · Ernesto Poveda Cortes Spanish · Misha Malyshev & Russian Vlad Komkov · Sinan Gurkan Turkish · Eivind Olsen & Norwegian Dag Stenstad · Ville Pispa Suomi · Ji Yong Dijkhuis Dutch · Ernesto Poveda Cortes Spanish · Efstathios Persidis Greek · Jan Dittrich Czech · Raul José Batista Silva Portuguese ... Have fun with MCP ! @endnode @node "fet_wbtitleactive" "Activate on Workbenchtitle" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If you have a lot of windows open, it can happen that you can't activate the Workbench for picking a menupoint. With this patch it is possible to activate the Workbench by clicking on its titlebar, since this bar is usually free from windows. After many requests this works again with Directory-Opus in WBR-mode. Because of an error in DOPUS it can happen that a wrong menu is shown. especially when many large windows (>300x185) are open or or the Workbenchwindow is not a backdrop. @endnode @node "fet_alerthistory" "Alert-History" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} MCP will write every crash into a 'GuruHistory' file. Sometimes, for debugging purposes, it is interesting to know which program caused the crash, and what was the exact reason. The generated file is in ASCII format and has the following scheme: Date : Date and time of the crash. Task : Which Task caused the crash (also task-address). Error : the appeared alert. By : Main group of alert. Cause : A more exact description of the error. PLEASE don't forget to set the location for the MCP.gurudat file in the option window of this function! Otherwise MCP can't display the detailed description of the GURU. MCP reads the Gurunumber and the GuruTask from addresses $100 and $104, so it's not impossible that a value exists at this address and MCP takes this value as a Gurunumber. Normally the addresses are clear (if no guru appeared), but some Processorboards or some programs write random data to these addresses. @{i}NOTE: To get more detailed information about the crash, exactly after the crash, you have to activate the @{"NoGuru" link "fet_noguru" 0} function. If the 'NoGuru' function is switched off, the crash will be added to the 'GuruHistory' file directly after rebooting the machine. @endnode @node "fet_assignprefs" "AssignPrefs" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} @{" ToolAlias " link "fet_toolalias" 0} AssignPrefs @{" Memory Patch " link "fet_memorypatch" 0} @{" Requester TimeOut " link "fet_reqtimeout" 0} With this function you can remove all your assigns (except "ENV:") from the Startup-Sequence and User-Startup and let MCP handle all the assigns and thus speeding up the booting process. Take all assigns from the Startup-Sequence and the User-Startup and enter them into the page Lists/AssignPrefs. If you are a former user of AssignManager or AssignPrefs, you can let your Assigns be converted at installation by the included converter programs. The converted Assigns will be entered automatically to the configfile of MCP. A very interesting thing is the Assign-Late option. If you have a lot of programs on your HD, the amount of Assigns is likely to be very large. It's annoying that you have to scroll everytime you open a ReqTools-Requester and press the RMB to show all volumes. The AssignLate function makes the assign only valid, if it is needed the first time. AssignLate is a function, supported directly by the system, and should be used often. All directories will be created automatically by AssignLock, so you must not create these with MakeDir. Also all subdirectories will be created!! The possibility to do the assigns only when they differ from the existing ones is also new. As an additional function you can set global ENV-variables for a couple of assigns. If you start MCP and the given ENV-variable is set ('1', 'YES' or 'ON') then the next assigns are executed. If the ENV-variable is cleared ('0', 'NO' or 'OFF') then the next assigns will be skipped. An ENV-variable is valid until the next ENV-variable. If you want allow all variables, you must select the 'VAR'-type and give it no name. In the Listview you will see 'everytime' !! Below is information pertaining to the additional gadgets, affecting this function. These other gadgets are located on the page "Lists - AssignPrefs". On the "Lists - AssignPrefs" page you enter all the assigns, which should be done, when starting MCP. The 'AssignPrefs' function has to be active to unghost this page. The ListView shows all your entered assigns. The page Lists/AssignPrefs is divided as explained below: Left - the device to be assigned Center - type of assign Right - path of the assign An Example: Pinball --> LATE --> DH0:Games With the cyclegadget you can choose the type of assign. The button labeled Add System-Assign deserves some attention, especially if you want to use AssignPrefs for the first time. After you press the button a window will open showing all the assigns currently in effect. Now you just have to select an assign instead of typing it. The following types of assigns are possible: Path - nonbinding assign (name to path), an existing assign with same name will be overwritten, add-assigns and late-assigns are deleted. (see note 3) Lock - assign where the path-directory is protected from deletion. If the directory doesn't exists, it will be created. All existing assigns will be set back - in the same way as in 'PATH' (see note 3) Hold-Path - like 'PATH', but in case the assign to the same directory already exists it is not executed. see 3. Hold-Lock - like 'LOCK', it will be executed only if not the very same assign already exists. see 3. Late - the assign is made when you try to access it. Add - adding an assign to an existing one (the existing assign must be of the 'LOCK' or 'LATE' type ! , not by Type 'Path' or 'Hpath') Var - ENV-Variable for the assigns (all following assigns until the next 'Var' instruction are executed only if this ENV-Variable is '1', 'YES' or 'ON'. (If the 'Var' instruction has no name then all following assigns are executed without checking an ENV-Variable.) To change settings for an assign only click on the assign. You can change name or type of assign in the textinputstrings below. With 'Delete' you can remove the choosed assign from the list. @{i}NOTES: 1) MCP should be inserted into the startup-sequence as described in @{"Installation" link "installation" 0}, because some Assigns must be available before the "IPrefs" call. 2) The only assign that is not allowed to be entered into the list is the "ENV:" assign, since MCP loads it's configurationfile from there. Because of this MCP tries, if there is no ENV: on start, to mount it by itself with the help of l:HappyEnv-handler or c:HappyENV. One of these tools should be exist, and it shouldn't be started after MCP with the startup-sequence. 3) Very often the same mistake is done: Assigns are located in 'startup-sequence' or 'user-startup'. In addition add-assigns and/or late-assigns are included. In the assignmanager of MCP maybe are assigns but not all late/add-assigns. As a result they are reset and the additional assigns are lost. In case of important assigns like 'LIBS:' or 'MUI:' this may have strange results. To avoid this 'Hold-Lock'-assigns are very useful, because they check if the wanted assign already exists exactly on the same device. In this case it ignore them. For MCP it must be the same Assign AND the same Path on the same Device Example: Was Class already definate for a subdirectory of libs, All the same: Class: SYS:libs/class class: libs:class Class: Amiga:Libs/Class Not the same: Class1: Sys:libs/class class: mui:libs/class Class: sys:libs/class/this/ @endnode @node "fet_capsshift" "CapsShift" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If CapsLock is active and you press the Shiftkey then the Shiftfunction will be deactivated, that called all letters will be small. @endnode @node "fet_defpubscreen" "Default PubScreen" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function the frontmost screen (if it's a Public Screen) will become the default Public screen. All requesters will now appear on this screen and not on the Workbench screen. If the frontmost screen is not a Public Screen, the Workbench Screen will be set to Default. @endnode @node "fet_wildstar" "DOS-Wildstar" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If this function is activated, you may use the * instead of #? as a wildcard. @{i}NOTE: No function from the operating system is patches from this feature so it works only in some DOS programs.@{ui} @endnode @node "fet_hotkeys" "Hotkeys" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} Hotkeys Set Hotkeys in the Global/Features page to on, to use/@{" configure " link "HowToHotkeys" 0} all of the following: @{" Change Logbookstatus " link "hotk_changelogbook" 0} Active Window To Back @{" Active Window To Front " link "hot_win2front" 0} Activate Window Under MousePointer Activate Workbench Toggle ALT Key @{" Enter ASCII " link "fet_enterascii" 0} Cycle Windows Back To Front Cycle Windows Front To Back @{" InsertClip " link "fet_insertclip" 0} @{" Insert date " link "fet_insertdate" 0} @{" Insert into Inputstream " link "fet_insertstream" 0} @{" Deaktivate MCP " link "hotk_deactivatemcp" 0} Fast Reset - Easy and faaast(!) RESET for the Amiga 1200. Cycle Screens Back To Front Cycle Screens Front To Back @{" Close Window Under MousePointer " link "fet_closewinundermouse" 0} @{" Hold Mouse " link "fet_holdmouse" 0} * @{" Cold Reset " link "fet_coldreset" 0} MapUmlauts * On/Off Mouse To Menu Lock Mouse Movement @{"Maximize Active Window " link "fet_maximizeactwin" 0} minimize Active Window @{" Close Active Window " link "fet_closeactivewin" 0} @{" SCSI-Eject " link "fet_scsieject" 0} @{" Set Task Priority " link "fet_settaskprio" 0} @{" Shift Key " link "fet_shiftkey" 0} @{" Snap " link "fet_snaphotkey" 0} @{" MemPatch On/Off " link "fet_mempatch" 0} @{" Execute Command " link "fet_executecommand" 0} Start Screen Blanker @{" Start Screen Dimmer " link "fet_startdimmer" 0} Start DMA Start DPMS PowerOff Start DPMS Standby Start DPMS Suspend @{" Start WB-Program " link "fet_startwbprog" 0} @{" Start WB-Program Requester " link "fet_startwbprogreq" 0} @{" System Restore (Processor, AGA) " link "fet_systemrestore" 0} @{" Switch keymap " link "hotk_switchkeymap" 0} @{" Insert Text into Inputstream " link "hotk_insertstring" 0} Center Active Window @endnode @node "HowToHotkeys" "Configure Hotkeys" To use each of these functions by pressing a Hotkey, you first have to select one of the functions, for example Execute Command, then press on the gadget New. A window will appear where you can choose what you have to do to start the function. The window contains three pages; Hotkeys, DiskAction & Timer. You can use one of these pages to define what will start the function by clicking it to front it it isn't there already and then alter what you want and press Ok. Please note that you can use more than one way of starting a @{"Hotkeyfunction" link "fet_hotkeys" 0} , for example you can configure to start the Dimmer by pressing Ctrl LAlt d and by pressing on New again you can also configure to start the dimmer by clicking the left mouse button 4 times if you like that. You can use the Execute Command or Start WB-program to start as many programs as you want, just use a different hotkey for each. Hotkey On the Hotkey-event you must click to 'Sample' and then you can press the (mouse)keys for the function. You must make the mouse and keyinputs separately, though both give later one Hotkey. Dispose - forbid to forward the Hotkey event. The last pressed key, which belongs to a hotkey, activates the hotkey and this last keypress isn't forwarded to other programs. If you define a hotkey to 'Shift d', then the pressed Shift key is forwarded to all other programs, but the 'd' key isn't. Sometimes it's also useful to pass the hotkey to other programs. It's nice to see in a Shell window. If "Dispose" is on, you'll see nothing in an activated Shell window if you press 'Shift d', but if "Dispose" is off, you'll see the uppercase 'D' characters. Repeat - The function will executed multiple times if you hold down the hotkey. This is very important for the 'Insert into Inputstream', because the text or the keystrokes will be executed multiple times. DiskAction Start a function by inserting or removing a disk from the drive Timer Start a function an x amount of seconds after MCP starts and/or start a function every y amount of seconds (after the start time). For the experts this is a simple cron replacement. @endnode @node "fet_mapumlauts" "MapUmlauts" @font XCourier.font 13 @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function converts some Umlauts automatically to a two character string or a HTML string. Normal character | ä | ö | ü | ß | Å ----------------------------------+--------+--------+--------+------------------- The two character strings will be:| ae | oe | ue | ss | aa The HTML strings will be: | ä | ö | ü | ß | å Since version 1.36 the Euro sign is also interpreted because this is not yet available in all character sets. Instead of 2 characters 3 characters will be printed : EUR the HTML string is &euro, If you type an Umlaut (or use a Snap utility) you will get the converted chars. @endnode @node "fet_happyenv" "Mount HappyENV" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If there isn't an ENV: assign present when MCP is started and L:HappyENV.Handler exists then ENV: is automatically mounted. You need the original HappyENV package from Martin Gierich to use this function (Aminet: disk/misc/HappyENV.lha). HappyENV saves you a lot of RAM space and makes booting faster. @endnode @node "fet_mousespeeder" "Mouse-Speeder" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function speeds up the mouse movement. Threshold: This is the resolution of the Mouse-Speeder (if you set this to 2, the mouse is accelerated if the movement is more than 2 points). Acceleration: This is the factor of acceleration. @endnode @node "fet_nocapslock" "NoCapslock" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Disables the Capslock key. When activated, if you press it, nothing will happen. This is a nice feature for those of you that are frequently hitting the CapsLock key (when you don't want to) while typing away. @endnode @node "fet_notopaz" "Replace Topaz" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function, the standard Topaz font will be exchanged with a new one. For changing the font, you have to edit the function. A new window will open, where you can adjust the font. @{i}NOTE: 1) The font must be 8 points high and also 8 points wide. It also can't be a proportional font. 2) The font requester in the MCPPrefs program checks only the height of the font. After choosing a font perhaps you will get a requester which says that the selected font is not 8x8.@{ui} @endnode @node "fet_pointerblank" "Pointer Blanker" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If you want the mouse pointer to be switched off after some time, change the values to something other than 0 minutes and 0 seconds. KeyBlank: Will switch the mouse pointer off when you press a key. The mouse pointer is switched on again by moving the mouse. This is a good feature to have activated, especially if you write texts, as it is sometimes irritating that the pointer is above the text you're reading. @endnode @node "fet_powersave" "Power Saver" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This option provides the support of the 3-Part-Powermanagement. The timeout for all three parts can be given with the following options: Standby: This mode reduces the monitor's power consumption to 15W or less. Suspend: This mode reduces the power consumption of the monitor to 7W or less. PowerOff: This mode is comparable to a real PowerOff and reduces the power consumption of the monitor to about zero. DMA: With this mode the complete Screen-DMA will be switched off. The processor can work faster in the Chipram and the screen is black. (works only on Amiga-Screens) With the left checkmark it's possible to set the graphics system which makes the PowerManagement. The 'best' option uses graphics system from the foremost screen. If the right checkmark is set, the PowerManagement quits if a new window appears. One cycle gadget gives the possibility to disable the DPMS when the mousepointer is on a border or a corner of the foremost screen. NOTE: You need at least ECS-Chipset, CyberGraphX or a Retina graphicscard.@{ui} @{fg shine}@{bg shadow}IMPORTANT:@{fg text}@{bg back} Please take care that your monitor supports Powermanagement (DPMS), because we don't take any liability for any damage. For this function the vertical and horizontal syncs are switched off !!! @endnode @node "fet_processor" "Processor" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} The processor options, situated in the right on the Editwindow, will be activated with this function. The single options have the following meaning: VBR to FastMemory : moves the VectorBaseRegister to FastRAM (010+) Instruction Cache : switches on the CPU Instruction Cache (020+) Data Cache : switches on the CPU Data Cache (030+) Copyback : switches on the CPU CopybackMode (040 only) Instruction Burst : switches on the CPU Instruction Burst (030 only) Data Burst : switches on the CPU Data Burst (030 only) (at the 040/060 'Burst is not switchable, since it is not changeable by software) Branch Cache : switches on the CPU Branch Cache. (060) SuperScalar : switches on the CPU SuperScalar Cache. (060) StoreBuffer : switches on the CPU Store Buffer. (060) HalfInstrCache : halves the CPU Instruction Cache. (060) HalfDataCache : halves the CPU Data Cache. (060) DisableFPU : switches off the FPU. (060) SSP to FastMemory : copies the SystemStackpointer to Fastmem. (This is only worth using if your original processor was an 68000 or an 68EC020 and you're using a turboboard with fastram.) MapROM : not implemented yet. FastROM : Copies the ROM - Kickstart into FastRAM. Usual only used on older Amigas with 16-Bit ROMs (A500, 600,1000,2000). (MMU needed) AudioFilter : Switches the audiofilter of for low frequencies, shown by Power-LED This can suppress audio noise from the powersuply but also suppresses low frequencies from sounds. This Hardwareoption is not available in all Amigas, and does not work on soundcards. @{i}NOTE: 'VBR to FastMemory' and 'SSP to FastMemory' can only be switched on and not off. If one of these functions is switched off, the current state will not be changed.@{ui} @endnode @node "fet_pubmodes" "PubModes" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function you can set the modes from all PublicScreens. Shanghai - Always open a new PublicWindow on the current PublicScreen. PopPubScreen - If a window opens on a Public-Screen then this screen will be popped to front. @endnode @node "fet_screensact" "Screen Activation" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Who has never been annoyed from bringing a new screen to front and wanting to pick a menu or wanting to edit in a text-editor window and nothing happens. The reason is that the screen isn't active. This function always activates the front most screen automatically. NOTE: MCP remembers the last active window and the last active gadget on every screen and if a screen comes to front, it activates this window and this gadget automatically again (should always be switched on). @endnode @node "fet_screenblanker" "Screen Blanker" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function enables the usage of a screensaver. There is a simple Blanker, which brings up a black-colored screen. More settings to the Preferences of the screenblanker are situated on the extra window if you edit this function. There you can select the time in seconds until the blanker will start. Certainly you can include or exclude several tasks for the blanker. With the 'Off when new window appears' option, the blanker will be switched off if a new window appears. One cycle gadget gives the possibility to disable the blanker when the mousepointer is on a border or a corner of the foremost screen. Additionally you can type a name of an ARexx script in the last two fields of this window. This ARexx script will be executed on the start or the end of the blanking. NOTE: The ARexx script option needs the 'rx' command in the current search path.@{ui} @endnode @node "fet_screendimmer" "Screen Dimmer" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function a dimmer is switched on. it enables the soft dimming of the most front screen, as long as you do not move the mouse or press any key in the entered time. Especially on machines with the new AGA-Chip-Set it looks very good when the screen is dimmed slowly before the screen is fully blanked. Furthermore it has the advantage of being able to control some actions in this time (e.g. Error-Requesters). The list contains different Dimmer settings, so it's for example possible to dim after one minute to 70% and after two minutes to 50%. If you edit the function then you get a new window and you can make the following settings: @{b}For each Dimmer setting in the list:@{ub} Depth - is the depth, to be faded to (adjustable from 0%-100%) 0% = no dimming 100% = black Minutes - Minutes until the blanker starts since the last key or mouse press. Seconds - Seconds until the blanker starts since the last key or mouse press. Start Blanker - Starts the Blanker after the Dimmer has finished this step. Start DPMS - Starts the Powersaver after the Dimmer has finished this step. @{b}For all Dimmer settings in the list:@{ub} Delay - delay between the dimming steps in 1/50 seconds. 0 = no delay 255 = 255/50 seconds delay Step - number of steps to be dimmed at once. 1 = 1 step 255 = 255 steps (if possible) Disable when mouse on - various settings to prevent the appearance of the Dimmer. Border size - Size of a virtual border in pixels for "Disable when mouse on". Pattern - Pattern to compare with the foremost screen to prevent the appearance of the Dimmer on some screens. Off, when new window - If this option is on, an active Dimmer will be cancelled if a new window comes up. appears NOTE: On AGA-machines you should enter 1 for the DimmStep value and a 4 on GfxBoards for a soft fading. Besides only WB-Modes will be dimmed (no 24Bit Modes). This function is working different up to 8 bit color depth as on higher color depths. Up to 8 bit the color pens of the visible screen will be manipulated. On more than 8 bit there are no more pens, therefore each pixel will be dimmed. Some programs, mostly games (p.e. DOOM, Quake) does'nt use the OS, so the dimmer starts, although there are actions. @endnode @node "fet_screensmenu" "ScreensMenu" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If you press RMB on the ScreenDepthGadget, a pull down menu will show all the available screens. You can now choose a screen to be brought to front. This function is particularly useful, if you have a lot of screens open, because you can jump directly to that screen. You can also define the maximum width of the menu. If only the active screen is available then nothing will happen. With 2 available screens the option can be set to either switch directly or a menu is shown. @endnode @node "fet_setquantum" "Set Quantum" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function you can set the Quantum value from the Execbase-Structure. This changes the maximum time from a running task before an other task with the same priority will be activated. The default value of 4 for Kick2.x/3.x rather 16 for Kick1.3 is optimal for slow computers, but can be set to 1 for a quicker task switching. Here are some infos from the RKM: The currently running task has had control of the CPU for at least a preset time period called a quantum and there is another task of equal priority ready to run. In this case, Exec will preempt the current task for the ready one with the same priority. This is known as time-slicing. When there is a group of tasks of equal priority on the top of the ready list, Exec will cycle through them, letting each one use the CPU for a quantum (a slice of time). Error in Kick1.3: Kickstart 1.3 contains two task switching errors. After an interrupt it is possible that a task lose the control over the CPU to an other task with the same priority even when the time from the first task isn't went off. The second error allowed a task from which the time is went off, to hold the CPU forever or until an other task with a higher priority was available. Two busy-waiting tasks with high priority would never give up the CPU. Because the input.device runs with priority 20 the error doesn't occur for tasks with lower priority. The Quantum value had only a small effect because of this error. For Kick2.x/3.x a task holds the CPU time until the Quantum value is timed out or an other task with a higher priority becomes available. If the Quantum time is timed out, the current task will lose the CPU. The Quantum value is set to 16/60 seconds for Kick1.3 and 4/60 seconds for Kick2.x/3.x. @endnode @node "fet_snap" "Snap" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} MCP Snap Documentation Snap was originally written by Sören Sonnenburg 1995-98. translated and integrated into the guide by D.Groppé 2001. @{" Introduction " link "s_Introduction" 0} @{" Features " link "s_Features" 0} @{" Requirements " link "s_Requirements" 0} @{" Configuration " link "s_Configuration" 0} @{" Thanks " link "s_Thanks" 0} @{" History " link "s_History" 0} @{" To do " link "s_ToDo" 0} @{" FAQ " link "s_FAQ" 0} @endnode @node "s_Introduction" "Snap Introduction" @prev "s_Introduction" - Snap: Not snapped yet ? Then try it and you`ll never miss it ! It is something out of the cut and paste era. Here a short description: With this Snap function you can frame a text on the screen and let the computer type it for you multiple times. The framed text will be copied to the clipboard and therefore a couple of other programs can insert this text. To make this function working you must edit the @{" Hotkeys " link "Hotkeys" 0} page and there you have to edit the 'Snap' and 'Insert Clipboard' hotkeys. Please be sure that you assign only a key to the 'Snap' hotkey, because the mouseclick with the left mousebutton will be internally added. @endnode @node "s_Features" "Snap Features" @prev "s_Features" MCP snap combines the POWER of Powersnap with the SPEED of the good old snap. Actually it features: -snapping of fonts with a width <= 16 and ysize <1024 -snapping of text that is directly written on a picture (try DPaint) see -snapping of bold/underlined/inverse/changing colors -first snap to handle small letters at the first click (try snapping a single dot) -geniously configurable -snapping on screens >8 bit -optional try all nonprop fonts in memory -optional try user specified fonts beside the rastports default font @endnode @node "s_Requirements" "Snap Requirements" @prev "s_Requirements" You need an Amiga with OS2.0 or higher. I suggest using this snap with 68020+ due to 68020 optimized ASM routines. @endnode @node "s_Configuration" "Snap Configuration" @prev "s_Configuration" Font-List: Snap will try all fonts in this (in the given order) list after the rastports default font. You should insert your mainly used fonts there. Note that only opened fonts will be tried. So a long list must not mean a longer snapping time. (Except snapping fails and you have got a lot of fonts in memory). Colorsnap: Enable snapping of text over pictures. That means if there are more than 2 colors in in the area of a single character snap will try color after color until a character is recognized or no color is left. You should enable this only on fast machines (68030+). I needed it to snap the icon text on my WB. Note that colorful ANSIS can be snapped without enabling this switch. Extend Area: If you release your LMB while snapping and then go on selecting, the selected area will extend. Otherwise one edge is fixed on the first clicked character. Try all fonts: Snap will try all opened fonts after the rastports default font and the fonts specified in the fontlist. No Displaybeep: Snap won`t beep if no character was recognized. EOL Errorskip: Snap will kill all unrecognized characters at the end of each line. Try bold fonts: Snap will try bold fonts too (after the normal-styled fonts). Note that you need to click on a normal-styled character first. If you want snap to recognize bold characters at first see Try bold fonts first. Try bold fonts first: Snap will try bold fonts,after all fonts in all colors have been tried. Error sign: The character that will be inserted for an unrecognized token. Snap Mode: Here you can configure how snap behaves when clicking: -Normal first click: a square area is selected doubleclick: a word is selected next click: a full line is selected next clicks cycle between these modes -Area Snap first click: a word is selected next click: a full line is selected next click: a square area is selected next clicks cycle between these modes -Line Snap first click: a full line is selected next click: a square area is selected next click: a word is selected next clicks cycle between these modes Crawling direction: Configures the direction of the crawling ants (left or right). Crawling speed: Speed of the crawling ants 0= no movement 1-7=crawling speed (the higher the faster) Pen: The color of crawling ants (usually pen 0=black pen 1=white pen 2=blue) Snap pattern: The pattern of the crawling ants (3333 is a good idea). @endnode @node "s_Thanks" "Snap Thanks" @prev "s_Thanks" I want to say thanks to: Frank Fenn Stefan Sommerfeld Andreas Wenzel Note: Who wants to be FAMOUS ? @endnode @node "s_History" "Snap History" @prev "s_History" 97-03-7 Snap V1.0 introduced It all started with an Idea in 1995. @endnode @node "s_Todo" "Snap Todo" @prev "s_Todo" Well... there is really a lot. But don`t forget I do not get any money out of my work, if you want me to include more. +snapping of: -proportional fonts (this snap is designed to handle prop fonts. But I don`t see any sense in it to complete my code) -italic fonts +snapping in screentitle +asynchrone snapping +picture snapping +MultiSnap (ala Powersnap) +FLI (flexible line distance -> ever tried to snap in Multiview ? *SOON*) @endnode @node "s_FAQ" "Snap FAQ" @prev "s_FAQ" This list is actually empty. I hope it will be. @endnode @node "s_Index" "Snap Index" @next "s_Index" @prev "s_Index" Index @{" Configuration " link "s_Configuration" 0} @{" FAQ " link "s_FAQ" 0} @{" Features " link "s_Features" 0} @{" History " link "s_History" 0} @{" Introduction " link "s_Introduction" 0} @{" Requirements " link "s_Requirements" 0} @{" Thanks " link "s_Thanks" 0} @{" To do " link "s_ToDo" 0} @endnode @node "fet_sunoptions" "Sun Options" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this feature it is possible to activate some of the following options: SunMouse - activates the window below the mouse arrow SunPoptoFront - brings the window below the mouse arrow to front. SunKey - activates the window below the mouse arrow, if a key is pressed. @{b}The SunRMB feature can be activated with the "Activate window under Mousepointer" hotkey. This hotkey can be assigned to the right mousebutton and does the same as SunRMB.@{ub} The adjustments are reachable by editing the function. On the left side, there are the checkmarks for (de)activating the single functions. With the sliders on the right, you can adjust the delay for SunMouse and SunPoptoFront. If you want to activate the windows by using SunPoptoFront, you have to activate SunMouse too. This allows it to activate the window immediately but bring it to the front a second later. Certainly you can enable or disable windows for the 'SunMouse' and 'SunPoptoFront' features. You can find an example for this on the @{"Patternmatching" link "fet_patternmatching" 0} page. NOTE: The delay is displayed in 1/10 seconds. @endnode @node "fet_changetd" "TrackDisk Prefs" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Here you can enter the value of retries, stepdelay, settledelay and calibratedelay for each drive. Please test the values, but if you get read/write errors, then change back to default. NoClick : switches off the Drive clicks. Retries : Number of Retries if an error occurs. (default is 10) You can set it to 3 or 4 to avoid tracking of the disk and for example faster checking of MS-DOS disks. StepDelay : Delay for each drive step. (default is 3000) SettleDelay : Delay for the settle of the drive. (default is 15000) CalibrateDelay : Delay for calibrating the drive. (default is 4000) @endnode @node "fet_waitvalidate" "Wait Validate" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If MCP starts and a harddisk is validating, then MCP will wait until it's completed. The computer can boot normally without any requesters. This is only usefull if MCP is in your Startup-Sequence. @endnode @node "fet_closeactivewin" "Close Active Windows" Closes the active window. If you want to close even windows without Close-Gadget, you have to set "everytime" in the @{b}Options@{ub} window. @endnode @node "fet_closewinundermouse" "Close Window Under MousePointer" Closes the window under the mouse pointer. If you want to close even windows without Close-Gadget, you have to set "everytime" in the @{b}Options@{ub} window. @endnode @node "fet_coldreset" "Cold Reset" Instead of a warm reset this kills all RESET surviving programs - RAD disks are removed as well - and will set the MMU to off (if available). I have this set this to Esc LAlt, very handy if you have something in one hand and want to reset with the other hand. @endnode @node "fet_enterascii" "Enter ASCII" If you hold down the hotkey you can type the ASCII value on your numeric keypad to show the character. Normally you have to type three numbers (000-255), but if you want the character for 30 or higher then you only need to type the last two numbers. If you want to have it exactly like the PCs (yuck!) then set it to LAlt and press New and set it to RAlt. @endnode @node "fet_executecommand" "Execute Command" This hotkey will let you execute a Shellcommand. The Shell-command must be given on the Options page. @endnode @node "fet_holdmouse" "Hold Mouse" Hold Mouse X / Hold Mouse Y : Blocks the mousemoving in the X or Y direction respectively. Hold Mouse X or Y : Blocks the mousemoving in one direction, where the direction is given through the last mousemove. @endnode @node "fet_insertstream" "Insert into Inputstream" This Hotkey puts a given text or/and a keystroke to the Inputstream. Following formats are supported and must be set on the Options page: Inserting text: { } {Amiga is the Best} Pressing a key down: < > Releasing a key: [ ] [CTRL RALT A] Example: you want to insert a Doubleclick with the Left Mousebutton, the following line will do this. [lbutton mouse_leftpress] [lbutton mouse_leftpress] Please note that you must put a space between each string. @endnode @node "fet_insertclip" "InsertClip" Inserts text from the clipboard to the current cursor position. @endnode @node "fet_mempatch" "MemPatch On/Off" MemPatch-option will be toggled and a requester with the actual settings appears. This only works if the Memory Patch on the mainpage is activated!!!! @endnode @node "fet_scsieject" "SCSI-Eject" With this hotkey you can eject for example CDROMs or SyQuest-media. If it's possible, the media will be loaded with the next keyclick (e.g. CDROMs). MCP can't check if the media is outside of the drive and therefore MCP sends the LOAD and EJECT commands alternately. The Device and the Unit must be set on the Options page. @endnode @node "fet_settaskprio" "Set Task Priority" You can set the priority of a given task with this hotkey. The task name and the priority must be set on the Options page. @endnode @node "fet_shiftkey" "Shift Key" You can emulate the Shiftkey with this function. If you want to add the Shift-Key only to keys, you have to disable the "Mouse" checkmark on the @{b}Options@{ub} window. If you set this checkmark, the Shift-Key is added to mouse events, too, so that each mouse press will be a SHIFT-mouse-press. I have this set to LBUTTON MBUTTON MOUSE_MIDDLEPRESS. This way I can select multiple icons on the workbench by selecting the first icon (keeping the left button pressed down) and then pressing the middle mouse button down and keeping it down, and then release the left mouse button and start selecting as much icons as you want. It's easy once you get used to it. For those of you who wonder why not use just the middle mouse button for this, it's simple I use it to CycleScreens. You never again have to use the cycle gadget in the topright corner again! @endnode @node "fet_snaphotkey" "Snap" Here you can define the qualifiers which should be used in conjunction with the left mousebutton to snap a text. You may NOT Define a MouseEvent!!! @endnode @node "fet_startdimmer" "Start Screen Dimmer" Starts the ScreenDimmer immediately. You must set the "depth" on the @{b}Options@{ub} window!!!! @endnode @node "fet_startwbprog" "Start WB-Program" Starts a given program as WB program, so it can load the tooltypes from the icon. Arguments are not supported. The name of the program must be set on the @{b}Options@{ub} page. @endnode @node "fet_startwbprogreq" "Start WB-Program Requester" Starts a given program as WB program, so it can load the tooltypes from the icon. Arguments are not supported. @endnode @node "fet_systemrestore" "System Restore (Processor, AGA)" @next "fet_alerttimeout" Resets the System, if you changed the system status using the MCP-ToolTypes. @endnode @node "fet_alerttimeout" "AlertTimeOut" @next "fet_systemrestore" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function let you define a timeout for an Alert, so this Alert will be canceled after the given delay if you type nothing. The time must be given in seconds. This works only with Kickstart 3.x ! @endnode @node "fet_appchange" "AppChange" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Now you are able to change the AppIcons that are created by the programs themselves. Some programs have ugly 4-color icons, which look very bad on MagicWB (or NewIcons). With this patch you can use your own, more pleasing, icons for a particular program. MCP is looking in "ENV:sys/" for a new icon, that have to have the name "def_AppIconname.info" and it replaces the old one with the new icon. If you start PowerPlayer, MCP tries to open the icon def_Powerplayer.info from the ENV:Sys/ directory as an AppIcon replacement. Substitute PowerPlayer by your preferred name, including space(s). @endnode @node "fet_assignwedge" "AssignWedge" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Who has never been annoyed by installing a new piece of software, running it and getting the message: Please insert volume X: into any drive. Until there was AssignWedge, you had to open a shell and had to assign or mount the needed drive manually. After that, you had to start the program again. Now, this hassle is over. This function extends the former requester by adding some gadgets with the following meaning: Retry : Retries to find the volume, ist sensefull if you forgot to insert a disc. Assign : Choose a directory with a filerequester and then assigns the requested volume to it. Assign+Prefs : As Assign but loads MCPPrefs so you can use the AssignPrefs "Add Systemassign" gadget to add the assign to the list Mount : Tries to mount the requested device. Deny : Like Cancel but also automatically cancels the requester, everytime a call is made to this device. Cancel : Just Cancel , If Requester Persists Use "Deny". @{i}NOTE: For devices added by the 'Assign' gadget, if you need them regularly You should Use "Assign+Prefs" to add them to your @{"AssignPrefs" link "fet_assignprefs" 0} . This extended requester does not support the Locale system function at this time. If you use ARQ then you should insert "ARQ" after PatchControl (e.g. c:PatchControl #?ARQ).@{ui}" link "supportprograms" 0} (e.g. c:PatchControl #?ARQ). @endnode @node "fet_automount" "AutoMount" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function makes an automount to the given DosDrivers if these drivers addressed the first time. MCP can only watch for drivers which makes normally a requester like 'Please insert volume ... in any drive'. You must give these dosdrivers in the stringgadget as a patternstring without the colon. Examples: (RAD|DEV) to automount the RAD: and DEV: drivers ~(DEV) to automount all drivers except DEV: @endnode @node "fet_borderblank" "BorderBlank" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Switches the grey screen border to black. This function needs the ECS or AGA chipset. @endnode @node "fet_cachefont" "CacheFont" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If you have a large FONTS: directory and want to pick a font from a font requester, it most likely takes a long time until you can really pick the font. The wait is over! MCP will create a list of fonts. This list will be called everytime a program calls the 'AvailFonts' system-function. 'CacheFont' is a 100% replacement for AvailFonts! To generate the fontlist, you have to edit this function in the prefsprogram. Then a new window will opened, asking you, if you want to create a fontlist. If new fonts are copied to the Fonts: drawer or some old ones are deleted, a new fontlist will needed to be created. Once recreated, the fontlist will reflect the changes when a fontrequester is opened. Since OS 3.9 this function is integrated in OS, so you should'nt use this function. @endnode @node "fet_wbtitle" "Change Workbench Title" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function it is possible to configure and to extend your WB TitleBar to your own desire. To change the WB TitleBar, you have to edit this function. A new window will open where you can change the entered value. How much you can enter depends on the used font (the best is a proportional font) and the width of the screen. The variables for the titlebar are, in contrast to Titleclock and Appicon, not frequently updated so very dynamic variables like mouseposition and showing seconds are not very appropriate. All @{"Variables" link "vars" 0} are allowed however. Between the above values you can put whatever characters you want. Example: AmigaOS %wb %Pr %cs %FcK Chip (%pc%) %FFM Fast (%pf%) %FTM Total (%pt%) T:%nt L:%nl S:%ns Would look like this: AmigaOS 3.9 68060 AGA 1.185K Chip (57%) 11M Fast (70%) 12M Total (68%) T:64 L:55 S:2 Insert enough spaces between the values, to make it more readable. The %Pr and %pr always show the real (or emulated) M68k processor. An example with PPC card could be: %PR/%Pr which would show: @{bg shine}604e /68060@{bg back} @{i}NOTE: 1) MCP tries to find the WB-Title through the word "Amiga" in the beginning of the title. This function is not always successful! 2) If you use DOpus5, you must set the "WorkbenchTitle" Env-Variable in the "ENV:Dopus" directory.@{ui} @endnode @node "fet_copymemquick" "CopyMemQuick" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This patch replaces the system function CopyMem and CopyMemQuick by a highly optimized Movem- or Move16-Copyloop (if possible), these are depending on your processor implemeted best possible. Should always be switched on for the maximum of RAM-performance. @endnode @node "fet_crunchpatch" "CrunchPatch" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} CrunchPatch @{" ToolAlias " link "fet_toolalias" 0} @{" AssignPrefs " link "fet_assignprefs" 0} @{" Memory Patch " link "fet_memorypatch" 0} @{" Requester TimeOut " link "fet_reqtimeout" 0} This function makes it possible for programs to read files crunched by the following packers: If the appropriate libraries are available! · PowerPacker powerpacker.library · XPK (not encrypted files) xpkmaster.library + used sub-libraries · StoneCracker ? · Imploder explode.library · Crunchmania CrM.library If a program already supports some of the packers, then those should be switched off. If you don't then the files will be decrunched twice and thus doubling the loading time. On the lower left corner of the Lists/CrunchPatch page there's a cycle button set to Include this means that the tasks you enter have decrunch support, if you change this to Exclude then all tasks except those in the list can read crunched files. Unfortunately you can not deactivate single packers in Exclude mode. As the name says this is a patch so I recommend using Include to keep patching to a minimum. Press Add to bring up a list of tasks (running at that moment!) You can pick a name or type it, pattern matching is possible with e.g. #? but this is slower, do not use this if you have a slow computer or a lot of tasks running. If you choose a program at the list, you can change following, too: EDIT - you can edit the name of the program DELETE - you can remove the choosen program from the list @endnode @node "fet_cycletomenu" "CycleToMenu" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If you enable this function you can enable a little menu for a cyclegadget if you press on it. It follows a description of the preferences for this function: MagicWB - Here you can define the look of the menu if the screen has MagicWB colors non MagicWB - Here you can define the look of the menu if the screen has no MagicWB colors You can define the look and the color for the selected and unselected menu if you click on the corresponding image. The frame will select the border from the complete menu and the fontcolor is the color of the menufont. Additional to this you can make these options: min. entries - This is a value which defines whether the menu will come. If you have a value 3 then the menu comes if the cyclegadget has 3 entries. If the cyclegadget has only two entries then the cyclegadget has the old functionality. Entry Height - Hight of an entry in the menu. 0 = height equal to gadgetheight 1-10 = height equal to fontheight plus this value*2 Below - If set, the menu comes under the cyclegadget and is not centered to the active entry Sticky - Set this if you want make a single click to open the menu and just after the second click this menu goes back. In the time between the two clicks you can move the mouse without pressing a mousebutton. FixFrameSize - This makes the menu a little bit bigger, so the menu has the same width as the cyclegadget. That's useful if you have a big frame around the menu. TopAlign - Set this to align the active entry (if Below is off) to the upper edge of the gadget. Otherwise the active entry is under the mousepointer. NOTE: Be sure that you don't have an other CycleToMenu program running. @endnode @node "fet_fontsearch" "Font Search" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If a font couldn't be opened, MCP will try to open the font from another directory. Useful for those programs that search only in their root-directory or another given place for fonts files. For the font will be looked on following places: 1. given path of the program 2. Fonts: 3. progdir: 4. progdir:fonts 5. sys:fonts With this patch you can install all your fonts into one place, e.g. Fonts: or the fonts of every program into the progdir. NOTE: Only standard fonts (#?.font) will be searched. No (e.g.) PS-Fonts. @endnode @node "fet_hirespointer" "Force HiRes Pointer" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function forces the mouse to HiRes forever, so you will never see a LoRes mouse anymore. On AGA-machines or by using a graphic board it's very annoying, especially when an old program uses a LoRes mouse. This works only with system friendly programs (Dune II doesn't work with this function.) @endnode @node "fet_forcenewlook" "Force NewLook-Menus" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function the colors of all the menus are set to 'NewLook' (3.xx standard). The function works only with kickstart 3.x and fixes wrong colors in the menu for older programs. And it can not be used along with older versions of MagicMenu, because MagicMenu uses own Menucolors and will be irritated by this patch. New versions doesn't have this problem. @endnode @node "fet_frameihack" "FrameIHack" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function replaces the frames used by the system (e.g. Buttons). The width of the lines will be changed to give it a much better look in 1:1 resolutions. Check Resolution : If on the resolution of the screen will be checked before changing the frame. If there is no 1:1 resolution, nothing will be changed. @{i}Note: With Visualprefs or since OS3.9 you have already similar functions. You should only use one of these functions.@{ui} @endnode @node "fet_hdprefs" "Harddisk Protection Prefs" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} You can activate special function for all devices in the list (device names are case sensitive!!). Three buttons allow you to protect the device from formatting by mistake. This function protects from formatting from some viruses, too. Formatprotection protects against formatting. QuickFormatprotection protects your device from quick formats. BootFormatprotection protects from bootblock formats.(some viruses like to do this). Timeout - If a Device is not used for the specified amount of time then the device is put into standby mode (usefull for hardisks that are rarely used) @{i}IMPORTANT: If you use NSDPatch, you must add "SINGLEPATCHONLY" to every device in the NSDPatch.cfg file!@{ui} Since OS 3.5 NSDPatch is integrated into Setpatch, therefore the data in Devs:NSDPatch.cfg has to be changed for every patched device. @endnode @node "fet_libsearch" "Library Search" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Unfortunately some programs have their own library directory and only load their library from there. With this patch you may move libraries to LIBS: to prevent useless doubled library files. It's also possible to create a 'Libs' directory in a program's own directory. 'Library Search' will search for libs in PROGDIR:libs/ too. You can sort the libs of a program and if you delete that program, you could delete the programs libraries as well. 'Library Search' is looking onto following places: 1. given path of the program 2. LIBS: 3. current dir 4. current dir/libs 5. current dir/classes 6. progdir: 7. progdir:libs 8. progdir:classes NOTE: First the program will try to load the library at the place the program wants to have it, then, if it fails, MCP starts a new fetch in the 'LIBS:' directory. @endnode @node "fet_lockpatch" "Lock Patch" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This patch checks the parameter to the DOS function Lock to prevent invalid values. Some programs call this function with illegal values, although there are only two valid parameters. Reactions are, e.g. files are locked after use, you can't delete or change it. @{i}Note: It's good to activate this patch always, because there are no negative reactions with correct values.@{ui} @endnode @node "fet_memorypatch" "Memory Patch" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} @{" ToolAlias " link "fet_toolalias" 0} @{" AssignPrefs " link "fet_assignprefs" 0} Memory Patch @{" Requester TimeOut " link "fet_reqtimeout" 0} PLEASE USE THIS FUNCTION ONLY IF YOU HAVE A GFX BOARD. IT DOESN'T WORKS WITH THE AMIGA CHIPSET !!!! (All Amiga-Screens needs ChipMEM, so it's impossible to patch this ChipMEM to FastMEM) And do NOT try to force a sound playing program to use only FastRam, besides you use a soundcard! If you want to enable only ChipMem for some programs then it works on all Amigas !! With this function you can assign a memorytype to a given task. You can give a special task only ChipMem or only FastMem. This function is very usefull for owners of a Gfx-Card, because the processor from the Gfx-Board can use also FastRam. With a good Workbench emulation you can give FastRam to almost all programs, with the following advantages: · you are able to open big 256-color-screens, even if you are low on ChipRAM (512k or 1MB) · it increases the system speed partial extremely (e.g. you need barely processor time if the User-Programs of EaglePlayer are situated in FastRAM) @{i}Two modes are supported via the "Exclude/Include" button.@{ui} @{b}Exclude Mode:@{ub} All tasks will get ONLY FastMem except the tasks in the list which will get the specified memory! @{b}Include Mode:@{ub} Only the tasks in the list will get the specified memory! All other tasks are not changed! This patch shows, impressively, how good a WB-Emulation of a Gfx-Board is working without ChipRAM. If you use this patch, you have to have a look at the following: You must choose 'Exclude' and then you must enter the following programs: · if you want to have a mouse arrow at the AmigaScreens (usually yes), you have to add the task '« IPrefs »' to the list and give this task Fast- and Chipmemory. · all programs, which resort to the sound hardware (e.g. all soundplayers) have to get both memorytypes too. On AmigaScreens Memory Patch (Exclude) will automatically disabled. All not entered tasks will become only Fastmemory !!! ~~~ For adding a new task, you simply edit the function and click on the 'ADD' gadget. A new window will open, where you can pick a task from the system task list or enter one into the stringgadget by hand. If you pick a task from the list, you have the following gadgets at your disposal: EDIT - edit the name of the task DELETE - kill the picked task from the list NOTES: 1) If you have a grey screen after Reset you have an error in your list. 2) The NoChipRam-Patch works without problems with the Picasso-emulation but NOT with the P96 emulation at the moment. But it works really good with the CybergraphX emulation since version V2.14 if you SET the ENV-variable 'NOCHIPSCREEN' and UNSET the 'PLANESTOFAST' variable. The scrollfunctions (e.g . pagescroll with Cygnus-Ed) will be twice as fast. 3) If you have typed a task in the list and this tasks gets all the same only fastmemory then you must include the 'WBL' task to the list. This system tasks loads a program and decode the hunks. Because some programs have Chipram Hunks the 'WBL' task must be included. @endnode @node "fet_newgadtools" "New GadTools" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function is very powerfull. Now it's possible to change the look of all gadgettypes from the gadtools.library. Because a lot of programs and the whole system uses these gadgets you can change the complete look. Unfortunately some programs uses own gadgets (e.g. Reqtools) which can't be changed ;-( Here is a little description how you can change the look of the gadgettypes: 1) In most of the cases you can define the look for screens with the MagicWB colors and for other screens. (Certainly you can deselect one of these types and then they are not changed.) 2) In the Pattern-String you can give a pattern for tasks which will preserved from changing. You can see an example for this on the @{"Patternmatching" link "fet_patternmatching" 0} page. Button - Look Cycle - Look XEN-Style/Standard type of the cycle image in the cyclegadget. Slider - Look NewLook type of the slider background (NewLook=raster, otherwise color) Knob/noImage slider with a little knob in the middle Scroller - Look NewLook type of the slider background (NewLook=raster, otherwise color) Knob/noImage slider with a little knob in the middle Arrows - Look XEN-Style/Standard type of the arrow image in the arrowgadget. FixSize influence the size of the arrows (Screen 2:1 (Pal Hires, Ntsc Hires) X=1 Y=0) (Screen 1:1 (Hires Interlaced) X=1 Y=0) (Screen 1:1 (1024*768) X=1 Y=1) Checkmark - Look XEN-Style/Standard type of the image in the checkmark gadget ListView - Look Text / Number - Look Radiobut. - MagicWB if the Radiobutton should have MagicWB style. The 'small underscores' option makes the underscores a little bit smaller. This improves the look in some cases. @endnode @node "fet_tooltypes" "New ToolTypes" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function is particularly useful, if you want to start games or demos directly from Workbench and those games don't like your system configurations! You enter the new functions as tooltypes just like the normal AmigaDos tooltypes. You can enter the following Tooltypes to the icons: MCPNOVBR: sets the VBR to address 0 (doesn't work if an Enforcer-Tool is running) MCPNOCACHES: switches off all caches MCPNOICACHE: switches off the InstructionCache of the CPU MCPNODCACHE: switches off the DataCache of the CPU MCPNOIBURST: switches off the InstructionBurst mode of the CPU MCPNODBURST: switches off the DataBurst mode of the CPU MCPNOCOPYBACK: switches off the CopyBack mode of 68040 CPU MCPNOCYBER: switches the CyberVision64 GfxBoard to AmigaScreen MCPNOAGA: switches the AGA-ChipSet to OCS-Mode (KillAGA) MCPPAL: switches the Screenmode to PAL MCPNOMEMPATCH: switches off the 'Memory Patch' function MCPNOBCACHE: switches off the Branch Cache of the 68060 CPU MCPNOSSCALAR: switches off the SuperScalar Cache of the 68060 CPU MCPNOSTOREBUF: switches off the Store Buffer of the 68060 CPU MCPHALFINST: halves the Data Cache of the 68060 CPU MCPHALFDATA: halves the Instruction Cache of the 68060 CPU MCPTIMEROFF: disables MCPs internal timing, no Dimmer or Blanker will appear. MCPDISABLEFPU: switches off the FPU of the 68060 CPU MCPFLUSH: flushes all unused Libraries and Devices from memory (Kickstart 3.x needed) MCPASSIGN0: makes an assign to the system (e.g. MCPASSIGN0=Games,DH0:Games) (The assigns must be counted from 0 to 9, e.g. MCPASSIGN0, MCPASSIGN1, MCPASSIGN2,...) The system will be switched back to the original state automatically or by pressing the 'SystemRestore' Hotkey (look at @{" Hotkeys " link "fet_hotkeys" 0}). NOTE: We received a lot of mails, telling us 'Ambermoon' is not working with MCP. The failure is not in MCP. It is the VBR in the FastRAM. With that game (and many other too), you should enter 'MCPNOVBR' into the icon, or switch it off by hand. @endnode @node "fet_newedit" "NewEdit" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Now you have better control over stringgadgets. At this time MCP supports the following keystrokes: 'ESC' - exit without change 'ALT' + 'Cursor left' - move Cursor one word to left 'ALT' + 'Cursor right' - move Cursor one word to right 'ALT' + 'Backspace' - clear the left word from Cursor 'ALT' + 'Delete' - clear the right word from Cursor 'RCOMMAND' + 'l' - switches the string to lower case 'RCOMMAND' + 'SHIFT' + 'l' - switches the string to upper case 'RCOMMAND' + 'c' - copy the string to the clipboard 'RCOMMAND' + 'v' - add the clipboard contents 'RCOMMAND' + 'SHIFT' + 'v' - overwrite the string with the clipboard contents 'LCOMMAND' - use old 'RCOMMAND' hotkey Please note that OS 3.5 (and 3.9 even more so) already has some of these functions @endnode @node "fet_nodisplaybeep" "No DisplayBeep" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Disables the DisplayBeep from the system. @endnode @node "fet_noiconborder" "No IconBorder" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Removes the borders from all Workbench icons to allow a better look with NewIcons. The idea for this patch came from Kamel Biskri (author of NoFillNoDraw Aminet: util/wb/NoFillNoDraw.lha). This Patch should not be used since OS 3.5 as it is integrated in the OS. @endnode @node "fet_noguru" "NoGuru" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function extends the system-crash-request and offers more possibilities to choose. If a program crashes, a window with the following contents appears: upper part: Task : Address and name of the program that crashed. Error : which GURU has occurred. By : Main group of alert. Cause : more detailed description of the GURU. A7-A7-12 : contents of the stack besides Ax: If you running SegTracker, here are informations about PC : Address of the ProgramCounter. D0-D7 : Content of the data register. A0-A7 : Content of the address register. In case the "Disassembler-lines" are set to a apropiate value and the disass.library is available then the assemblercode is shown here. MCP tries itself, to set current PC to 2/3 of these lines, therefore to calculate the start, this works better the more lines are displayed. Buttons: Continue - Continue execution of the program (close requester). Suspend - Program will be frozen (but keep it in memory). Remove - Program will be removed from memory and all windows and screens, belonging to the program will be removed from the system. Change PC - Address of ProgramCounter can be changed. Jump to RTS - Jumps to a RTS. Reboot - Resets the system. Save - Saves the actually shown gururequester as a textfile. then behaves further like 'Continue'. With the option "Ask for filename" checked, a requester will appear before the guru is saved. When not checked , it will be written to T:Guru.txt The slider for "Delay" will set a Delaytime for the NoGuru-Requester. It is to ending diskoperations or make other thinks finish first. This value increases "Alert TimeOut", of course. Optional functions from: Segtracker ( from Enforcer package) and dissasembler.library NOTE: If the function @{"Alert-History" link "fet_alerthistory" 0} is active, every Guru will be written into the 'GuruHistory' file in the selected Directory. If you know more Gurus, please inform me! @endnode @node "fet_patchmath" "PatchMath" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function will fix an error in the mathieeesingbas.library on systems with a 68040 processor and kickstart 3.1. The functions IEEESPMul() and IEEESPDiv() of this library crash due to invalid FPU instructions. The original code is from Matthias Scheler and is available in the 'MathPatch.lha' archive on the Aminet. @{i}Note: This patch doesn't replace speed patches like HSMathLibs or FastIEEE. But you don't need this patch, if you use these tools or OS3.5, because then the patched error doesn't exist anymore.@{ui} @endnode @node "fet_patchopenwb" "PatchOpenWB" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This patch is only necessary, if you run Kickstart 3.0 or 3.1. An error in the system, which may occur when opening the Workbench program, will be removed. If a task with a negative priority starts the Workbench program, the system will hang up. If this patch is switched on, the priority will be set to 1, the WorkBench will be started and finally the task will be set to its former priority. Since OS3.5 the error is fixed. @{i}Note: Because the start of workbench is working with a higher priority, this patch can be useful on other OS versions to speed up the start.@{ui} @endnode @node "fet_patchrgb32" "PatchRGB32" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This patch is only useful if you have a Gfx-Board, Kickstart 3.x and no AGA-Chipset (e.g. A2000/Kickstart 3.x/PicassoII). This patch removes a BUG in the Kickstart 3.x, so that everytime a 24-bit palette is used. This function should not be used on other machines; if the patch is not used in conjunction with the above stated hardware, the colors could be incorrect. @endnode @node "fet_quickdraw" "QuickDraw" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This uses the system-function RectFill() (which draws filled rectangles) to draw horizontal and vertical lines. On normal Amiga's and most of the graphic cards it draws the lines about 50 percent faster and normally it should work with all programs. By using FBlit it seems to not occur a real speedup. @endnode @node "fet_quicklayers" "QuickLayers" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function all window operations will be accelerated. Some functions of the layers.library will be replaced and a recognizable higher speed (of moving, re-sizing, opening, and closing of windows) will be reached. All of the functions can also be used with graphic cards This option is deactivated by MCP if the corresponding faster routines of Cybergfx are activated ("Superlayers" = 1). As MCP is started in advance of Cybergfx, MCP is able to notice this only later, therefor it is useful to shut off this option in MCPPrefs. If you use a faster layers.library (e.g. from "SystemPatch"-packet), please deactivate this function in MCP, because in other case the patches instead of new library functions are used. @endnode @node "fet_rampatch" "RAMPatch" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This patch makes a change to the RAM-Handler, so that the size of the free RAM will be shown. Normally the free RAM-Size is always zero, because the RAM Disk is as big as the total amount of bytes it holds. This works with all programs! @{i}Note: If there is running another similar working tool, you can get wrong values.@{ui} @endnode @node "fet_rtpatch" "ReqTools Patch" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function changes the system vectors in a way that all system messages and requesters will be opened with the 'reqtools.library'. This function is a replacement for 'RTPatch' and the requester replacement function in 'ReqChange'. In addition to this, some minor bugs (mostly in RTPatch) have been removed. The AssignWedge function of 'ReqChange' is also implemented to MCP! To get to the hidden gadgets that access the various library patches, you have to edit this function on the mainpage and then you can choose the checkmarks for each of the 'Intuition-', 'Asl-', 'Arp-' and 'Req-' libraries. In addition to this, it is possible to open the requesters in exactly the size, adjusted by the ReqTools Preferences program. The ARQ mode allows the requester patch to use the 'ReqTools Patch' and 'ARQ' together. If a Reqtools-Requester is opened a second time, then normally the directory contents is only refreshed if the directory name has been changed. If you set the "Refresh" option, the directory will be refreshed everytime, but the current position in the file list is lost. NOTES: 1) If you use ARQ then you must give the 'ARQ' option to PatchControl. 2) ARQ is the animated requesters package written by Martin Laubach. The latest version (ARQ183.lha) is available at any Aminet site and on many BBS's. 3) RTPatch is a requester enhancement package written by Nico Francois. ReqChange is a tool to facilitate the using of requesters by falling back on ReqTools-Requester. The program was written by Magnus Holmgren and is available at any Aminet sight and on many BBS's, too. @endnode @node "fet_reqtimeout" "Requester TimeOut" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} @{" ToolAlias " link "fet_toolalias" 0} @{" AssignPrefs " link "fet_assignprefs" 0} @{" Memory Patch " link "fet_memorypatch" 0} Requester Timeout This function allows you to automatically cancel or confirm ReqTools requesters after a specified period of time. That's why it's recommended to activate the @{" ReqTools Patch " link "fet_rtpatch" 0}. You must enter enough information for each requester to be identified. For some requester you may have to enter all fields to have an unique identification, but usually that should not be necessary. If the requester is identified by MCP, the gadget specified in Gadget Number will be chosen after the specified time in Timeout. Title: The title of the requester, often just Request or Information BodyText: The message text inside the requester. Between two lines of text you have to enter #? (see @{" Example " link "Requester TimeOut-Example" 0} ). You must also take care that no double quotes " are in the text entered. #? can also be used for wildcarding. Gadgets: The names of the gadgets. If you enter more than one name here separate them with #?, please note, underlined letters or special fonts are needing additional characters. e.g. "#?O.K.#?Cancel" matches also with "_O.K. | _Cancel". Gadget Number: The gadgets are counted from left to right starting with 1. However the rightmost gadget is always 0, if there's only one gadget it's also 0. TimeOut: The number of seconds to wait, 0 means cancel it before it shows up. This function must not be used to automatically cancel Shareware-requesters. This function is not in the Aminet release. @endnode @node "Requester TimeOut-Example" "Requester TimeOut-Example" @font XCourier.font 13 For example you want to cancel the following requester after 3 seconds: @{" Request |%" link "" 0} | | | | Button GadgetNumber | | Demo Requester | | Save: 1 | | some more text | | Use: 2 | | | | Cancel: 0 | | | @{" Save " link "" 0} @{" Use " link "" 0} @{" Cancel " link "" 0} | | | ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ In this case the Title is: Request The Bodytext should be: Demo Requester#?some more text And Gadgets should be: Save#?Use#?Cancel, but #?Save#?Use#?Cancel would be better, then an underlined "S" will be detect, e.g. if it's a shortcut. Now set Gadget Number to 0 And set Time to 3 Now the requester automatically disappears after 3 seconds or you can make another choice in that time. In this case the Title wasn't really required, so it could have been left empty. @endnode @node "fet_promotor" "ScreenManager" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} ScreenManager @{" Hotkeys " link "fet_hotkeys" 0} The ScreenManager is a wonderful promoter, which can do nearly anything for you, if you only know how :-) First of all: The ScreenManager is able to change (nearly) every existing Screenattribute, but if the program which uses this changed screen will still working flawless depends hard on the things you change and what it does expect from its screen. That means sometimes testing is needed to get the best results. And that´s how it works: As in every decent programming language one make use of IF/THEN-constructions to specify when and what should be changed. If you are looking at the ScreenManagers page in MCP-Prefs right now, you will surely see three listviews. The first is for specifying names for the different IF/THEN-pairs you will set up. That means the name is just for you and has no meaning for MCP. The second one specifies all IF-Conditions, that have to be true to execute the third (THEN-)list. That means all IF-Conditions (of one name) are linked via logical AND. A first example: If you want to change a single screen for a particular program follow these instructions step-by-step: First List (Press ADD and enter a Name.): An_Incredible_Meaningful_Name_To_Know_What_Is_Going_On ATTENTION !! The namelist is always completely execute top to bottom, no matter if all IF-conditions of an entry were true or not. If you don´t want to, see below (THENs - Break). Second List (Press ADD, choose the item you want to be checked in the cycle-gadget (here ´Screenname´) and insert what it should be via typing or choosing from the popuplist (the popuplist shows all attributes of running programs, in cases of screennames, tasknames ... or any available attribute for tags, ids ...) Screenname: RawSpeed Controller Performance Test v1.10 by Russel Miranda Third List (Another ADD-Button to press and another thing to choose out of the uppopping listview (see below for explanation)) DisplayID Name:CVision: 8Bit 640 x 480 So, what have we done until here ? This: IF the screenname is the given one THEN set the screenmode to CVision ... You see, the basicfunction of any promoter, wasn´t that easy ? But that´s not all. So here we go, refining it in some (maybe strange) ways. For example it is possible to revise if the opening task of the screen really is RSCP and not a wit, that opens a screen with the same name. What we do have to do is adding a IF-Condition (By pressing ADD, you know), choosing Taskname out of the cycler and typing it in (or choosing it out of the popup if RSCP is running at the moment). Well, now we are harder to fool :-) But what happens if RSCP becomes wiser and is opening a graphiccardmode at his own, maybe even in higher resolution and we still force him on such a tiny screen ? Prevention! :) Let´s do another IF-Condition: DisplayID Name: ~(#?CVision#?), means: only if the screenname doesn´t contain CVision go ahead and do the THENs. As you can see here, it is able to use patterns, but it isn´t possible to use all the AmigaDOS-Patterns, since a tiny own routine is used, what make thinks a little easier and faster. Supported Patterns are: - the normal 0-upto-a-lot-chars-joker ´#?´ and the one-char-joker ´?´ - you can link patterns with logical OR by using ´|´, e.g. (to?e|n#?ttob?) - to negate a COMPLETE pattern use ´~´, e.g. ~(to?e|n#?ttob?) That´s all, EVEN NO ´*´ !! ... matching is case-insensitive. All the rest you need to know are all the possible IFs and THENs, but to get a clue you have to now what a so called ´Tag´ is. Tags are used to set screenattributes. All Tags of a screen are predefined by the system, but may be changed by the calling program. Since the systemdefault settings were not guaranteed to stay the same over the complete evolution of the system, they can be forced to be on or off. One can examine in the IF-conditions if a tag is set or not. In the THEN-conditions they can be set. Look, all these IFs around here ScreenName Compares if the screenname of the screen to be opened matches the given pattern. TaskName Compares if the taskname of the screen to be opened matches the given pattern. DisplayID Compares if the screenname of the screen to be opened matches the given. All at your system available IDs can be listed and selected. Additional (for experienced users) one can specify a mask to promote complete monitors to another one, e.g. PAL --> DblPAL. The mask is given in hexadecimal number of eight just after the DisplayID, like this: DisplayID: ´00021000 ffff1000´ The given DisplayID and the DisplayID of the screens that wants to open at the moment are both linked via logical AND with this mask and then compared, that means only the Bits which are set in the mask are going to be compared. So it´s possible to remap complete monitors and still get the right resolutions. Since this isn´t easy, we will give you here the most important ones: AmigaMonitors (e.g. PAL) ffff1000 HAM & EHB fffffccf Examples: PAL-Monitor: DisplayID: '00021000 ffff1000' NTSC-Monitor: DisplayID: '00011000 ffff1000' PAL-Monitor (all HAM-Screens): DisplayID: '00021000 fffffccf' see also THEN - DisplayID And even more, THENs DisplayID Changes the screenmode to the one given by it´s ID, a special feature it is possible to select ´Like First ScreenID´ and you will always get the same screenmode as the first screen has at the moment. This option is useful for stupid screenblankers (e.g. some Garshneb.) , which always open on a preset screenmode leading to resynchronizations of your monitor if the first screen has different mode than the blanker opens. Here can be given a mask too (see also IF - DisplayID) to promote complete monitors. This mask is also linked via logical AND with the screenmode id the program wants to open and everything which isn´t zero will be replaced in the selected to-screenmode. Normally the mask is just the negated mask which was given in IF - DisplayID. The corresponding masks to above are: AmigaMonitor 0000efff HAM & EHB 00000330 Examples: DblPAL-Monitor: DisplayID: '000a1000 0000efff' DblNTSC-Monitor: DisplayID: '00091000 0000efff' DblPAL-Monitor (HAM-Screen) DisplayID: '000a1000 00000330' The mapping of different AmigaMonitors is just possible because the higher bits select the monitor (PAL, NTSC, MULTISCAN ...) and the lower ones specify the attributes as resolution, interlaced ... Unfortunately he mapping of different graphiccardsystem isn´t that easy. DisplayID Name Selects the screenmode by its name. Autoscroll Switches Autoscroll on, so you can scroll around on the screen with your mouse if the complete screen isn´t visible, e.g. oversized or dragged screens. Overscan Selects the overscanarea for the screen. DRI-Pens Here you can set the pens to be used for the GUI-elements to paletteentries (maybe have a look at the WB-Paletteprefs). With this function you may ´emulate´ and now disappeared MCP-function, SetDRI-Pens. Like this: IF: Tag not available: 8000003a THEN: DRI-Pens: -1 (default). This entry should be the first of your name list, so it is always executed. Break IMPORTANT! Breaks the execution of the first (Name-)list. Normally every entry is checked, even if a former couple of IFs did become true. LockPens Locks Colors (nice to use in combination with SharePens s.b.). It is possible to lock a special color or a given paletteentry. An entry in the colorlist looks like this: . If as first number a -1 is given a new color will be allocated, if not the given paletteentry will be locked and set to the given color. This option may replaced the MagicWB-Demon or other programs of that kind. If NewIcons and MWB Icons used together, it can happen, that the colors of the NewIcons *AppIcons* after closing and reopening of WBScreen are changed. To avoid it you can set colors of NewIcons to -1 and colors of MWB to correct positions: 0 149 149 149, -1 59 103 162, 4 123 123 123, 5 175 175 175, 6 170 144 124, 7 255 169 151. These settings are guarantee for MWB colors for MWB icons, as well as in the palette this colors doesn't exist! (trick by Luco Longone) Center Screen This function will center screens that are opened in an Overscan screenmode but have a smaller resolution. E.g. if a screen is opened in a resolution of 640*480 but in VideoOverscan mode (656*495), it will be placed in the exact middle of this (656*495), instead of in the upper left corner. Tag The following tags can be set or cleared. It is not impossible that a program really doesn´t like some screenattributes you would like to set, also not every combination of tags makes sense. Left Sets the left offset of the screen. Top Sets the top offset of the screen. Width Sets the width of the screen. Height Sets the height of the screen. Depth Sets the depth of the screen in bits. Detail Pen Sets the Pen to be used for rendering details in the screen title bar and menus. Block Pen Sets the Pen to be used for rendering block fills in the screen title bar and menus. Title The given text becomes the titletext of the screen. Type Customscreen, if the screen may only be used from the program which opened it Pubscreen, if also foreign programs are allowed to open their windows on it. Workbenchscreen, not useful, guess why. Public Screenname Name of the screens. Showtitle ON: Titlebar will be showed. Screen Behind ON: Screen will be opened in the background it will not popup as first screen. Quiet ON: Screen has no visible titlebar, but dragging and depth arranging is still working. Full Palette ON: Initialize color table to entire preferences palette (32 colors beginning with V36), rather than the subset from V34 and earlier. All Tags explained below this line are v39 (OS 3.0) and higher only !!! Please don´t try them on obsolete systems. Draggable ON: screen can be dragged Exclusive ON: Screen will never be visible if any other screen is (partly visible). He won´t be draggable or visible behind dragged screens. SharePens ON: Every not preset (via dri_pens) colors aren´t locked and can be allocated by any program (useful for e.g. MagicMenu). But, if the opening program doesn´t allocate its colors and depends on a static palette, you will get false colors if foreign programs are allocating and changing palette-entries. Interleaved ON: Enables interleaved bitmaps for this screen, which is faster, softer to scroll, but may cause problems with old programs. LikeWorkbench ON: Builds a screenmode which is as near as possible to the Workbenchscreen in color, size ... All Tags explained below this line are v40 (OS 3.1) and higher only !!! Please don´t try them on obsolete systems. MinimizeISG ON: The InterScreenGap (while dragging) will be minimized. OFF: default, at least three noninterlaced Lines between two screens. @endnode @node "fet_shapeshifter" "ShapeShifter Patch" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function makes a couple of advantages if you use the program ShapeShifter. If you edit this function you can choose the following settings: LockTask - If a Amigascreen is in the foreground then the ShapeShifter will be frozen to protect the Amigascreen from overwriting if you have a graphics card. @endnode @node "fet_movewindow" "Solid WindowMoving" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} It is possible (fully systemfriendly) to move the windows filled. The speed of moving rests on the following factors: · size of window · number of windows laying over another · the blitter- and the processor-speed To change the adjustments, you have to edit the function and in the opened window you can make the following adjustments: max. Surfacesize: here you enter the maximum size of the window that will be moved filled. If the window is larger than this value, the window will be moved normally. This size value is computed by 'width * height' of the window (e.g. 200 * 100 = 20000). only WB-Windows: only Workbench windows (with icons inside) will be moved filled. Program windows will be moved normally. Certainly you can enable or disable windows for the solid window moving. You can see an example for this on the @{"Patternmatching" link "fet_patternmatching" 0} page. NOTE: On systems with a fast Gfx-Board (e.g. Cybervision64) the windows move nearly in realtime. @endnode @node "fet_sizewindow" "Solid WindowSizing" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function makes it possible to enlarge/reduce the size of a window filled (fully systemfriendly). For more detailed information, please refer to the section @{"Move Full Window" link "fet_movewindow" 0}. The entry 'Surface size' is not available to this function. @endnode @node "fet_sysihack" "SysIHack" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} The standard system-gadgets will be changed to a more 3D look. This function isn't a full replacement for the program "SysIHack," because the original "SysIHack" features more functions then the ones effected by MCP's SysIHack. Additional to the normal SysIHack you can make the four MUI window title gadgets and the KingCON-Iconify window title gadgets in a nice 3D look. With the 'No Systemgadgets' option you can disable the patch for the systemgadgets and only allow to patch the KingCON or MUI gadgets. The 'New Propgadget' option gives the scrollbar from the Workbench-windows a little more 3D look. If you have changed the size of the sizegadget or the arrows, then you can activate the 'Rearrange gadgets' function to rearrange all other gadgets in the right border of a window. Now some additionally gadgets allowes you to resize the Sizegadget and the Arrows of the windows. This makes a better look on 1:1 screens if you increase the values. Best values for 1:1 are SizeWidth=18, Sizeheight=16, ArrowWidth=18, Arrowheight=16 for the gadgets. It's also useful to increase the bottom window border on 1:1 screens. Normally the values for the border are Top=2, Left=4, Right=4, Bottom=2, but now you can select the BottomBorder value to 4! You can deactivate the changing of the bordersizes if you set the size to zero! ATTENTION: (1) If you change the top border, the gadgets in the title are to small. This is a bug of the operating system !!! (2) The width of the right border is limited to a minimal value of 18, because the operating system checks this !!! NOTE: Don't start the original program "SysIHack" if this function is enabled! VisualPrefs and OS3.9 are using similar functions, please activate only once! Command "Adddatatypes" should be executed before MCP, because AmigaOS ever uses last added classes. Alternatively you can start MCP again, e.g. if you change configuration, but then the workbench screen and all open windows on it don't use MCP-gadgets not at all. @endnode @node "fet_wbclock" "Title Clock" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Originally this was a freely configurable workbenchtitle clock. Since then it has been expanded so that it can show all of MCPs @{"Variables" link "vars" 0} The "Clock" can be configured by combining variables with the help of the button on the right, all variables are shown. The Advantage of the clock over wbtitle is that it is updated every second and secondly that it is not limited to the workbenchscreen. Under this field you can enter the position of the clock (x,y) from the right or left side. When 'from Right' is chosen the x value is the distance between the end of the clock line to the right hand side of the screen. Because the clock is only designed for the workbenchtitle it will not be shown when the Y-coordinate has a to high value.You can also specify a font for the clock. Proportional fonts are accepted. If no font is specified the same font as the active screen title font is taken In addition to the options "All workbenchscreens" and "All public screens" it is also possible to exclude or include screens by using the screenname patternmatching. For examples look in @{"Patternmatching" link "fet_patternmatching" 0}. You can see an example for this on the @{"Patternmatching" link "fet_patternmatching" 0} page. @endnode @node "fet_toolalias" "ToolAlias" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} ToolAlias @{" AssignPrefs " link "fet_assignprefs" 0} @{" Memory Patch " link "fet_memorypatch" 0} @{" Requester TimeOut " link "fet_reqtimeout" 0} Who hasn't double clicked on the icon of a guidefile only to be annoyed by a requester with the text Unable to open your tool XXX. And that only because the author of the guide file likes to use AmigaGuide while you use MultiView. Or you have the program on a different place on your harddrive. With this function it is possible to virtually change the Default tool of the icons. If you want to install a piece of software on your HD from floppy, usually Installer will be loaded from the floppy, with this function you can let it be started from your HD instead. On the Lists/ToolAlias page, press New and enter the string to be changed. Wildcards are allowed and are recommended e.g. #? Next type or pick the filename to be used instead. Example: #?AmigaGuide --> SYS:System/MultiView This will re-route all calls to AmigaGuide regardless what the path was to SYS:System/MultiView. For those of you who wonder why SYS: that's because I work with 2 boot partitions (System: and Workbench:) and SYS: is always the current bootpartition. In contrast with other ToolAlias-programs, this virtually changes only the default tools, you still can call e.g. Installer on a floppy from the shell if you want to. @endnode @node "fet_wbabout" "WBAbout" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this option enabled MCP shows a new Workbench-About requester which contains additional information to the system (CPU and Memory) and you can flush the memory (only Kick3.x) or reboot your machine. If a 'more' gadget is available then you can see the programmers of your kickstart. This function only works up to OS 3.1 because since OS 3.5 this is not a requester anymore but a window. NOTE: This extended About requester doesn't work with ARQ. This is because ARQ doesn't call the systemroutine after it's own routine. @endnode @node "fet_wbgauge" "WBGauge" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This displays a gauge in the Workbench windows and shows how much of the device is used. The gauge only appears in the window from the root-directory of the device. You can define the look and the width of the gauge. NOTE: This function is disabled for OS3.5 and OS3.9 users, because it is already integrated to system. @endnode @node "fet_saveusetest" "Save Use Test Cancel" ·Save The adjustments are saved to ENVARC: and the MCP-Prefs will quit. ·Use The adjustments are valid for now and the MCP-Prefs will quit. ·Test The adjustments are valid for now, but the MCP-Prefs will stay open and you may test them. ·Cancel MCP-Prefs will be terminated and any change will be undone. @endnode @node "fet_lists" "Lists" @{" Global " link "fet_features" 0} Lists @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} @{" CrunchPatch " link "fet_crunchpatch" 0} @{" ToolAlias " link "fet_toolalias" 0} @{" AssignPrefs " link "fet_assignprefs" 0} @{" Memory Patch " link "fet_memorypatch" 0} @{" Requester TimeOut " link "fet_reqtimeout" 0} @endnode @node "fet_patternmatching" "Patternmatching" Pattern-Matching codes Character Description --------------------------------------------------------------- ? it specifies a single character #

means that

occurs 0 until n times | matches if or true ~

matches with all strings except

(...) group elements % stands for an empty- or zero-string [

-

] defines a character area #?

matches anything

Examples: all screens except 'Workbench' : ~(Workbench) only the 'Shell' screen : (Shell) all 'Shell' screens : (Shell#?) only 'one' and 'two' screens : (one|two) In all lists in the preferences program you can give strings with these patternmatching codes and it's unimportant whether you type the strings in upper or in lower case !!! @endnode @node "fet_maximizeactwin" "Maximize active Window" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} The active window will be maximized. If the option "Screentitle visible" is turned on the upper Border of the window will be placed below it so it will be visible and functions like Screentitle or "Workbenchtitle activation" will stay useable. @endnode @node "bugs" "Known bugs and wishlist" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Known Issues: - The AmigaOS does not like manipulations of the logical device "ENV:" When, for example, there is already a "Assign ENV:" in the startup-sequence the it is not allowed to start "HappyENV", "env-handler" or similar programs. The system will usually hang on MCP because MCP accesses "ENV:" first. - With some hardware combinations MCP will not start or even reboots the machine. This error can be circumvented by switching off the start of the middlemousebutton recognition and the caplock button. Therefore you can start MCP with argument "NOLMB". Known issues (continued): - could not reproduce this, + tested, o not testes, FIX Fixed M New MCPPrefs will try to cleanup errors + New Gadtools and Cycle2Menu Colorwindow from MCPPrefs comes up with Guru on second try. + Screensaver does not work - Powersave mode doesn't work o Sysinfo V 2.2 doesn't start at all + SNAP recognizes _ as - o SNAP Word field selection misses one character o DefPubScreen "Shanghai"-mode with Mui-windows only works after leaving en bringing to front Fix MCPPrefs save CheckJoy with YES. Function not implemented. Fix Quickdraw not selectable in Prefs because it is not integrated Fix Hotkey passthrough doesn't work Fix OpenDiskFont is always patched , also when not activated FIX Softrestart hotkey freezes Amiga. Fix Hotkeys don't work with Deadend keys ( like ´´´) and NUMPAD- and various other keys FIX Screensaver does not start (list not shown in prefs) FIX Titleclock does not work with Voyager and MUI FIX MCPPrefs doesn't save "Powersaver","Off when mouse is in..." FIX MCP uses way too much Ram when changing things in Prefs FIX MCPPrefs crashes when other windows are open and the system is too low on Ram FIX on many systems MCP doesn't start and 1.36 only from Workbench FIX Window pattern recognition does not work with maximize window FIX MCPPrefs always saves HDPrefs as OFF FIX HDPrefs not selectable in prefs because it was not intergrated FIX SNAP only seems to work for a few people FIX Formatprotection doesn't protect properly against format FIX Powersaver "PowerOff" function switches monitor off in AGA FIX ReqAttack has trouble with Reqtoolspatch or Assignwedge for some people FIX "Quicklayers" too slow (unlike MCP 1.32), -> not integrated FIX MCPPrefs crashes on "save" or "use" FIX Toolalias does not run , all programs crash. FIX 'VBR to fastram' crashes on 68020 FIX Screenmenu Gurus when switching 2 screens too often FIX Activate on Workbenchtitle doesn't work with Magellan and CGX 4.2 FIX Installer overwrites configuration FIX Installer illegal function call in line 1087 on Russian install FIX MCP crashes on exit or save when patches are active FIX MCPPrefs hangs after 5-60 minutes even when not used FIX Packerpatch does not always work (e.g. with multiview) FIX Installation does not work properly, catalogs are not copied FIX MCP's ReqToolspatch doesn't like reqtools library 39.2 FIX Patchcontrol doesn't work on PPC Amiga's FIX Old Prefs not converted FIX 'maximize active window' in German catalog FIX Function swap mouse/joystickbutton not in German prefs and not in guides FIX Screenmenu hangs when there are only 2 screens FIX Missing English texts for e.g. functions Wishes/expansions: VBlank integration Functions like MagicASL or MUI-ASL Expand FontSearch Expand LibrarySearch like Betteropenlibs Borderblanker for graficscards Pathprefs like assignprefs AssignPrefs automatically taking over data from assignwedge + Screendimmer only works on 8-bit screens o Sysihack doesn't work for new systemgadgets (OS 3.5/3.9) + integrating StartWb-Program and StartWB-Programrequester Hotkeyfunctions since OS version 3.9 in a systemfriendly way FIX Showing of gurus (e.g. by printer or in file) FIX Dissassembled errors for NoGuru FIX Function like Depthmenu FIX WB-titlevariable for processorusage FIX WB-Clock also shows weekday (locale.library) FIX WB title variable for used/all Picasso96-Ram (percentage) FIX PPC recognition under WARPUP FIX WB-Titlevariable for Picasso96-RAM FIX Workbenchtitle should have a PPC variable FIX Reqtoolspatch: ARQ-Mode has to be on when Reqattack runs FIX CLI parameter 'NOLMB' to switch off MCP refusing to start when mousebutton is pressed @endnode @node "fet_appicon" "Appicon" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This is a freely configurable AppIcon with these possibilities. Most of all makes sense the configurable text, which is showed on workbench, here you can show besides date and time dynamically values for memory, processor and much more. - The text for the icon is configured in "Title", All variables are allowed here.@{"Variables" link "vars" 0} - The Refreshtime controls how often the text is refreshed, a low value refreshes more often and increases the load on your Amiga, so you have to consider how often a refresh is needed. For Example; a refresh every second would be a value of 50. A refresh every 2 seconds a value of 100. - The Action that should be executed when doubleclicking the icon can be entered in the field below. "MCPPrefs" would be a usefull entry here - The Action that should be taken when an other icon is dropped on the AppIcon can be entered in the next field. Here "IconEdit" or "Multiview" could be a usefull application. - The Icon can be changed by putting an icon with the name "MCPApp.info" in "ENV:MCP2/" - The icon can be fixed on the Workbench if it comes from a writable device (e.g. harddisk) @endnode @node "vars" "Variables" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} The variables can be used by the following functions: @{"Change Workbenchtitle" link "fet_wbtitle" 0} @{"TitleClock" link "fet_wbclock" 0} @{"AppIcon" link "fet_appicon" 0} @{"Logbook" link "fet_logbook" 0} @{"MCPVarNames" link "fet_mcpvarnames" 0} @{"Hotkey InsertString" link "hotk_insertstring" 0} Version numbers: %os = Kickstart version (e.g. 3.1) %wb = Workbench version (e.g. 3.9) %ov = exact Kickstart version (e.g. 39.106) %wv = exact Workbench version (e.g. 39.29) %OS = OS-Version (e.g. 3.9) %KS = Kickstart version (e.g. 3.1) %OV = exact OS version (e.g. 45.2) %KV = exact Kickstart version (e.g. 39.29) Processor: %pr = type of processor 3-digits M68k only ( eg. 68k-Emul) 060 %Pr = type of processor 5-digits M68k only ( eg. 68k-Emul) 68060 %PR = type of processor 3-5-digits eg. 604 or 68060 %cp = type of co-processor 3-digits (M68k only, eg. 881) %CP = type of co-processor 5-digits (M68k only, eg. 68881) %pp = free processortime percentage (see remark below) %pu = used processortime percentage (see remark below) %ps = processor system 3 characters (68k/PPC/WOS/AOS) Memory: %ft = free memory alltogether %Ft = free memory together (in KBytes) %FT = free memory together (in MBytes) %pt = percentage of free memory together %PT = percentage of full memory together %lt = largest free block of all memory %fc = free ChipMemory %Fc = free ChipMemory (in KBytes) %FC = free ChipMemory (in MBytes) %pc = percentage of free ChipMemory %PC = percentage of full ChipMemory %lc = largest free block of ChipMemory %rc = percentual fragmentation of ChipMemory %ff = free FastMemory %Ff = free FastMemory (in KBytes) %FF = free FastMemory (in MBytes) %vf = free FastMemory without VMM-ram %Vf = free FastMemory without VMM-ram (in KBytes) %VF = free FastMemory without VMM-ram (in MBytes) %pf = percentage of free Fast Memory %PF = percentage of full Fast Memory %lf = largest free block of FastMemory %rf = percentual fragmentation of FastMemory %fr = free GraphicscardRAM Retina or P96 %Fr = free GraphicscardRam (in KBytes) %FR = free GraphicscardRam (in MBytes) %tg = total GraphicscardRam %Tg = total GraphicscardRam (in KBytes) %TG = total GraphicscardRam (in MBytes) %pg = percentage of free GraphicscardRam %PG = percentage of full GraphicscardRam %lg = largest free block of GraphicscardRam %Lg = largest free block of GraphicscardRam (in KBytes) %LG = largest free block of GraphicscardRam (in MBytes) %fv = free VMMRam %Fv = free VMMRam (in KBytes) %FV = free VMMRam (in MBytes) System information: %aw = Active window title (full) %AW = Active window title (short) %nt = number of running tasks %nl = number of open libraries %ns = number of open screens %nw = number of open windows on active screen %NW = number of open windows on all screens %np = number of open ports %nd = number of open devices %cs = type of GfxChipSet (Amiga) %gs = type of GfxSystem 3characters (AGA/P96/CGX/RET) %wp = number of free Pens on the WB-Screen %ev = value of an env-variable, %evUser? would display the value of the env-variable User, the ? has to be directly after the name and it won't be displayed. MCP-Infos: %pd = number of patched Devices from HDPrefs %mv = MCP version (e.g. 1.39) Dynamic values: (These are not very usefull because they are not updated very often) %mx = Mouse X position %my = Mouse Y position Time/Date %dd = Date in Dos format (dd-mm-yy) %di = Date in International format (yy-mmm-dd) %du = Date in USA format (mm-dd-yy) %dc = Date in Canadian format (dd-mm-yy) %dw = day of the week (eg. Wednesday) %dh = Hours %dm = Minutes %ds = Seconds Expanded date-functions from locale.library: %lla = Short weekdayname %llA = Weekdayname %llb = Short monthname %llB = Month name %llc = like "%a %b %d %H:%M:%S %Y" (Mon Jan 01 13:01:00 2002) %llC = like "%a %b %e %T %Z %Y" (Mon Jan 1 13:01:00 2002) %lld = Daynumber with leading zeros %llD = like "%m/%d/%y" (01/01/02) %lle = Daynumber with leading spaces %llh = Short Monthname %llH = Hours in 24-hour format with leading zeros %llI = Hours in 12-hour format with leading zeros %llj = Julian Date %llm number of the Month with leading zeros %llM = number of minutes with leading zeros %llp = Am or Pm %llq = Hours in 24-hour format %llQ = Hours in 12-hour format %llr = Like "%I:%M:%S %p" (01:01:00 PM) %llR = Like "%H:%M" (13:01) %llS = Number of seconds with leading zeros %llT = Like "%H:%M:%S" (13:01:00) %llU = Weeknumber, taking Sunday as first day of the week %llw = Weekdaynumber %llW = Weeknumber, taking Monday as first day of the week %llx = Like "%m/%d/%y" (01/01/02) %llX = Like "%H:%M:%S" (13:01:00) %lly = Year with two digits and leading zeros %llY = Year with four digits and leading zeros Between the above values you can put whatever characters you want. Example of a changed wb title: AmigaOS %wb %Pr %cs %FcK Chip (%pc%) %FFM Fast (%pf%) %FTM Total (%pt%) T:%nt L:%nl S:%ns Would look like this: AmigaOS 3.9 68060 AGA 1.185K Chip (57%) 11M Fast (70%) 12M Total (68%) T:64 L:55 S:2 Insert enough spaces between the values, to make it more readable. The %Pr and %pr always show the real (or emulated) M68k processor. An example with PPC card could be: %PR/%Pr which would show: @{bg shine}604e /68060@{bg back} The idlecounter (from %pp and %pu) in not so easy to integrate on Amiga as it is on, for example, Windows. This is due to the completely different handling of the operating system. Under Windows the processor is 100% controlled by windows so free processortime is easier to obtain. On the Amiga the Os does not have complete control, principally every task is running independently from it. How does the idlecounter work on the Amiga then? A task with a very low priority is started and timed how much processortime it gets. When it gets more processortime that means that the processor does not have many other things to do. So more processortime means more free amigaprocessortime. The disadvantage of this method is added tasks and added processorload (even if it is very low). MCP starts 2 additional tasks when one of the two variables is asked for and does not end these tasks. In this way it is, purely technically speaking,always an actual value when it is asked for after the first instance, independent of how often it is asked for. @endnode @node "fet_insertdate" "Insert date" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This Hotkey function inserts data into the datastream, allowed are the following time-dependant entries (this function is to be replaced with a function that allows all @{"Variables" link "vars" 0} .) %a = Short weekdayname %A = Weekdayname %b = Short monthname %B = Month name %c = like "%a %b %d %H:%M:%S %Y" (Mon Jan 01 13:01:00 2002) %C = like "%a %b %e %T %Z %Y" (Mon Jan 1 13:01:00 2002) %d = Daynumber with leading zeros %D = like "%m/%d/%y" (01/01/02) %e = Daynumber with leading spaces %h = Short Monthname %H = Hours in 24-hour format with leading zeros %I = Hours in 12-hour format with leading zeros %j = Julian Date %llm number of the Month with leading zeros %M = number of minutes with leading zeros %p = AM or PM %q = Hours in 24-hour format %Q = Hours in 12-hour format %r = Like "%I:%M:%S %p" (01:01:00 PM) %R = Like "%H:%M" (13:01) %S = Number of seconds with leading zeros %T = Like "%H:%M:%S" (13:01:00) %U = Weeknumber, taking Sunday as first day of the week %w = Weekdaynumber %W = Weeknumber, taking Monday as first day of the week %x = Like "%m/%d/%y" (01/01/02) %X = Like "%H:%M:%S" (13:01:00) %y = Year with two digits and leading zeros %Y = Year with four digits and leading zeros @endnode @node "fet_virtualicons" "Virtual Icons" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} Virtual Icons This function allows changing the icons (icon and position) for write-protected drives like Cd-Rom. It is especially useful for when the available icon is of the wrong type or has the wrong default tool or only appears at a wrong position or only change the icon image when it doesn't fit with the rest of the workbench icons. This function cannot write to the write-protected drive but instead creates a copy, with the new properties, of the available icon when saved. It is saved in to the specified directory. Also a wildcard can be set to limit the virtually created icons so that some cd's or other carriers don't have their icon copied. On some versions of the Os some functions (like fix icon position from wb-menu) can create error messages. Simply cancel these to ignore them. Example: Aminet-CD's should have virtually writeable icons. Besides activating "Virtual Icons" it's useful to do: Path: "ENVARC:MCP2/VI/" Pattern: "#?Aminet-CD#?" If you save the icon, it is saved to "ENVARC:MCP2/VI/Aminet-CD_11/disk_info". @endnode @node "hot_win2front" "hot_win2front" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" ScreenManager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With the defined keycombination the active window is brought to the front. This is very useful when there are many open windows that are partially covering each other. For example you could define a triple left mousebuttonclick for this and use that to bring the window to front. With the Options button you can define wether this function is active on Publicscreens and/or the Workbenchscreen. @endnode @node "fet_windowsmenu" "Windows menu" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} When clicking with the right mousebutton on the depth gadget button (the button with which you put windows to the back or front) a menu will show all the opened windows. One can choose a window in this menu and this window will be brought to front. This function is very usefull when you have a lot of windows open that can only be reached with a lot of mouseclicking. This function is an expansion like the "depthmenu" program and was added with the permission of its author. Options: - Max. width limits the number of characters copied from the windowtitle. - "Menu from all windows" when selected, will also put the menu on windows that do not have a depthgadget. The menu will available from the right upper corner of the window. - When there are only 2 windows open then the windowmenu can be set to appear, else the depth gadget will work normally (right mouse button does nothing). - The own window can be hidden from the menu. (The title of the window from which the menu is activated does not appear in the menu). - Normally windows that can not be put to front (backdrop windows) will not be shown in the menu, with "Show all windows" these are also shown. This option has no influence on the "show own window" function @endnode @node "fet_logbook" "Logbook" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this function MCP can help track down errors or create statistics where all @{"Variables" link "vars" 0} can be mixed freely with other text in a textfile in a specified sequence. Every line written is ended with a return and can be a maximum of 255 characters long. If this file already exists then MCP will append the output to it. If it does not exist then MCP will create it. Arguments: - Refreshtime: the time in 1/50 seconds between 2 writes of the output. When this value is set to 0 it is deactivated. When Using low values here it can happen that MCP cannot finish the writing quick enough and the Amiga seems to freeze. Usually this can be set to e.g. 50 to write a line every second. - Filename: The name of the logfile including path where it is to be written - Headline: The definition of a one-time output that is written once when MCP is started and the logfile is written. Here all the @{"Variables" link "vars" 0} and other text can be entered. - Definition: The definition of the output. Here all the @{"Variables" link "vars" 0} and other text can be entered that are written at the refreshtime. 1. Example: A statistic of the processorusage should be created. The data should exist of the processor usage for every second and must be marked with date and time. to be able to import it easily in a spreadsheet, the values should be separated with a semicolumn. In this case the refreshtime should be 50 (every second) and the definition can look like this: %dc;%dh:%dm:ds;%pu the output created looks like this: 02-12-02;12:00:00;98 02-12-02;12:00:01;90 02-12-02;12:00:02;66 2. Example: A often repeating system error should be examined. For this it should be examined how much memory was free at the time of the crash to see if it was a memory problem. In addition the active window should be logged and the number of open libraries. For easier recognition of the time the system was restarted and readability of the file, a headline should be included. The refreshtime should be each 1/2 second for this case so the refreshtime should be 25. The output should look like this Time Chip free Fast free Graphics free libs Active Window 12:00:00 1.002.208 12.234.568 2.400.380 12 MCPPrefs 12:00:00 1.204.006 12.202.000 1.806.188 14 MCPPrefs 12:00:01 1.882.472 10.966.766 1.488.222 15 RAM-DISK 12:00:01 1.880.208 11.234.090 1.452.884 15 RAM-DISK etc. 3. Example: The Workbench title list is full and also the clock. But on Workbench there should also be information about the open screens and windows. In this case the output is redirected to a console window with "CON:10/10/20/350/MCP-output". the definition should look like this: " Screens: %ns, Windows on Wb: %nw, windows total: %NW ". Now a console window will appear on the Workbenchscreen with the defined measurements and will show the defined values. @endnode @node "fet_mcpvarnames" "MCP Names of variables" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} If this function is turned on , all @{" MCP Names of variables" link "vars" 0} can be used by all systemfriendly programs as filename . ATTENTION ! The agreements concerning filenames of the AmigaOS are still valid, that means some variables can be used reserved or not at all , as they produce spezial characters as ":" "/" . This characters are used in Amiga-Filesystem for path and register separation . MCP patches in the moment only the functions "Lock" / "Unlock" and "Open" / "Close" . Renaming and deleting of files or changing of fileattributs is not possible . Example: MCP could produce filenames depending on date during filedownload . It could be very easy to save in a format like "files:05-09-2003_173012" to avoid double filenames . @endnode @node "hotk_insertstring" "Hotkey Insert Variable" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} With this keycombination MCP will insert a string into the inputstream . The string is composed of the inputtext and all created @{"Variables" link "vars" 0} . Example: The string: "Today is %dw." generates the output: "Today is Friday." @endnode @node "hotk_changelogbook" "change Logbookstatus" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This keycombination stops or continues the @{"Logbook" link "fet_logbook" 0} . For all the functions "delay", "continue" oder "change" a own keycombination can be defined . ATTENTION: this function does NOT activate the logbook ! It has to be active to be delayed . @endnode @node "hotk_deactivatemcp" "deaktivate MCP" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This keycombination will deactivate MCP . Basically exact the same will be done as if MCP would be stoped with the help of "EXChange" . The commodity will be deactivated . @endnode @node "mcpprefs" "start of MCPPrefs" To configurate MCP the matching program MCPPrefs is offered , it comes from the even same developers of MCP . It is an assemblerprogram with a graphical user interface using @{"MUI" link "muifo" 0}, wich should be installed . Look also @{"Requirements" link "requirements" 0}. Manual changing is to avoid in all cases ! MCPPrefs can be started from Workbench or CLI . MCPPrefs enlarges its own stack automatically in case it is not big enough . You can use the following Tooltypes or Parameters : Example: CX_PPRIORITY=100 this value changes the priorität of MCPPrefs LANGUAGE=deutsch this language will be used instead of normal language HELPFILE=help:mcp.guide change of the path for the guide PREFSDIR=ENVARC:MCP2 the normal directory for "load from..." / "save as..." standard is "SYS:PREFS/Presets" @endnode @node "hotk_switchkeymap" "switch Keymap" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" Screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} This function may be used for switching keymaps. You can switch between many different keymaps. e.g. between english and german keyboard or Windows-keyboard and standard Amiga keyboard Some people like to switch between kyrillic and englisch keybord. Attention, the Keymap must reside in devs:keymaps. Only the name of the keymap has to be given, not the path or a drawer! @endnode @node "fet_menushaddow" "menushadow" @{" Global " link "fet_features" 0} @{" Lists " link "fet_lists" 0} @{" screenmanager " link "fet_promotor" 0} @{" Hotkeys " link "fet_hotkeys" 0} For all Menuentrys and submenues consisting of plain text the outfit may be changed. Possible are sind shadowed types, Outlines, changing of colours and more. the definable Parameter are as follows: XOffset = the "deepness" of a menushadow in Pixel to the left, Standard is 1, negative numbers to the right. YOffset = the "deepnesse" of a menushadow in Pixel to the top. Standard ist 1. negative numbers to the bottom. ATTENTION ! This Function in Version 1.44 is only to be changed with these two Parameters. Some Programs will generate no Shadow but will destroy the menu structure instead. Known programs are nearly all for extension of the Workbench-tools menue, Wordworth and some versions of DOpus. Please report any other programs doing this for further development. Defaults: Shadow: XOffset = 1, Y Offset = 1, color of menue = black, color of letters = e.g. white, color of background of the letters = transparent, Shadowstile = normal, letterstil = normal Outline: XOffset = 1, Y Offset = 1, color of shadowe = black, color of letters = e.g. white, color of background of the letters = transparent, Shadowstile = bold, letterstil = normal @endnode