VOGONS


First post, by Xenphor

User metadata
Rank Member
Rank
Member

I've been trying to play some late era DOS games like Duk3d and Blood on a (not period accurate) win98 machine which provides very good performance and mouse response (using a Logitech G305) in a Win9x dos box. However, I'm using a PCI sound card (YMF744), so I can't enable sound effects those games without the setup crashing. That's why I'm trying to use DOS mode instead.

In DOS mode I can get sound effects working, but the mouse response is very sluggish compared to Win9x (I'm using ctmouse). Doing any sort of quick movements will cause the cursor to snap back to its original position, so I'm forced to make small movements if I want to aim properly.

I've tried using /R 1 option for ctmouse which makes the mouse movement slower but helps the snapping back problem. I've also tried lowering the DPI on my mouse (Logitech G305) which can also help prevent the mouse from snapping back but makes things more sluggish.

Is this a problem of using a modern USB mouse in DOS? Is there a way to get the sort of mouse response I get in win9x in real DOS? I don't think it's a problem with build engine games because the same thing happens with Doom in real DOS, but it's not an issue since I can run that in win9x with full sound support.

Reply 1 of 12, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
Xenphor wrote on 2021-02-25, 06:05:
I've been trying to play some late era DOS games like Duk3d and Blood on a (not period accurate) win98 machine which provides ve […]
Show full quote

I've been trying to play some late era DOS games like Duk3d and Blood on a (not period accurate) win98 machine which provides very good performance and mouse response (using a Logitech G305) in a Win9x dos box. However, I'm using a PCI sound card (YMF744), so I can't enable sound effects those games without the setup crashing. That's why I'm trying to use DOS mode instead.

In DOS mode I can get sound effects working, but the mouse response is very sluggish compared to Win9x (I'm using ctmouse). Doing any sort of quick movements will cause the cursor to snap back to its original position, so I'm forced to make small movements if I want to aim properly.

I've tried using /R 1 option for ctmouse which makes the mouse movement slower but helps the snapping back problem. I've also tried lowering the DPI on my mouse (Logitech G305) which can also help prevent the mouse from snapping back but makes things more sluggish.

Is this a problem of using a modern USB mouse in DOS? Is there a way to get the sort of mouse response I get in win9x in real DOS? I don't think it's a problem with build engine games because the same thing happens with Doom in real DOS, but it's not an issue since I can run that in win9x with full sound support.

This is not a problem with your 'modern' USB mouse per se but with any USB mouses under DOS. Mouse performance under DOS depends on the PS/2 emulation of your BIOS. Emulation is necessary since DOS itself knows nothing about USB. Sometimes on modern motherboards this emulation is just enough to display a mouse and use it in text mode applications.
Your best best is to use a native PS/2 mouse under DOS for games/graphics mode applications.

If you have no PS/2 port on your motherboard you can also try real USB driver for DOS. Of course first you should disable PS/2 (usually called legacy mouse support) emulation in your BIOS. Be aware the such USB DOS drivers occupy a lot of memory and are not compatible with all USB controllers:
http://bretjohnson.us/

Last edited by Falcosoft on 2021-02-25, 06:30. Edited 1 time in total.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 2 of 12, by darry

User metadata
Rank l33t++
Rank
l33t++
Xenphor wrote on 2021-02-25, 06:05:
I've been trying to play some late era DOS games like Duk3d and Blood on a (not period accurate) win98 machine which provides ve […]
Show full quote

I've been trying to play some late era DOS games like Duk3d and Blood on a (not period accurate) win98 machine which provides very good performance and mouse response (using a Logitech G305) in a Win9x dos box. However, I'm using a PCI sound card (YMF744), so I can't enable sound effects those games without the setup crashing. That's why I'm trying to use DOS mode instead.

In DOS mode I can get sound effects working, but the mouse response is very sluggish compared to Win9x (I'm using ctmouse). Doing any sort of quick movements will cause the cursor to snap back to its original position, so I'm forced to make small movements if I want to aim properly.

I've tried using /R 1 option for ctmouse which makes the mouse movement slower but helps the snapping back problem. I've also tried lowering the DPI on my mouse (Logitech G305) which can also help prevent the mouse from snapping back but makes things more sluggish.

Is this a problem of using a modern USB mouse in DOS? Is there a way to get the sort of mouse response I get in win9x in real DOS? I don't think it's a problem with build engine games because the same thing happens with Doom in real DOS, but it's not an issue since I can run that in win9x with full sound support.

You might want to try the workaround described here [SOLVED] PSA : using USB keyboard with BIOS PS/2 emulation routines does not always work well. I.E. in Jazz Jackrabbit
as the root cause is likely similar .

Reply 3 of 12, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
darry wrote on 2021-02-25, 06:29:

You might want to try the workaround described here [SOLVED] PSA : using USB keyboard with BIOS PS/2 emulation routines does not always work well. I.E. in Jazz Jackrabbit
as the root cause is likely similar .

Some USB mice don't work correctly when operating in PS/2 mode (through passive adapters), and the more "features" your mouse have the worse its compatibility would be.

I had used some different USB mice and they fall under the following categories in terms of PS/2 support:

1. None. Does not work at all in an environment without corresponding USB drivers. This is usually the case for very high end models.
2. Poor. Works under DOS, but movement axes are weird (like cursor moving right when you move the mouse left and vice versa).
3. Good. Works under DOS with correct movement axis under normal workload, but would behave strangely if you're moving the mouse too intensively. (I think the OP's mouse falls under this)
4. Flawless. Works just like a real PS/2 mouse. Usually such mouse comes with a passive USB-PS/2 adapter so you can directly plug them into a PS/2 port.

The behavior appears consistent when you use a passive USB-PS/2 adapter to connect the mouse in question directly to PS/2 ports, and when you plug it directly to the USB port with Legacy USB support enabled.

EDIT: Some corrections as pointed out by Falcosoft.

Last edited by LSS10999 on 2021-03-01, 01:52. Edited 2 times in total.

Reply 4 of 12, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
LSS10999 wrote on 2021-02-25, 08:03:
Some USB mice don't have proper PS/2 emulation, and the more "features" your mouse have the worse its compatibility would be. […]
Show full quote
darry wrote on 2021-02-25, 06:29:

You might want to try the workaround described here [SOLVED] PSA : using USB keyboard with BIOS PS/2 emulation routines does not always work well. I.E. in Jazz Jackrabbit
as the root cause is likely similar .

Some USB mice don't have proper PS/2 emulation, and the more "features" your mouse have the worse its compatibility would be.

I had used some different USB mice and they fall under the following categories in terms of PS/2 emulation:

1. No emulation. Does not work at all in an environment without corresponding USB drivers. This is usually the case for very high end models.
2. Poor emulation. Works under DOS, but movement axes are weird (like cursor moving right when you move the mouse left and vice versa).
3. Good emulation. Works under DOS with correct movement axis under normal workload, but would behave strangely if you're moving them too intensively. (I think the OP's mouse falls under this)
4. Flawless emulation. Works just like a real PS/2 mouse. Usually such mouse comes with a passive USB-PS/2 adapter so you can directly plug them into a PS/2 port.

Should note that the behavior would be consistent when you use a passive USB-PS/2 adapter to connect the mouse in question directly to PS/2 ports.

Sorry to say but you have some misconceptions: The most important one is that USB mice emulate PS/2 some way. The truth is USB mice NEVER 'emulate' PS/2. Your motherboard's BIOS has to emulates PS/2 for USB mice that do not implement PS/2 protocol natively. So in your list problem 1. is strictly motherboard/BIOS related and 4. has nothing to do with 'emulation' since those USB mice that can be used with a passive adapter implements PS/2 protocol natively (so no emulation is needed at all).
Of course there can be different level of incompatibilities between different USB mice and BIOS implementations but it still does not mean that USB mice 'emulate' PS/2 differently.
You can find more info about USB mouse, PS/2 emulation etc. in the readme file of Bret Johnson 's USB drivers for DOS:

What "USB Legacy Support" means in a general sense is the ability to access and use a USB Keyboard, Mouse, or Disk Drive […]
Show full quote

What "USB Legacy Support" means in a general sense is the ability to
access and use a USB Keyboard, Mouse, or Disk Drive when the computer
first turns on, before the part where the computer even decides which
Operating System to load. This also "spills over" into the ability
to use certain Device/Interfaces (Keyboards, Mice, and Disk Drives)
in Operating Systems that pre-date USB (e.g., DOS and older versions
of Windows), though that is not its true intended purpose.

Note, however, that "Legacy Support" means different things on
different computers. On some computers, it means all three
Device/Interfaces can be used (Keyboards, Mice, and Disk Drives). On
others, it may mean just one or two of them, but not necessarily all
three. On some computers, it means "plug-and-play", and on others it
means all of the Legacy Physical Devices you intend to use must be
plugged in when the computer is first turned on. On some computers,
the Legacy Physical Devices must be attached directly to a Root Hub
(or a specific port on a specific Root Hub if you have more than
one), and on other computers you can have some "regular" USB Hubs
between the Legacy Physical Device and the Root Hub. So, even if you
enable Legacy Support on your computer, it doesn't necessarily mean
the computer will do exactly what you want or expect it to do.

Also, FYI, you usually enable Legacy Support by getting into the
BIOS/CMOS settings as the computer is first turning on (usually, by
pressing some special key or combination of keys on the keyboard).
This poses an interesting situation. If the only kind of keyboard
you have is a USB keyboard, and Legacy Support is turned off in the
BIOS, it is impossible for you to get into the BIOS to enable the
Keyboard. Likewise, if you use the USB Keyboard to disable USB
Legacy Support in the BIOS, the next time you try to get into the
BIOS to change something, you won't be able to because your USB
Keyboard won't work.

In my opinion, all computers SHOULD have a PS2 keyboard port, and you
should ALWAYS have a regular PS2 keyboard lying around somewhere that
you can use. If you don't, you may find yourself in a situation where
it is impossible to boot the computer, because you need a "real"
keyboard to be able the turn on the USB keyboard. Consider yourself
warned -- USB is not the panacea it's advertised to be.

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 5 of 12, by Xenphor

User metadata
Rank Member
Rank
Member
Falcosoft wrote on 2021-02-25, 06:21:

If you have no PS/2 port on your motherboard you can also try real USB driver for DOS. Of course first you should disable PS/2 (usually called legacy mouse support) emulation in your BIOS. Be aware the such USB DOS drivers occupy a lot of memory and are not compatible with all USB controllers:
http://bretjohnson.us/

Okay I looked at that and I'm thinking my motherboard (Asrock 775i65g) would not be supported since it uses an ICH5 southbridge which doesn't have any USB 1.x ports and is a controller hub?

Reply 6 of 12, by darry

User metadata
Rank l33t++
Rank
l33t++
Xenphor wrote on 2021-02-25, 16:11:
Falcosoft wrote on 2021-02-25, 06:21:

If you have no PS/2 port on your motherboard you can also try real USB driver for DOS. Of course first you should disable PS/2 (usually called legacy mouse support) emulation in your BIOS. Be aware the such USB DOS drivers occupy a lot of memory and are not compatible with all USB controllers:
http://bretjohnson.us/

Okay I looked at that and I'm thinking my motherboard (Asrock 775i65g) would not be supported since it uses an ICH5 southbridge which doesn't have any USB 1.x ports and is a controller hub?

It should work, AFAICT .

Some people are confused when I say that it only supports UHCI controllers, and assume this won't work for them because they have an EHCI controller. If your computer was made before the end of 2009, and your computer has an EHCI (USB 2.0 / high-speed) controller, you are also GUARANTEED to have a USB 1.x (low-speed / full-speed) controller, which will be UHCI (if it is made by Intel or Via) or OHCI (if it is made by anybody except Intel or Via).

Reply 7 of 12, by Xenphor

User metadata
Rank Member
Rank
Member

Okay, I was able to get USBUHCI and USBMOUSE loaded (but only using conventional memory, not using an EMM386 configuration so I don't have sound working) however the same problem still occurs with the mouse snapping back to its original position. I didn't see any option in the BIOS to disable PS/2 emulation so I guess it's still using that?

Reply 8 of 12, by darry

User metadata
Rank l33t++
Rank
l33t++
Xenphor wrote on 2021-02-26, 01:41:

Okay, I was able to get USBUHCI and USBMOUSE loaded (but only using conventional memory, not using an EMM386 configuration so I don't have sound working) however the same problem still occurs with the mouse snapping back to its original position. I didn't see any option in the BIOS to disable PS/2 emulation so I guess it's still using that?

AFAIK, USBUHCI and USBMOUSE override the BIOS PS/2 emulation, at least the keyboard equivalent overrides my BIOS' USB keyboard emulation functionality. Are you getting any errors while loading USBUHCI and/or USBMOUSE ?

Also, I presume that you are not loading any mouse driver prior to running USBUHCI and USBMOUSE .

If all else fails, you are lucky enough to have a PS/2 mouse port on your motherboard, so a PS/2 mouse remains an option .

Reply 9 of 12, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Falcosoft wrote on 2021-02-25, 08:55:
Sorry to say but you have some misconceptions: The most important one is that USB mice emulate PS/2 some way. The truth is USB m […]
Show full quote

Sorry to say but you have some misconceptions: The most important one is that USB mice emulate PS/2 some way. The truth is USB mice NEVER 'emulate' PS/2. Your motherboard's BIOS has to emulates PS/2 for USB mice that do not implement PS/2 protocol natively. So in your list problem 1. is strictly motherboard/BIOS related and 4. has nothing to do with 'emulation' since those USB mice that can be used with a passive adapter implements PS/2 protocol natively (so no emulation is needed at all).
Of course there can be different level of incompatibilities between different USB mice and BIOS implementations but it still does not mean that USB mice 'emulate' PS/2 differently.
You can find more info about USB mouse, PS/2 emulation etc. in the readme file of Bret Johnson 's USB drivers for DOS:

What "USB Legacy Support" means in a general sense is the ability to access and use a USB Keyboard, Mouse, or Disk Drive […]
Show full quote

What "USB Legacy Support" means in a general sense is the ability to
access and use a USB Keyboard, Mouse, or Disk Drive when the computer
first turns on, before the part where the computer even decides which
Operating System to load. This also "spills over" into the ability
to use certain Device/Interfaces (Keyboards, Mice, and Disk Drives)
in Operating Systems that pre-date USB (e.g., DOS and older versions
of Windows), though that is not its true intended purpose.

Note, however, that "Legacy Support" means different things on
different computers. On some computers, it means all three
Device/Interfaces can be used (Keyboards, Mice, and Disk Drives). On
others, it may mean just one or two of them, but not necessarily all
three. On some computers, it means "plug-and-play", and on others it
means all of the Legacy Physical Devices you intend to use must be
plugged in when the computer is first turned on. On some computers,
the Legacy Physical Devices must be attached directly to a Root Hub
(or a specific port on a specific Root Hub if you have more than
one), and on other computers you can have some "regular" USB Hubs
between the Legacy Physical Device and the Root Hub. So, even if you
enable Legacy Support on your computer, it doesn't necessarily mean
the computer will do exactly what you want or expect it to do.

Also, FYI, you usually enable Legacy Support by getting into the
BIOS/CMOS settings as the computer is first turning on (usually, by
pressing some special key or combination of keys on the keyboard).
This poses an interesting situation. If the only kind of keyboard
you have is a USB keyboard, and Legacy Support is turned off in the
BIOS, it is impossible for you to get into the BIOS to enable the
Keyboard. Likewise, if you use the USB Keyboard to disable USB
Legacy Support in the BIOS, the next time you try to get into the
BIOS to change something, you won't be able to because your USB
Keyboard won't work.

In my opinion, all computers SHOULD have a PS2 keyboard port, and you
should ALWAYS have a regular PS2 keyboard lying around somewhere that
you can use. If you don't, you may find yourself in a situation where
it is impossible to boot the computer, because you need a "real"
keyboard to be able the turn on the USB keyboard. Consider yourself
warned -- USB is not the panacea it's advertised to be.

I still think the USB mouse needs to be able to understand PS/2 protocol somehow. The Legacy USB Support option appears to mimic what a passive USB/PS-2 adapter would do, as the behavior I observed on a same USB mouse is consistent, when I plug it directly to the USB port (with Legacy USB Support enabled) or when I plug it to the PS/2 port through a passive adapter.

It's just that some motherboard's Legacy USB Support may not be good, but that's a different problem. Either it supports only keyboards, or that it's not optimal. I recall having a board that, during games, when I use the USB keyboard to do controls, the music slows down.

Last edited by LSS10999 on 2021-02-26, 09:02. Edited 1 time in total.

Reply 10 of 12, by Falcosoft

User metadata
Rank Oldbie
Rank
Oldbie
LSS10999 wrote on 2021-02-26, 07:00:

I still think the USB mouse needs to be able to understand PS/2 protocol somehow. The Legacy USB Support option appears to mimic what a passive USB/PS-2 adapter would do, as the behavior I observed on a same USB mouse is consistent, when I plug it directly to the USB port or when I plug it to the PS/2 port through a passive adapter...

Hi,
this is not the case. You can do a simple test to confirm/refute my claims. Look for a PC that has explicit 'lagacy USB mouse option' in BIOS.
Disable this option. Then your USB mouse with native USB connection should simply stop working in DOS. Then connect a passive adapter to an USB mouse that is known to work with a passive adapter. Power off the PC and connect the USB mouse with adapter to the PS/2 mouse port. Then start the PC. The mouse should work in DOS even with disabled legacy support in BIOS since mice that works with passive adapters have dual protocol support so they are native PS/2 mice (except the connector).

Website, Facebook, Youtube
Falcosoft Soundfont Midi Player + Munt VSTi + BassMidi VSTi
VST Midi Driver Midi Mapper

Reply 11 of 12, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Falcosoft wrote on 2021-02-26, 07:56:
Hi, this is not the case. You can do a simple test to confirm/refute my claims. Look for a PC that has explicit 'lagacy USB mous […]
Show full quote
LSS10999 wrote on 2021-02-26, 07:00:

I still think the USB mouse needs to be able to understand PS/2 protocol somehow. The Legacy USB Support option appears to mimic what a passive USB/PS-2 adapter would do, as the behavior I observed on a same USB mouse is consistent, when I plug it directly to the USB port or when I plug it to the PS/2 port through a passive adapter...

Hi,
this is not the case. You can do a simple test to confirm/refute my claims. Look for a PC that has explicit 'lagacy USB mouse option' in BIOS.
Disable this option. Then your USB mouse with native USB connection should simply stop working in DOS. Then connect a passive adapter to an USB mouse that is known to work with a passive adapter. Power off the PC and connect the USB mouse with adapter to the PS/2 mouse port. Then start the PC. The mouse should work in DOS even with disabled legacy support in BIOS since mice that works with passive adapters have dual protocol support so they are native PS/2 mice (except the connector).

Yeah that's true. If you disable "Legacy USB mouse support" then it'll stop working, but will still work if you connect it via PS/2 through an adapter.

What I actually wanted to say is that if a mouse doesn't work correctly with a passive USB-PS/2 adapter then it wouldn't work with Legacy USB support, either. The behavior appears consistent.

So I've used the wrong words. Thanks for explanation.

Reply 12 of 12, by Xenphor

User metadata
Rank Member
Rank
Member
darry wrote on 2021-02-26, 03:32:

AFAIK, USBUHCI and USBMOUSE override the BIOS PS/2 emulation, at least the keyboard equivalent overrides my BIOS' USB keyboard emulation functionality. Are you getting any errors while loading USBUHCI and/or USBMOUSE ?

Also, I presume that you are not loading any mouse driver prior to running USBUHCI and USBMOUSE .

If all else fails, you are lucky enough to have a PS/2 mouse port on your motherboard, so a PS/2 mouse remains an option .

I didn't get any errors when loading either of them. I loaded them before CTMOUSE at first but tried doing it the other way and it didn't make a difference. The motherboard has a ps/2 mouse port on it so I guess I may have to use it. Either that or swap the YMF744 for a Sound Blaster Live with the PCI sound patch in win9x.