[PSP] Maxima memoria reservada ¿? Malloc()

Bueno habro este hilo ya que estoy con un mini proyecto y usando malloc he llegado a que da error si utilizas mas de 1 mega ( bueno 1 mega me tira pero 1,5 ya no no probe intermedios ) el caso es que la psp no tiene una ram de 32 MB ¿? creo q solo se podia acceder a 24 si no me equivoco ( aunq alguien habia publicado como acceder a esa ram restante ) el caso es que me gustaria que probaseis y que dieseis vuestros resultados y si ai otra manera de utilizar mas memoria


Gracias de antemano
Hola.

Por alguna razón que desconozco no puedes reservar los teoricos 24 MB libres en una sola llamada a malloc(). Lo que si se puede hacer es ir reservando bloques de un tamaño mucho menor, por ejemplo, de 1MB, hasta reservar toda la memoria libre.

Te remito al siguiente enlace donde alguien publico dos funciones: una que calcula el tamaño del bloque máximo de memoria contigua que puedes reservar y otra función para determinar el total de memoria libre que tienes en el PSP.

http://forums.ps2dev.org/viewtopic.php?t=4784


Unas pruebas rapidas me arrojan en promedio 12 MB libres en total, con un bloque máximo de alrededor de 1.2 MB.

Saludos.
Tengo problemas al intentar utilizar ese codigo en mi codigo xDDD

yo lo que hice fue guardar el 1º texto como ram.h el segundo como ram.c en la carpeta de mi codigo

en mi codigo le añadi:
#include "ram.h"


y para probar hacia lo siguiente
printf("ramAavailableLineareMax: %d ,ramAvailable: %d\n\n",ramAavailableLineareMax(),ramAvailable());

Bueno no me riñais mucho no soy muy esperto tambien el compilador me da aviso con %d probe %ld y tb salta no se como agregar este codigo ayuda xfaplis :)

PERDON YA ESTA TRAE EL CODIGO UN ERROR digamos gramatical xD APOSTA ( supongo )
Hola, yo personalmente no he tenido ningún problema para reservar de una sola tirada hasta 20 megas con malloc (20*1024*1024) con el PSXR-MSTester, tambien he utilizado memalign (64,20*1024*1024) sin problemas.

Probablemente este resuelto con las últimas librerías del SDK.
Pues yo tengo el pspsdk-1.0+beta2 y por lo que he visto es la ultima asi que no se porque tu no tienes problemas .
Pues es la misma

Generated on Tue Jan 2 23:53:47 2007 for pspsdk-1.0+beta2

Bueno, me lo bajé y instalé todo ese día. Utilizando el manual que hay aquí en desarrollo...

De hecho reservar la memoria es lo primero que hago, si no ya la PSP se resetea.


int main()
{
    SceCtrlData pad, oldpad;
   
    pspDebugScreenInit();
    int error = 0;


    SetupCallbacks();
    initGraphics();
    buffer = (char *) memalign(64, 20*1024*1024 );
    if (buffer == NULL) {sleep (10); sceKernelExitGame(); }
5 respuestas