VOGONS


First post, by John Allen Mills

User metadata
Rank Newbie
Rank
Newbie

I am running an image of ms-dos 5.0, inside of dosbox 0.74, and I cannot seem to find a driver that will let me use the middle mouse button (tested with duke3d and doom). I am using a somewhat modern logitech mouse, so does dosbox's default driver convert a scroll button click into a middle button click, and that's why it won't work?

The drivers I've tried still function the same as the dos microsoft mouse drivers, I've tried multiple drivers, such as ms mouse, logitech's, pmouse, sigmaqm and ctmouse. But none of them will read the middle mouse button being clicked. As far as I'm aware dosbox emulates a 3-button, PS/2, mouse. Wolfenstein 3D came out in 1992 and supported the middle button, and ms-dos 6.00 was released in 1993, so I don't think it's a problem with my using MS-DOS 5.0.

Reply 1 of 3, by capitaine

User metadata
Rank Newbie
Rank
Newbie

3 buttons support does exist in MS-Dos, but it seems like an obscur puzzle which may turn into an headache.
One example is : "When the mouse first gets power, if the left button is held down it switches into Mouse Systems mode. A simple fact, but not always publicised."
Here : Switching a Mouse to 3-Button Mode

Other example is Msinput.ini configuration.
Check this : MS-DOS Mouse Driver Does Not Use Primary Mouse Button Setting

• x=1 sets the left mouse button
• x=2 sets the middle (wheel) button
• x=3 sets the right mouse button

I can hardly believe it, I could never get Microsoft's drivers supports those 3 buttons.
Only CTmouse.exe and Logitech mouse.exe were good.

John Allen Mills wrote on 2025-04-10, 17:04:

As far as I'm aware dosbox emulates a 3-button, PS/2, mouse.

Sure about this ?

My experience is : with some mices, some drivers, some protocol you can get 3 buttons workings in games on a DOS 6.22 real machine.

Reply 2 of 3, by xcomcmdr

User metadata
Rank Oldbie
Rank
Oldbie

I looked into it, fairly recently, through DOSBox source code and the MS-DOS Mouse Driver programmer reference book. It's a little bit confusing, but:

* The IBM PC didn't have a third mouse button until the mouse wheel appeared.
* MS-DOS does not support it.
* Many games and programs (Windows 3.X among them) don't support it, and could crash if three buttons are reported the the DOS mouse driver.
* CuteMouse added extensions to the protocol of the DOS mouse driver to support the wheel / third mouse button, but they are unique to it.

But it's only a brief look into it. YMMV.

Reply 3 of 3, by FeralChild64

User metadata
Rank Newbie
Rank
Newbie

As a guy who did quite huge rework of mouse support in one of the DOSBox forks, I can tell you:

* 3rd button was present on some mice even in the early 80s (search for the Mouse Systems mouse).
* Some 3rd party DOS mouse drivers did support the 3rd button, like the Genius or the Mouse Systems drivers (Genius comes with a GTEST.COM utility, which you may use for testing).
* CuteMouse driver added a driver API extension to support the wheel; 3rd mouse button was already supported by earlier 3rd party drivers. Hardly any DOS software supports the wheel, just like the 3rd mouse button.
* VBADOS driver added an API extension allowing to check whether the emulator/virtualizer is using seamless mouse cursor integration; this extension is also supported at least by DOSBox-X, DOSBox Staging, and DOSEmu 2.
* VBADOS also added an experimental API extension (see https://git.javispedro.com/cgit/vbados.git/tr … c/wheelapi2.txt) to support support the 2nd (horizontal) wheel and additional buttons (4&5), but the driver with these updates wasn't released yet, plus I don't know about any software utilising these additions

Bonus:
* A bizarre device, Logitech CyberMouse 3D, also added an API extension to support additional axes, up to 7 buttons, and even a force feedback - but this is basically a separate API, described in the CyberMan 3D SWIFT Supplement document. At least Descent games support this device.

https://github.com/FeralChild64