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

Support for inserting multiple data in a row with the PSP On Screen Keyboard #15357

Open
4 of 5 tasks
ghost opened this issue Jan 28, 2022 · 8 comments
Open
4 of 5 tasks
Labels
HLE/Kernel Kernel, memory manager, other HLE issues
Milestone

Comments

@ghost
Copy link

ghost commented Jan 28, 2022

Game or games this happens in

UCUS-98601 - Twisted Metal Head-On and maybe other games

What area of the game / PPSSPP

The issue could affect other homebrew/games but i only know it so far from the infrastructure mode of Twisted Metal Head On
When you log in into infrastructure mode on the game (on JPCSP for example) it asks you to insert multiple data in a row but it didn't work well before the following change on JPCSP:
jpcsp/jpcsp@d1dff2b
Previously, only the insertion of the username was possible and not the password.

What should happen

The game should lets you enter all data required before passing on.

Logs

No response

Platform

Linux / BSD

Mobile phone model or graphics card

AMD Radeon 530

PPSSPP version affected

v1.12.3-733-gc9dee44cf

Last working version

No response

Graphics backend (3D API)

Vulkan

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Try without any cheats and without loading any save states.
  • Include logs or screenshots of issue.
@ghost ghost changed the title Support for inserting multiple data in a row with the PSP Keyboard Support for inserting multiple data in a row with the PSP On Screen Keyboard Jan 28, 2022
@hrydgard hrydgard added the HLE/Kernel Kernel, memory manager, other HLE issues label Jan 28, 2022
@hrydgard hrydgard added this to the Future-Prio milestone Jan 28, 2022
@unknownbrackets
Copy link
Collaborator

Is there a way to reproduce this in a demo or single player at all?

-[Unknown]

@unknownbrackets
Copy link
Collaborator

Alternatively if you could use the artifacts here:
https://github.com/unknownbrackets/ppsspp/actions/runs/1716841960

Or the matching code here:
https://github.com/unknownbrackets/ppsspp/tree/test/log-osk

To log the OSK parameters the game is using, that would be helpful.

-[Unknown]

@ghost
Copy link
Author

ghost commented Jan 30, 2022

I will need @anr2me to update his infrastructure build with that change though as I don't know any single player game or homebrew currently that does it.
Can't you use the jpcsp fix here as a reference tho?
jpcsp/jpcsp@d1dff2b

@unknownbrackets
Copy link
Collaborator

Some may be surprised, but it turns out PPSSPP is not a JPCSP emulator. What I want is to run some code on my PSP that prompts this, so I want to know what parameters it's using so I can test the range of inputs, etc., and then create a pspautotest if possible. I've shown gid15 bugs in JPCSP before, based on creating pspautotests.

Just guessing what maybe happens only gets you so far with compatibility.

-[Unknown]

@ghost
Copy link
Author

ghost commented Jan 31, 2022

Here are the logs @unknownbrackets :

27:40:186 user_main    W[SCEUTIL]: Dialog\PSPOskDialog.cpp:309 sceUtilityOskInitStart: unsupported field count 2
27:40:186 user_main    I[SCEUTIL]: Dialog\PSPOskDialog.cpp:332 OSK params: sz=64, fields=2, state=0, unk=00000000
27:40:186 user_main    I[SCEUTIL]: Dialog\PSPOskDialog.cpp:333 OSK fields: unk00=00000004, unk04=00000000, lang=0, unk_12=00000000
27:40:186 user_main    I[SCEUTIL]: Dialog\PSPOskDialog.cpp:334 OSK fields: type=3, lines=1, unk_24=00000001, outlen=16/0
27:40:202 user_main    I[SCEUTIL]: HLE\sceUtility.cpp:608 00000000=sceUtilityOskInitStart(09e64fac)
27:40:220 user_main    D[SCEUTIL]: HLE\sceUtility.cpp:637 1=sceUtilityOskGetStatus()
27:40:486 ScePafJob    D[SCEUTIL]: HLE\sceUtility.cpp:394 0=__UtilityInitDialog(3)
27:40:486 user_main    D[SCEUTIL]: HLE\sceUtility.cpp:637 2=sceUtilityOskGetStatus()
27:40:498 user_main    D[SCEUTIL]: HLE\sceUtility.cpp:625 00000000=sceUtilityOskUpdate(2)

@ghost
Copy link
Author

ghost commented Oct 22, 2022

Trying to see what happens on the latest build I could try and got this:

01:11:949 user_main    W[SCEUTIL]: Dialog/PSPOskDialog.cpp:326 sceUtilityOskInitStart: unsupported field count 2
01:11:949 user_main    I[SCEUTIL]: HLE/sceUtility.cpp:610 00000000=sceUtilityOskInitStart(09e64fac)
01:11:982 user_main    D[SCEUTIL]: HLE/sceUtility.cpp:639 1=sceUtilityOskGetStatus()
01:12:249 ScePafJob    D[SCEUTIL]: HLE/sceUtility.cpp:396 0=__UtilityInitDialog(3)
01:12:249 user_main    D[SCEUTIL]: HLE/sceUtility.cpp:639 2=sceUtilityOskGetStatus()
01:12:249 user_main    D[SCEUTIL]: HLE/sceUtility.cpp:627 00000000=sceUtilityOskUpdate(2)

@anr2me
Copy link
Collaborator

anr2me commented Oct 23, 2022

I don't think anyone is working on it yet, so it's still the same, minus the OSK logging which is not included on master branch i think

@ghost
Copy link
Author

ghost commented Oct 24, 2022

I don't think anyone is working on it yet, so it's still the same, minus the OSK logging which is not included on master branch i think

I noticed some OSK related commits recently so I thought something got changed.
Also your previous build did have the OSK logging commits but I guess you removed them later on

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
HLE/Kernel Kernel, memory manager, other HLE issues
Projects
None yet
Development

No branches or pull requests

3 participants