The 3 Button Serial Mouse mini-HOWTO <author>Geoff Short, <htmlurl url="mailto:geoff@kipper.york.ac.uk" name="geoff@kipper.york.ac.uk"><newline> 小佑 <htmlurl url="mailto:banjamin@ms26.url.com.tw" name="banjamin@ms26.url.com.tw"> <date>v1.33, 31 May 1998 <abstract> 如何在linux下使用三鍵式滑鼠工作。 </abstract> <toc> <sect>不擔保 <p> 這份文件基於善意提供給各位包括安全的設計與程序。如果因下列這些指令而直接或間接造成任何人或任何設備在任何方面的損失或損害,作者將不會負擔任何責任。 <sect> 介紹 <p> 這份文件最新的版本可以在下列地方找到 <htmlurl url="http://kipper.york.ac.uk/mouse.html" name="http://kipper.york.ac.uk/mouse.html"><p> 這裡有日文翻譯 <htmlurl url="http://jf.gee.kyoto-u.ac.jp/JF/JF-ftp/euc/3-Button-Mouse.euc" name="http://jf.gee.kyoto-u.ac.jp/JF/JF-ftp/euc/3-Button-Mouse.euc">; 而法文的翻譯在 <htmlurl url="http://www.freenix.fr/linux/HOWTO/mini/3-Button-Mouse.html" name="http://www.freenix.fr/linux/HOWTO/mini/3-Button-Mouse.html">. 也可能存在有其他的翻譯版本 - 請檢查當地的 LDP 映射站台。<p> 大多數的 X 應用程式被寫成假定使用者是以三鍵式滑鼠工作。在電腦上串列式滑鼠的使用是非常普遍的,而且它也是非常便宜就可以購買的。這些滑鼠中大多數都是三鍵式的,而且通常都使用微軟通訊協定 (Microsoft protocol )。在這個理論下,他們在 X windows下設定滑鼠是他們的理想。 (紀錄顯示使用便宜的三鍵式滑鼠其一般的價格約為美金 $1.14!)<p> 大多數符合雙重通訊協定 ( dual-protocol ) 的滑鼠是工作在這兩種模式: <itemize> <item>雙鍵 Microsoft 滑鼠。 <item>三鍵 MouseSystems 滑鼠 </itemize> 這份文件會引領你執行各種的步驟去設定你的滑鼠,好讓他們在這兩種不同的模式下工作,尤其是特別需要使用三鍵式滑鼠的人。 <p> 當發行版本變得較容易去設定,某些問題應該就可以迎刃而解。例如 RedHat 擁有一個名為 <tt>mouseconfig</tt> 的程式來為你設定這些東西。 然而 RH5.0 中的某些版本在 <tt>mouseconfig</tt> 中有些問題,所以請確定你完成這些修正。 <sect> 串列埠 <p> 第一件要作的事就是確定軟體可以找到你的滑鼠。 找出你的滑鼠連接的串列埠 - 通常會是 <tt>/dev/ttyS0</tt> ( DOS 下的 COM1 ) 或 <tt>/dev/ttyS1</tt> ( COM2 )。 (<tt>ttyS0</tt> 通常是 9 pin 的接頭, <tt>ttyS1</tt> 是 25 pin 的接頭,但是這些並非是不可變更的定律。) 它也有一個相對應的編號在 <tt>/dev/cua</tt> 設備,它幾乎與<tt>ttyS</tt>完全一樣,但是現在請打消使用他們的念頭。因為我們可以便利的建立一個新連結<tt>/dev/mouse</tt>指向這個埠。例如對 <tt>ttyS0</tt>: <tscreen> ln -s /dev/ttyS0 /dev/mouse </tscreen> <sect> 切換式滑鼠 <label id="switch"> <p> 某些滑鼠﹝通常都不太便宜﹞在底部有一個標示著 `2/3' 的切換開關。有時也許是標示 `PC/MS'。在這種情況 `2' 設備代表了兩鍵式 Microsoft 滑鼠,而 `3' 是三鍵式 MouseSystems 滑鼠。而一些更複雜的滑鼠,它的切換開關上標示著 `PC/MS' 。你大概可以發現到 `MS' 設備代表著 Microsoft 滑鼠,而 `PC' 代表 MouseSystems 滑鼠。你也許可以在 ps/2 滑鼠上發現 `PC` 設備這樣的敘述,但他同樣可以作為 MouseSystems 滑鼠使用。如果你擁有像這樣有切換開關的滑鼠,你可以藉由將切換開關切換至 `3' or `PC',在你的XConfigs下設定為 MouseSystems 滑鼠﹝參照文件接下來的部分﹞,如此一來你的滑鼠應該可以完整無誤的在三鍵狀態下使用。 <p> <sect> 一般的滑鼠 <p> 如果你的滑鼠不具有任何切換開關,也沒有任何電腦指令,那麼你可能需要經過一些小小的實驗。實驗的第一步就是假定你的滑鼠製造商告訴你的資訊是真的,你的滑鼠完全相容 Microsoft 滑鼠。在你的 Xconfig 下設定你的滑鼠為 Microsoft 滑鼠 ( 請參照 <htmlurl url="#config" name="Xconfig 的部分"> ),然後試著使用滑鼠看看。 <p> 如果你的滑鼠沒有任何反應,那你的滑鼠可能不是相容於 Microsoft 滑鼠,或者有一些其他的問題。嚐試在 config 中使用其他的通訊協定,最好由 config 的主頁 ( man page ) 開始看起。也看看下面 <htmlurl url="#misc" name="各種問題"> 這個部分。 <p> 當你在使用 X 的時候,你大概可以發現到你的滑鼠就算只有表面的兩鍵也可以工作的很好。你當然可以接受這個事實,而且就算你使用雙鍵式滑鼠也可以模擬第三鍵 ( 同時按下兩鍵,近似按下中鍵這個動作 ) 。如果你想要這樣,就必須像 <htmlurl url="#config" name="Xconfig 範例"> 所顯示般的改變你的 Xconfig 檔案。這也許意味在你確定沒有任何硬體升級的狀況下,無緣無故的購買了一隻三鍵式滑鼠。 所以現在來看看你的硬體。 <p> <sect> 切換滑鼠成為三鍵滑鼠 <p> 甚至便宜的滑鼠也可以像所有的三鍵式滑鼠一樣的在 Mouse Systems 通訊協定下使用。這個詭計是為了想像它是一個 Mouse Systems 滑鼠,這些方法通常你很少在你的電腦指令中看到。 <itemize> <item>在你開始啟動你的電腦之前,壓下你的滑鼠左鍵 ( 保持壓下的動作直到開機到安全狀態 ( safe side ) )。 </itemize> 當滑鼠初次開啟電源,如果左鍵是被押著的,它將會切換成 Mouse Systems 滑鼠。這是一個簡單事實卻不一定人人都知道。注意!你電腦軟體重新啟動可能不會切斷滑鼠的電源而因此使得滑鼠不會有如上述一般切換。有很多其他的方法用來切換滑鼠,那些方法也許可以用在你那挑剔的滑鼠上,也許不行。比起重新啟動你的電腦,也有兩種或更多較為不激烈的方法可行! <itemize> <item>如果你的電腦是屬於即插即用型,你可以拔開你的滑鼠,在壓著滑鼠鍵的狀態下把它接上你的電腦 ( 雖然你不應該在電腦運行的狀態下接上任何設備,但 RS232 說明書表示那沒關係 )。 <item>你也許可以藉由輸入<tt>echo "*n" > /dev/mouse</tt>來重設你的滑鼠,它應該具有與拔開滑鼠同樣的效果。壓下左鍵把滑鼠切換為 Mouse Systems 滑鼠,而不是 Microsoft 滑鼠。無論你在哪一個命令稿 ( script ) 來啟動你的 X,你應該都能利用上述方法才是。 <item>Bob Nichols (rnichols@interaccess.com) 寫了一個 C 的小程式去完成相同的工作,當你採用 <tt>echo "*n"</tt> 這個方法失效 ( 反之亦然 )時, 你可以試試這個程式。你可以由下處 <htmlurl url="http://kipper.york.ac.uk/src/fix-mouse.c" name="http://kipper.york.ac.uk/src/fix-mouse.c"> 取得它的程式碼。 <item>某些人說在 Xconfig 中加入 `ClearDTR' 這行,能夠讓他們的滑鼠切換成 Mouse Systems 滑鼠。 <item>如果你夠勇敢,打開你的滑鼠﹝記得這將會使你的產品保證無效﹞檢查內部。在某些情形,也許滑鼠會有切換開關在裡面,因為某些奇怪的理由而只有製造商知道。更可能有些便宜的滑鼠有一個你可以切換的 jumper 。這些切換開關或 jumper 也許有像上述<ref id="switch" name=" 切換式滑鼠 "> 中`MS/PC' 切換開關一樣的效果。你可以在電路板上找到切換 2 & 3 的設計,但是不一定是接合的。他們可能看來像: <tscreen><verb> ----------- | o | o | o | SW1 ----------- 1 2 3 </verb></tscreen> 試著連接 1-2 或 2-3 腳, 看看滑鼠的反應有沒有什麼不同。如果有,你可以在兩者間裝一個小開關,或者將兩者焊接起來,讓這個問題一勞永逸。 <item>如果滑鼠完全不相容於 MouseSystems ,滑鼠還可以藉由焊接解決這個問題,這個方法出自 Peter Benie (<htmlurl url="mailto:pjb1008@chiark.chu.cam.ac.uk" name="pjb1008@chiark.chu.cam.ac.uk">). 如果中鍵的按鈕是兩極式,連接按鈕的一邊接腳到左鍵的按鈕,另一個連到右邊的按鈕。如果滑鼠不是兩極式的,那就用二極體取代接線。現在,中鍵就是左鍵和右鍵同時按下。在 XF86Config 中選擇 <tt>ChordMiddle</tt> ,那你就可以利用中鍵的功能了。 <item>藉由焊接還有一個終極辦法,我第一次從 Brian Craft (<htmlurl url="mailto:bcboy@pyramid.bio.brandeis.edu" name="bcboy@pyramid.bio.brandeis.edu">) 處得知。 兩種滑鼠的公用標準晶片分別為 16 pin 的 <bf>Z8350</bf> 和 18 pin 的 <bf>HM8350A</bf>。這兩中晶片中,接藉由一個 pin 來控制晶片的滑鼠模式,情況如下: <tscreen><verb> Pin 3 Mode ----- ---- 未接OPEN 預設為 Microsoft 滑鼠。如果通電時為 Mouse System 滑鼠。 接地GND 永遠為 Mouse System 滑鼠。 通電VDD 永遠為 Microsoft 滑鼠。 </verb></tscreen> ( Pin 號碼如下:) <tscreen><verb> ____ pin1 -| \/ |- pin2 -| |- pin3 -| |- -| |- -| |- -| |- -| |- pin8 -|____|- </verb></tscreen> (這個方法是由 Hans-Christoph Wirth 和 Juergen Exner 兩位所允諾公佈的,他們精通於 de、comp、os、linux、硬體 ) 你可以將 pin 3 與接地 ( gnd ) 焊接起來,讓滑鼠永遠固定為 MouseSystems 滑鼠。 <p> <itemize> <item>Peter Fredriksson (<htmlurl url="mailto:peterf@lysator.liu.se" name="peterf@lysator.liu.se">) 曾經嚐試 SYSGRATION <bf>SYS2005</bf> 晶片,發現可以藉由連接 Pin 3 到接地,強迫滑鼠為Mouse System 滑鼠。 <item>Uli Drescher (<htmlurl url="mailto:ud@digi.ruhr.de" name="ud@digi.ruhr.de">) 確定此法可用於 <bf>HN8348A</bf> 晶片; Ben Ketcham (<htmlurl url="bketcham@anvilite.murkworks.net" name="bketcham@anvilite.murkworks.net">) 確定<bf>HM8348A</bf>可行 ( 將 Pin 9 接地)。 <item>Urban Widmark (<htmlurl url="mailto:ubbe@ts.umu.se" name="ubbe@ts.umu.se">) 表示同樣的方法可應用在<bf>EC3567A1</bf> 晶片, 但是改將 Pin 8 接地。 我試過這樣的改變是可行的,而且滑鼠使用上很正常。 <item>Timo T Metsala (<htmlurl url="mailto:metsala@cc.helsinki.fi" name="metsala@cc.helsinki.fi">) 發現在 <bf>HT6510A</bf> 晶片,pin 3 模式選擇的接腳,pin 9 是接地。同樣的方法也適用在<bf>HT6513A</bf> 晶片。 Holtek 也試過 <bf>HT6513B</bf> 和 <bf>HT6513F</bf> 晶片,不過 pin 8 才是接地。 <item>Robert Romanowski (<htmlurl url="mailto:robin@cs.tu-berlin.de" name="robin@cs.tu-berlin.de">) 表示 pin 3 接 pin 8 (接地) 在<bf>EM83701BP</bf> 晶片也可行。 <item>Robert Kaiser (<htmlurl url="mailto:rkaiser@sysgo.de" name="rkaiser@sysgo.de">) 確定將 pin 3 與接地相接的方法,在<bf>EC3576A1</bf> 晶片上也可行。 <item>Sean Cross (<htmlurl url="mailto:secross@whidbey.com" name="secross@whidbey.com">) 發現將 pin 2 與 pin 7 (接地) 相接,在 <bf>HM8370GP</bf> 晶片上可行。 <item>Peter Fox (<htmlurl url="fox@roestock.demon.co.uk" name="fox@roestock.demon.co.uk">) 改用 pin 3 接 pin 8 在 <bf>HM8348A</bf> 晶片。 <item>Jon Klein (<htmlurl url="jbklein@mindspring.com" name="jbklein@mindspring.com">) 發現 pin 3 接 pin 9 可以欺騙 <bf>UA5212S</bf> 晶片。 </itemize> <item>當你自上述兩種焊接方法中選擇其一,你可以在開機時按下滑鼠的按鍵來得到滑鼠:這電路圖來自 <htmlurl url="mailto:mkatzer@TechFak.Uni-Bielefeld.DE" name="Mathias Katzer">. <tscreen><verb> ----- --- R ---------O------ + Supply | ----- | | C = 100nF capacitor | | E | R = 100kOhm | __ / | T = BC557 transistor | / \ O | B | #V | T / |-----|-# | / 滑鼠的左鍵 | | #\ | O | \__/ | --- \ C | --- C ------O----------> ( 接到滑鼠更深入的地方 ) | ### 接地 </verb></tscreen> 這個接受測試的滑鼠是一隻無名的滑鼠,型號 MUS2S。不論在其他滑鼠上這個滑鼠的電路圖都是可信賴的;如果按鈕是與接地相連而不是接到 +Supply,而 NPN 電晶體( 例如 BC547 )將會作動,同時 R 及 C 將交換。 </itemize> <p> 所以當你你知道這些方法後,選擇權在你。堅持預設的 Microsoft 雙鍵滑鼠,或從解決如何切換滑鼠與設定 X 中獲得益處。 <sect>滾軸式滑鼠 <label id="wheel"> <p> 滾軸式滑鼠是最近幾年新出來的產品,起先由 Microsoft 智慧滑鼠 ( Intellimouse ) 開始,逐漸推廣到其他的製造商。 滾軸式滑鼠可由按按鍵、滾動滾軸上下來操控。有更多更好的參考資訊在 <htmlurl url="http://www.inria.fr/koala/colas/mouse-wheel-scroll/" name="http://www.inria.fr/koala/colas/mouse-wheel-scroll/"> 那裡會說明如何獲得更多的 X 應用程式來辨認你的滾輪式滑鼠,好讓它可以有捲動視窗的功能。 <p> 在大多數的情況下,你將會需要一個相當新的 Xserver 來作動捲動視窗這種功能。但是某些舊的 Xserver 也能辨識滾軸式滑鼠的按鍵訊號。例如智慧滑鼠就被 XFree 3.3.1 及之後的版本所支援。 <sect>使用 gpm 切換滑鼠 <label id="gpm"> <p> <tt>gpm</tt> 是一個能讓你在控制台模式 ( console mode ) 下使用滑鼠的一個程式。它通常被包括在 linux 發行版本中,而且可以在文字模式及啟動命令稿 <tt>/etc/rc.d/rc.local</tt> 的狀態下啟動。注意!發行版本中不一定會收錄最新的版本﹝本文在寫的時候是 1.13 版﹞,新版本可以在映射站台 sunsite.unc.edu 中找到。 <p> 在 gpm 下串列滑鼠的主要模式如下: <tscreen><verb> gpm -t ms gpm -t msc gpm -t help </verb></tscreen> 針對 Microsoft 及 MouseSystems 滑鼠, 或探查你的滑鼠及回報給你所找到的。 在 MouseSystems 滑鼠時執行 gpm ,你也許需要 <tt>-3</tt> 這個旗標或者是 DTR 這個選項,使用 <tt>-o dtr</tt> 這個旗標: <p> <tscreen> gpm -3 -o dtr -t msc </tscreen> <tt>gpm</tt> 通常能辨識所有的三鍵式滑鼠,甚至是 Microsoft 滑鼠。更新的版本 ( Version 1.0 跟之後的版本(?) )甚至可以讓其他的程式共享這個資訊。如果你需要這樣,你必須在執行 gpm 時附加 -R ,方法如下: <tscreen> gpm -R -t ms </tscreen> 這將可以令 gpm 重新輸出滑鼠資料成為一個新的設備,稱為 <tt>/dev/gpmdata</tt>。這個設備看來可以讓其他任何程式所利用。注意!上述方法建立的設備 <bf>永遠</bf> 只能使用 MouseSystems 滑鼠通訊協定。你可以利用下面所說的方法,馬上設定你的 Xconfig 使用這個設備取代原先的 <tt>/dev/mouse</tt> 。但是你必須永遠在你使用 X 的時候執行 gpm。某些人指出當 X 在使用這個方法後,會造成沒有正確辨識中鍵按鈕的情形。這可能是個人滑鼠設定造成的問題。 <p> <bf>改變滑鼠在 gpm 及 X 中的按鍵映射 </bf> (<htmlurl url="mailto:gustafso@math.utah.edu" name="gustafso@math.utah.edu">)<p> <p>你也許會發現 gpm 與 X 間按鍵的映射其預設值不相同,所以當你在同一部電腦使用上述兩種系統將會混淆你的電腦。讓你的 X 在選擇與貼上功能使用與 gpm 相同的按鍵,必須使用 X 指令: <tscreen> xmodmap -e "pointer = 1 3 2" </tscreen> 不論你使用的是二鍵或三鍵式滑鼠,上述的指令可以讓左鍵代表選擇右鍵代表貼上。如果強迫 gpm 使用 X 標準按鍵映射,則在啟動 gpm 時輸入 <tt>-B</tt> 指令,例如: <tscreen> gpm -t msc -B 132 </tscreen> <sect> 使用兩個滑鼠 <p> 在某些情況,如筆記型電腦有內建的點取設備,你也許想使用串列式滑鼠為第二個設備。在大多數的情況下,內建設備使用 PS/2 通訊協定,而且如果你不想用它的話,可以將它忽略。只需如平常般利用 <tt>/dev/ttyS0</tt> 重新配置你的 gpm 或 X ﹝或者其他的﹞。 <p> 在同一個機器上使用兩者,你可以利用 <tt>gpm -M</tt> 去重新輸出設備。更詳細的記述在 gpm 主頁。並且, XFree 3.3.1 及其以後的版本利用 XInput 機器來支援 muliple 輸入設備。自動產生的 XF86Config 檔案應該加入一些必須的註解在其中。 <p> <sect> XF86Config 與 Xconfig 檔案範例 <label id="config"> <p> 設定檔的位置依據你使用的版本或發行套件而有所不同。 可能是在 <tt>/etc/Xconfig, /etc/XF86Config</tt> 或 <tt>/usr/X11/lib/X11/XF86Config.</tt> 當你啟動 X 時應該看一下 -- 它會顯示在螢幕上。 這個語法在 XF86Config 及 Xconfig 兩者檔案間有些微不同,所以兩種都列: <p><bf>Microsoft 串列滑鼠</bf></p> <p> <itemize> <item>XF86config: <tscreen><verb> Section "Pointer" Protocol "microsoft" Device "/dev/mouse" EndSection </verb></tscreen> <item>Xconfig: <tscreen><verb> # # 滑鼠的定義與有關的變數 # Microsoft "/dev/mouse" </verb></tscreen> </itemize> <p><bf>Microsoft 串列滑鼠與三鍵的模擬</bf></p> <p> <itemize> <item>XF86config: <tscreen><verb> Section "Pointer" Protocol "microsoft" Device "/dev/mouse" Emulate3Buttons EndSection </verb></tscreen> <item>Xconfig: <tscreen><verb> # # 滑鼠的定義與有關的變數 # Microsoft "/dev/mouse" Emulate3Buttons </verb></tscreen> </itemize> <p><bf>MouseSystems 三鍵串列式滑鼠</bf></p> <p> <itemize> <item>XF86config: <tscreen><verb> Section "Pointer" Protocol "mousesystems" Device "/dev/mouse" ClearDTR # 這兩行或許是非必須的, ClearRTS # 試著沒有第一行或只有 DTR EndSection </verb></tscreen> <item>Xconfig: <tscreen><verb> # # 滑鼠的定義與有關的變數 # MouseSystems "/dev/mouse" ClearDTR # 這兩行或許是非必須的, ClearRTS # 試著沒有第一行或只有 DTR </verb></tscreen> </itemize> <p><bf>Microsoft 串列滑鼠與 gpm -R</bf></p> <p> <itemize> <item>XF86config: <tscreen><verb> Section "Pointer" Protocol "MouseSystems" Device "/dev/gpmdata" EndSection </verb></tscreen> <item>Xconfig: <tscreen><verb> # # 滑鼠的定義與有關的變數 # MouseSystems "/dev/gpmdata" </verb></tscreen> </itemize> <sect> 電纜,延長與轉接器 <p> 一個滑鼠轉接器僅需一條如下所示的電纜: TxD 與 RxD 用作資料傳輸, RTS 及 / 或 DTR 用作電源與接地,轉譯成 pin 的編號為: <tscreen><verb> 9-pin port 25-pin port TxD 3 2 RxD 2 3 RTS 7 4 DTR 4 20 Gnd 5 7 </verb></tscreen> 上述的表格也許是有用的,如果你需要去安排一個轉接器在 9 與 25 pin 接頭之間,或延長電纜。 <p> <sect> 各種的問題及設定 <label id="misc"> <p> <itemize> <item> 如果你在 X 或控制台模式關於你的滑鼠有任何問題,檢查你沒有執行 getty 在串列埠線上,或任何 像數據機這類的東西。並且確定 IRQ 的相衝與否。 <item> 當在載入 X windows 時,你有可能需要去按著左鍵。因為當 X 啟動時,某些系統需要送出某種類 的信號或使滑鼠失效 <item> 串列設備的問題也許起因於串列埠在啟動時並未設定初值。這可藉由 <tt>setserial</tt> 指令來做,執行啟動命令稿的 <tt>/etc/rc.d/rc.serial</tt>。檢查<tt>setserial</tt>這個主頁,另從 Serial-HOWTO 獲得更多的細節。它也許值得一些小小類型的實驗,例如試著將<tt>setserial /dev/mouse uart 16550</tt> 或 <tt>16550a</tt>有關於你實際擁有埠的問題不顧(例如,滑鼠並不相似 16c550AF)。 <item> <tt>ClearDTR</tt> 旗標並不能正常運作在某些系統,除非你利用如下的命令關掉 RTS/CTS handshaking <tscreen>stty -crtscts < /dev/mouse</tscreen> (測試平台為 UART 16450/Pentium 由 Vladimir Geogjaev <htmlurl url="mailto:geogjaev@wave.sio.rssi.ru" name="geogjaev@wave.sio.rssi.ru">) <item>Logitech 滑鼠也許需要加入一行 <tt>ChordMiddle</tt> 去讓三鍵式滑鼠中的中鍵能作用。用這一行在 config 中替代<tt>Emulate3Buttons</tt> 或加入在 <tt>/dev/mouse</tt> 這行之後。你也許需要 <tt>ClearDTR</tt> 與 <tt>ClearRTS</tt> 這些行在你的 Xconfig。某些 Logitech 滑鼠絕對不需要 <tt>ChordMiddle</tt> 這行 ── 關於這個問題的一種症狀是選單似乎隨著滑鼠移動,替代了捲軸向下的作用。 (出自 <htmlurl url="mailto:chang@platform.com" name="chang@platform.com">) <item>交換按鍵:使用 <tt>xmodmap</tt> 指令去改變每個按鍵按下的自然按鍵設定。例:<tt> xmodmap -e "pointer = 3 2 1" </tt> 將會完全改成慣用左手模式。如果你採用兩鍵式滑鼠,那只需要列出 1 和 2 。 <item>加速:使用 <tt>xset m</tt> 命令去改變滑鼠的設定。例:<tt>xset m 2 </tt> 將設定加速為 2 。注意主頁中所有有關的詳細敘述。 <item>指標偏移:如果按下時滑鼠的指標出現左右晃動的情形,這意味著你的螢幕沒有被定位。這個問題一般出現在 S3 的設備上,你可以利用 xvidtune 來固定它。試著 <tt>Invert_VCLK/InvertVCLK, 或 EarlySC.</tt> 這個訊息出自 Bill Lavender (<htmlurl url="mailto:lavender@MCS.COM" name="lavender@MCS.COM">) 及 Simon Hargrave。 在 XF86Config 中,它也許看來像這樣:<p> <tscreen><verb> Subsection "Display" Modes "1024x768" "800x600" "640x480" "1280x1024" Invert_VCLK "*" 1 ... </verb></tscreen> <item>如果你有一個"跳躍"的滑鼠鍵﹝例如你想要點一下,它卻點兩下﹞,這也許是你的滑鼠有問題了。這個 Logitech 滑鼠的問題被 Bob Nichols (<htmlurl url="mailto:rnichols@interaccess.com" name="rnichols@interaccess.com">)解決了。包括焊接某些滑鼠中的電阻與晶片來消除微小位移的彈跳現象。 <item>如果某些使用者不能用滑鼠,但在某些﹝例如 root ﹞可以。那也許是使用者並沒有執行正好相同的東西 ── 例如不同版本的 X 或不同的 Xconfig 。檢查 X 啟動訊息,仔細的去確認。 <item>如果你發現滑鼠指標會抹去妳螢幕上的東西,你的伺服器 config 可能有問題了。試著增加選項<tt>linear</tt> 或者是 <tt>nolinear</tt> 到你的繪圖卡部分。或者如果是 PCI 主機板,則選項為 <tt>tgui_pci_write_off</tt> 及 <tt>tgui_pci_read_off</tt>。 (這似乎是 Trident 卡的問題) <item>如果滑鼠游標並未顯示在螢幕上,但是它似乎能使用。試試在 config 檔案中設備部分的選項 <tt>"sw_cursor"</tt> 。 <item>如果你的滑鼠當它在閃爍時或在你打開電源時會停止工作。造成這種情況也許是因為感測器 ( sensor ) 被光所淹沒。你能夠試著在較暗的室內,或將一些卡放於頂上。 <item>Microsoft 商標滑鼠通常是問題的主因。最新的 ``Microsoft 串列滑鼠 2.1A'' 顯示,在很多的系統上並不能使用,雖然拔起再重插一次可能會有助於此一情況。<tt>gpm</tt> 版本 1.13 以及其後的版本,應該也支援 2.1A 滑鼠,當你使用 <tt>pnp</tt> 滑鼠模式時。 (參照 <htmlurl url="#gpm" name="gpm section"> 中 how to 重新輸出這個項目。) ``Microsoft Intellimouse'' 也會引起問題,雖然它目前應該能被 XFree 版本3.3及 以後的版本所支援。 </itemize> <sect> 樣品測試 <p> 市面上有太多不同的滑鼠存在,我不能斷言說這會故障,買那種比較好。我只能基於我的經驗與傳言將我想能用的滑鼠列表。甚至對於這份資訊你都必須抱著一絲懷疑 ── 我們有兩個相同的滑鼠在我們辦公室內的兩台電腦上使用,某些使用情況下兩者不會完全相同! 歡迎增加這份列表。 <p> <bf>Mouse Systems optical mouse, serial version</bf><newline> 工作狀態良好﹝就像你從名字上預期的﹞,沒有 ClearDTR 或 ClearRTS 在 config 中。 <newline><bf>WiN mouse, as sold by Office World for eight quid.</bf><newline> 標準 Microsoft/MouseSystems 雙重滑鼠 <newline><bf>Agiler Mouse 2900</bf><newline> 標準 Microsoft/MouseSystems 雙重滑鼠。 SYSGRATION SYS2005 晶片是可焊接的 <newline><bf>Sicos mouse,</bf><newline> 工作狀態不錯,需要 ClearDTR & Clear RTS 在 config 中 <newline><bf>Index sell a mouse for 10 quid,</bf><newline> 不能在三鍵滑鼠狀態下使用,但它擁有良好的程式 :-) <newline><bf>Artec mouse</bf><newline> 一般的雙重通訊協定滑鼠,需要 `ClearDTR' 設定在 config 中,非 `ClearRTS' <newline><bf>DynaPoint 3 button serial mouse.</bf><newline> 一般的雙重通訊協定滑鼠,需要 `ClearDTR' 與 `ClearRTS' 在 Xconfig 中 <newline><bf>Genius Easymouse 3 button mouse</bf><newline> 於 Mouseman 通訊協定下工作狀態良好除了 ChordMiddle 變數設定。 出自 Roderick Johnstone (<htmlurl url="mailto:rmj@ast.cam.ac.uk" name="rmj@ast.cam.ac.uk">) <newline><bf>Truemouse, made in Taiwan</bf><newline> 可以使用,需要 `ClearDTR' 在 config中 ( 出自 <htmlurl url="http://ccn.cs.dal.ca/˜ae721/Profile.html" name="Tim MacEachern">) <newline><bf>Champ brand mouse</bf><newline> 需要切換為PC 滑鼠,它也能使用在 MouseSystems 通訊協定 ( 來自 tnugent@gucis.cit.gu.edu.au) <newline><bf>MicroSpeed mouse</bf><newline> 一般的雙重通訊協定滑鼠 <newline><bf>Venus brand ($7)</bf><newline> 在內部擁有一個 jumper 用來切換為二鍵或三鍵滑鼠 (出自 <htmlurl url="mailto:mhoward@mth.com" name="mhoward@mth.com ">) <newline><bf>Saturn</bf><newline> 切換滑鼠後,變成三鍵狀態的 MouseSystems 滑鼠其工作情況良好 (出自 <htmlurl url="mailto:grant@oj.rsmas.miami.edu" name="grant@oj.rsmas.miami.edu ">.) <newline><bf>Manhattan mouse.</bf><newline> 切換於 `MS AM' / `PC AT' 滑鼠間,MS 選項可良好工作於 <tt>gpm -R</tt> 方式 (出自 <htmlurl url="mailto:komanec@umel.fee.vutbr.cz" name="komanec@umel.fee.vutbr.cz">). <newline><bf>Inland mouse.</bf><newline> 切換於 `PC/MS' 滑鼠間,工作狀態良好 (出自 <htmlurl url="http://ptsg.eecs.berkeley.edu/˜venkates/" name="http://ptsg.eecs.berkeley.edu/˜venkates">). <newline><bf>qMouse (3-button), FCC ID E6qmouse X31.</bf><newline> 在美國的販賣價為 $10。作業在 `gpm -t msc -r 20'。 沒有 jumpers 或開關切換為 MouseSystems 三鍵滑鼠,在 X 下使用並不可靠。 對於 <tt>echo "*n" > /dev/mouse</tt> 沒有任何回應 <newline><bf>Mitsumi Mouse (2-button), FCC ID EW4ECM-S3101.</bf><newline> 在美國的販賣價為 $12。 在 X 與 gpm 之下均值得信賴,流暢的雙重鍵( double-button) (這兩款出自 <htmlurl url="mailto:gustafso@math.utah.edu" name="gustafso@math.utah.edu">) <newline><bf>PC Accessories mouse that i got from CompUSA for under $10.</bf><newline> 有 PC/MS 開關在底部,可用 (出自 <htmlurl url="mailto:steveb@communique.net" name="steveb@communique.net">) <newline><bf>First Mouse - seriously cheap at 7.79 pounds at Tempo.</bf><newline> Microsoft/MouseSystems 雙重滑鼠,滑鼠的設定藉由在啟動時按著按鍵,沒有開關,沒有連結( links )。四線連接,echo '*n' 不能使用, `gpm -R' works a treat. (出自 <htmlurl url="mailto:peterk@henhouse.demon.co.uk" name="peterk@henhouse.demon.co.uk">) <newline><bf>Trust 3-button mouse.</bf><newline> 藉由開關切換雙重滑鼠,可在 `PC' 選項下成為 MouseSystems 滑鼠而使用。gpm 不喜歡這款的 Microsoft 滑鼠 <newline><bf>Chic 410</bf><newline> 當保持在 MS 選項與使用 gpm - R 控制可完美無暇的使用。 出自 Stephen M. Weiss (<htmlurl url="mailto:steve@esc.ie.lehigh.edu" name="steve@esc.ie.lehigh.edu">) <newline><bf>KeyMouse 3-button mouse.</bf><newline> 可使用於 ClearDTR 與 ClearRTS 在 Xconfig 的情況; 需要在 gpm 使用 `-o dtr'。 ( 出自 <htmlurl url="mailto:EZ4PHIL@aol.com" name="EZ4PHIL@aol.com">) <newline><bf>Qtronix keyboard `Scorpio 60'</bf><newline> 所有的三鍵在 MouseSystems 通訊協定下皆可使用 (出自 <htmlurl url="mailto:hwe@uebemc.siemens.de" name="hwe@uebemc.siemens.de">) <newline><bf>Tecra 720 laptop</bf><newline> 滑動點 ( glidepoint ) 在 /dev/cua0; 插入 (stick) 在 /dev/psaux。 ( 出自 <htmlurl url="mailto:apollo@anl.gov" name="apollo@anl.gov">) <newline><bf>Anubis mouse</bf><newline> 工作良好,每當切換為 X 虛擬控制台(virtual console) 需要按著左鍵。 (From <htmlurl url="mailto:Joel.Crisp@bristol.ac.uk" name="Joel Crisp">) <newline><bf>Yakumo No.1900 mouse</bf><newline> 藉由 <tt>gpm -R -t ms</tt> 輸出到 X 來使用。 ( 出自<htmlurl url="mailto:flinx.nbg.sub.org!oli@flinx.nbg.sub.org" name="Oliver Schwank">) <newline><bf>Genius `Easy Trak' Trackball</bf><newline> 是 <bf>非</bf> Microsoft 相容,使用 <tt>Mouseman</tt> 在 Xconfig 中 ,如此它可以良好的使用。(出自 <htmlurl url="mailto:VTanger@aol.com" name="VTanger@aol.com">.) <newline><bf>Highscreen Mouse Pro</bf><newline> `工作良好' 出自 <htmlurl url="mailto:alfonso@univaq.it" name="alfonso@univaq.it">. <newline><bf>Logitech CA series</bf><newline> 使用在 X 時,利用 MMseries 通訊協定,在 2400 Baud, 150 樣品抽取率。 (應該也能應用在 Logitech CC, CE, C7 & C9 mice). (出自 <htmlurl url="mailto:vkochend@nyx.net" name="vkochend@nyx.net">.) <newline><bf>A4-Tech mouse</bf><newline> 可以使用,需要將 <tt>DTR</tt> 這一行加入 X 及 gpm。 (出自 <htmlurl url="mailto:deane@gooroos.com" name="deane@gooroos.com">) <newline><bf>Vertech mouse</bf><newline> 標準的 Microsoft/Mousesystems 滑鼠反應,可以透過焊接固定。 (出自 <htmlurl url="mailto:duncan@fs3.ph.man.ac.uk" name="duncan@fs3.ph.man.ac.uk">.) <newline><bf>Boeder M-7 ``Bit Star'' (and other M series apart from M13)</bf><newline> 切換成 Mousesystems 通訊協定藉由在開啟電源時按下任一按鍵。 (出自 <htmlurl url="mailto:sjt@tappin.force9.co.uk" name="mailto:sjt@tappin.force9.co.uk">.) <newline><bf>Mouse Systems ``Scroll'' Mouse (four buttons and a roller/button)</bf><newline> 擁有 2/3 選項 - 在狀態為 3 函數的情況下為三鍵 MouseSystems 滑鼠,並且忽略特別的額外按鍵與滾 軸。不需要使用 <tt>ClearRTS/DTR</tt>。 (出自 <htmlurl url="mailto:parker1@airmail.net" name="parker1@airmail.net">.) <newline><bf>Radio Shack 3-button Serial Mouse</bf><newline> 樣品 26-8432, available in Tandy for about 20 quid. 使用在 Mousesystems 協同 ClearDTR。 (出自 <htmlurl url="mailto:Sherilyn@sidaway.demon.co.uk" name="Sherilyn@sidaway.demon.co.uk">.) <newline><bf>Dexxa serial mouse</bf><newline> 工作狀況良好,當在 Xconfig 中利用 Microsoft 通訊協定時, 沒有 ChordMiddle 或 任何需求。 (出自 <htmlurl url="mailto:slevy@ncsa.uiuc.edu" name="mailto:slevy@ncsa.uiuc.edu">.) <newline><bf>Belkin 3 button mouse</bf><newline> 當購買自 Sears (\$10),當它在 PC 選項時,在 gpm 下需要 <tt>-o rts</tt> (在 X 下大概需要 <tt>ClearRTS</tt> )。 (出自 <htmlurl url="mailto:mmicek@csz.com" name="mailto:mmicek@csz.com">.) </p> <sect> 更多的資訊 <p> <itemize> <item>Mouse Systems 的網站在 <htmlurl url="http://www.mousesystems.com/" name="http://www.mousesystems.com/">. 如果你需要視窗驅動程式,在他們那有。 <item>有關 linux 串列埠的 HOWTO 的有用資訊,可由世界各地的映射站台獲得。如果你不知道距你最近的映射站台。可由下處開始: <htmlurl url="http://sunsite.unc.edu/mdw/linux.html" name="http://sunsite.unc.edu/mdw/linux.html"> <item>關於滑鼠如何工作,這裡有非常好的說明: <htmlurl url="http://www.4QD.co.uk/faq/meece.html" name="http://www.4QD.co.uk/faq/meece.html">. <item>有關 Xconfig 及 XF86Config 檔案更多的細節及在這份文件中像 Xfree86 HOWTO 這類有關如何安裝 X windows 的資料可由有關的主頁找到。有關 XFree86 FAQ 也在下列的映射站台: <htmlurl url="http://www.XFree86.org/" name="http://www.XFree86.org/">. <item>有關 gpm 的資訊可在這主頁找到,也可試試Darin Ernst 的網頁於: <htmlurl url="http://www.castle.net/X-notebook/mouse.txt" name="http://www.castle.net/X-notebook/mouse.txt">. <item>許多的滑鼠軟硬體資訊於此可發現: <htmlurl url="http://www.hut.fi/Misc/Electronics/pc/interface.html#mouse" name="http://www.hut.fi/Misc/Electronics/pc/interface.html#mouse"> </itemize> <sect> 滑鼠後記 <p> 這份文件的大多數資訊收集自不同的 linux 新聞群組。對於每位藉著此途徑幫助這份文件,但我無法一一列出的人們,我感到非常抱歉;非常感謝你們。 <p> 所以,總結以上: <itemize> <item>甚至普通的三鍵式 Microsoft 滑鼠都可以使用。 <item>配置你 X 的副本來期盼獲得一個 Mouse Systems 滑鼠。 <item>在開啟電源時壓著左鍵切換成 MouseSystems 滑鼠。 <item>你也許須要在起動 X 的時候壓著左鍵。 <item>滑鼠遠比你想像的聰明。 </itemize> </article>