Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upstream joystick handling, fixes some broken games #68

Merged
merged 10 commits into from Dec 21, 2020

Conversation

bbbradsmith
Copy link
Contributor

@bbbradsmith bbbradsmith commented Oct 28, 2020

Some games were not working the with joystick. The problem seemed to be that we had used IKBD_GetJoystickData to insert our joystick data, instead of further upstream at Joy_GetStickData, which has some other ways to be called besides just in that IKBD function. Games that used an alternate method were thus failing to get joystick readings.

This should fix issue #50 and I tested it with Altered Beast, Alien Syndrome and Time Bandit, which all previously didn't work.

While doing this, I also removed the joystick button mapping to select number of joysticks, which was never implemented properly and doesn't actually map to any Hatari setting properly as far as I can tell? Instead I turned 1 or 2 joysticks into a libretro option that enables/disables the second joystick through Hatari's config. It seems to be a good default to leave it on, since it does not appear to cause conflicts with the mouse normally, but with the option it can be turned off (and with per-game override) if the need arises.

Also saw a request for a space bar to controller mapping #46 which I put on R3. (Since start was freed up, I moved the Hatari GUI there, where it might be more intuitive, and put the virtual keyboard on X where it might be easier to find. Removed redundant tilde for GUI which conflicted with a key in use.)

Added start in GUI to exit from GUI so it works both ways now. (This also allows savestate restore to leave the GUI now.)

Added options to disable mouse/keyboard input in case they conflict with hotkeys or other things and you'd like to do input only from the gamepad.

(Also includes pull #67 which is just a minor update to the internal savestate.)

…etJoystickData which isn't how some games get their joystick data
…acts with Hatari much better and can per-game override

input changes: hatari GUI now on "start", virtual keyboard now on "Y", stats/key-page now on L/R and mouse-speed on L2/R2
@bbbradsmith
Copy link
Contributor Author

bbbradsmith commented Nov 21, 2020

I've been testing this for several weeks now, and I got some positive testing confirmation from two other users here: #50 (comment)

@inactive123
Copy link
Contributor

My bad for noticing this so late. Here you go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants