Jump to content
LaunchBox Community Forums

Apple IIGS emulation with Mame - Curser/Joystick moves automatically


SiriusVI

Recommended Posts

Hey everyone,

I've got a little bit of a niche issue. I've been trying to get various computer systems working with retroarch's mame core with great success. I usually get the systems launching and manage to get ingame.

However, I have an issue with Apple IIGS games that use a joystick (Many AppleIIGS games also seem to have mouse support, which works fine using a regular hardware mouseof mapping the mouse to my XBOX controller)

So here is what I do and what happnes:
1. I launch an ApplyIIGS game with controller support. I'm using the game "Gauntlet" as an example: As soon as I have control of the game curser, the curser moves to one of the border sof my screen. Since I haven't activated the joystick slot within mame yet, I cannot control anything. However, I can use the arrow buttons on my keyboard to control the curser of the game, however, as soon as I let go of the buttons, the curser moves back to the edge of the screen.

2. I hit TAB and go to the mame options --> Here I insert a "joystick" plugin in one of the slots.

3. I reset the mame machine -->The game launches and has the joystick activated: Now I can use my controller to control the game curser, but as soon as I let go, thecurser moves to the side again.


Here's what I've tried and didn't work:

1. I've tried increasing the controller deadzone within retroarch. This helped me with a similar problem when I tried to emulate philips CDi games. But in tis case, it doesn't work at all.It seems like controller deadzone isn't the issue (one more piece of evidence is that even with no controller activated, the curser still moves to the side)

2. I've tried to open the apple2gs.ini in retroatch/system/mame/ini. I found a "deadzone" line for joysticks, but it does nothing unfortunately.


So maybe there is someone who has managed to emulated appleIIgs games with mame (or mame core in retroarch) and can help me out here.

Link to comment
Share on other sites

Are you testing with more than Gauntlet for the IIGS? 

I can reproduce that issue using standalone MAME with Gauntlet, but other games seem to be fine.   

Edit: I ran a joystick test program within the MAME using both an analog joystick and the XBOX 360 analog controller, and values are read properly and consistently with a stick center analog value of 128 with no or little to no drift. So I don't think the issue is a dead zone problem but appears more specific to Gauntlet itself with MAME. (This is using -gameio joy slot option)

Edit 2: Tried the same Gauntlet image using GSport emulator and no joystick drift.

Edited by Headrush69
Link to comment
Share on other sites

On 3/3/2020 at 11:59 PM, Headrush69 said:

Are you testing with more than Gauntlet for the IIGS? 

I can reproduce that issue using standalone MAME with Gauntlet, but other games seem to be fine.   

Edit: I ran a joystick test program within the MAME using both an analog joystick and the XBOX 360 analog controller, and values are read properly and consistently with a stick center analog value of 128 with no or little to no drift. So I don't think the issue is a dead zone problem but appears more specific to Gauntlet itself with MAME. (This is using -gameio joy slot option)

Edit 2: Tried the same Gauntlet image using GSport emulator and no joystick drift.

Hey, thank you so much for answering.

Yes there are othergames with the same issue, e.g.:
- The Last Ninja
- Aaargh!

and some more which I don't remember.

As stated above, I also don't think it's a controller deadzone issue. I've also been using the -gameio joy slot option. There is also a Paddle option, but it doesn't work with these games.

The info in your last edit is very interesting. Is there any way to find out why MAME has problems with the gameio joy slot?

Link to comment
Share on other sites

2 minutes ago, SiriusVI said:

The info in your last edit is very interesting. Is there any way to find out why MAME has problems with the gameio joy slot?

I'm trying to understand everything before posting about the issue on MAME Testers site.

Maybe you can verify something else I see. When using -gameio joy and going into Configure Inputs (This game), in the gameio section, the button labels are off. For example player one buttons are labelled P2 B1, P2 B2, for player two they are labelled P3 B1, P3 B2, etc. What I find interesting is I would assume the code for this port is the same when using the apple2ee machine, but it displays correctly there. 

Link to comment
Share on other sites

3 minutes ago, Headrush69 said:

I'm trying to understand everything before posting about the issue on MAME Testers site.

Maybe you can verify something else I see. When using -gameio joy and going into Configure Inputs (This game), in the gameio section, the button labels are off. For example player one buttons are labelled P2 B1, P2 B2, for player two they are labelled P3 B1, P3 B2, etc. What I find interesting is I would assume the code for this port is the same when using the apple2ee machine, but it displays correctly there. 

Yes, I can confirm the strange button labels. There aren't any P1 buttons apparently.

I can also confirm that apple2e works excellenty with -gameio joy.

Edited by SiriusVI
Link to comment
Share on other sites

  • 2 weeks later...

Sort of got pushed to the back burner do to other issues, but I haven’t forgotten.

You can check out the Mame tester web site and see if anyone else has noticed yet. I will post the issue eventually if no one else has.

Edit: Do you know any other games that show the problem? I'm trying to narrow down where the issue is before submitting a bug report, but so far my testing the results are very inconsistent. 

Edit2: I'm not 100% convinced this is a MAME joystick issue. I was able to get the same issue under specific situations with Kegs32 and GSplus emulators as well. All GS joystick test programs I tried showed analog controls being reported properly. Additionally, the latest MAME versions show real time output when configuring analog controls and they report correct outputs as well, The interesting thing is in Gauntlet, after character selection, there is no joystick drift in game. I tried to find a video of this being played on a real GS for comparison but was unsuccessful. Might fire up Sweet16 (a great GS emu on older OS X versions) to see how it runs there.

Edited by Headrush69
  • Like 1
Link to comment
Share on other sites

  • 10 months later...

Hi all, sorry to resurrect a dying post, but I’ve got the same issue and I haven’t found a solution yet. I’m looking at an Apple II game Captain Goodnight, that I’ve currently got set up in the Apple IIGS emulator (ostensibly for simplicity sake), the character immediately starts running to the right as soon as the game activates. The controls work otherwise, but as soon as you let go it pegs to the right. I’ve updated to the latest MAME and done some experimenting with the gizmo and joyport settings for gameio, but so far it seems the same. 

Link to comment
Share on other sites

  • 3 months later...

This is a very old problem with the original GS hardware.  It has to do with whether or not you were using the internal or external joyport and the speed that the GS runs at.  Essentially, the problem is that some software polls the joyport too quickly and reports half the values.  The fix in the old days was to calibrate the pots on your analog joystick to center at around 66, and then everything would work normally.

I added a hack to KEGS years ago to allow users to change the offset via configuration, since no one has joysticks with potentiometers, anymore.

Anyway, MAME is doing the correct thing, here; the bugs are in the original software.  You can work around it with KEGS/GSplus by changing the Trim X/Y settings in the joystick setting to -66.  Not sure if there is an equivalent fix in MAME, but you'd only want to do it for certain titles.

  • Like 1
Link to comment
Share on other sites

15 hours ago, Torquemurder said:

This is a very old problem with the original GS hardware.  It has to do with whether or not you were using the internal or external joyport and the speed that the GS runs at.  Essentially, the problem is that some software polls the joyport too quickly and reports half the values.  The fix in the old days was to calibrate the pots on your analog joystick to center at around 66, and then everything would work normally.

I added a hack to KEGS years ago to allow users to change the offset via configuration, since no one has joysticks with potentiometers, anymore.

Anyway, MAME is doing the correct thing, here; the bugs are in the original software.  You can work around it with KEGS/GSplus by changing the Trim X/Y settings in the joystick setting to -66.  Not sure if there is an equivalent fix in MAME, but you'd only want to do it for certain titles.

That's great to know. So if this is the case, we might be able to change analog stick settings in retroarch for specific appleIIGS games that need them. Will have to test that =).

Thank you!

EDIT: scratch that, I just read in my original post that I'd already tried that.

Edited by SiriusVI
Link to comment
Share on other sites

  • 1 month later...

Update: Seems MAME 0,233 has apple2gs joystick updates.

I tested Gauntlet with it and I am able to play with it.

The game start screen still has a tendency to pull to the bottom right corner when the joystick is centered, but you can move around the screen and in game it works fine.

Link to comment
Share on other sites

When I start launchbox with controllers enabled in launchbox my cursor moves to the top right of the screen. As soon as I change my focus to another app such as clicking on the taskbar I get it back but as soon as I click inside launchbox the cursor moves back again. Disable game controllers and back to normal. Question is do I have to have game controllers enabled in launchbox to configure use my wireless logitech gamepad 710 in launchbox.

Regardless of the answer I would upgrade to bigbox if i can get this fixed but I have seen others report the same issue and their system settings are blamed with no fix that I can find yet.

Link to comment
Share on other sites

  • 2 weeks later...

I think I am having similar issue using the applee mame driver, joy driver in the gameio slot with an xbox360 controller and boulderdash II.

I can play the game but when going to the right or down the movement is slow and jerky vs to the left and up it moves quickly.  The game is unplayable in this configuration.

The game runs fine when using apple//WIN emulator.

 

I am assuming it has to do with this "drift" issue.

 

Any thoughts?

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...