Estuve toda la mañana con mi proyecto, y cuando añado una estupidez de nada, me salta este error:
arm-eabi-g++ -g -mthumb-interwork -mno-fpu -L/C/devkitPro/palib/lib/lib -Wl -specs=ds_arm9.specs musicainicio.o main.o -L/C/devkitPro/palib/lib/lib -lpa9 -L/c/devkitPro/libnds/lib -lfat -lnds9 -ldswifi9 -o build.elf c:/devkitpro/devkitarm/bin/../lib/gcc/arm-eabi/4.1.1/../../../../arm-eabi/bin/ld.exe: address 0x241d6ac of build.elf section .bss is not within region ewram collect2: ld returned 1 exit status make[1]: *** [/c/Documentos/Proyectos/MOLBA/MOLBA.elf] Error 1 make: *** [build] Error 2
Es algo raro, por lo visto relacionado con devkitARM. No sé qué puede ser, nunca me había pasado.
He investigado y quizás es porque el .nds, según mis cálculos (ya que ahora no compila) debe pasar ya de los 4Mb...
Salu2
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.
Es lo de los 4 mb.
Si te pasas de 4 mb en el binario, te saldrá ese error. ¿Por qué pone elf? Porque no se compila nada directamente a nds, ¿os habéis molestado alguna vez en mirar la carpeta "build"? Para pasar de C a NDS hay que dar unos cuantos pasos. Primero se compilan los archivos C, se ensamblan y se linkean. Eso para cada procesador por separado. Luego se juntan los binarios con el ndstool y, si acaso, añades archivos con EFS o similares. En el caso de PAlib el arm7 está precompilado, no lo tienes que compilar tu y por eso no aparece en la carpeta build.
Es que nunca te va a dar un
Es que nunca te va a dar un fallo en el .nds... y si te da un fallo, no es al compilar, sino al parchearlo o al hacer algo raro. Los fallos te los puede dar al compilar el archivo c o al linkearlos, como en este caso, que es cuando los junta y se da cuenta de que falta espacio.
Yo tambien me inclino por lo
Yo tambien me inclino por lo del tamaño. De todas formas, quitale cosas para asegurarte...
Lo unico que se me ocurre para solucionar, es que uses las librerias efs... Habia un ejemplo de como usarlas en palib.
Saludos!
Mi creacciónes particulares:
http://www.scenebeta.com/noticia/la-serpiente
http://www.scenebeta.com/node/22535
No estoy seguro de qué debería hacer
si me meto en esto quiero meterme de cabeza, pero no sé qué usar. Tengo un par de canciones, yo me decantaría por "echar fuera" los fondos, la mitad son en 16bit, pero temo que entonces que para tener todo fuera tenga que mezclar de todo.
Ante la duda, miraré las EFS, parecen estables (aunque a lo mejor soy yo que tuve malas experiencias con FAT...)
Gracias y Salu2
PD: ¿Qué es mejor, reproducir .raw o .mp3 por AS_lib? No me acaba de convencer la calidad del .raw, y si puedo mejorarlo, pues mejor xD
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.
Mas de la mitad de los
Mas de la mitad de los fondos son de 16 bits??. Normal que te ocupe 4 mb el nds... En principio, yo creo que con fondos de 256 colores bien convertidos basta (con el photoshop, hechos con el paint te salen unos mojon...). Pero bueno...
Lo de raw, mp3. Reproducir mp3 consume bastantes recursos ademas que no puedes tener mas de un mp3 reproduciendo a la vez... Mi consejo es que uses raw para los efectos de sonido y mod o mp3 para la musica (ya que el raw ocupa muchisimo).
La calidad no se yo que decirte, creo que es por la conversion de un formato a otro. Aunque no estoy seguro...
Saludos!
Mi creacciónes particulares:
http://www.scenebeta.com/noticia/la-serpiente
http://www.scenebeta.com/node/22535
Bah,
para que te fíes tú de los de PAlib, en el ejemplo de EFS pone que no es necesario cambiar el Makefile, pruebo en mi proyecto: "Image has been crashed!" ¡Genial, ahora a perder el tiempo viendo qué iba mal! Total, que al final me dio por mirar el makefile, Y RESULTA que era que la línea USE_EFS = YES estaba así -> #USE_EFS = YES. Para los que no entiendan (yo no entendía hasta que lo vi), la línea estaba comentada, o sea, que el compilador pasaba de ella. Ahora ya no me da ese error el emulador, pero las pantallas se quedan en negro. Para que veáis el trabajo de chinos crear un proyecto que funcione como el ejemplo.
Bueno, voy a seguir antes de que mi nivel de cabreo sobrepase los límites de las leyes pacifistas.
Salu2
EDITADO: ¡¡AAAAAHH!! ¡No hay caso, ni entiendo ni me va! ¡Abandono, rehuyo, me dedicaré a otra cosa, pido papas, pero por favor, Mollusk, no me hagas sufrir más T.T!
Está visto que yo sin un tutorial detallado me pierdo. Que me den 14572785917 ejemplos de PAlib, que si no explican lo que hace cada una de las líneas sigo en las mismas.
Necesito urgentemente a alguien que me explique de una condenada vez esto. Se que no te suelo rezar, pero si estás ahí arriba, ¡por favor, sálvame Superman!
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.
A mí no me preguntes
que soy el más inexperto de los alrededores, sólo sé que con 3 líneas más de cargar fondos me apareció esto...
¿Se solucionará cargando gráficos y demás en archivos separados, con FAT por ejemplo?
Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderás trucos para resolver tus dudas antes.