VOGONS


First post, by crash.

User metadata
Rank Member
Rank
Member

Hi,
I have a Logitech Wingman Warrior joystick that has an accompanying spinner. The joystick connects via gameport, while the spinner connects via RS232 serial port. I attached the spinner to a RS232 Serial to USB adapter and connected it to a Windows 10 PC. If I open a serial port monitor, I can see there is activity when I turn the spinner, so it appears to be working. I'm putting the gameport adapter portion of the joystick controller aside until I can determine if the spinner can be used.

What is eluding me is how to get the COM port input to be recognized as a mouse axis. I thought that I might be able to manually install a serial mouse driver and tell it to listen to the associated COM port, but I haven't been able to figure out any way of doing that since things are assumed to be plug and play.

Can anyone suggest how to find or install a serial mouse driver for Windows 10?

Thanks

Reply 1 of 25, by Horun

User metadata
Rank l33t++
Rank
l33t++

Under Win7 thru 10 a serial mouse uses sermouse.sys where a usb mouse uses mouhid.sys and mouclass.sys iirc. Win10 has serial mouse support but serial devices are not commonly Plug n Play so generally not loaded or started.....
You may have to force the sermouse service kernel driver to start (using SC from command prompt) if it does not show in Device manager or in the SC list of drivers.
You can type: "sc query sermouse" (without quotes) in a CMD prompt window to see if it is running.
To force the sermouse.sys to start you use something like: "sc config sermouse start= demand". Then redo: "sc query sermouse" to see if it changed from stopped to started.
After that you may have to restart for it to talk to the serial mouse/device....
If all works out there should be a serial mouse shown in Device manager which you should be able to make some adjustments iirc.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 2 of 25, by crash.

User metadata
Rank Member
Rank
Member

I am not sure if this is normal, but in an elevated command window it says STOPPED even after entering the command:

C:\Windows\system32>sc query sermouse

SERVICE_NAME: sermouse
TYPE : 1 KERNEL_DRIVER
STATE : 1 STOPPED
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

C:\Windows\system32>sc config sermouse start= demand
[SC] ChangeServiceConfig SUCCESS

C:\Windows\system32>sc query sermouse

SERVICE_NAME: sermouse
TYPE : 1 KERNEL_DRIVER
STATE : 1 STOPPED
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

C:\Windows\system32>

There is still no serial mouse showing in the device manager.

Thanks!

Reply 3 of 25, by Horun

User metadata
Rank l33t++
Rank
l33t++

Hmm. Ok my bad. Was from MS and a forum that talked about serial mouse problems and how to fix them but it relied on having a genuine com port or with something like the Startech PEX2S553
Do you have a COM port in Device manager ? Do you have a genuine serial port ? Or are you trying to use a USB to Serial adapter ?
If the Serial port service is not running then sermouse will not work.
Check to see if Serial.sys or Serenum.sys is running (use the "sc query" on both)
If not you may need to try "sc start xxx.sys" to see if they can be started.
Here is info on Serial.sys and Serenum.sys: https://docs.microsoft.com/en-us/windows-hard … and-serenum-sys
Here you can look over the SC commands / options: https://docs.microsoft.com/en-us/windows-serv … mands/sc-config
I do know with Win 7 which uses same routines for Serial stuff as Win10, that if no serial port can be detected those kernel drivers will not start afaik.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 4 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,
I have read similar to what you recommended on some other sites, but assumed I was doing something wrong. I am using a USB to serial adapter and I think it is working since I can open up a COM port monitor and select the related COM port, where I can see activity when I turn the spinner. The USB-Serial adapter appears in the device manager as USB-Serial CH340 (COM4)

Here is what I get when I try to enter the recommended commands:

C:\Windows\system32>sc query serial.sys
[SC] EnumQueryServicesStatus:OpenService FAILED 1060:

The specified service does not exist as an installed service.

C:\Windows\system32>sc start serial.sys
[SC] StartService: OpenService FAILED 1060:

The specified service does not exist as an installed service.

C:\Windows\system32>sc start serenum.sys
[SC] StartService: OpenService FAILED 1060:

The specified service does not exist as an installed service.

Thanks!

Reply 5 of 25, by Horun

User metadata
Rank l33t++
Rank
l33t++

Ok my best guess is that the USB to Serial adapter is using the HID USB protocols and drivers which would not require Serial support and those Serial drivers expect a true 16550 compliant serial port. (just a guess the USB adapter is not).
Have you tried a regular serial mouse on that USB adapter to see if it works ? If you can get it to work then you should be able to get the Spinner to work proper.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 6 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,

I figured out a few things so far.
The command line does not seem to want to accept the extensions .sys, so these have to be omitted as such:

sc query sermouse

Also, I had to first open an elevated cmd prompt (as administrator) otherwise access was denied when attempting these commands.

I was able to enter the commands to start the drivers such as:

sc start serenum
sc start sermouse
sc start serial

Now they are running:

SERVICE_NAME: serenum
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

SERVICE_NAME: sermouse
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

SERVICE_NAME: serial
TYPE : 1 KERNEL_DRIVER
STATE : 4 RUNNING
(STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

Still, there is no device in the device manager that I can select to configure as the correct COM port.

I must be missing something basic.

Thanks

Reply 7 of 25, by Horun

User metadata
Rank l33t++
Rank
l33t++

Yes I mis-typed using "sc start xxx.sys", figured you would know what I meant or figure it out.
Good to know you can start those. Are you sure the Warrior Spinner works proper ? Have you connected it to an older board and checked it ?
As a test of your USB-Serial adapter you could hook up a true serial mouse and see if it works.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 8 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,

I was reading a twitter thread which may indicate my understanding of how a serial mouse works was in error. I was thinking that what I had to do was tell windows there was a serial mouse at a given COM port, and that it would use that port data to move the mouse. According to what I read, windows or DOS may still need to recognize the mouse in some way, so that may be why this problem is eluding me. The Wingman Warrior is not responding to the check and saying "I'm a mouse", and I haven't found a way to force Windows to install a serial mouse device so I could configure it to watch a COM port.

https://twitter.com/foone/status/1288229922243088385?lang=en

I don't know that the Wingman Warrior is working other than having plugged it into a serial-USB adapter and running a serial port monitor, then watching that data is being sent through the COM port only when I turn the spinner in either direction.

I don't have a retro system capable of running the Wingman Warrior software available, nor a serial mouse.

I think if I had such a system, I could be playing on it currently 😀

Thanks

Reply 9 of 25, by rasz_pl

User metadata
Rank l33t
Rank
l33t

What makes you think a 'Logitech Wingman Warrior Spinner' is a mouse? Are you able to configure dos mouse driver and see it work with it?
looking at https://gfiber.googlesource.com/kernel/skids/ … stick/warrior.c its some logitech proprietary data format reporting whole joystick status

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 10 of 25, by crash.

User metadata
Rank Member
Rank
Member

The Wingman Warrior has two connectors, one is a DB15 gameport, one is a DB9 serial. I had read that the DB9 attaches as a mouse and functions as a mouse X-axis, but perhaps I misunderstood. I guess if it is proprietary, I won't be able to use this controller for anything.

Thanks

Reply 11 of 25, by rasz_pl

User metadata
Rank l33t
Rank
l33t

its logitech driver might emulate mouse to the system
What you can do is write your own driver for it based on the linux one

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 13 of 25, by rasz_pl

User metadata
Rank l33t
Rank
l33t

https://github.com/necroware/gameport-adapter has a chance of adding support for your joystick, you could contact necroware or open issue and ask if its possible

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 14 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,
I just ordered one of these adapters, but that is for the DB15 gameport connector. I'm not sure it can help with the DB9 serial connector on the controller. I don't have a manual, but assumed that both connectors on the joystick needed to be attached to the computer.

Reply 16 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,
What I meant was that I would like to be able to try using the necroware adapter for the gameport connector of the Wingman Warrior, but the spinner has it's own DB9 connector that will not fit the DM15 gameport plug and would have to be translated separately. It may be possible to build a Wingman Warrior DS9 to USB adapter using a second arduino, but this is such a unique need that I'm not sure anyone would take the time to do that.

I wanted to see if I could find a way to play Tempest 2000 with a spinner, without buying yet another controller. I have several controllers with spinners, but none that output mouse data. The Wingman Warrior spinner feels good so I was just hoping.

Thanks for everybody's help

Reply 17 of 25, by rasz_pl

User metadata
Rank l33t
Rank
l33t

You dont need second arduino, the one on necroware adapter surely has few IO ports left and would have no problem handling additional serial port.
reading Logitech WingMan Warrior Joystick ORIGINAL CD (for DOS driver) needed pls!! this joystick has
- 9-pin serial connector (for use in 3D digital controller mode)
- 15-pin joystick connector (for use in analog WingMan® Extreme compatible joystick mode)

so you dont even need gameport when working in digital mode, serial only will suffice.

https://github.com/necroware/gameport-adapter/issues/6 seems WingMan® Extreme is already supported?

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 18 of 25, by crash.

User metadata
Rank Member
Rank
Member

Hi,

One of the reasons that I ordered a necroware adapter is that WingMan and some of my other controllers were listed among those supported, so I am hoping to plug this one in and see what it does. I expected that only the joystick side of the controller would work through the adapter, and that the spinner would require the serial port to function. It is difficult for me since I don't know how the Wingman Warrior is installed, and I can't even find a video of someone plugging the thing in.

I have been trying to find a manual for this joystick, and just assumed that both connectors had to be plugged in. I guess I'll see what happens when the adapter gets here.

Thanks!