anklator escribió:nose hay homebrew que no entra en modo sleep cuando cierras la tapa, eso significa que no es algo automatico, y se suspende tambien por software y no exclusivamente por hardware
Efectivamente no es algo automático, yo lo activé en mi DSAmp (enlace de la firma para más información).
El código que se encarga de hacer el Sleep (en las librerías PA_Lib -
http://www.palib.com) es este:
u8 PA_CheckLid() {
if (!PA_LidClosed()) return 0;
else {
u16 power_cr = POWER_CR; // backup the power...
POWER_CR = 0; // Shutdown everything :p
// Wait for the lid to be opened again...
while(PA_LidClosed()){
PA_WaitForVBL();
}
// Return the power !
POWER_CR = power_cr;
return 1;
}
}
Simplemente comprueba si está cerrada la tapa (es mirar un bit que se pone a uno cuando se activa el mecanismo que contáis), apagar todos los elementos que chupen alimentación aparte (esto depende del programa, puedes desactivar wifi si no lo necesitas y así ahorras más batería, etc etc etc) y esperar a que se abra de nuevo.
Realmente lo único que se hace automáticamente al cerrar la consola es apagar las pantallas y poner a parpadear el led verde de la consola. Lo demás es 100% dependiente del software que esté ejecutándose en la consola. De hecho yo en el DSAmp permití que mientras estaba en modo Sleep, si se pulsaba L o R se pudiera cambiar de canción en el Winamp (es decir, metí detección de esos dos botones y además dejé funcionando el wifi).
Si la he cagado que alguien me corrija