hrydgard / ppsspp

A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
https://www.ppsspp.org
Other
11.04k stars 2.15k forks source link

iOS: PPSSPP does not switch landscape orientations when device is not in reverse landscape mode #11713

Open devinprater opened 5 years ago

devinprater commented 5 years ago

What happens?

Using a GameVice controller for iPhone, PPSSPP is amazing to use and control. I myself, being blind, don't have any problems using PPSSPP, which runs full-speed on my iPhone X R, but those with vision will find that, even though they hold the phone in landscape mode, facing them, with the charge port facing to the right and the GameVice controller is designed and mandates, the screen will be made to face away from them, being flipped.

What should happen?

PPSSPP should ask iOS which orientation of landscape mode is being used, as it probably does with Android, and adapt its UI and game window to match that orientation.

What hardware, operating system, and PPSSPP version? On desktop, GPU matters for graphical issues.

iPhone X R running iOS 12.1.3 Public beta 2, using PPSSPP (from build store (builds.io)) version 1.6.3.

mygizli04 commented 5 years ago

Well, you are a lot of versions behind 1.7.5 ( stable ) so that's kind of expected. I can't reproduce this on the current build btw.

devinprater commented 5 years ago

Is there a setting that may have caused this? I cannot edit settings directly, but can edit the ppsspp.ini file.

On Jan 4, 2019, at 12:25 PM, mygizli04 notifications@github.com wrote:

Well, you are a lot of versions behind 1.7.5 ( stable ) so that's kind of expected. I can't reproduce this btw.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/hrydgard/ppsspp/issues/11713#issuecomment-451526712, or mute the thread https://github.com/notifications/unsubscribe-auth/AOjJzhabyZukUqSw991t-cRjofQd30wbks5u_5ybgaJpZM4ZopQd.

mygizli04 commented 5 years ago

Can you record the issue please? I still can't create the issue on my device no matter how much i try.

devinprater commented 5 years ago

If I do a screen recording, it would just show the app in reverse landscape mode, wouldn’t it? Or is there a debugging option in PPSSPP?

On Jan 4, 2019, at 12:57 PM, mygizli04 notifications@github.com wrote:

Can you record the issue please? I still can't create the issue on my device.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/hrydgard/ppsspp/issues/11713#issuecomment-451535294, or mute the thread https://github.com/notifications/unsubscribe-auth/AOjJzv9IuyCgD4GbmxAub0uzLj2nkObQks5u_6QTgaJpZM4ZopQd.

mygizli04 commented 5 years ago

Well the debug mode isn't very useful in this case. I think the only way is to update your PPSSPP some way and test it that way ( since i can't make it happen on my devices which run newer PPSSPP )

devinprater commented 5 years ago

Okay, I'll see what I can do. Maybe I can make enough room on my Mac for Xcode, or better yet for all users, try to get Builds.io to update their version of PPSSPP.

Sent from my iPhone

On Jan 4, 2019, at 1:08 PM, mygizli04 notifications@github.com wrote:

Well the debug mode isn't very useful in this case. I think the only way is to update your PPSSPP some way and test it that way ( since i can't make it happen on my devices which run newer PPSSPP )

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

mygizli04 commented 5 years ago

Don't worry, you don't have to install xcode just to test it. Here's the ipa for the latest git version ( To download it just click the download button on the top right, don't try to download the "Payload" folder or something ), and you can install it via Cydia Impactor , which takes MUCH less space then PPSSPP + submodules + XCode

devinprater commented 5 years ago

Thanks so much for this tool. I can confirm that, even with the latest development version, reverse landscape mode is used, either with orientation locked to portrait or unlocked and in regular landscape mode.

On Jan 5, 2019, at 5:21 AM, mygizli04 notifications@github.com wrote:

Don't worry, you don't have to install xcode just to test it. Here's https://drive.google.com/open?id=1-KjXQTNjCOV7t5-WFMtXxqkuKY8Ko5vb the ipa for the latest git version, and you can install it via Cydia Impactor http://www.cydiaimpactor.com/ , which takes MUCH less space then PPSSPP + submodules + XCode

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/hrydgard/ppsspp/issues/11713#issuecomment-451647155, or mute the thread https://github.com/notifications/unsubscribe-auth/AOjJziiklaUe_36kj6_tdf9gWKWoVQk2ks5vAIrHgaJpZM4ZopQd.

mygizli04 commented 5 years ago

Here's what happenes on my 6 ( realise how first it's normal but it's upside down after ) with the exact same build. Maybe that's just a XR issue.

devinprater commented 5 years ago

I found this in the PPSSPP.ini file. Since PPSSPP settings are not accessible to VoiceOver, I edit this manually: InternalScreenRotation = 1 Can anyone tell me the parameters for this option, and what they do? For example, I'm guessing 1 = reverse-landscape.

devinprater commented 5 years ago

Okay, I changed InternalScreenRotation = 1 to InternalScreenRotation = 0

Now, turning orientation lock off, I can hold the phone with screen facing me, and VoiceOver says "landscape mode, charge port to the right" so maybe this is fixed.

Update: Yes, it's fixed! Steps I used to fix:

I hope this helps some one in the future.

hrydgard commented 5 years ago

Wow, glad you were able to figure it out! Will need to look into how we can make this more convenient.

devinprater commented 5 years ago

Perhaps add comments to the INI file, if it isn't generated automatically, that may take longer to add text to generate alongside the options, giving possible parameters, like:

// orientation of the app: 0 = auto, 1 = reverse-landscape, 2 = reverse-portrait, 3 = landscape, 4 = portrait internal-orientation = 0

something like that. I do wish iOS had an internal general-purpose text editor I could just open the file with and Fedora Linux, which is what I use now instead of Windows, does mount iPhone document folders so I can edit it that way from now on, but some people use their iPhones as general-purpose computers for one reason or another, so that cheatcode, (Linux mounting iOS document folders) isn't usable for everyone.,

Sent from my iPhone

On Jan 17, 2019, at 3:07 PM, Henrik Rydgård notifications@github.com wrote:

Wow, glad you were able to figure it out! Will need to look into how we can make this more convenient.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

unknownbrackets commented 5 years ago

The values are not in an obvious place, but for reference they are here in the code:

https://github.com/hrydgard/ppsspp/blob/aa927e0681ed76fec3b540218981a2c407a78e47/Core/ConfigValues.h#L35-L39

I think you've correctly listed them based on the device having the charge port on the right.

Android supports an additional setting (not currently supported on iOS), called "Landscape Auto". This automatically flips the screen as appropriate, staying in landscape mode. I think that's what is wanted here for iOS (it's also the setting I prefer personally.)

-[Unknown]