Problema raro.... Ayuda please!!!!

Saludos, la cosa es que la psp de mi hermana presento semibrick o al menos eso creo yo. Segun me cuenta ella estaba jugando locoroco llegado el momento para salir del juego le dio al boton de HOME, luego de aparece el menu de salir del juego no podia mover para seleccionar la opcion de si, no quedando otra opcion mas que apagar la consola. Hasta que llegado el momento al encender la consola entraba de manera directa al modo recovery. Hoy me dispuse a revisar y buscar informacion acerca de los semibrick y la cosa es que instale el Firmware 3.40 OE-A y los problemas persisten:

1- Al encender la consola esta entra de manera automatica en el modo recovery pero con la diferencia que al darle a la opcion de exit si sale del modo recovery. (Antes de instalar el ultimo firmware no lo hacia)

2- Al entra a cualquier juego y querer salir con la opcion Home, al aparecer el menu y tratar de mover el cursor se sigue moviendo el juego ,aun cuando esta el menu en pantalla.

Muchas Gracias y saludos a todos desde Venezuela
¡¡ Viva la fragilidad de los botones de la consola !!
El botón R de la consola se te ha quedado pillado.
grishnakhelorco está baneado por "Clon de usuario baneado"
Hace poco ese problema me lo reportó un usuario de este foro (bueno, y oía demas gente que lo tenía) y creé de manera muy charcutera y acelerada este código:

#include
#include
#include
#include
#include

PSP_MODULE_INFO("2nd Recovery", 0x1000, 1, 1);

PSP_MAIN_THREAD_ATTR(0);

#define printf pspDebugScreenPrintf

/* Exit callback */
int exit_callback(int arg1, int arg2, void *arg)
{
sceKernelExitGame();

return 0;
}

/* Callback thread */
void CallbackThread(void *arg)
{
int cbid;

cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);

sceKernelSleepThreadCB();
}

int SetupCallbacks(void)
{
int thid = 0;

thid = sceKernelCreateThread("update_thread", (void*) CallbackThread, 0x11, 0xFA0, 0xa0000000, 0);
if(thid >= 0)
{
sceKernelStartThread(thid, 0, 0);
}

return thid;
}

SceUID load_module(const char *path, int flags, int type)
{
SceKernelLMOption option;
SceUID mpid;

if (type == 0) {
mpid = 1;
} else {
mpid = 2;
}

memset(&option, 0, sizeof(option));
option.size = sizeof(option);
option.mpidtext = mpid;
option.mpiddata = mpid;
option.position = 0;
option.access = 1;

return sceKernelLoadModule(path, flags, type > 0 ? &option : NULL);
}

void *getModuleInfo(void);

int main(void)
{
SceUID modid;
SceModule *mod;
int i;
int ret;
int fd;

pspDebugInstallKprintfHandler(NULL);
pspDebugInstallErrorHandler(NULL);
pspDebugInstallStdoutHandler(pspDebugScreenPrintData);
pspSdkInstallNoPlainModuleCheckPatch();
SetupCallbacks();

while (1)
{
SceCtrlData pad;

sceCtrlReadBufferPositive(&pad, 1);

if (pad.Buttons & PSP_CTRL_CROSS)
{

modid = load_module("flash0:/kd/2recovery.prx", 0, 0);
mod = sceKernelFindModuleByUID(modid);
ret = sceKernelStartModule(modid, 0, NULL, &fd, NULL);

}

}

sceKernelExitDeleteThread(0);

return 0;
}


Ni siquiera lo llegué a compilar pues sigo sin recuperar mi entorno de desarrollo (el MBR de mi HD hace estragos y ahora estoy testeando el CSP) pero vamos, subsanando los errores que tenga te permite entrar el recovery (llamado "2recovery.prx") manteniendo la X pulsada (aunque esto es customizable, que para eso cedo el código jeje).
Eso si, esto "ocupa" la opción del autorun por lo que el CF debe llevar esa opción operativa.

De todas formas creo que Becus sacó un plugin para este menester y lo mejor siempre será que abras la consola, desmontes el botón, lo limpies todo bien y luego lo montes de nuevo (es un sinvivir estar con este problema por los juegos y los generic downgrades y customs, que se sale con la R xD).

Salu2.
Si tienen razon el boton R no responde, no me habia fijado, es como si siempre estuviera precionado sin estarlo. Me tocara abrir a ver si resuelvo el problema.


Muchas gracias por su ayuda y saludos desde Venezuela
4 respuestas