Buenas me he decidido a usar la NFlib por que con PAlib era al final un mareo, pero tengo un problema como se puede averiguar el estado de la bateria en NFlib, se que en PAlib era PA_Transfer->battery, pero no tengo ni idea en NFlib.
Gracias a todos por vuestra ayuda, lo he conseguido, la verdad con mi dsi no funciona, pero con una ds lite supongo que si funcionará por que cuando estaba con palib tampoco funcionaba con mi dsi y si con otra ds lite. Ya que estoy para que otras personas no tengan que pasar por donde he pasado yo , voy a hacer un tutorial sobre como leer la bateria sin PAlib
si te has fijado el problema (segun la documentacion de GBATEK) es que las diferentes DS usan controladores distintos para la administracion de energia, por lo que puede ser una tortura hacer que funcionen en todos los modelos.
La verdad es que el problema se halla en las diferentes versiones vamos entre la DS, la DSL y la DSi. De la única de la que no conozco como funciona todo esto es la Dsi/DsiXL por eso no puedo adaptar mi código. Y la diferencia entre la phat y la DSL es que la primera no dice si tiene el cable enchufado, ya está, por cierto si quieren saber como lo he solucionado pueden ver mi tuto en aportes de usuario.
Gracias por todo, la verdad es que me he estado mirando lla documentación de NFlib, no he visto nada , la verdad esperaba que alguien lo hubiera hecho ya en NFlib. Por cierto, el readPowerManagement es de libnds o de PAlib?
que lee los bytes 4 y 1 del registro los cuales dicen si la bateria está llena o vacia y si se está cargando o no.
Hay alguna forma de leer dichos bytes? También se que se puede ver la cantidad exacta de batería por que el HWOS2 lo hace (al menos en mi dsi)? Si alguien sabe la respuesta a esto, por favor avisenme.
Gracias por todo KingthtFox, eso sí me dedicaré a leer como un loco...
Si consigo algo lo postearé para todo aquel que quiera usarlo, pero no se si conseguiréalgo tan complicado
Edit: leido (bueno lo que me importaba solo, leerso todo seria una hazaña) y lo que me intersa son:
Registro 0: bit 0 - estado bateria
Registro 4: bit 3 - si el cable está conectado (solo DSL)
También he visto cosas bastante intersantes pero bueno, ahora solo falta saber como acceder a ellos y leerlos...
Edit2: He estado mirando y el readpowermanagement si es de libnds, el problema es que es uuna función interna, ahora mismo estoy mirando que burrada le puedo hacer para usarla de forma externa.
Edit3: Resulta que el readpowermanagement solo se puede usar con el código del ARM7, alguien sabe como poner cóidgo en el ARM7 usando la NFlib?
Pues igual que con libnds. Mi libreria solo es un set de funciones hechas sobre libnds. Crea un proyecto nuevo usando el template de ARM9 + ARM7 de libnds.
Conseguido
Gracias a todos por vuestra ayuda, lo he conseguido, la verdad con mi dsi no funciona, pero con una ds lite supongo que si funcionará por que cuando estaba con palib tampoco funcionaba con mi dsi y si con otra ds lite. Ya que estoy para que otras personas no tengan que pasar por donde he pasado yo , voy a hacer un tutorial sobre como leer la bateria sin PAlib
si te has fijado el problema
si te has fijado el problema (segun la documentacion de GBATEK) es que las diferentes DS usan controladores distintos para la administracion de energia, por lo que puede ser una tortura hacer que funcionen en todos los modelos.
Nuestra web oficial:
http://www.nightfoxandco.com/
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.
La verdad es que el problema
La verdad es que el problema se halla en las diferentes versiones vamos entre la DS, la DSL y la DSi. De la única de la que no conozco como funciona todo esto es la Dsi/DsiXL por eso no puedo adaptar mi código. Y la diferencia entre la phat y la DSL es que la primera no dice si tiene el cable enchufado, ya está, por cierto si quieren saber como lo he solucionado pueden ver mi tuto en aportes de usuario.
Gracias..
Gracias por todo, la verdad es que me he estado mirando lla documentación de NFlib, no he visto nada , la verdad esperaba que alguien lo hubiera hecho ya en NFlib. Por cierto, el readPowerManagement es de libnds o de PAlib?
Creo que no
Cuando compilo me sale esto: 'readPowerManagement' was not declared in this scope
se que en palib se hacía cambiando la linea normal por esta:
((readPowerManagement(4) & 8)>>3) + (readPowerManagement(1)<<1);
que lee los bytes 4 y 1 del registro los cuales dicen si la bateria está llena o vacia y si se está cargando o no.
Hay alguna forma de leer dichos bytes? También se que se puede ver la cantidad exacta de batería por que el HWOS2 lo hace (al menos en mi dsi)? Si alguien sabe la respuesta a esto, por favor avisenme.
Que os sea leve El registro
Que os sea leve
El registro del power management es este:
40001C0h 2 SPI bus Control (Firmware, Touchscreen, Powerman)
http://nocash.emubase.de/gbatek.htm#dsiomaps
Para leerlo son estos bits:
Register 1 - Battery Status (R)
Bit0 Battery Power LED Status (0=Power Good/Green, 1=Power Low/Red)
Bit1-7 Not used
http://nocash.emubase.de/gbatek.htm#dssystemandbuiltinperipherals
Que os divirtais XD
Nuestra web oficial:
http://www.nightfoxandco.com/
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.
Gracias
Gracias por todo KingthtFox, eso sí me dedicaré a leer como un loco...
Si consigo algo lo postearé para todo aquel que quiera usarlo, pero no se si conseguiréalgo tan complicado
Edit: leido (bueno lo que me importaba solo, leerso todo seria una hazaña) y lo que me intersa son:
Registro 0: bit 0 - estado bateria
Registro 4: bit 3 - si el cable está conectado (solo DSL)
También he visto cosas bastante intersantes pero bueno, ahora solo falta saber como acceder a ellos y leerlos...
Edit2: He estado mirando y el readpowermanagement si es de libnds, el problema es que es uuna función interna, ahora mismo estoy mirando que burrada le puedo hacer para usarla de forma externa.
Edit3: Resulta que el readpowermanagement solo se puede usar con el código del ARM7, alguien sabe como poner cóidgo en el ARM7 usando la NFlib?
Pues igual que con libnds. Mi
Pues igual que con libnds. Mi libreria solo es un set de funciones hechas sobre libnds. Crea un proyecto nuevo usando el template de ARM9 + ARM7 de libnds.
Nuestra web oficial:
http://www.nightfoxandco.com/
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.
Por favor disculpa mi
Por favor disculpa mi graaaaan ignorancia, pero donde puedo encontrar ese template? he buscado por los archivos de libnds y devkitarm y nada.
Edit: Por cierto ya he buscado en google, pero no ha habido suerte lo mencionan pero...
Usas el Visual C++ Express?
Usas el Visual C++ Express?
Prefiero no usarlo porque uso
Prefiero no usarlo porque uso Linux.
Pues busca en la carpeta
Pues busca en la carpeta devkitpro/examples/nds/templates/combined
Claro que no me olvidaré,
Claro que no me olvidaré, muchas gracias por todo.
Edit: Gracias pero aquí no hay quien entienda nada con los makefiles
Edit2: Ya lo conseguí compilar solo una cosa... Como puedo hacer que el ARM7 y el 9 se comuniquen?
Creo (y remarco CREO) usando
Creo (y remarco CREO) usando el sistema FIFO de libnds. Pero nunca me he entretenido a trastear con el.
C:\nds\devkitPro\nflib\docs
Ahí tienes todas las funciones de la librería, muy bien explicadas, si no encuentras ahí la función que quieres tendrás que recurrir a libnds.
Salu2tS!