[GCW Zero] BennuGD

Started by FreeYourMind, July 14, 2014, 06:57:23 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

FreeYourMind

Arreglado path al sdl-config....


Ahora el siguiente error, es un no acabar  ;D


file_png.c:287:37: error: 'png_info' no tiene un miembro llamado 'trans_values'
                ( ptr8[0] == info_ptr->trans_values.red   ) &&
                                     ^
file_png.c:288:34: error: 'png_info' no tiene un miembro llamado 'trans_values'
             ( ptr8[1] == info_ptr->trans_values.green ) &&
                                  ^
file_png.c:289:34: error: 'png_info' no tiene un miembro llamado 'trans_values'
             ( ptr8[2] == info_ptr->trans_values.blue  )

SplinterGU

esos fuentes no son los ultimos... eso ya esta fixeado...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

No lo son pero es una version estable y que compila, ya  que fué la primera que porte a Pandora...

SplinterGU

nop, no compila... no es compatible con la nueva libpng... por eso no compila.

toma el file_png del oficial o modificalo en base al oficial.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind


SplinterGU

de nada... avisa cualquier cosa
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

currando a las 5 de la mañana antes de salir al curro xDDD

He cambiado la mod_map por la ultima, tengo el mismo error, creo que el error esta en la version de la pnglib del toolchain, en este codigo de DC Elso:


/* DCelso */
#if (PNG_LIBPNG_VER>=10500)
                 if (( color == PNG_COLOR_TYPE_RGB ) && ( png_get_bit_depth(png_ptr, info_ptr) == 24 ) && ( png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS) ))
#else
                 if (( color == PNG_COLOR_TYPE_RGB ) && ( info_ptr->pixel_depth == 24 ) && ( info_ptr->valid & PNG_INFO_tRNS ))
#endif
                 {
                     uint8_t * ptr8 = (uint8_t *)orig;
                     if (
#if (PNG_LIBPNG_VER>=10500)
                         ( ptr8[0] == trans_color->red   ) &&
                         ( ptr8[1] == trans_color->green ) &&
                         ( ptr8[2] == trans_color->blue  )
#else
                         ( ptr8[0] == info_ptr->trans_values.red   ) &&
                         ( ptr8[1] == info_ptr->trans_values.green ) &&
                         ( ptr8[2] == info_ptr->trans_values.blue  )
#endif
                        )
                         *ptr32 = 0;
                 }
                 ptr32++, orig++ ;
             }
         }
     }
     else
     {
#if (PNG_LIBPNG_VER>=10500)
         png_color_16p trans_color = 0;
         png_get_tRNS( png_ptr, info_ptr, 0, 0, &trans_color);
#endif

SplinterGU

desconozco la version de png que tenes, posiblemente haya que corregir el #if...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

Luego lo miro, pero ya he preguntado a los responsables por la version del toolchain

FreeYourMind

me han respondido 2:

a)  Version 16, IIRC.   


b)  /usr/lib/libpng14.so.14


entonces a modo lamer, que modificaciones hay que hacer sabiendo ya la version ?

SplinterGU

a) no entiendo a que te referis.

b) es version 1.4

fijate si en el png.h esta definida la funcion png_get_bit_depth

si esta, entonces cambia los

#if (PNG_LIBPNG_VER>=10500)

por

#if (PNG_LIBPNG_VER>=10400)

y decime a ver que onda
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

funciona gracias! ya queda poco, ya ha compilado mas modulos, ahora se detiene aqui:


mod_mem.c: En la función 'modmem_memory_free':
mod_mem.c:138:20: error: no se conoce el tamaño de almacenamiento de 'meminf'
     struct sysinfo meminf;
                    ^
mod_mem.c: En la función 'modmem_memory_total':
mod_mem.c:176:20: error: no se conoce el tamaño de almacenamiento de 'meminf'
     struct sysinfo meminf;
                    ^
make[1]: *** [mod_mem_la-mod_mem.lo] Error 1

FreeYourMind

Bueno he comentado estas dos secciones del codigo y he finalizado la compilación  ;D ;D ;D

A ver si me puedes ayudar a tratar este codigo, y ver que funciones se pierden al estar comentadas devolviendo ambas -1

FreeYourMind

Pruebas:


1 - TODO OK! Ya se puede usar este runtime en lugar del instalado en la consola, que es monolitico y este es modular igual a las versiones
de Pandora, Wiz y Caanoo.

2 - Permite usar tus modulos para bennugd, he probado la yeti que he compilado para mi juego Hamster's Escape 3D y todo va perfecto.

3 - Incluye el compilador, si teneis problemas con vuestro DCB ahora lo podeis compilar en la consola, compila y ejecuta perfecto.

Os dejo una fotaca del Hamster's Escape 3D, va super fluido mucho mejor que en las demás consolas.