@database MultiCX.guide @master MultiCX.guide @$VER: 2.45 @author "Martin Berndt" @(c) "1996" @node "Main" "MultiCX-Guide Main" @{b}------------------------------------------------------------------------ MultiCX 2.45 (12.2.96) The ultimate Multi-Function-Commodity ------------------------------------------------------------------------@{ub} MultiCX is the smallest Multi-Function-Commodity for the Amiga, thought as a replacement for many larger and sometimes badly programmed programs. It is a 100% pure commodity, which means that it does not use interrupts and no special input handlers. Some Patches (SetFunction) are installed in a very clean way, so that they do not interfere with other programs which use the same vectors. As a result MultiCX can safely be disabled or removed at any time. @{i}If you need a clean Commodity without bad hacks there's no alternative !@{ui} @{" Legal Stuff " link "legal" 0} @{" Who did it? " link "Author" 0} @{" Installation " link "Installation" 0} @{" Features " link "Features" 0} @{" Notes and Hints " link "Notes and Hints" 0} @{" List of Patches " link "PatchList" 0} @{" History " link "History" 9999} @{" To do " link "To do" 0} @{" Credits " link "Credits" 0} @{b}------------------------------------------------------------------------ !!! MultiCX is SHAREWARE !!! ------------------------------------------------------------------------@{ub} @endnode @node "Installation" "Installation" @{b}------------------------------------------------------------------------ MultiCX Installation ------------------------------------------------------------------------@{ub} Here you can install MultiCX automatically. It will be detected which OS you are using and wether you are installing MultiCX new or wether you are just updating. In the second case you have to add the new tooltypes or these functions will be disabled. For more information about new tooltypes have a look at the history. Click here to @{"install" system "newshell window=con:200/50//50/MultiCX-Installer/auto/close from MCX_Install"}. @endnode @node "Features" "Features" @{b}------------------------------------------------------------------------ MultiCX Features ------------------------------------------------------------------------@{ub} @{" Notification " link "Notification" 0} @{" Screen Blanker " link "Screen Blanker" 0} @{" Moire Screen Blanker " link "Moire Blanker" 0} @{" Mouse Accelerator " link "Mouse Accelarator" 0} @{" Mouse Blanker " link "Mouse Blanker" 0} @{" Screen Cycling " link "Screen Cycling" 0} @{" Mouse Shift " link "Mouse Shift" 0} @{" Window Cycling " link "Window Cycling" 0} @{" SUN-alike Window Activation " link "SUN-alike Window Activation" 0} @{" HoldX and HoldY " link "HoldX and HoldY" 0} @{" Enter ASCII " link "Enter ASCII" 0} @{" Map Umlauts " link "Map Umlauts" 0} @{" CapShift " link "CapShift" 0} @{" NoCapsLock " link "NoCapsLock" 0} @{" Window Close & Zoom " link "CloseZoom" 0} @{" Window Remember " link "Window Remember" 0} @{" CenterScreen " link "CenterScreen" 0} @{" HotFlush " link "HotFlush" 0} @{" PopCLI " link "PopCLI" 0} @{" FrontPubScreen " link "FrontPubScreen" 0} @{" System Flags " link "System Flags" 0} @{" Trackdisk Parameters " link "Trackdisk Parameters" 0} @{" Public Screen Flags " link "Public Screen Flags" 0} @{" Internal and External Preferences " link "Internal and External Prefs" 0} @{" Advanced EditHook " link "Advanced EditHook" 0} @{" Advanced ResetHandler " link "Advanced ResetHandler" 0} @{" SetFunction Patches " link "SetFunction Patches" 0} @{" AssignWedge " link "AssignWedge" 0} @{" NewLookMenus " link "NewLookMenus" 0} OS 3.x only! @{" NewLookProps " link "NewLookProps" 0} @{" WBExtender " link "WBExtender" 0} @{" TagScreens " link "TagScreens" 0} @{" LockPens " link "LockPens" 0} OS 3.x only! @{" FixOpenWB " link "FixOpenWB" 0} OS 3.x only! @{" NoDisplayBeep " link "NoDisplayBeep" 0} @{" Drive Protection " link "Drive Protection" 0} @{" LockPatch " link "LockPatch" 0} @{" Opaque Windows " link "Opaque Windows" 0} @{" Alert Timeout " link "Alert Timeout" 0} OS 3.x only! @{" WBGauge " link "WBGauge" 0} @{" ShapeShifter Support " link "ShapeShifter Support" 0} @{" HandleCX " link "HandleCX" 0} @endnode @node "Notification" "Notification" @{b}------------------------------------------------------------------------ Notification ------------------------------------------------------------------------@{ub} MultiCX recognizes any changes of the ToolTypes while running, so there's no real need for a GUI. @endnode @node "Screen Blanker" "Screen Blanker" @{b}------------------------------------------------------------------------ Screen Blanker ------------------------------------------------------------------------@{ub} MultiCX includes a simple but compatible screen blanker. It always uses the display mode which fits best to the actual front screen, while taking the lowest resolution with only one plane. AVOIDTASK and AVOIDSCREEN fully support AmigaDOS pattern matching and work case insensitive. If LIKEWB and SCRMODE are set, SCRMODE is only used if WB is not available for some reason. But this should never happen... See also: @{"Moire Blanker" link "Moire Blanker" 0} @{b}------------------------------------------------------------------------@{ub} ToolTypes: SCRBLANK=n sets number of seconds until screen blanks, 0 means OFF HOTBLANK=Qual&Key sets hotkey for immediate blanking CDNOBLANK do not blank screen if Carrier is detected (currently only supports internal serial port) CDUNBLANK unblank screen if Carrier is detected (currently only supports internal serial port) AVOIDTASK=Pattern do not blank screen if OwnerTask of active screen matches pattern AVOIDSCREEN=Pattern do not blank screen if title of active screen matches pattern AVOIDWINDOW=Pattern do not blank screen if title of active window matches pattern LIKEWB forces cloning the WB's display mode SCRMODE=ModeName selects a display mode by name @endnode @node "Moire Blanker" "Moire Blanker" @{b}------------------------------------------------------------------------ Moire Blanker ------------------------------------------------------------------------@{ub} MultiCX has a really nice Screen Blanker, too! It steals no processor time from other tasks, and if it couldn't draw a line for longer than 10 seconds it falls back to a simple black screen. There are some parameters to play with... See also: @{"Screen Blanker" link "Screen Blanker" 0} @{b}------------------------------------------------------------------------@{ub} ToolTypes: MOIRE selects Moire blanker LINES=n number of lines, default is 2 TRAIL=n length of trail, default is 64 XSPEED=n x offset for next line, default is 4 YSPEED=n y offset for next line, default is 6 CSPEED=n color cycling delay, default is 16 COLOR=n drawing color, range is 1-4095 0 means Random, -1 means Color Cycling @endnode @node "Mouse Accelarator" "Mouse Accelerator" @{b}------------------------------------------------------------------------ Mouse Accelerator ------------------------------------------------------------------------@{ub} MultiCX lets you set Acceleration and Theshold (minimum movement to activate Acceleration) for smooth mouse handling. @{i}SWITCH OFF ALL ALIEN MOUSE ACCELERATORS BEFORE USING THESE OPTIONS!@{ui} (Input Prefs "Acceleration" etc.) @{b}------------------------------------------------------------------------@{ub} ToolTypes: ACCELERATION=n sets Acceleration factor, 0 means OFF THRESHOLD=n sets Threshold value, 0 means no Threshold @endnode @node "Mouse Blanker" "Mouse Blanker" @{b}------------------------------------------------------------------------ Mouse Blanker ------------------------------------------------------------------------@{ub} MultiCX blanks the mouse pointer on keypress and/or after approx. 30 seconds when no mouse movement has occured. @{b}------------------------------------------------------------------------@{ub} ToolTypes: KEYBLANK activates MouseBlanking on keypress TIMEBLANK activates MouseBlanking after timeout @endnode @node "Screen Cycling" "Screen Cycling" @{b}------------------------------------------------------------------------ Screen Cycling ------------------------------------------------------------------------@{ub} MultiCX allows you to cycle screens using either MiddleMouseButton or BothMouseButtons, this is equivalent to LCOMMAND M. Additionally a hotkey for backward cycling may be defined. If MOUSESHIFT and SCRCYCLE are both set to MMB, then ScreenCycling will occur on a Double-MMB-Click. @{b}------------------------------------------------------------------------@{ub} ToolTypes: SCRCYCLE=MMB|BMB sets Screen Cycling to MMB or BMB BACKCYCLE=Qual&Key sets Qualifier and Key for BackCycle, none means OFF @endnode @node "Mouse Shift" "Mouse Shift" @{b}------------------------------------------------------------------------ Mouse Shift ------------------------------------------------------------------------@{ub} MultiCX lets you use the RightMouseButton or MiddleMouseButton as a Shift-Key for extended selection. And this is how it works with RightMouseButton: 1. Press LeftButton to select first icon and hold it. 2. Press RightButton and hold it. 3. Release LeftButton and keep RightButton pressed. 4. Now select some more icons with LeftButton. 5. To deselect an icon, click on it with LeftButton and keep it pressed, then release RightButton and press it again. Sounds much more complicated than it is... @{b}------------------------------------------------------------------------@{ub} ToolTypes: MOUSESHIFT=RMB|MMB sets MouseShift to RMB or MMB @endnode @node "Window Cycling" "Window Cycling" @{b}------------------------------------------------------------------------ Window Cycling ------------------------------------------------------------------------@{ub} MultiCX lets you put a window to front/back by a configurable number of LeftButton clicks. Qualifiers can be defined for both functions. Additionally there are two hotkeys available for TopWindowToBack and BottomWindowToTop. But only windows with a Depth Gadget are affected by Window Cycling. @{b}------------------------------------------------------------------------@{ub} ToolTypes: WINCYCLE=n sets number of mouse clicks for WindowCycle, 0 means OFF WINFRONTQUAL=Qual sets Qualifier for WindowToFront WINBACKQUAL=Qual sets Qualifier for WindowToBack FRONT2BACK=Qual&Key sets hotkey for TopWindowToBack BACK2FRONT=Qual&Key sets hotkey for BottomWindowToTop @endnode @node "SUN-alike Window Activation" "SUN-alike Window Activation" @{b}------------------------------------------------------------------------ SUN-alike Window Activation ------------------------------------------------------------------------@{ub} MultiCX has three different options to activate windows automatically. All of them activate the window under the mouse pointer, SunKey does it on every keypress, SunMouse does it after mouse movement, and SunRMB does it after pressing the right mouse button. So SunKey and SunMouse together seem to be rather useless. Windows with active Gadgets (like FileRequesters etc) will never be deactivated by one of these functions. @{b}------------------------------------------------------------------------@{ub} ToolTypes: SUNKEY activates SunKey SUNMOUSE activates SunMouse SUNRMB activates SunRMB @endnode @node "HoldX and HoldY" "HoldX and HoldY" @{b}------------------------------------------------------------------------ HoldX and HoldY ------------------------------------------------------------------------@{ub} MultiCX allows you to lock a specific mouse dimension while holding a defined Qualifier. If both Qualifiers are set to the same it locks all mouse movements. So you are responsible for useful settings... @{b}------------------------------------------------------------------------@{ub} ToolTypes: HOLDXQUAL=Qual sets Qualifier for HoldX, none means OFF HOLDYQUAL=Qual sets Qualifier for HoldY, none means OFF @endnode @node "Enter ASCII" "Enter ASCII" @{b}------------------------------------------------------------------------ Enter ASCII ------------------------------------------------------------------------@{ub} MultiCX allows you to enter ASCII codes directly by pressing an ALT key and the numbers in the numeric block, for example: 65 = A. Maximum 3 digits, value must not be greater than 255. @{b}------------------------------------------------------------------------@{ub} ToolTypes: ENTERASCII=LALT|RALT activates EnterASCII using LALT or RALT @endnode @node "Map Umlauts" "Map Umlauts" @{b}------------------------------------------------------------------------ Map Umlauts ------------------------------------------------------------------------@{ub} This option might be of use for german users or other people writing german texts. It will convert the german umlauts into the normal character pendants. @{b}------------------------------------------------------------------------@{ub} ToolTypes: MAPUMLAUTS activates MapUmlauts @endnode @node "CapShift" "CapShift" @{b}------------------------------------------------------------------------ CapShift ------------------------------------------------------------------------@{ub} This option changes the way CapsLock works. Just try activating CapsLock, and then press some shifted letters to get an idea of it. Hotkeys etc. are no longer affected by CapsLock. CapShift is ignored if NoCapsLock is active. @{b}------------------------------------------------------------------------@{ub} ToolTypes: CAPSHIFT activates CapShift @endnode @node "NoCapsLock" "NoCapsLock" @{b}------------------------------------------------------------------------ NoCapsLock ------------------------------------------------------------------------@{ub} ... simply switches off CAPSLOCK completely. @{b}------------------------------------------------------------------------@{ub} ToolTypes: NOCAPSLOCK activates NoCapsLock @endnode @node "CloseZoom" "CloseZoom" @{b}------------------------------------------------------------------------ Window Close & Zoom ------------------------------------------------------------------------@{ub} MultiCX allows you to close/zoom windows using pre-defined Qualifiers and Keys. @{b}------------------------------------------------------------------------@{ub} ToolTypes: WINCLOSE=Qual&Key sets Qualifier and Key for CloseWindow, none means OFF WINZOOM=Qual&Key sets Qualifier and Key for ZoomWindow, none means OFF @endnode @node "Window Remember" "Window Remember" @{b}------------------------------------------------------------------------ Window Remember ------------------------------------------------------------------------@{ub} MultiCX remembers the last active window on every screen, and the next time you go to that screen, this window will be re-activated automatically. @{b}------------------------------------------------------------------------@{ub} ToolTypes: WINREMEMBER activates WindowRemember @endnode @node "CenterScreen" "CenterScreen" @{b}------------------------------------------------------------------------ CenterScreen ------------------------------------------------------------------------@{ub} The active screen is centered when this hotkey is pressed. Optionally the frontmost Screen is centered automatically as soon as it becomes active. @{b}------------------------------------------------------------------------@{ub} ToolTypes: CENTERSCR=Qual&Key sets Qualifier and Key for CenterScreen, none means OFF AUTOCENTER activates AutoCenterScreen @endnode @node "HotFlush" "HotFlush" @{b}------------------------------------------------------------------------ HotFlush ------------------------------------------------------------------------@{ub} MultiCX frees all unneeded memory when pressing this hotkey, just like "Avail flush" does. @{b}------------------------------------------------------------------------@{ub} ToolTypes: HOTFLUSH=Qual&Key sets Qualifier and Key for HotFlush, none means OFF @endnode @node "PopCLI" "PopCLI" @{b}------------------------------------------------------------------------ PopCLI ------------------------------------------------------------------------@{ub} MultiCX spawns a UserShell using the given command string when pressing the PopCLI key. @{b}------------------------------------------------------------------------@{ub} ToolTypes: POPCLI=Qual&Key sets Qualifier & Key for PopCLI, none means OFF POPCLICMD=Command sets command string for PopCLI, none means OFF POPCLISTACK=n sets stacksize for PopCLI (Default: 4096) @endnode @node "FrontPubScreen" "FrontPubScreen" @{b}------------------------------------------------------------------------ FrontPubScreen ------------------------------------------------------------------------@{ub} If this option is activated the FrontScreen automatically will become the actual DefaultPubScreen, as long as it is public and not private. @{b}------------------------------------------------------------------------@{ub} ToolTypes: FRONTPUBSCR activates FrontPubScreen @endnode @node "System Flags" "System Flags" @{b}------------------------------------------------------------------------ System Flags ------------------------------------------------------------------------@{ub} MultiCX lets you set/change some of the internal AmigaOS flags. These may be set, unset or left unchanged, where a parameter of 0 means deactivate, 1 or any value >0 means activate, and putting the ToolType in brackets (the same as removing it) means no change. Old values are NOT restored when quitting/disabling MultiCX, but @{"Notification" link "Notification" 0} may be used at any time. @{b}------------------------------------------------------------------------@{ub} ToolTypes: BLACKBORDER=n changes BlackBorder flag, ECS Denise needed NOCLICK=n changes NoClick flag for all drives, may not work with very old drives WILDSTAR=n changes flag for extended WildCarding, if ON "*" may be used instead of "#?" SNDFILTER=n switch Sound filter ON/OFF @endnode @node "Trackdisk Parameters" "Trackdisk Parameters" @{b}------------------------------------------------------------------------ Trackdisk Parameters ------------------------------------------------------------------------@{ub} This option is used to set some parameters of trackdisk.device. If used with care these settings could make your drives faster and less noisy. Old values are NOT restored when quitting/disabling MultiCX, but default values are set when disabling these Tooltypes. @{i}ONLY USE THEM IF YOU KNOW EXACTLY WHAT YOU ARE DOING!@{ui} @{b}------------------------------------------------------------------------@{ub} ToolTypes: TDRETRY=n change TDU_RETRYCNT (Default is 10) TDSTEP=n change TDU_STEPDELAY (Default is 3000) TDSETTLE=n change TDU_SETTLEDELAY (Default is 15000) TDCALIBRATE=n change TDU_CALIBRATEDELAY (Default is 4000) @endnode @node "Public Screen Flags" "Public Screen Flags" @{b}------------------------------------------------------------------------ Public Screen Flags ------------------------------------------------------------------------@{ub} MultiCX also lets you set/change the global Public Screen flags. These may be locked, so that other tasks cannot change them. The values are the same as for the @{"System Flags" link "System Flags" 0}. @{b}------------------------------------------------------------------------@{ub} ToolTypes: POPPUBSCR=n changes PopPubScreen flag SHANGHAI=n changes Shanghai flag LOCKPUBFLAGS locks Public Screen flags set by MultiCX @endnode @node "Internal and External Prefs" "Internal and External Preferences" @{b}------------------------------------------------------------------------ Internal and External Preferences ------------------------------------------------------------------------@{ub} Normally MultiCX opens a WBInfo Requester on CX_POPUP (OS 3.x only!), but this may be replaced by an external program like MultiCXPrefs by Michael Barsoom and MUI-MCXPrefs by Jürgen Kempkes. @{i}Thanks for the great work, Michael and Jürgen!@{ui} @{b}------------------------------------------------------------------------@{ub} ToolTypes: CX_POPUP=Qual&Key sets Qualifier and Key for WBInfo or ext. Prefs IGNORE_CLASS lets all other Qual&Key definitions ignore their ix_Class, normally only RAWKEY is accepted EXTPREFS=Command sets Command to execute for external Preferences @endnode @node "Advanced EditHook" "Advanced EditHook" @{b}------------------------------------------------------------------------ Advanced EditHook ------------------------------------------------------------------------@{ub} MultiCX contains a comfortable extension for all system StringGadgets. It is completely inactive as long as the CONTROL qualifier is pressed. The following keys can be used: RCOMMAND Q undo (*) RCOMMAND X clear (*) RCOMMAND C copy to Clipboard RCOMMAND V paste from Clipboard (Insert) RCOMMAND SHIFT V paste from Clipboard (Clear) RCOMMAND G convert contents to upper case RCOMMAND H convert contents to lower case RCOMMAND key leave Gadget and execute Menu option (¹) LCOMMAND (SHIFT) key execute original RCommand shortcut SHIFT CURSOR LEFT jump to start of line (*) SHIFT CURSOR RIGHT jump to end of line (*) SHIFT BACKSPACE delete to start of line (*) SHIFT DEL delete to end of line (*) ALT CURSOR UP previous Gadget (SHIFT TAB) ALT CURSOR DOWN next Gadget (TAB) ALT CURSOR LEFT jump word left ALT CURSOR RIGHT jump word right ALT BACKSPACE delete word left ALT DEL delete word right ESC leave Gadget (²) (*) function provided by OS @{b}------------------------------------------------------------------------@{ub} ToolTypes: EDITHOOK activates advanced EditHook CLIPUNIT=Unit select Clipboard unit for Copy/Paste (0-255), Default: 0 NOCMDKEY switch off "execute Menu" option (¹) NOESCKEY switch off "leave Gadget" option (²) @endnode @node "Advanced ResetHandler" "Advanced ResetHandler" @{b}------------------------------------------------------------------------ Advanced ResetHandler ------------------------------------------------------------------------@{ub} If this option is enabled NOTHING will survive a Reset (Software Reset or Keyboard Reset via LCOMMAND-RCOMMAND-CONTROL) in your computer's memory. This will kill all kinds of virusses and things like the RAD: device, which can be very useful if you just use it to decrunch disks. Please note that the Keyboard Reset is not affected by PATCH_DISABLE and that KBD_RESETHANDLERS will not work on very old machines (A1000 and early A500). @{b}------------------------------------------------------------------------@{ub} ToolTypes: RESETHANDLER activates advanced ResetHandler @endnode @node "SetFunction Patches" "SetFunction Patches" @{b}------------------------------------------------------------------------ SetFunction Patches ------------------------------------------------------------------------@{ub} Using this ToolType it is possible to select whether all patches are disabled when disabling the Commodity. Patches are always disabled when MultiCX is removed. The following MultiCX functions are affected by this ToolType: LOCKPUBFLAGS ASSIGNWEDGE NEWLOOKMENUS NEWLOOKPROPS WBABOUT WBTITLE SA_PENS SA_AUTOSCROLL SA_FONT LOCKPENS FIXOPENWB NODISPLAYBEEP NOFORMAT NOBOOTWRITE LOCKPATCH SHAPEFREEZER ALERTTIME WBGAUGE EDITHOOK BLACKBORDER (OS 2.x only) RESETHANDLER (SoftReset only) @{b}------------------------------------------------------------------------@{ub} ToolTypes: PATCH_DISABLE if set, all Patches will be disabled together with MultiCX @endnode @node "AssignWedge" "AssignWedge" @{b}------------------------------------------------------------------------ AssignWedge ------------------------------------------------------------------------@{ub} This ToolType helps you handling "Please insert volume in any drive" requesters. If the system tries to open such a requester, it will be replaced by a new one with three more gadgets: Assign... opens a DirectoryRequester asking for a path to assign the requested volume to Mount tries to mount the volume Deny denies the request and remembers the Process which tried to access that volume, so that it will not ask you again as long as AssignWedge is active @{b}------------------------------------------------------------------------@{ub} ToolTypes: ASSIGNWEDGE activates AssignWedge AUTOMOUNT=Pattern defines a pattern for volumes which will be mounted automatically when accessed for the first time @endnode @node "NewLookMenus" "NewLookMenus" @{b}------------------------------------------------------------------------ NewLookMenus OS 3.x only! ------------------------------------------------------------------------@{ub} This patch forces NewLook Menus on all PublicScreens. @{b}------------------------------------------------------------------------@{ub} ToolTypes: NEWLOOKMENUS activates NewLookMenus @endnode @node "NewLookProps" "NewLookProps" @{b}------------------------------------------------------------------------ NewLookProps ------------------------------------------------------------------------@{ub} This patch gives all PropGadgets (Sliders etc.) the OS 2.0+ look. (This will work with GadTools Gadgets only!) @{b}------------------------------------------------------------------------@{ub} ToolTypes: NEWLOOKPROPS activates NewLookProps @endnode @node "WBExtender" "WBExtender" @{b}------------------------------------------------------------------------ WBExtender ------------------------------------------------------------------------@{ub} These options replace your WB Titlebar and the "About..." Requester by more useful information about your system. This is how the Titlebar will look: AmigaOS x.x xxx  xxxxxxx (xx%) Chip xxxxxxx (xx%) Fast  T:xx L:xx S:xx *         |   |    |                  |                     |    |    | |         |   |    + free ChipMem     + free FastMem        |    |    | |         |   |                                             |    |    | |         |   +---- ChipSet used (OCS, ECS or AGA)         |    |    | |         |                                                 |    |    | |         +-------- OS Version                              |    |    | |                                                           |    |    | |                   Number of Tasks ------------------------+    |    | |                                                                |    | |                   Number of Libraries -------------------------+    | |                                                                     | |                   Number of Screens --------------------------------+ | | Freezed ShapeShifter --------------------------------+ @{i}Attention! The WB only refreshes display when amount of free memory has changed!@{ui} And here's your new Workbench/About...                        +----------------------------------------------+  OS Version -------->  | Kickstart 40.70, Workbench 40.42             |                        |                                              |  Copyright Message ->  | Copyright © 1985-1994 Commodore-Amiga, Inc.  |                        | All Rights Reserved.                         |                        |                                              |  CPU/FPU type ------>  | CPU: 68030, FPU: 68882                       |  Cache Status ------>  | InstCache ON (Burst), DataCache ON (Burst)   |                        |                                              |  Memory Status ----->  | Memory used: 21% of 22.536.192 Bytes         |                        | Largest free block: 11.061.448 Bytes Fast    |                        +----------------------------------------------+  Gadgets ----------->  |   OK              Reboot Flush |                        +----------------------------------------------+             OK     : just leave Requester as before             Flush  : flush all inactive libs, fonts etc.             Reboot : reboots system, opens confirmation Requester first                        +------------------------------------+                        |       --- System Reboot ---        |                        |                                    |                        | Wait for disk activity to finish.  |                        +------------------------------------+                        |   OK  Cancel |                        +------------------------------------+ Please read more about Patches under "@{"Notes and Hints" link "Notes and Hints" 0}"! @{b}------------------------------------------------------------------------@{ub} ToolTypes: WBABOUT                enables new WB About WBTITLE                enables new WB Titlebar CLOCK adds a digital clock to the TitleBar, which will be updated regulary 12HRS 12hrs clock display COMPACT enables a more compact TitleBar (for people with very big fonts or a very narrow WB screen) @endnode @node "TagScreens" "TagScreens" @{b}------------------------------------------------------------------------ TagScreens ------------------------------------------------------------------------@{ub} Do you remember this old goodie? ;-) These functions only affect screens which do not set these parameters themselves, so this should work perfectly together with other TagItem promoters like MagicCX's TagScreens. Additionally all screens with supplied TagLists are not changed unless HARDPATCH is set. @{b}------------------------------------------------------------------------@{ub} ToolTypes: HARDPATCH if set, NewScreens with TagLists are also affected by the patch SA_PENS set DRIPens for ugly looking old programs SA_AUTOSCROLL enable AutoScrolling SA_FONT use Topaz-8 as default font for old programs @endnode @node "LockPens" "LockPens" @{b}------------------------------------------------------------------------ LockPens OS 3.x only! ------------------------------------------------------------------------@{ub} This option is very useful if you use Workbench with many colors. It locks pens 4-7 and sets the colors according to the actual Palette Preferences. @{b}------------------------------------------------------------------------@{ub} ToolTypes: LOCKPENS enable LockPens @endnode @node "FixOpenWB" "FixOpenWB" @{b}------------------------------------------------------------------------ FixOpenWB OS 3.x only! ------------------------------------------------------------------------@{ub} AmigaOS 3.x has a severe bug when re-opening the Workbench screen, depending on the task priority of the current task the system will hang forever. This option is a workaround for the bug. @{b}------------------------------------------------------------------------@{ub} ToolTypes: FIXOPENWB enable FixOpenWB @endnode @node "NoDisplayBeep" "NoDisplayBeep" @{b}------------------------------------------------------------------------ NoDisplayBeep ------------------------------------------------------------------------@{ub} This option simply disables Intuition's DisplayBeep() function, thus no application will flash the display anymore. @{b}------------------------------------------------------------------------@{ub} ToolTypes: NODISPLAYBEEP enable NoDisplayBeep @endnode @node "Drive Protection" "Drive Protection" @{b}------------------------------------------------------------------------ Drive Protection ------------------------------------------------------------------------@{ub} Using the NOFORMAT option you may Format-protect a specific device, but remember that writing of tracks is still possible (Format ... QUICK). NOBOOTWRITE inhibits writing the first 2 blocks of a specific device, so virusses or any other programs cannot write a BootBlock any longer, which would otherwise destroy the RDB (Rigid Disk Block) of a harddisk. If IOALERT is enabled any violation of the above options will cause an Alert giving you the chance to ignore (LBUTTON) or cancel (RBUTTON) the operation. If this option is disabled all offending operations are cancelled. @{i}DeviceName is CASE-DEPENDENT!@{ui} @{b}------------------------------------------------------------------------@{ub} ToolTypes: NOFORMAT=DeviceName enable NoFormat for DeviceName NOBOOTWRITE=DeviceName enable NoBootWrite for DeviceName IOALERT enable IOAlert @endnode @node "LockPatch" "LockPatch" @{b}------------------------------------------------------------------------ LockPatch ------------------------------------------------------------------------@{ub} This fixes a small OS-bug in dos.library's Lock function. Without this patch some programs will not work properly with muFS etc. @{b}------------------------------------------------------------------------@{ub} ToolTypes: LOCKPATCH enable LockPatch @endnode @node "ShapeShifter Support" "ShapeShifter Support" @{b}------------------------------------------------------------------------ ShapeShifter Support ------------------------------------------------------------------------@{ub} If SHAPEFREEZER is enabled, MultiCX will freeze ShapeShifter when it's screen is not in front. This will prevent GfxBoard displays from being trashed by the Mac display. SHAPECLICKER allows you to use RMB to create a DoubleClick on the Mac. SHAPESTICK will emulate a Joystick on the Mac side by translating your Joystick movements to keypresses. Default is SPACE for Fire and CURSOR keys for the four directions. Diagonal movements are represented by the corresponding two keypresses. As an example RETURN for Fire and NUMPAD 4,5,6,8 would be correct for F/A-18 and A10-Attack. All Qualifiers except NUMPAD are ignored. Please note that this option will only affect ShapeShifter, so it is compatible to all other programs running on the Amiga side. @{i}Just in case you don't know what the hell I'm talking about... ShapeShifter is the incredible Macintosh emulator by Christian Bauer.@{ui} IMPORTANT NOTES: - The name of ShapeShifter's main task must be "ShapeShifter", so do not rename the program! Newer versions of ShapeShifter (since 3.2) take care of this automatically. - Do NOT use SHAPESTICK if you have anything other connected to your Joystick port (Gameport 1) than a digital Joystick! - SHAPESTICK currently only supports ShapeShifter running on it's own screen, it is simply ignored if you run ShapeShifter in a window. @{b}------------------------------------------------------------------------@{ub} ToolTypes: SHAPEFREEZER enable ShapeFreezer SHAPECLICKER enable ShapeClicker SHAPESTICK enable ShapeStick S_FIRE=Key set Key representing the Joystick's fire button S_RIGHT=Key set Keys representing Joystick directions S_LEFT=Key S_UP=Key S_DOWN=Key @endnode @node "Opaque Windows" "Opaque Windows" @{b}------------------------------------------------------------------------ Opaque Window Movement and Sizing ------------------------------------------------------------------------@{ub} These options enable you to move/size windows in full, and not only an ugly frame. But this should not be used on slow machines! If OPAQQUAL is not set and any Qualifier is pressed while moving/sizing a window MultiCX will use the old OS routines. @{b}------------------------------------------------------------------------@{ub} ToolTypes: OPAQMOVE enables Opaque Movement OPAQSIZE enables Opaque Sizing NOSMART use OS routines for SmartRefresh windows NOSIMPLE use OS routines for SimpleRefresh windows WBONLY use Opaque functions on WB screen only OPAQLIMIT=Pixels limits WindowSize for Opaque functions 0 means "No Limit" OPAQQUAL=Qual set Qualifier for Opaque functions @endnode @node "Alert Timeout" "Alert Timeout" @{b}------------------------------------------------------------------------ Alert Timeout OS 3.x only! ------------------------------------------------------------------------@{ub} This option allows you to set a timeout (in 1/50 seconds) for all system alerts. If the specified period of time has expired the alert will be cancelled, just like you would have pressed RBUTTON. @{b}------------------------------------------------------------------------@{ub} ToolTypes: ALERTTIME=ticks enable and set Alert Timeout in 1/50 seconds, 0 means "No Timeout" GURUTIME=ticks set Timeout for Guru messages (Default: 540) @endnode @node "WBGauge" "WBGauge" @{b}------------------------------------------------------------------------ WBGauge ------------------------------------------------------------------------@{ub} Perhaps you know these gauges from good old OS 1.x times... If activated these gauges show you how much the device is filled up, just like the percent figure in the windows titlebar. There are 4 different looks available: Type 1: OS 2.x Proportional Gadget Type 2: OS 3.x Proportional Gadget Type 3: Plain Raised Type 4: 3D Raised Just try them all to find out what you like most. @{b}------------------------------------------------------------------------@{ub} ToolTypes: WBGAUGE=type enable WBGauge and select gauge type (1-4), 0 means OFF @endnode @node "Notes and Hints" "Notes and Hints" @{b}------------------------------------------------------------------------ Notes and Hints ------------------------------------------------------------------------@{ub} - MultiCX must be started from WB, CLI/Shell is not supported. - MultiCX is 100% compatible to Commodore's specifications, so don't complain if some bad-behaving software does not work with it. For example: Some bad filesystems do not support Notification, some bad gfx-board drivers do not support MouseBlanking etc... - Not all patch programs are as clean as MultiCX (in reality most are really bad hacks!), so you should pay attention to the following simple rules: 1. All lowlevel patches (like CopyMemQuicker, RTPatch etc.) should be started between SetPatch and LoadWB! Do not use the User-Startup for such programs. This method is preferable for most patches. 2. Application patches (like ARQ) should have a high start priority if started in WBStartup. Simply set a ToolType "STARTPRI=nnn" and use a relative high value like 100 to make sure that these tools are started before MultiCX. Valid values range is -127 to 127. 3. Do not try to remove bad patches, not even if they have a option to do that! It's simply not possible to do that in a clean way without MultiCX's advanced interfacing routines. You have been warned... - Some bad programs pass invalid parameters to OS functions, for example some set WFLG_NW_EXTENDED in the NewWindow structure and do not supply a valid TagList in enw_Extension. MultiCX tries to check parameters in order to avoid problems when possible, but this will not always work. Remember: Things like this are not MultiCX's fault! - MultiCX's Screen Blanker uses BestModeID to find the best display mode. Because this is impossible under AmigaOS 2.x, MultiCX uses a special masking algorythm to find the display mode. But this relies on the fact, that a DisplayID with all ModeKeys set to 0 exists. Anyway you should use AmigaOS 3.x for best results. - BlackBorder is not fully supported by AmigaOS 2.x, but should work. - Some very old drives do not like NoClick, so switch it off at once if your drive makes funny noises... - If you like to toggle some of MultiCX's features using hotkeys, you should try ToolManager 2.1 (by Stefan Becker) together with DoIcon (by Lars Eilebrecht). - MultiCX may be enabled, disabled or removed from within scripts by using @{"HandleCX" link "HandleCX" 0} (included in this archive). Should always be done when starting nasty games... - External Preferences programs must not use more than 4096 byte stack, and should use ReadArgs to get needed arguments. The program is responsible for things like protecting itself against being started twice, popping it's screen to front etc. In order to get the path and name of MultiCX's active icon file a Public Semaphore has been implemented. Programs can use FindSemaphore to get the base of the following structure: struct MCXSemaphore { struct SignalSemaphore mcx_Sem; BPTR mcx_Lock; /* Copy of my wa_Lock */ CHAR *mcx_Name; /* Ptr to Icon Filename */ WORD mcx_Version; /* MultiCX Version */ WORD mcx_Revision; /* MultiCX Revision */ } The name of the Semaphore is "MultiCX Path". Don't forget to protect all accesses by a Forbid/Permit pair, because the Semaphore will be removed if MultiCX ends. - NEVER try to remove/disable ARQ or other programs that patch the EasyRequestArgs function. Most often these bad programs will trash the vector, resulting in "Please insert volume NIL: in any drive" requesters. - Do NOT use ReqChange, because every version has serious bugs and trashes several OS functions! Simply use RTPatch instead. - Do NOT use bad hacks like SysIHack, ToolsDaemon, ExecPatch etc. - Some programs (DOpus5 etc.) call Intuition functions while having the IntuiBase locked. So if you encounter any deadlock problems it's definitely not MultiCX's fault! - Some bad KBD_RESETHANDLERs do not preserve registers and do not return NULL when finished. This is the case with RebootOff from the Enforcer package, so do not complain if it doesn't work correctly! - Things like Enforcer are only thought for debugging purposes and should not be used on every startup! - Some bad so-called viruskillers do not know the difference between a virus and an application, and so report that the DoIO vector has been corrupted and must be fixed. If possible you should CANCEL this operation! - Do NOT use Executive because it destroys Amiga's Task Priority System! - Everybody should use SwazInfo by David Swazbrook... ;-) @endnode @node "Author" "Author" @{b}------------------------------------------------------------------------ Author ------------------------------------------------------------------------@{ub} Martin Berndt Fr.-Alfred-Str. 115 47226 Duisburg Germany E-Mail Germany: m_berndt@wanderer.dssd.sub.org E-Mail International: m_berndt@wanderer.gun.de Support BBS: WANDERER +49-211-9441293 Login: GAST Area: WANDERER/BIN/MB-SUPPORT MultiCX was developed using DevPac v3.14 ©1994 by HiSoft @{b}------------------------------------------------------------------------@{ub} @endnode @node "History" "History" @{b}------------------------------------------------------------------------ History ------------------------------------------------------------------------@{ub} 1.00 - 1.76 Ancient History 2.0ß (25.6.95) INTERNAL BETA - renamed public semaphore to "MultiCX Path" - overall code improvements - implemented SetFunction interfacing code - implemented @{"EDITHOOK" link "Advanced EditHook" 0} 2.0ß (27.6.95) INTERNAL BETA - completed SetFunction interfacing code - implemented @{"PATCH_DISABLE" link "SetFunction Patches" 0} ToolType - improved @{"AUTOCENTER" link "CenterScreen" 0} - @{"BLACKBORDER" link "System Flags" 0} uses a Patch now with OS 2.x - @{"EDITHOOK" link "Advanced EditHook" 0}'s Clipboard Paste now inserts new text instead of replacing the old text - implemented @{"TagScreens" link "TagScreens" 0} function with some ToolTypes: HARDPATCH, SA_PENS, SA_AUTOSCROLL and SA_FONT 2.0ß (28.6.95) INTERNAL BETA - fixed some bugs - @{"LOCKPUBFLAGS" link "Public Screen Flags" 0} is a Patch now and only locks the Flags which are changed by MultiCX - implemented @{"FORCENEWLOOK" link "NewLookMenus" 0} 2.0ß (30.6.95) INTERNAL BETA - improved @{"FORCENEWLOOK" link "NewLookMenus" 0} - fixed some bugs (only Mario Cattaneo found them...) 2.0ß (2.7.95) INTERNAL BETA - fixed some more small bugs - re-improved @{"FORCENEWLOOK" link "NewLookMenus" 0} because of side effects - improved Intuition access protocoll handling - implemented @{"ASSIGNWEDGE" link "AssignWedge" 0} 2.0ß (3.7.95) INTERNAL BETA - fixed bug in @{"ASSIGNWEDGE" link "AssignWedge" 0} - implemented warning message to show up if some resident data structures are incompatible 2.0ß (4.7.95) INTERNAL BETA - improved @{"ASSIGNWEDGE" link "AssignWedge" 0} - improved @{"FORCENEWLOOK" link "NewLookMenus" 0} 2.0ß (5.7.95) INTERNAL BETA - implemented @{"WBABOUT" link "WBExtender" 0} and @{"WBTITLE" link "WBExtender" 0} as a replacement for WBExtender 2.0ß (6.7.95) INTERNAL BETA - @{"WBABOUT" link "WBExtender" 0} now works correctly with 68040 and 68060 - improved @{"WBTITLE" link "WBExtender" 0} 2.0ß (7.7.95) INTERNAL BETA - extended "MultiCX Path" Semaphore - improved some routines 2.0ß (8.7.95) INTERNAL BETA - SetFunction interfacing code completely rewritten - fixed Enforcer hit in @{"WBTITLE" link "WBExtender" 0} 2.0ß (10.7.95) PUBLIC BETA - fixed bug in @{"ASSIGNWEDGE" link "AssignWedge" 0} 2.0ß (16.7.95) INTERNAL BETA - improved @{"Screen Blanker" link "Screen Blanker" 0}, it will no longer re-open Workbench when blanking - implemented @{"LOCKPENS" link "LockPens" 0} and @{"FIXOPENWB" link "FixOpenWB" 0} (OS 3.x only!) 2.0ß (18.7.95) INTERNAL BETA - fixed serious bug in SetFunction interfacing code, which caused difficult to trace lockups - improved @{"LOCKPENS" link "LockPens" 0} and @{"FIXOPENWB" link "FixOpenWB" 0} 2.0ß (27.7.95) INTERNAL BETA - improved @{"EDITHOOK" link "Advanced EditHook" 0} 2.0ß (30.7.95) PUBLIC BETA - built in some more sanity checks for OpenWindow and OpenScreen patches - improved @{"Moire Blanker" link "Moire Blanker" 0} 2.0ß (7.8.95) INTERNAL BETA - fixed bug in @{"EDITHOOK" link "Advanced EditHook" 0}, Clipboard Paste now always works correctly (ReqTools FileRequester etc.) 2.0ß (11.8.95) INTERNAL BETA - improved some routines 2.0ß (12.8.95) INTERNAL BETA - fixed small bugs in @{"SA_PENS" link "TagScreens" 0} and @{"SA_FONT" link "TagScreens" 0} - extended SetFunction interfacing code 2.0ß (14.8.95) INTERNAL BETA - fixed a little bug in @{"Notification" link "Notification" 0} routine 2.0ß (15.8.95) INTERNAL BETA - renamed FORCENEWLOOK to @{"NEWLOOKMENUS" link "NewLookMenus" 0} - implemented @{"NEWLOOKPROPS" link "NewLookProps" 0} - improved SetFunction interfacing code - made some routines more "hack-friendly"... ;-) 2.0ß (19.8.95) INTERNAL BETA - implemented @{"SHAPEFREEZER" link "ShapeShifter Support" 0} (ShapeShifter Support) 2.0ß (20.8.95) INTERNAL BETA - implemented @{"NOFORMAT" link "Drive Protection" 0} and @{"LOCKPATCH" link "LockPatch" 0} - improved documentation (@{"PATCH_DISABLE" link "SetFunction Patches" 0}) 2.0ß (21.8.95) INTERNAL BETA - improved @{"SHAPEFREEZER" link "ShapeShifter Support" 0} - optimised some routines - fixed nasty bug in SetFunction interfacing code (occured with OS 2.x only) 2.0ß (22.8.95) INTERNAL BETA - improved @{"Moire Blanker" link "Moire Blanker" 0} (no more funny pixels with CyberGraphX) - MultiCX needs at least 4096 Bytes Stack now! - improved OpenWindow and OpenScreen patches 2.0ß (23.8.95) INTERNAL BETA - implemented @{"RESETHANDLER" link "Advanced ResetHandler" 0} 2.0ß (26.8.95) INTERNAL BETA - @{"SHAPEFREEZER" link "ShapeShifter Support" 0} completely rewritten - implemented @{"SHAPECLICKER" link "ShapeShifter Support" 0} (ShapeShifter Support) - improved @{"EDITHOOK" link "Advanced EditHook" 0}, Clipboard Paste works with MUI now - improved @{"Moire Blanker" link "Moire Blanker" 0} - fixed some small bugs 2.0ß (27.8.95) INTERNAL BETA - improved @{"ASSIGNWEDGE" link "AssignWedge" 0}, does more sanity checks now - fixed bug in @{"RESETHANDLER" link "Advanced ResetHandler" 0} 2.0ß (28.8.95) INTERNAL BETA - improved @{"SHAPEFREEZER" link "ShapeShifter Support" 0}, should work always now, even while the Mac is booting up! 2.0ß (29.8.95) INTERNAL BETA - some minor code improvements 2.0ß (30.8.95) INTERNAL BETA - reduced stack usage of some routines to avoid problems with other patches 2.0ß (31.8.95) INTERNAL BETA - added another sanity check - some minor code improvements 2.0ß (6.9.95) INTERNAL BETA - fixed small bug in @{"EDITHOOK" link "Advanced EditHook" 0} - implemented @{"OPAQMOVE" link "Opaque Windows" 0}, @{"OPAQSIZE" link "Opaque Windows" 0}, @{"OPAQSMART" link "Opaque Windows" 0}, @{"OPAQLIMIT" link "Opaque Windows" 0} 2.0ß (7.9.95) INTERNAL BETA - removed OPAQSMART, added @{"NOSMART" link "Opaque Windows" 0} and @{"NOSIMPLE" link "Opaque Windows" 0} - improved @{"OPAQMOVE" link "Opaque Windows" 0} and @{"OPAQSIZE" link "Opaque Windows" 0} 2.0 (9.9.95) FIRST RELEASE VERSION - improved @{"SHAPEFREEZER" link "ShapeShifter Support" 0} - fixed bug in @{"EDITHOOK" link "Advanced EditHook" 0} - finished AmigaGuide documentation 2.01 (10.9.95) PUBLIC RELEASE - fixed serious bugs in @{"Moire Blanker" link "Moire Blanker" 0} and @{"Mouse Blanker" link "Mouse Blanker" 0} - implemented @{"AVOIDWINDOW" link "Screen Blanker" 0} 2.02 (12.9.95) PUBLIC RELEASE - improved @{"Screen Blanker" link "Screen Blanker" 0} - improved @{"OPAQMOVE" link "Opaque Windows" 0} and @{"OPAQSIZE" link "Opaque Windows" 0} - fixed serious bugs in @{"SHAPEFREEZER" link "ShapeShifter Support" 0} and @{"FIXOPENWB" link "FixOpenWB" 0} - enhanced and improved @{"EDITHOOK" link "Advanced EditHook" 0} 2.03 (14.9.95) PUBLIC RELEASE - fixed documentation bug (@{"NEWLOOKMENUS" link "NewLookMenus" 0}) - enhanced @{"EDITHOOK" link "Advanced EditHook" 0} - @{"OPAQMOVE" link "Opaque Windows" 0} and @{"OPAQSIZE" link "Opaque Windows" 0} completely rewritten, works with OS 2.x and OS 3.x now! 2.04 (15.9.95) PUBLIC RELEASE - @{"OPAQMOVE" link "Opaque Windows" 0} no longer ignores alien BorderGadgets (MUI's Iconify Gadget etc.) 2.05 (15.9.95) PUBLIC RELEASE - improved DragBar recognition in @{"OPAQMOVE" link "Opaque Windows" 0} - fixed small bug in @{"OPAQSIZE" link "Opaque Windows" 0} 2.06 (16.9.95) PUBLIC RELEASE - improved @{"LOCKPATCH" link "LockPatch" 0} 2.07 (18.9.95) PUBLIC RELEASE - improved @{"LOCKPENS" link "LockPens" 0} - added @{"List of Patches" link "PatchList" 0} to documentation 2.08 (19.9.95) PUBLIC RELEASE - fixed serious bug in error cleanup code 2.09 (24.9.95) PUBLIC RELEASE - @{"POPCLI" link "PopCLI" 0} and @{"External Preferences" link "Internal and External Prefs" 0} should work with faked WBStartupMsgs (with empty MP_SIGTASK field) now, but the Path will not be cloned then! 2.10 (25.9.95) PUBLIC RELEASE - implemented Deadlock Protection System for some very nasty programs 2.11 (26.9.95) PUBLIC RELEASE - implemented @{"NOBOOTWRITE" link "Drive Protection" 0} and @{"IOALERT" link "Drive Protection" 0} - implemented @{"NODISPLAYBEEP" link "NoDisplayBeep" 0} 2.12 (28.9.95) PUBLIC RELEASE - implemented @{"ALERTTIME" link "Alert Timeout" 0} - modified behaviour of @{"IOALERT" link "Drive Protection" 0} 2.13 (29.9.95) PUBLIC RELEASE - enhanced and optimised @{"NOFORMAT" link "Drive Protection" 0} and @{"NOBOOTWRITE" link "Drive Protection" 0}, now ETD commands are detected as well 2.14 (2.10.95) PUBLIC RELEASE - hopefully solved deadlock problems with some very nasty programs (DOpus5 etc.) 2.15 (4.10.95) PUBLIC RELEASE - made @{"NEWLOOKMENUS" link "NewLookMenus" 0} more waterproof, some bad programs tried to define NULL-MenuStrips 2.16 (8.10.95) PUBLIC RELEASE - fixed bug in @{"ASSIGNWEDGE" link "AssignWedge" 0}, so IDCMP_DISKINSERTED will be handled correctly now - added some @{"Notes and Hints" link "Notes and Hints" 0} 2.17 (9.10.95) PUBLIC RELEASE - improved StringGadget recognition routine 2.18 (10.10.95) PUBLIC RELEASE - fixed bug in @{"SHAPEFREEZER" link "ShapeShifter Support" 0} 2.19 (24.10.95) PUBLIC RELEASE - added some sanity checks for @{"ASSIGNWEDGE" link "AssignWedge" 0} 2.20 (25.10.95) PUBLIC RELEASE - improved @{"LOCKPENS" link "LockPens" 0} 2.21 (27.10.95) PUBLIC RELEASE - implemented Joystick emulation for @{"ShapeShifter" link "ShapeShifter Support" 0} - improved some routines 2.22 (7.11.95) PUBLIC RELEASE - fixed small bug in @{"SHAPEFREEZER" link "ShapeShifter Support" 0} - some internal improvements 2.23 (10.11.95) PUBLIC RELEASE - implemented @{"OPAQQUAL" link "Opaque Windows" 0} - included fixed version of @{"RebootOff" link "Notes and Hints" 80} (Enforcer) 2.24 (11.11.95) PUBLIC RELEASE - improved @{"ASSIGNWEDGE" link "AssignWedge" 0} and implemented workaround for some nasty programs like TheAnswer3 2.25 (17.11.95) PUBLIC RELEASE - implemented @{"WBONLY" link "Opaque Windows" 0} - implemented SMARTWB - updated Support BBS number 2.26 (1.12.95) PUBLIC RELEASE - implemented @{"WBGAUGE" link "WBGauge" 0} 2.27 (3.12.95) PUBLIC RELEASE - fixed stupid bug in @{"WBGAUGE" link "WBGauge" 0} 2.28 (4.12.95) PUBLIC RELEASE - fixed and improved @{"FRONTPUBSCR" link "FrontPubScreen" 0} 2.29 (4.12.95) INTERNAL TEST VERSION 2.30 (5.12.95) PUBLIC RELEASE - improved and enhanced @{"EDITHOOK" link "Advanced EditHook" 0}: - is now controlled by @{"PATCH_DISABLE" link "SetFunction Patches" 0} - implemented @{"CLIPUNIT" link "Advanced EditHook" 0} ToolType - RCOMMAND SHIFT V clears gadget before inserting string - works with applications that do their own Copy/Paste now - is 100% compatible to MUI now - overall code cleanup 2.31 (11.12.95) PUBLIC RELEASE - improved @{"OPAQMOVE" link "Opaque Windows" 0} and @{"OPAQSIZE" link "Opaque Windows" 0} - fixed (harmless) Enforcer hit in @{"NEWLOOKMENUS" link "NewLookMenus" 0} 2.32 (15.12.95) PUBLIC RELEASE - hopefully fixed some problems with v39 Workbench - minimised stack usage of some routines 2.33 (16.12.95) PUBLIC RELEASE - improved and extended @{"WBABOUT" link "WBExtender" 0} and @{"WBTITLE" link "WBExtender" 0} - fixed nasty bug in @{"SHAPEFREEZER" link "ShapeShifter Support" 0} 2.34 (16.12.95) PUBLIC RELEASE - Arrggghhhh! v2.33 introduced a MEGA-BUG! 2.35 (19.12.95) PUBLIC RELEASE - @{"WBGAUGE" link "WBGauge" 0} should work with all languages now 2.36 (20.12.95) PUBLIC RELEASE - optimised some routines - @{"WBGAUGE" link "WBGauge" 0} really works with all languages now, including German... ;-) 2.37 (26.12.95) PUBLIC RELEASE - implemented @{"CLOCK" link "WBExtender" 0} - added @{"12HRS" link "WBExtender" 0} and @{"COMPACT" link "WBExtender" 0} ToolTypes 2.38 (31.12.95) PUBLIC RELEASE - implemented @{"IGNORE_CLASS" link "Internal and External Prefs" 0} - implemented @{"NOCMDKEY" link "Advanced EditHook" 0} and @{"NOESCKEY" link "Advanced EditHook" 0} 2.39 (1.1.96) PUBLIC RELEASE - implemented @{"GURUTIME" link "Alert Timeout" 0} - implemented some more @{i}Magic@{ui} in @{"WBABOUT" link "WBExtender" 0} A Happy New Year to all of you! 2.40 (7.1.96) PUBLIC RELEASE - fixed a global WB deadlock problem 2.41 (8.1.96) PUBLIC RELEASE - fixed small bug in @{"WBTITLE" link "WBExtender" 0} - @{"ENTERASCII" link "Enter ASCII" 0} now works with LALT or RALT 2.42 (23.1.96) PUBLIC RELEASE - implemented @{"AUTOMOUNT" link "AssignWedge" 0} - improved @{"EDITHOOK" link "Advanced EditHook" 0} 2.43 (23.1.96) PUBLIC RELEASE - improved @{"ASSIGNWEDGE" link "AssignWedge" 0} 2.44 (26.1.96) PUBLIC RELEASE - improved @{"ASSIGNWEDGE (AUTOMOUNT)" link "AssignWedge" 0} behaviour 2.45 (12.2.96) PUBLIC RELEASE - removed SMARTWB, because it would never work properly - removed a sanity check from @{"ASSIGNWEDGE" link "AssignWedge" 0} @endnode @node "To do" "To do" @{b}------------------------------------------------------------------------ Planned features for later versions: ------------------------------------------------------------------------@{ub} - some more small patches... @endnode @node "PatchList" "PatchList" @{b}------------------------------------------------------------------------ List of Patches ------------------------------------------------------------------------@{ub} Name Library needed for ------------------------------------------------------------------------ OpenScreen, OpenScreenTagList intuition SA_PENS SA_AUTOSCROLL SA_FONT LOCKPENS (OS 3.x) BLACKBORDER (OS 2.x) SHAPEFREEZER OpenWindow, OpenWindowTagList intuition NEWLOOKMENUS (OS 3.x) WBTITLE FIXOPENWB (OS 3.x) SHAPEFREEZER CloseWindow intuition WBGAUGE SetPubScreenModes intuition LOCKPUBFLAGS SetMenuStrip intuition NEWLOOKMENUS (OS 3.x) EasyRequestArgs intuition ASSIGNWEDGE WBABOUT SetWindowTitles intuition WBTITLE WBGAUGE LockPubScreen intuition FIXOPENWB (OS 3.x) OpenWorkBench intuition FIXOPENWB (OS 3.x) CreateGadgetA gadtools NEWLOOKPROPS WBenchToFront intuition SHAPEFREEZER ScreenToFront, ScreenToBack intuition SHAPEFREEZER ScreenDepth intuition SHAPEFREEZER (OS 3.x) DoIO, SendIO exec NOFORMAT NOBOOTWRITE Format dos NOFORMAT Lock dos LOCKPATCH ColdReboot exec RESETHANDLER DisplayBeep intuition NODISPLAYBEEP DisplayAlert intuition ALERTTIME (OS 3.x) ModifyIDCMP intuition WBGAUGE @endnode @node "Legal" "Legal" @{b}------------------------------------------------------------------------ Legal Stuff ------------------------------------------------------------------------ MultiCX 2.x is SHAREWARE !!!@{ub} If you use it permanently please send me a donation of US$ 15 (DM 20). Please add $5 when you send me a cheque to cover clearing charges. All users who have sent a gift for MultiCX 1.x may use this and all further coming updates without paying anything. Bank Account for money transfer (German users only): R.Berndt Konto 393439-438 BLZ 36010043 Postbank Essen @{b}THANK YOU FOR YOUR SUPPORT !@{ub} @{b}------------------------------------------------------------------------@{ub} Copyright --------- MultiCX is written and copyright © 1994-1995 by Martin Berndt. No parts of this program may be altered by any means (this includes editing, reprogramming, crunching, resourceing etc.), except archiving. Disclaimer ---------- The author is in no way liable for any changes made to any part of the program, or consequences thereof as he is in no way liable for damages or loss of data directly or indirectly caused by this software. Distribution ------------ Neither fees may be charged nor profits may be made by distributing this piece of software. Only a nominal fee for costs of magnetic media may be accepted, the amount of US $5 shouldn't be exceeded for a disk containing MultiCX. CD Manufactures are specifically granted the right to include this program on CD collections, as long as they are for the Public Domain. But the user still has to pay the Shareware fee! @{b}------------------------------------------------------------------------@{ub} @endnode @node "Credits" "Credits" @{b}------------------------------------------------------------------------ Credits ------------------------------------------------------------------------@{ub} The following persons deserve special thanks from me as they made a significant contribution to the development of MultiCX: - Olaf "Olsen" Barthel for his good advice in many cases - Michael Barsoom for @{"MultiCXPrefs" link "Internal and External Prefs" 0} - Jürgen Kempkes for @{"MUI-MCXPrefs" link "Internal and External Prefs" 0} - Christian Bauer for @{"ShapeShifter" link "ShapeShifter Support" 0}, the best Mac-Emulator - Frank Mariak for making CyberGraphX - Kai Iske for WBGauge artwork - all my Beta-Testers for reports and constructive criticism - the MCP authors for the worst programming example ever - Mike Oldfield for the best music on this little planet - the TNG crew for the greatest adventures in universe - my son Daryl for moral support - my coffee machine for coffee support ;-) @endnode @node "HandleCX" "HandleCX" @{b}------------------------------------------------------------------------ HandleCX 1.3 (19-Mar-95) ------------------------------------------------------------------------@{ub} HandleCX is a CLI-replacement for Exchange to help you handling your commodities. In many cases it is useful to have full control over all running commodities in scripts, e.g. to start a game which does not like screenblankers. @{b}------------------------------------------------------------------------ Usage ------------------------------------------------------------------------@{ub} The syntax of the HandleCX command is: HandleCX CX_NAME/M,L=LIST/S,V=VERBOSE/S,P=POPUP/S,H=HIDE/S,E=ENABLE/S, D=DISABLE/S,R=REMOVE/S,T=TOGGLE/S The parameters are: CX_NAME name of a commodity, case-indepentent, must be quoted if it contains spaces, multiple names and wildcarding are allowed LIST or L lists all or selected commodities, may be combined with other commands VERBOSE or V like LIST, but with more infos POPUP or P like "Show Interface" in Exchange HIDE or H like "Hide Interface" in Exchange ENABLE or E like "Active" in Exchange DISABLE or D like "Inactive" in Exchange REMOVE or R like "Remove" in Exchange TOGGLE or T toggles Active/Inactive status Only ONE command is allowed at a time! That means only the first command found will be executed. List format: $07146028: MultiCX ACTIVE GUI $071460B0: Arq 1.79 ACTIVE NOGUI $07146138: Magic Menu ACTIVE GUI $071461C0: CycleToMenu ACTIVE GUI $07146248: Exchange ACTIVE GUI $071462D0: DynamiCache ACTIVE GUI $07146730: MFS ACTIVE GUI $071467B8: CrossDOS ACTIVE GUI $07146840: AlertPatch ACTIVE GUI $071468C8: CrossMac ACTIVE GUI $07146950: PowerSnap ACTIVE GUI $071469D8: ClipHistory 0 ACTIVE GUI $07146A60: Clipbook ACTIVE GUI $07146AE8: SwazInfo ACTIVE GUI $07146B70: ToolManager ACTIVE NOGUI $07146BF8: PrinterManager ACTIVE GUI $07146D08: DragIt ACTIVE GUI ^ ^ ^ ^ | | | | | CX_Name | | | | | |_________ Address of Structure | | | | Commodity is ACTIVE _____| | | Commodity has a GUI or not _______| Verbose list format: $07157418: MultiCX ACTIVE GUI : MultiCX 2.0 - ©1995 by Martin Berndt (Adds many nice features) @{b}------------------------------------------------------------------------ History ------------------------------------------------------------------------@{ub} 1.0 - initial release 1.1 - implemented wildcarding Some AmigaShell replacements need quotes around wildcards! 1.2 - changed command template, verbose list implemented 1.3 - implemented TOGGLE option @{b}------------------------------------------------------------------------@{ub} @endnode