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

ps2 2nd Controller Not working + Some visual glitches in some games #164

Open
Ariastar opened this issue Feb 16, 2025 · 18 comments
Open

ps2 2nd Controller Not working + Some visual glitches in some games #164

Ariastar opened this issue Feb 16, 2025 · 18 comments

Comments

@Ariastar
Copy link

hey guys.
I tested version 2.03 on my ps2 and the second controller doesn't work anymore.
some games like "international superstar soccer " have visual glitches.
Look at team flags for example.

Image

@irixxxx
Copy link
Owner

irixxxx commented Feb 16, 2025

I probably can't do much against the controller not working anymore, since the code for that hasn't changed since 2.01. It's most probably another new bug in the PS2SDK. I'll try to verify this, and if so, you'll have to wait until it get fixed in there.

Some color palette accesses were wrong in layer A window rendering, when shadow/highlight mode is enabled.
Fixed with 1a14312.

@irixxxx
Copy link
Owner

irixxxx commented Feb 17, 2025

@Ariastar would you please check the latest CI build from the actions tab for the master branch with pads and multitaps?
They have changed the pad logic in ps2sdk. I'm now using a polling logic to wait for the pad port to reach a stable state before checking if a pad is connected.

@Ariastar
Copy link
Author

Thanx for the reply.
I tested build 22103e7 from cl (platform ps2, improve pad detection) as you mentioned and still no luck.
I put picodrive.elf on a pen drive and connect it to my PS2 and then run it through file manager.
I can play games single player mode but two player mode doesn't work.
As if no controller is hooked to the second port.

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

Does it run in PCSX2 for you?

I've tested in PCSX2, and while the old code with the new SDK had problems, the improved code just ran fine.

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

BTW, pad detection is done only once when the program is started. You cannot connect a pad at a later time.

@Ariastar
Copy link
Author

I didn't test it in PCSX2.
About pad detection Both controllers are already connected to the console when I start PS2 if that's what u mean.

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

Is there anything else but those 2 pads connected?

@Ariastar
Copy link
Author

FMCB in memory slot 1
MX4SIO (contains game ISOs) in memory slot 2
A pen drive that contains picodrive.elf

It's odd that even the Retroarch for ps2 has issues with the second controller I wonder why

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

No idea. Have you swapped the controllers to check if there's some problem with one of them?

@Ariastar
Copy link
Author

controllers are fine in other games. I play ps2 games and they are both working. I even run FCEULTRA nes emulator and two controllers work in multiplayer.
Any way thank u for your efforts. I appreciate it.

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

Hmm. I could only increase the negotiation timeout for controllers. That's currently set to 1s. I'll make you a test branch this evening.
You don't by any chance have a multitap?

@Ariastar
Copy link
Author

No I don't Have a multitap.
Thanks.

@irixxxx
Copy link
Owner

irixxxx commented Feb 18, 2025

One last question for now. What happens if you have only one controller in the 2nd port? Is that correctly recognized?

@Ariastar
Copy link
Author

I can't navigate thus unable to run the elf file. if only the 2nd controller is connected. I tried running the elf with controller 1 connected then removed it and the same problem.

@irixxxx
Copy link
Owner

irixxxx commented Feb 19, 2025

In the ps2_test branch I have increased the pad detection timeout to 5s. Would you please check if this is working better for you?

@Ariastar
Copy link
Author

I tested PicoDrive 2.03-c39b8c4 from platform ps2, increase pad timeout #506 unfortunately 2nd controller still not working.

@irixxxx
Copy link
Owner

irixxxx commented Feb 19, 2025

OK. I'm out of ideas for now. I reckon there's something off in PS2SDK. I'll see if I can involve someone from them.

@irixxxx
Copy link
Owner

irixxxx commented Feb 19, 2025

BTW, I've checked the ps2 pad code in Retroarch (input/drivers_joypad/ps2_joypad.c), and it more or less does the same as what I do in PicoDrive. If that has ever worked, I think it supports my inkling that the bug might be in PS2SDK.

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

No branches or pull requests

2 participants