Jump to content

All my products and services are free. All my costs are met by donations I receive from my users. If you enjoy using any of my products, please donate to support me. Thank you for your support. Tom Speirs

Patreon

Oqqalz UltraStik Plugin


headkaze

Recommended Posts

ok, well... after getting frustrated with my mis-matched LEDwiz lighting and bowling/golden tee.... and then finally trying outrun turbo and seeing that the U360 could be used as an analog pedal substitute (Y=gas, X=brake)....but that it was instead being used as a mouse...

i broke down and wrote a wrapper

first i tried AHK.... (for the first time).. for some reason replacing setcontrols.exe with a AHK compiled EXE caused GameEx to hang.....everything seemed normal in the command line.

here is the AHK script if anyone wants to fix it ;)

ifEqual 1, mouse
{
;MsgBox intercepting mouse and substituting analog
Run C:\Progra~1\GameEx\plugins\SetControls_real analog
}
else
{
;MsgBox setting %1%
run C:\Progra~1\GameEx\plugins\SetControls_real %1%
}

although that did not work,

i did end up with a working solution.

i wrote a .BAT:

@echo off

if %1 == mouse goto mouse
goto passthru

:mouse
C:\PROGRA~1\GAMEEX\PLUGINS\setCtl analog
REM echo\\ >> c:\temp\setctl.log
REM echo analog >> c:\temp\setctl.log
goto endprog

:passthru
C:\PROGRA~1\GAMEEX\PLUGINS\setCtl %1
REM echo\\ >> c:\temp\setctl.log
REM echo %1 >> c:\temp\setctl.log

:endprog

and used the old DOS BAT2EXEC to compile it into a .COM.. and rename it to SETCONTROLS.EXE ... works great.

bat2exec had to be run in COMMAND.EXE so as to invoke WinXP NTVDM ... so that is required in order to build it ... i dont know whether or not this .EXE will still work in a OS without NTVDM (i.e. Vista64) ....

attached is the final EXE ...

1) drop it into the C:\Program Files\GameEx\Plugins folder as SetControls.exe

2) rename your old EXE to SetCtl.exe

also attached is the BAT2EXEC program ... in case your gameex is in a different path you will need to rebuild the executable. .. you can do it like this

1) save the .BAT code from above as SETCON.BAT.... take that and BAT2EXEC.COM .. put them in your gameex "PLUGINS" folder

2) edit the .BAT to reflect your new GameEx path... use the 8.3 naming format (you can see what it is by doing DIR /X and/or using COMMAND.COM)

3) start -> run -> "command" (not cmd)

4) "CD" to your gameex plugins folder

5) type :

bat2exec setcon.bat
ren setcontrols.exe setctl.exe
ren setcon.com setcontrols.exe

6) give it a try.

U360_GameEx_Mouse_to_Analog_Interceptor.zip

Link to comment
Share on other sites

ok, well... after getting frustrated with my mis-matched LEDwiz lighting and bowling/golden tee....

Is that anything to do with my plugin? You should be able to have custom lighting for bowling or golden tee. Not sure if that is the issue here.

Link to comment
Share on other sites

Is that anything to do with my plugin? You should be able to have custom lighting for bowling or golden tee. Not sure if that is the issue here.

not really.

the ultimarc 'mouse' profile is a little funky:

button 1 = left mouse

button 2 = middle mouse

button 3 = right mouse

and mame says

left mouse = button 1

right mouse = button 2

so, you end up with button 1 & 2 lit... but 1 & 3 active.

your lighting the right buttons...its just the U360 changes them in mouse profile.

the wrapper i posted fixes it. the 'analog' profile seems more useful than 'mouse' in any mame game i can find ... as long as you have a cp w/ trackball/spinner

Link to comment
Share on other sites

not really.

the ultimarc 'mouse' profile is a little funky:

button 1 = left mouse

button 2 = middle mouse

button 3 = right mouse

and mame says

left mouse = button 1

right mouse = button 2

so, you end up with button 1 & 2 lit... but 1 & 3 active.

your lighting the right buttons...its just the U360 changes them in mouse profile.

the wrapper i posted fixes it. the 'analog' profile seems more useful than 'mouse' in any mame game i can find ... as long as you have a cp w/ trackball/spinner

My plugin allows you to have mouse codes assigned to controls, infact those string[] entries bug you posted were supposed to be those codes. I've fixed that now and will release a new version soon. Maybe that will fix this problem?

Also do you have mouse enabled in Mame.ini or through command line?

Link to comment
Share on other sites

My plugin allows you to have mouse codes assigned to controls, infact those string[] entries bug you posted were supposed to be those codes. I've fixed that now and will release a new version soon. Maybe that will fix this problem?

Also do you have mouse enabled in Mame.ini or through command line?

well, i dont have mouse button left/middle/right mapped to joy 1/2/3 on any/all sticks .. i would imagine if i did, i would get all 3 buttons lit since the U360 is acting as the mouse .. i would tend to say its worth disregarding this case either way .... since the U360 acting as a real windows mouse is just... weird. :) i'd rather it act as an analog stick and let mame worry about it...

Link to comment
Share on other sites

  • 1 month later...

I am having a problem with the ultrastick plugin.

I downloaded and unzipped the files to C:\programfiles\gameex\plugins\pluginultrastick

I then enabled the plugin with the pluginmanager

I did not make any changes to the config file

I double checked to make sure that gameex is pointed at mameinfo.dat

When I try to run gameex, I get a popup window saying that "setcontrols has encountered a problem, and needs to close. Blah...Blah....

I click on "view the contents of the error report" :

event type: clr20r3

p1: setcontrols.exe

p2: 1.0.0.0

p3: 45e4f070

p4: icsharpcode.usblib

p5: 1.0.0.3

p6: 45e4e2d4

p7: b

p8: 6

p9: system.dllnotfoundexception

when I click on "don't send report" Gameex starts, but the joystick doesn't work.

I am not a programmer, so if I need to do something, I need basic step by step instructions

I have enclosed a copy of the gameex log.

I was running Cupid's plugin before, I like the idea of not having to run ultramap, It would also be nice not to have to run Winipac, then I could just put gameex in my startup folder and go. Does anybody know how to do this?

Thanks!

Edit:

I downloaded the latest ultramap version, and I no longer get an error.

The bad news (for me) is that the joystick no longer works at all.

I uninstalled and reinstalled the joystick in the device manager, didn't help.

I was trying to update this earlier, and saw that you were reading this post Oqqalz, but my connection was dropped and I couldn't get back online. I hope I haven't wasted your time.

I think I will shoot a message off to Andy.

Edit:

I downloaded the latest firmware to the joystick, uninstalled, and reinstalled in device manager, and the joystick works again!

The only problem now is Qbert, and I see above that you are working on that.

I hope this helps others who are as "slow" as I am!

log.txt

Link to comment
Share on other sites

  • 2 weeks later...

alexdog69's SetControls.exe seems to fix my problem too. Anytime a trackball game was selected the mouse map was sent to my u360s. When this happens, the buttons I have as inputs to the u360 wouldnt work (buttons 3-8) which include my P1 coin and P1 start. His wrapper sends the analog map instaed of the mouse map. The analog map uses all the button inputs.

Thanks

Mark

Link to comment
Share on other sites

  • 2 months later...
You can setup different joystick mapping for each individual bat file using the PlugInUltraStik.ini file.

I am not sure what emulator you are using, but for instance, let's say it's DOSBOX and you have configured a GameEx emulator group for DOSBOX, set it's Title Text to DosBox, also set it to search for .BAT files within some directory.

Lets also say you have the following .BAT files within that directory:

Leisure Suit Larry.bat

Quake 3.bat

Star Wars Alliance.bat

Now, within your PlugInUltraStik.ini you could add the following:

[DosBox]

default=analog

Quake=mouse

Leisure Suit Larry=joy8way

Quake would get a mouse. Leisure Suit Larry would get an 8-way joystick. Lastly, Star Wars Alliance would get an analog stick because there was nothing explicitly set for it and the default for DosBox is analog.

Hope this answers your question.

PS. Please note, I found some bugs in the initial release and updated the original post.

I'm using the "External Applications" section of GameEx for a few extra PC games I'm interested in (Geometry Wars, woo!), but I'm not sure how to go about putting information about these games in the ini file.

Come to think of it, Geometry Wars needs analog for joy1 and mouse for joy2. Is this possible with this plugin?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...