Joystick not working right in early Sierra games

thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 538 times
Been thanked: 252 times

Joystick not working right in early Sierra games

Unread post by thorr »

I am super excited that I modded my CH Products Mach III joystick with an Arduino and it works perfectly as a 3-button joystick. It works in some games like Descent perfectly. When I try to play King's Quest II or Space Quest II for examples, It says press Enter when the joystick is centered, but when I try to move, the movement is messed up. In King's Quest I (the original version) it doesn't work at all. Is there something I can do to make the joystick work in these games?

Thanks!

Edit: I got this working by turning off L1 and L2 cache and setting the speed to 56 MHz. Be sure to move the joystick and press the button while in DOS before launching the game so the joystick will be detected.

Also, I am using an Analog joystick. To set this up, I first set it up in the MiSTer main menu. I used it only at the Button A and B and Tilt questions, pressing spacebar for anything else. I set it up again in AO486 as a 2 button joystick with 2 joysticks. I told it the directions and A and B and skipped everything else. Also, the A and B buttons may be backwards. They were for me so I mapped them backwards.
mhartman
Posts: 96
Joined: Fri Jul 03, 2020 1:26 pm
Has thanked: 46 times
Been thanked: 20 times

Re: Joystick not working right in early Sierra games

Unread post by mhartman »

Did those games support joysticks? I played them with a keyboard back then b/c joysticks weren’t all that popular on the pc scene.
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 538 times
Been thanked: 252 times

Re: Joystick not working right in early Sierra games

Unread post by thorr »

mhartman wrote: Thu Dec 16, 2021 8:19 pm Did those games support joysticks? I played them with a keyboard back then b/c joysticks weren’t all that popular on the pc scene.
Yes, absolutely. The Black Cauldron almost required a joystick for the Do function, etc. I can get the character to move up and to the left, but they never move right or down using the joystick. I tried lowering the MHz, etc. but it made no difference.
DevilHunterWolf
Posts: 102
Joined: Thu Aug 19, 2021 4:07 am
Has thanked: 2 times
Been thanked: 40 times

Re: Joystick not working right in early Sierra games

Unread post by DevilHunterWolf »

Speaking as someone that once tried to use a joystick with Sierra adventure games back in the day, I never got one to work correctly. I think I ran into pretty much the same problems you're describing on real hardware. Love those old classics, but it was a heck of a time for coding and compatibility. I forget if it was just their SCI engine or if it was also a problem with their AGI engine, but you can't even hold the arrow keys down or the repeating key would cause the character to constantly start and stop walking.

You said your controller is working great as a 3 button controller. I wonder if that's the problem. We didn't always have more than 2 buttons available so maybe something more complex attached to the machine (so to speak) is causing a problem? I'd try the other joystick settings in the core menu and see if 2 button mode or anything else available helps. It could come down to it only accepting a particular brand joystick for the really early titles. That is the time period where a mouse was optional so joystick support could be very limited, too.
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 538 times
Been thanked: 252 times

Re: Joystick not working right in early Sierra games

Unread post by thorr »

Thanks. The problem is with the older AGI games. The SCI games seem to work fine. The joystick I am using was originally a 2-button joystick that had three buttons on it. The one on the top of the stick had the same function as one of the other buttons. I never used the top button, so I decided to make it a third button with the Arduino. In the AO486 core settings, I am using it as a 2-button joystick. I have also tried the other settings, but nothing helped. I am wondering if there is a DOS TSR program or something that helps older joystick games to work on newer hardware.
Classic80sgmr
Posts: 9
Joined: Sun Oct 24, 2021 1:20 pm
Been thanked: 1 time

Re: Joystick not working right in early Sierra games

Unread post by Classic80sgmr »

I spent a couple weeks trying to get a 2 button (3 physical, 2 actual) CH joystick working with the Apple II core. The issue came down to the scaling. Far right would only get to a value around 181 and it needed to be closer to 200. The CH I have has +/- trims for X/Y. Even at extremes it did not work. The solution ended up being a close inspection of how the trims worked and I was able to physically ‘push’ the X pot so it would have a higher reading. Not the best solution but it worked. I hope to find a way to change the way scaling works so more joysticks can be plug and play.
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 538 times
Been thanked: 252 times

Re: Joystick not working right in early Sierra games

Unread post by thorr »

Classic80sgmr wrote: Fri Dec 17, 2021 6:43 pm I spent a couple weeks trying to get a 2 button (3 physical, 2 actual) CH joystick working with the Apple II core. The issue came down to the scaling. Far right would only get to a value around 181 and it needed to be closer to 200. The CH I have has +/- trims for X/Y. Even at extremes it did not work. The solution ended up being a close inspection of how the trims worked and I was able to physically ‘push’ the X pot so it would have a higher reading. Not the best solution but it worked. I hope to find a way to change the way scaling works so more joysticks can be plug and play.
Thanks. I also have the trims. Mine is dialed in perfectly when using the Input Tester utility. It is perfectly centered and reaches all extremes. I installed a USB-C Arduino Pro Micro inside of it with a USB cable attached and wrapped around a post inside so it won't come out, and wrote my own Arduino code. I even got it to show up as a CH Products Mach III when connected to a PC. I haven't tried it on the Apple II core yet.
akeley
Top Contributor
Posts: 1303
Joined: Mon May 25, 2020 7:54 pm
Has thanked: 416 times
Been thanked: 399 times

Re: Joystick not working right in early Sierra games

Unread post by akeley »

Going off topic a bit, I get garbled text in menus in Black Cauldron. Just me? (as for joystick, this game didn't see my DS4 at all)
bbond007
Top Contributor
Posts: 519
Joined: Tue May 26, 2020 5:06 am
Has thanked: 85 times
Been thanked: 198 times

Re: Joystick not working right in early Sierra games

Unread post by bbond007 »

akeley wrote: Mon Dec 20, 2021 6:01 pm Going off topic a bit, I get garbled text in menus in Black Cauldron. Just me? (as for joystick, this game didn't see my DS4 at all)
I think you need to use a different VGA BIOS to get around that bug if I remember right...

Edit:

found it--> https://github.com/MiSTer-devel/ao486_MiSTer/issues/20
thorr
Top Contributor
Posts: 1101
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 538 times
Been thanked: 252 times

Re: Joystick not working right in early Sierra games

Unread post by thorr »

Update: I got the joystick to work in early Sierra AGI games like KQ1-3 and especially it is important in the Black Cauldron! The main trick is to turn off the L1 and L2 cache. I still had some issues at 90 MHz, where not all of the directions were working. I found 56MHz seems to work pretty well. The disk performance is slow, but it was back in the day too. Be sure to move the joystick around and press the button while in DOS before launching the game or it won't be detected. Now if only we could get Tandy music support working...

Also, I am using an Analog joystick. To set this up, I first set it up in the MiSTer main menu. I used it only at the Button A and B and Tilt questions, pressing spacebar for anything else. I set it up again in AO486 as a 2 button joystick with 2 joysticks. I told it the directions and A and B and skipped everything else. Also, I noticed in the Black Cauldron (and probably everything else) that the A and B buttons were backwards, so I remapped them backwards. Pressing F1 in the game on the second page of information describes how to use the joystick and describes it with a Top and Other button which were backwards.
Post Reply