The NEW Build Your Own Arcade Controls

Software Support => PowerMAME => Topic started by: orbian on March 12, 2006, 01:08:10 pm

Title: Can't get 49-Way Joystick to work with PowerMame32
Post by: orbian on March 12, 2006, 01:08:10 pm
Hi, I'm trying to use a Happ 49-Way joystick and GPWiz49 with PowerMame32. I saw that PowerMame could automatically switch the GPWiz49 when a game is loaded. The problem is that I can't get it to switch. I can manually switch it using the GPWiz buttons or the GPWiz software but PowerMame never sets it it anything other than 8-way. I tried manually picking the mode from the input settings panel when Sinistar is running but that never changed anything. Even if I set it to 2-way int he input settings panel it would always stay in 8-way mode. I looked at the source code and it appears that the code to set the GPWizw49 mode never gets called.

I looked at the function menu_game_input() which appears to be the one that sets the joystick mode when using the input settings panel. The problem is when I pick a Joystick mode and then exit the panel it returns before it gets to the part that perform the PowerMAME_update_49way_DRS() function which I believe is the function that actually sends the commands to the GPWiz49. I moved that function call to where the menu_game_input() function is exiting and now I can set the joystick mode manually when I bring up the input settings.

I still can't get it to automatically select a joystick mode based on the joystick mappings though. I've tried setting everything mentioned in the PowerMame documentation but still now luck. Is this a bug or am I missing something?

Thanks
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: Farmboy90 on March 12, 2006, 02:10:13 pm
post your powermame.ini file.
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: orbian on March 12, 2006, 02:24:58 pm
Here's the ini file

### global-only options ###

rompath roms
samplepath samples
inipath ini
cfg_directory cfg
nvram_directory nvram
memcard_directory memcard
input_directory inp
hiscore_directory hi
state_directory sta
artwork_directory artwork
snapshot_directory snap
diff_directory diff
cheat_file cheat.dat
ctrlr_directory ctrlr

### default game options ###

autoframeskip 0
frameskip 0
waitvsync 0
triplebuffer 1
window 0
ddraw 1
hwstretch 1
resolution auto
refresh 0
scanlines 0
switchres 0
switchbpp 0
maximize 1
keepaspect 1
matchrefresh 0
syncrefresh 0
throttle 1
full_screen_brightness 1.
frames_to_run 0
effect none
screen_aspect 4:3
cleanstretch auto
zoom 2
d3d 0
d3dtexmanage 1
d3dfilter 1
d3deffect auto
d3dprescale auto
d3deffectrotate 1
d3dscan 100
d3dfeedback 100
mouse 0
joystick 1
a2d 0.3
steadykey 0
lightgun 0
dual_lightgun 0
offscreen_reload 0
digital j0a0a1
brightness 1.
pause_brightness 0.65
norotate 0
ror 0
rol 0
autoror 0
autorol 0
flipx 0
flipy 0
gamma 1.
antialias 1
translucency 1
beam 1.
flicker 0.
intensity 1.5
samplerate 44100
samples 1
sound 1
volume 0
audio_latency 1
artwork 1
backdrop 1
overlay 1
bezel 1
artwork_crop 0
artres 0
cheat 0
debug 0
log 0
sleep 0
rdtsc 0
leds 0
led_mode ps/2
high_priority 0
skip_gameinfo 0
bios 0
autosave 0
pause_message " "
ledwiz_timeout 60
ledwiz_attract 1
ledwiz_events 1
ledwiz_controls 1
gpwiz49 1
gpwiz49stick happ_midway


This is the Sinistar.cfg

<?xml version="1.0"?>
<!-- This file is autogenerated; comments and unknown tags will be stripped -->
<mameconfig version="10">
    <system name="sinistar">
        <input>
            <port type="P1_AD_STICK_X" mask="255" index="17" defvalue="56">
                <newseq type="standard">
                    JOYCODE_1_ANALOG_X
                </newseq>
                <newseq type="decrement">
                    NONE
                </newseq>
                <newseq type="increment">
                    NONE
                </newseq>
            </port>
            <port type="P1_AD_STICK_Y" mask="255" index="19" defvalue="56">
                <newseq type="standard">
                    JOYCODE_1_ANALOG_Y
                </newseq>
                <newseq type="decrement">
                    NONE
                </newseq>
                <newseq type="increment">
                    NONE
                </newseq>
            </port>
            <drs mode="PROGRESSIVE49" index="0" />
        </input>
    </system>
</mameconfig>



Thanks,
Orbian
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: MikeQ on March 12, 2006, 10:40:51 pm
Hi, I'm trying to use a Happ 49-Way joystick and GPWiz49 with PowerMame32. I saw that PowerMame could automatically switch the GPWiz49 when a game is loaded. The problem is that I can't get it to switch. I can manually switch it using the GPWiz buttons or the GPWiz software but PowerMame never sets it it anything other than 8-way. I tried manually picking the mode from the input settings panel when Sinistar is running but that never changed anything. Even if I set it to 2-way int he input settings panel it would always stay in 8-way mode. I looked at the source code and it appears that the code to set the GPWizw49 mode never gets called.

I looked at the function menu_game_input() which appears to be the one that sets the joystick mode when using the input settings panel. The problem is when I pick a Joystick mode and then exit the panel it returns before it gets to the part that perform the PowerMAME_update_49way_DRS() function which I believe is the function that actually sends the commands to the GPWiz49. I moved that function call to where the menu_game_input() function is exiting and now I can set the joystick mode manually when I bring up the input settings.

I still can't get it to automatically select a joystick mode based on the joystick mappings though. I've tried setting everything mentioned in the PowerMame documentation but still now luck. Is this a bug or am I missing something?

Thanks


What your saying doesn't make sense since your config file shows it is choosing 49way DRS and not 8 way as you stated.

            </newseq>
            </port>
            <drs mode="PROGRESSIVE49" index="0" />
        </input>
    </system>

How are you exiting the menu so I can try to reproduce the problem?  I have the same setup, 2 happs 49's with gpwiz49.
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: orbian on March 13, 2006, 12:32:34 am
It shows 49-way because that is what I selected but that mode would never get sent to the GPWiz49. The problem is that it would show 49-way in the settings but in game it would be 8-way. If I understand the code correctly it sets the joysticks to 8-way mode on the way in to the menu and then it's supposed to set it to whatever mode is selected in the menu upon exit. I would exit the menu by either hitting ESC or using the "return" item at the bottom of the menu. I found that when I exited the menu this portion of the code would always test true and therefore exit the function before setting anything to do with the GPWiz49:

if (ui_menu_generic_keys(&selected, menu_items))
   return selected;

I changed it to:
      if (ui_menu_generic_keys(&selected, menu_items))
      {
         PowerMAME_update_49way_DRS();
         inited_drs = 0;

         return selected;
      }


Now it sends the command to the controller to change modes and I can get it to got to 49-way (or any other mode I pick).


Thanks,
Bob
       
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: MikeQ on March 13, 2006, 01:01:50 am
Okay, I misunderstood.  I though PowerMAME was selecting 8 way as the auto-drs mode.

Strange, I'm not sure when this got broken.  It worked at one time.  I moved some of this code around at one point.   Perhaps it broken then.  I didn't get any beta tester volunteers with this release so not much testing got done.

I'm planning to do a 104.3.0 shortly so a fix will be out this week probably.
Title: Re: Can't get 49-Way Joystick to work with PowerMame32
Post by: orbian on March 13, 2006, 09:33:52 am
I can help you with testing if you need it. I have a GPWiz49 (two of them) and an LEDWiz as well.

Bob