WordPerfect 5.1 Mouse Support Table of Contents Definition of Terms. . . . . . . . . . . . . . . . . . . . . . 2 General Mouse Theory . . . . . . . . . . . . . . . . . . . . . 2 A Mouse as an input device. . . . . . . . . . . . . . . . 2 If MOUSE.COM is a standard, why are there mouse drivers in WP? . . . . . . . . . . . . . . . . . . . . . . . 2 Problems with the MOUSE.COM protocol. . . . . . . . . . . 2 What our drivers do.. . . . . . . . . . . . . . . . . . . 3 Pull-Down Menus. . . . . . . . . . . . . . . . . . . . . . . . 3 With the Keyboard . . . . . . . . . . . . . . . . . . . . 3 With The Mouse. . . . . . . . . . . . . . . . . . . . . . 3 With the Keyboard and the Mouse . . . . . . . . . . . . . 4 Setup Options for the Pull-Down Menus . . . . . . . . . . 4 Setup Options for the Mouse . . . . . . . . . . . . . . . 4 Pull-Down Menus Layout, Modes and Disabled items. . . . . 4 Menus, both full-screen and bottom-line. . . . . . . . . . . . 4 Lists. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Lists and Menus . . . . . . . . . . . . . . . . . . . . . 5 Document Positioning and Blocking. . . . . . . . . . . . . . . 5 Window Editor; when prompting the user for input, like retrieve. . . . . . . . . . . . . . . . . . . . . . . . . 5 General Mouse Questions and Answers. . . . . . . . . . . . . . 5 What can we check for outside of WordPerfect to make sure the mouse is set up correctly, if it is not working in WP?. . . . . 5 If the mouse works in other programs and not in WP, should it always be set to MOUSE.COM? . . . . . . . . . . . . . . . 6 I have a TSR, which after use (from within WP), kills the mouse. What can I do?. . . . . . . . . . . . . . . . . . . . . . 6 Why can it take several presses of the right mouse button to bring up the menu bar?. . . . . . . . . . . . . . . . . . 6 How do you select "None" for a mouse? . . . . . . . . . . 6 Common User statements and Suggestions. . . . . . . . . . 6 Mouse Hardware Information . . . . . . . . . . . . . . . . . . 7 Serial Mice . . . . . . . . . . . . . . . . . . . . . . . 7 Bus Mice. . . . . . . . . . . . . . . . . . . . . . . . . 7 PS/2 Mice . . . . . . . . . . . . . . . . . . . . . . . . 7 Mouse Autoselect Criteria. . . . . . . . . . . . . . . . . . . 7 Table of Useful Mouse Information, by Manufacturer . . . . . . 9 Unsupported Mice . . . . . . . . . . . . . . . . . . . . . . 12 Definition of Terms Mouse movement in WordPerfect is shown on the screen by a reverse video block (when in graphics, an arrow is used). This block is called the mouse pointer. The mouse pointer is independent of the current cursor location.A mouse usually has two or three buttons. The left button is used as the here/select button. The right button is used to activate/execute things. Both buttons can be pressed at the same time to generate a cancel. It there is a middle button, it is used as a single button cancel.A mouse button click is when a button is pressed and then released.A double click is when a mouse button is clicked twice before the double click time has elapsed.When a mouse button is pressed and then the mouse is moved, it is called a drag, and is referred to as dragging the mouse.Clipping is used to mean that the mouse is not allowed to move beyond a certain area of the screen. For example, in the Merge More list, when you drag the mouse it is "clipped" to stay within the confines of the small window. General Mouse TheoryA Mouse as an input device A mouse (or trackball, etc) is an input device that you can attach to your computer. Like printers, mice are manufactured by different companies and use different rules of operation. Also like printers, mice have different resolutions and other odd behaviors.Since different companies design and create mice that return different information to the computer, a standard was necessary for programs that wanted to use a mouse and not worry about who manufactured it. The industry settled on a format now called MOUSE.COM. A Mouse.Com program is a TSR (Terminate and Stay Resident) program that programs the mouse and receives its actual hardware input. A Mouse.Com TSR makes the mouse input available to any program in a standard format. Each type of mouse will require a Mouse.Com that is designed to read and handle that mouse's output. If MOUSE.COM is a standard, why are there mouse drivers in WP? 1st, Since mice and their associated Mouse.Com programs need to match, we felt it would be easier for our WP users to not have to worry about those issues.2nd, The Mouse.Com standard is a poor standard and doesn't really give us the mouse movement information in the best possible way.3rd, And most important, each Mouse.Com TSR takes upwards of 10k away from the user (we've seen one that uses 30k!). We looked into the issues and decided that we could write our drivers in less than 1k, which we did (actually 600 bytes). Problems with the MOUSE.COM protocol.One weakness with Mouse.Com is in passing control from one program to another. When WP starts up with the Mouse.Com driver selected, the initialization portion grabs control of the Mouse.Com TSR and tells it that we are now the program to notify in case of any mouse events. When it is time for WP to shut down, there is no way for us to tell if there was a program that passed control to us. If the other program didn't know to tell the Mouse.Com TSR to go back to its previous state, it may not have mouse control. This means that if you have a program that is using the mouse, and then you run WP; when you exit WP, unless your other program had the ability to realize that its mouse input has been disconnected and to re-install itself, it will no longer have mouse support.This control problem is evident with some TSR's. What our drivers do.There are 3 parts to each mouse driver.The first portion is the initialization routines which programs the mouse hardware or serial port so that it will send the information to us in the correct format for that mouse.The second portion of the mouse driver is the actual code that receives control whenever the mouse has information to tell us. This driver code converts the mouse information into WP's standard format and buffers it into WP's internal buffers. The buffer is processed along with keypresses. This is so that you can type with the keyboard and move the mouse at the same time and WP will respond to your commands in the order they actually occurred.The third portion of the mouse driver removes the programming that was done in the initialization of the driver. This is so that when WP shuts down, things can continue on as they were before WP started. Pull-Down MenusWith the KeyboardThe Alt-= key activates the pull- down menusSupported keyboard commands are: Mnemonics, as shown in the menu Arrow keys for movement Home followed by an arrow key Page up and down keysScreen up and down keys Enter key to execute a selection Space, or the Escape, key backs up a level;for example, from a sub-menu to its parent, or from a pull-down menu to the menu-bar.Macros created from the pull-down menus with the keyboard look just like they were created from function keys, and are thus familiar when edited.With The MouseThe Right Button activates the pull-down menus.The Left Button is used to make selections.The Middle Button acts as the cancel key (as do both buttons). Dragging the mouse with the left button held down selects your options without activating/executing one, this is useful to find what things can be done with the mouse in the current menu. Letting go of the left button on a selected (highlighted) item, executes it. Letting go of the left button while nothing is selected exits you from the pull-down menus. Executing a menu item with a sub-menu moves the select (highlight bar) into the sub-menu and waits. There is a delay before a sub-menu is shown (show delay). Once a sub-menu is showing, there is an equal delay before an item not in that sub-menu can be selected (select delay). These two delays allow the mouse movement to feel natural.When draggingthe mouse through the pull-downmenus, ifyou movethe mousefrom thecurrentlydrawingmenu toanothermenu, thecurrentlydrawingmenu willstopdrawing,notfinish,restorethe screenunder it,and thenthe newlyselectedmenu willbegindrawing. This helpsWordPerfect to keepup withthe mousemovementson slowercomputers.(by theway, a MACcan't evendothis...)With theKeyboardand theMouseTheabovekeyboardand mouseactionscan bemixed asdesired.SetupOptionsfor thePull-DownMenus(Setup,Display,Menu)You havetheability toselect anattributeto beassociatedwiththemenu-barmnemonics,andtextcharacters; andthepull-downmenumnemonics,andtextcharacters. Thisworksjustlikethe'MenuLetterDisplay'worksin5.0. Withtheseoptionsyoucancustomizeyourmenuslookstoyourpersonaltastes .YoucanallowtheAltkeywhenpressedandreleasedalonetoactivatethepull -downmenus.You canselect adivisionlinebetweenthemenu-barandyourtext.YoucanallowtheMenuBart oremain onthescreen.SetupOptionsfortheMouse(Setup, Mouse)WordPerfect 5.1 does not require Mouse.Com or any other TSR tosupport the mouse. We have internal drivers that we useto support most mice. If yours is not on the list, oryou would like to, you can use Mouse.Com and WP will usethat as the driver. See below for more detailedinformation on the mouse drivers and autoselect.For serialmice,weneedtoknowwhichcomportthemouseisin.You canselect adouble-clicktimethatsuitsyourneeds.You canselect asub-menudelaytime. Thisvalueisusedtodeterminehowlongtheshowandselectdelays arewhenusingthemouseinthepull-down menus.The Acceleration factor determines how amplified the mouse movements become. This lets you adjust how the mouse responds to physicalmovements, to suit your personal tastes. The larger thenumber is here, the less you can move the mouse before it isaccelerated.You can select the left-handed mouse option, whichswitches the functions of the left and right buttons.Assistedmouse pointer movement causes the mouse pointer to move towhere the cursor is when asking for input.Pull-Down MenusLayout, Modes and Disabled itemsThe pull-down menus arestructured very similarto those of the OS/2 PMversion. We want ourusers to feel comfortablemoving to the OS/2version if/when that timecomes.When an item in amenu is non-selectable for some reason, it is bracketedon each side. An example of this is case convert withoutblock on.Menus, both full-screen and bottom-lineThe LeftButton is used to make selections.The Right Button actsas the exit key and exits from the pull-down menus.TheMiddle Button acts as the cancel key (as do both buttons).Draggingthemousewiththeleftbuttonhelddownselectsyouropti onswithoutactivating/executingone,thisisuseful tofindwhatthings canbedonewiththemouseinthecurrentmenu. Letting gooftheleftbutton onaselected(highlighted)item,executesit. Letting gooftheleftbuttonwhilenothing isselecteddoes nothing.Yes/No questions in a menu, once selected, click on"Yes" for Yes, and click on "No" for No. The rightbutton does an exit, leaving the default value. Note that the mouse logic flows exactly as the menulogic has in 5.0. You make a selection and thendecide yes or no for that selection. ListsThe Left Button is used to make selections.The Right Buttonacts as the exit key and exits from the pull-down menus.The MiddleButton acts as the cancel key (as do both buttons).A double clickof the left button, is used execute the selection (acts as theenter key).To scroll in a list, press the left button on an item,them drag the mouse to the top or bottom of thelist, and the list will scroll in the appropriatedirection.Lists and MenusWhen a list and a menuare both on screenat the same time,the mouse can beused to select anitem in the list,and then an actionto perform from themenu. An example ofthis is listfiles.DocumentPositioning andBlockingTo positionin a document, youposition the mousepointer where youwould like yourcursor, and clickthe left button. This works acrossall functions andcolumns. When youposition in a columnbut under anyexisting text, youare positioned tothe bottom of thatcolumn, even if thethat location wasnot currently onscreen (the text isscrolled).To blocktext with the mouse,you press the leftbutton (whichpositions to thestart of the block)and then drag themouse pointer towhere the block isto end. Where youlet go of the mouseleft button,determines the endof the block. Notethat you can thenuse the cursor keysto modify the blockas necessary, beforeyou select thedesired action toperform on theblock. A click ofthe mouse's leftbutton will turnblock off andposition you to theclick position.Whenin reveal codes, themouse is onlysupported on the tophalf of the screen. Clicks and dragsbelow the normalwindow areignored.When insplit screens, mouseclicks and drags ineither window arevalid. Whennecessary the mousecode will switchdocuments foryou.Window Editor;when prompting theuser for input, likeretrieveWhenWordPerfect promptsfor input (a stringor number, not ayes/no question),you can position themouse pointer whereyou would like yourcursor (in a validregion) and clickthe left button tomove the cursorthere.A double clickof the left buttonis used to executethe selection (actsas the enterkey).General MouseQuestions andAnswersWhat can wecheck for outside ofWordPerfect to makesure the mouse isset up correctly, ifit is not working inWP?Each mouse willcome with some typeof program that youcan use as a "testprogram" to see ifit is installedcorrectly (oftencalled "Test.Exe"). There is usuallysome sort of"control-panel,"program and/or asmall painting typeprogram. Any ofthese, or any otherprogram shipped withthe mouse, wasdesigned so that themouse user can testhis installation.Ifthe mouse works inother programs andnot in WP, should italways be set toMOUSE.COM?If themouse is working inother programs, theymost likely haveMouse.Com installed. If you selectMouse.Com then themouse should work inWP. One way to testand see if they haveinstalled Mouse.Com,is to try auto-select in WP(19Jan90 release andlater). The firstthing we check foris Mouse.Com, and iffound, it isselected. You needto remember thatsince Mouse.Com is aTSR, it needs to berun from DOS beforeyou runWordPerfect.I have aTSR, which after use(from within WP),kills the mouse. What can I do?Seethe explanation"problems with inthe Mouse.Comprotocol". If a TSRuses the mouse andin the process,takes control awayfrom us, we aredependent upon themto give us backcontrol. If you areusing WP's driversthe switching shouldbe correct. Even ifthe TSR is buggy,you should be ableto re-select themouse in WP to solvethe problem. Asimple mouse driverselect macro shoulddo the trick (Alt-M?).Why can it takeseveral presses ofthe right mousebutton to bring upthe menu bar?Themouse has severaldefined functions. If the right buttonis pressed and themouse is moved, thismeans that you are"dragging" the mouseand thus moving thecursor (orscrolling). If youpress the leftbutton and move themouse, you are"dragging" the mouseand blocking text. When dragging themouse and thepointer is near aborder; top, bottom,or the sides, themouse "clips" themotion (doesn'tallow the pointer toleave the boundary). When a clip occurs,the mouse assumesmotion, and so themenu bar notappearing may seemto be more prevalentin these locations. If the user ispressing the rightbutton to bring upthe menu bar, andthere is enoughmovement to classifyas a "drag", WPtreats this as ifthey are trying tomove the cursor, anddoesn't bring up themenu bar. To see ifthis is the problem,the user could liftthe mouse off ofit's pad, and thenpress the rightbutton. Whenlifting the mouse,there is less chanceof mouse movementoccurring. As anote, for ease ofuse, we allow themouse to move up tothe value of a fullcharacter cell widthbefore we call a"click" a"drag".How do youselect "None" for amouse?With the19Jan90 release of5.1, you can get tothe mouse selectmenu, and "*" thecurrently selectedoption. This willun-select it leavingyou with "None" asthe selection.CommonUser statements andSuggestions"My Mousedoesn't work!" Isthe right driverselected? This isthe most commoncause. Does itwork with theirMouse.Com installed(from DOS), andselected in WP?Does their Mouse.Comwork with otherprograms? Is thecable attachedsecurely?"My MousePointer stoppedworking!" Is thecable attachedsecurely? Is theright driverselected? Does thetest program work(with theirMouse.Cominstalled)?"My MousePointer moveserratically!" Isthe correct driverselected? This isthe most probablecause. Is theacceleration factortoo high? On anoptical mouse, isthe mouse padoriented correctly? Are they printing alarge document withlots of graphics? Mouse Hardware InformationIn general, there are 3 types or classesof mice. There is the Serial mouse, the Bus mouse, and the PS/2mouse. The guidelines given here can only be general, because micemanufactures do their best to provide exceptions to therules.Serial MiceA serial mouse is connected to the computerthrough a serial port, which can be either a built in serial port,or a serial card plugged into a bus slot. The connector, which isdirectly attached to the computer (not any type on in-lineadapters), will have two twist screws that you can twist into nutsattached to the computer to hold the plug in place.Bus MiceA busmouse is connected to the computer through a card plugged into abus slot in the computer. The plugs which attach this type ofmouse to the interface card are "push in" circular type plugs, withno twist or other attaching devices. Often, while the actual plugis circular, the plastic molding you hold when handling the plug issquare on 1 side.PS/2 MiceA PS/2 mouse is connected to the computerthrough a built-in port specially designed for PS/2 computers. Theplug which attaches this type of mouse to the computer is round,and the plastic molding that you handle is also round. There isusually some sort of marking to indicate which side of the plugfaces up when plugged into the computer.It is important to notethat one mouse (for example the Microsoft mouse) can be pluggeddirectly into a bus card and thus be used as a bus mouse. Then,with an adaptor it can be plugged into a serial port and used as aserial mouse. It can also be used with another adaptor as a PS/2mouse. Because of this, you can't look at the mouse itself anddetermine which type of driver to select, it depends upon how it isattached to the computer.Mouse Autoselect CriteriaThe mouseAutoselect feature (first supported with the 19Jan90 release) willhelp the user determine his mouse type. The Autoselect featuredoes have its limitations. This is the sequence of events andthings the autoselect code checks for as it attempts to identify amouse in the computer. Note that the first mouse found will be theone selected. If you desire a different mouse to be active, youmust manually select it.1.Does a Mouse.Com TSR exist?2.Isthis a PS/2, and if so is a PS/2 mouse attached?3.Is there abus card installed?4.Is there a serial port (COM1 thenCOM2)?If so, is a Logitech compatible mouseattached?If so, is a Microsoft compatible mouseattached?The autoselect code serves it purpose by selecting a mousedriver that will work for the attached mouse. What the code cannotdo is determine which brand name the compatible mouse is. Forexample, if Sears sells the SR2000 mouse which is Microsoft Serialcompatible, and the Sears SR2000 mouse is listed in the menu as anoption, when you auto-select, the Microsoft Serial mouse will bethe selected option. This is because while we can tell that themouse is Microsoft compatible, we cannot tell which of the manycompatible mice it may be. This will be the same for all"compatible" mice.If the user cannot get his mouse to work, you canuse the brute force method and try every driver that we provide. The mouse drivers you can select that will try all of the differentdrivers are:1.IBM PS/2 MouseFor all PS/2 mice (ifthey have a PS/2machine) 2. LogitechSerial MouseForall Logitech Serial compatiblemice3.Microsoft Serial MouseForall Microsoft Serialcompatible mice4. Microsoft Bus MouseFor all Microsoft bus compatible mice,both the old and the new bus formats 5.Mouse Systems Serial MouseForall Mouse Systems Serialcompatible mice6. MouseDriver (Mouse.Com) For anyinputdevicethat has aMouse.ComTSR thatcan driveit. Notethat theMouse.ComTSR musthave beenloadedinto DOSbeforeenteringWordPerfect Table of Useful Mouse Information, by ManufacturerManufacturer Model Interface Number ofButtons SerialEmulation Autoselect CHProducts RollerMouse(trackball) Serial orPS/2 4 Microsoft Yes The driver for this mouse is called "CHMOUSE". If they have aPS/2 mouse they should use "CH2MOUSE.SYS". The switchesavailable are for the serial version to determine the comportthey will use. Example: "CHMOUSE /2" means load the driverand use comport 2 as the serial input. CH Products allowsports 3 and 4 to be used; we don't in our drivers, yet. Ifthey have the RollerMouse attached to com3 or com4, they willhave to use "CHMOUSE.COM".We have had a problem with an IC chip on this device. Whenentering WP the cursor would sometimes jump around andpossible select something. This was fixed by getting anupdated chip from CH Products. If this happens to the user,and nothing else seems to be the problem, you could refer themto CH Products.This device also has DIP switches on the bottom. Theseswitches change the functionality of the trackball. CHProducts has them originally set: 00001000 (0 meaning off). This will make the trackball's top buttons stay on when youpress once, then off when you press again. (It is likeholding the button down on another mouse).We (WPDev) have this mouse. DexxaInternational DLX Serial orBus 2 Microsoft Yes Genius-KYEInternational Dyna MouseGM-6X Serial 3 MouseSystems No GM-F303 Serial orPS/2 3 MouseSystems Yes,if PS/2 Dyna MouseGM-S2 PS/2 2 Yes Dyna MouseGM-6000 Serial 2 MouseSystems No Dyna MouseGM-U2 Serial orPS/2 2 Microsoft Yes Dyna MouseGM-F301 Serial 3 MouseSystems /Microsoft Yes,ifMicrosoft The Genius mouse has several drivers. The driver we have isversion 8.08. This will determine if the user has a bus mouseor a serial. Some of their mice have a switch on the bottomwhich determines the serial emulation it will use. It willemulate either the Microsoft or the Mouse Systems mouse. Thebutton on the bottom of mine has a number on each side, insideof an arrow. If they push it towards the side with a "2",they are in Microsoft emulation. If they press it towards theside with a "3", they are in Mouse Systems emulation. Thismouse also has a user selectable sensitivity. If they presson the right button and move the switch on the bottom back andforth it will be in a very sensitive mode. The middle buttonis normal mode, and the left button is slow mode. When it isin high sensitivity mode, and acceleration is set very high,the mouse can move the cursor from side to side on the screenby moving only about 1/2 inch. They can execute the driver intheir config.sys or from the command line. In theirconfig.sys file the driver is called GMOUSE.SYS. From thecommand line the file name is GMOUSE.COM. Their is no waythat I know of to remove the driver from memory. This driverhas a problem with being loaded multiple times. This occursfrom the command line if you run "GMOUSE.COM" several timesfor a serial mouse. If you have both a bus and a serial mouseattached, you need use the /n parameter to activate the serialmouse.Note that if they are using the mouse in Microsoft emulationand then change the switch on their mouse, it will no longerwork in WP until they re-select their mouse as the MouseSystems mouse (and visa-versa).We (WPDev) have the GM-F301 mouse. IBM PS/2 Mouse PS/2 2 Yes All PS/2 mice use the same interface. No matter whichcompany's driver is used, if it supports the PS/2 mouse, itwill work. IMSI Imsi Mouse Serial orBus 2 Microsoft Yes Imsi Mouse Serial 3 MouseSystems No The IMSI 3-button mouse if made by Mouse Systems for IMSI. Itlooks and acts exactly like the Mouse Systems mouse. We (WPDev) have both of these mice. Logitech Series 9Mouse Serial,Bus, orPS/2 3 Logitech Yes Serial Mouse Serial 3 Logitech Yes TrackMan(trackball) Serial 3 Logitech Yes The Logitech driver is installed with "MOUSE" from the commandline. To remove it the command is "MOUSE OUT". The LogitechTracMan and some newer series 9 SERIAL mice have a problemwith the current autoselect. They may or may not be selected,and won't work either way. The computer needs to be powereddown, then select the Logitech mouse manually. Note that thishas been fixed and will ship with the next release of WP.We (WPDev) have these mice. Microsoft MicrosoftMouse Serial,Bus, orPS/2 2 Microsoft Yes Microsoft's driver is invoked by "MOUSE". It is removed with"MOUSE OFF". It has parameters to tell it where the mouse islocated. The most important being "/cx". (x being the comportthat the serial mouse is attached).We (WPDev) have these mice. MitsubishiInternational M-Mouse Serial 2 Microsoft Yes E-Mouse Serial 2 Microsoft Yes S-Mouse Serial 2 Microsoft Yes The E-Mouse doesn't always auto-select. We've found thatmoving it helps... MouseSystems Omnimouse II Serial orBus 2 MouseSystems No White Mouse Serial,Bus, orPS/2 3 Microsoft Yes PC Mouse /PS/2 Mouse Serial,Bus, orPS/2 3 MouseSystems No PC Mouse II Serial orBus 2or 3 Microsoft Yes Field Mouse Serial orBus 2 Microsoft Yes The driver is "MSCMOUSE.COM". To remove: "MSCMOUSE /U". Theparameter available to select a serial line is "/x" where x isthe comport number. To select a bus mouse, the switch is"/cx" where x is the IRQ number.We (WPDev) have the PC Mouse II. Numonics ManagerMouse Serial 3 MouseSystems /Microsoft Yes,ifMicrosoft ManagerMouseCordless Serial 3 MouseSystems /Microsoft Yes,ifMicrosoft PC_Trac Trackball Serial 2 Microsoft Yes Z-Nix Z-Nix Mouse Serial orBus 3 Microsoft Yes Z-Nix SuperMouse Serial orBus 3 Microsoft Yes Driver is "MOUSE.COM". Note that the mice we have tested ofthis type don't operate smoothly and should not be recommendedto customers.We (WPDev) have the Super Mouse. Unsupported MiceWordPerfect does not support a few mice and other input devices intheir "native" modes. Remember that WP will support ANYTHING thathas a Mouse.Com TSR that can convert its input into a form we canuse.Tablets that don't emulate mice (via Mouse.Com).Light Pens that don't emulate mice (via Mouse.Com).Any other input device that doesn't emulate a mouse (viaMouse.Com).The Mouse Systems Bus mouse, which is actually a serial mouse on abus card. Note that we DO support this mouse either withMouse.Com, or by using the mouse in any serial port in the computerother that the one it came with. Yes, we are saying that if theydon't use the card they paid for, but just plug it into anotherspare COM port, it will work (as a serial mouse).