New OSK from (c)fw 5.00

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
mypspdev
Posts: 178
Joined: Wed Jul 11, 2007 10:30 pm

New OSK from (c)fw 5.00

Post by mypspdev »

Please,
a new OSK with full keyboard on screen is now available since last fw.
Using what already known and present in our SDK this new OSK is not accessible via SELECT.
I've seen a new .prx is added to 5.00 and 5.01 original fw, may be last one with the new OSK.
has anybody instruction on how to access to it? thanks
AJ-829
Posts: 6
Joined: Sat Jul 26, 2008 5:47 pm

Post by AJ-829 »

According to sony, its only accessible in the PSP's vsh, Games cant use this new and improved keyboard.
angelo
Posts: 168
Joined: Wed Aug 29, 2007 9:34 pm

Post by angelo »

OK. First you have to load the extra plugin that's been made.

flash0:/kd/osk_plugin_500.prx (I think).

Then use the OSK sample and see if there's an unused variable or something.

Sometimes, devs find functions that do nothing, but may be used in the future. Here's an example:

Code: Select all

/**
 * Executes a new executable from a memory stick.
 * It is the function used by the firmware to execute ... ?
 *
 * @param file - The file to execute.
 * @param param - Pointer to a ::SceKernelLoadExecVSHParam structure, or NULL.
 *
 * @returns < 0 on some errors. 
*/
int sceKernelLoadExecVSHMs3&#40;const char *file, struct SceKernelLoadExecVSHParam *param&#41;;
See if you can find something like that in the OSK files.

There is another, cheekier way you can go about it. You load the OSK like normal and suff the "select" key 3-4 times.

Here's a function to help you do this:

Code: Select all

//Load your common #include files.

//Before main thread

int gkeymask;

void stuff_key&#40;int keymask&#41;
&#123;
	gkeymask = keymask;
	
	while &#40;gkeymask != -1&#41;
	&#123;
		sceKernelDelayThread&#40;2000&#41;;
	&#125;
&#125;

void OSKMapChange&#40;&#41;
&#123;
stuff_key&#40;PSP_CTRL_SELECT&#41;;
sceKernelDelayThread&#40;20000&#41;; // It's best to leave a pause so the PSP keeps up.
stuff_key&#40;PSP_CTRL_SELECT&#41;;
sceKernelDelayThread&#40;20000&#41;;
stuff_key&#40;PSP_CTRL_SELECT&#41;;
sceKernelDelayThread&#40;20000&#41;;
&#125;

OSKMapChange&#40;&#41;;
I use it whith piKey:

Code: Select all

				//Bookmarker
				    if &#40;isKeyPressed&#40;KEY_B&#41; && ctrl&#41;&#123;
                if&#40;browserRunning&#40;&#41;&#41;&#123;
                if&#40;bufferchary < 1200&#41;&#123;				  
				    Web_Bar_Remove&#40;&#41;;                
				    stuff_key&#40;PSP_CTRL_TRIANGLE&#41;;
				    sceKernelDelayThread&#40;20000&#41;;
				    sceKernelDelayThread&#40;500000&#41;;
                hold_key&#40;PSP_CTRL_LEFT&#41;;
                sceKernelDelayThread&#40;800000&#41;;
                hold_key&#40;0&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;PSP_CTRL_RIGHT&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;PSP_CTRL_RIGHT&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;PSP_CTRL_RIGHT&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;PSP_CTRL_RIGHT&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;PSP_CTRL_RIGHT&#41;;
                sceKernelDelayThread&#40;20000&#41;;
                stuff_key&#40;enter&#41;;
                sceKernelDelayThread&#40;100000&#41;;
                stuff_key&#40;enter&#41;;
                sceKernelDelayThread&#40;100000&#41;;
                stuff_key&#40;enter&#41;;
                sceKernelDelayThread&#40;1000000&#41;;
                hold_key&#40;cancel&#41;;
                sceKernelDelayThread&#40;200000&#41;;
                hold_key&#40;PSP_CTRL_TRIANGLE&#41;;
                sceKernelDelayThread&#40;500000&#41;;
                hold_key&#40;0&#41;;
                bufferchary += 600;
                &#125;else&#123;
                overy = 1; 
				&#125;
					&#125;
						&#125;
I hope that helps! Good luck!

Angelo
mypspdev
Posts: 178
Joined: Wed Jul 11, 2007 10:30 pm

Post by mypspdev »

Thanks <<Angelo>> !! I'll try.
angelo
Posts: 168
Joined: Wed Aug 29, 2007 9:34 pm

Post by angelo »

Did it work? I think the OSK in the SDK needs to be updated... K.

Who created it anyway?
Post Reply