Problemas con constantes portando a wii.

Started by Drumpi, May 03, 2011, 11:55:02 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Drumpi

Hola a todos:

Dije que hoy iba a hacer mi primera prueba de port a Wii, y la he hecho.
He descargado el port desde googlecode, la bennugd-rc1~refresh1.tar.bz2, así como los tres ejemplos de mod_wpad y los dos de mod_joy.
He conseguido compilar y ejecutar con éxito los ejemplos 1 y 3 de mod_wpad, pero no el 2: el HC no muestra los datos del xml (sñolo los nombres de las carpetas, el de la de compilación y la de ejecución), y sin embargo ejecuta el BGDC sin parámetros, pese a que el XML es el mismo de test3 con cambio en los nombres.

Pero ese no es el problema. He intentado compilar mi código y me dió error porque no reconocía la constante JOY_HAT_UP de la libjoy, pese a haber incluido la mod_joy.
Decidí declararla a mano porque me corría prisa la prueba y no me reconoció la constante _Z (sí, importé la mod_key).
De nuevo con prisas prescindí del código que usaba teclado, pero me dijo que no reconocía SCROLL (estructura global predefinida con los datos de los 10 scrolls) y de este no puedo prescindir.

¿Hay algún problema con las constantes y globales en el port? También he visto que había una lista de módulos portados y sin portar, y he visto que la mod_m7 está en la de no portados, y la mod_scroll ni siquiera aparece. He supuesto que estaba desactualizada, o juegos como SoRR o Eeeek no funcionarían (usan scrolls). ¿El modo7 está soportado?

PD: el juego, sustituyendo las funciones que usan cosas específicas de WII, por otras que hacen lo mismo para PC, funciona perfectamente en windows.
El modo7 no funciona con las funciones de escalado 2X, ni con filtro ni sin filtro.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Drumpi

¿Hola? ¿alguna sugerencia? No suelo pedir las cosas con prisas, pero si no resuelvo esto, no puedo seguir avanzando :(
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

La momia que fuma

Aunque también estoy con Wii la verdad es que no sabria que decirte...a mi la estructura de scroll me la reconoce perfectamente, y en cuanto al joy aun no me he metido con la cruceta (Y no creo que me llegue a hacer falta con el tipo de juego que estoy haciendo) y no he tenido que usar esa constante... :-\

No se como funciona un hat de joystick, pero si devuelve valores true/false en lugar de valores raros igual hasta lo tienes mapeado "de serie" a alguna tecla para poder usar key()...lo digo porque los botones A y B del wiimote ademas de poder leerlos con las funciones de joystick estan mapeados a mouse.left y mouse.right (No creo que sea el caso para la cruceta, pero bueno, quien sabe)

Habrá que esperar a que se pase por aqui Josebita que es el que controla de esto...

Drumpi

El hat del joystick devuelve un entero, en el que se usan los 4 bits menos significativos como flags indicando qué dirección se ha pulsado (1 para arriba, 2 para derecha, 4 para abajo y 8 para izquierda, y funcionan como los FLAGS que estamos acostumbrados a usar). Para facilitarlo existen unas constantes predefinidas, que son las que me dan problemas.
http://wiki.bennugd.org/index.php?title=Joy_gethat

Lo de A y B como botones de ratón tienen una pega, y es que no funcionan si no estás apuntando a la pantalla, que es igual que lo que comentaba sobre el sensor de rotación del eje y.

Prueba a asignar JOY_HAT_UP a una variable sin uso (supongo que usas la mod_joy), a ver si te funciona en PC y en WII, no vaya a ser que sea mi versión del port.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

La momia que fuma

Pozí, a mi me funciona, tendras una versión vieja o algo...

Yo la que uso ahora mismo creo que es esta si mal no recuerdo

Drumpi

Ese enlace me lleva a:
http://code.google.com/p/bennugd-monolithic/downloads/detail?name=bennugd-rc1~refresh1.tar.bz2
El cual es la versión que tengo, la que trae chipmunk integrado.

No sé, lo único que se me ocurre es que te pase las carpetas de apps y lo intentes tú, de todas maneras, lo único que tengo hecho es el nivel 3 de SBTime separado del resto del código, y el control adaptado al wiimote en horizontal (obviamente, sin probar).
Vamos, si quieres.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

La momia que fuma

Ok, pasamelo, a ver si vemos por que falla

Drumpi

Como no descarto alguna tontuna por mi parte (error de código), pongo aquí el código básico (que en estos dos días le he dado un empujón al proceso protagonista bastante importante:
http://drumpi.se32.com/cosas/sonic_racing.zip

Si te da error, las constantes las he redifinido en keys_wii.h.
De todas formas, voy a probar una cosa, aunque no creo que se me haya olvidado un END entre los .h.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

FreeYourMind

Me lo voy a guardar, por si te pillo una linea de codigo igual despues en el juego para mi concurso, ya que se prohibe publicarlo antes de finalizar el concurso  ;D

Drumpi

#9
Quote from: FreeYourMind on May 05, 2011, 05:37:30 PM
Me lo voy a guardar, por si te pillo una linea de codigo igual despues en el juego para mi concurso, ya que se prohibe publicarlo antes de finalizar el concurso  ;D

Genial, menos trabajo, porque pensaba usarlo para el Thunder Blade, y como se me prohibe usarlo, pues ya no puedo participar :D :D :D

PD: fracaso en la comprobación con la Wii, y encima se me han corrompido las carpetas de la SD con los códigos de test, no se ha salvado ni una. Por suerte no ha afectado al resto de programas.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

FreeYourMind

Ui ui, esa Dreamcast modificada con entrada SD sigue soltera entonces ;D

La momia que fuma

Joer xD

Es que no incluyes ni un solo modulo, macho xD

Aunque el port de wii sea monolítico hay que incluir los modulos igual para que reconozca las constantes, globales y funciones que vayas a usar...como en Pc

De entrada me daba el error de no reconocer la estructura scroll, añadi modulos a cascoporro en el prg principal y ya pasó de ahi pero cascó por haberle redefinido tu joy_hat_up con el error de que ya estaba definida (o sea que ya la reconoce por mod_joy), ahi ya me canse de ir de la sala del ordenador al dormitorio donde tengo la wii SD en mano :P

Quote from: Drumpi on May 03, 2011, 11:55:02 PMHe intentado compilar mi código y me dió error porque no reconocía la constante JOY_HAT_UP de la libjoy, pese a haber incluido la mod_joy.

Yo el único import que te he visto es uno de mod_wpad....y esta comentado xD

Drumpi

Emmm, claro, yo uso bgdc.import, ahí están todos los módulos que uso... salvo los exclusivos de Wii ;D

O sea, que el fichero bgdc.import no funciona en Wii, ¿no? tomo nota y mañana pruebo.
Muchas gracias.

PD: En mi caso es desde mi cuarto a la salita, y hay 15 escalones y un pasillo (corto) entre ambos :D :D :D
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Drumpi

Efectivamente, el problema era que no reconocía el bgdc.import, ahora ya he conseguido que me compile...

Pero no va: me ha dado un "Exception (DSI)" de esos, seguido de diversos mnemónicos y volcado de pila. Como es un error serio sospeché del modo de video, por lo que quité el scale_resolution y puse el set_mode a 640x480 8bits. El error no salió, pero la pantalla sólo mostraba la parte inferior de color "verde exterior del gráfico del modo7", pero ni el scroll, ni los elementos de la GUI ni nada de nada (sólo la música, más rápida de lo normal, pero bueno, eso es porque está a 44KHz). No puedo decir si estaba funcionando o no porque aun no sé si los controles funcionan, y por muchos botones que pulsaba no había cambios (puede que funcionasen y el juego estuviese bloqueado, o bien que el personaje estuviese en la esquina del mapa, de espaldas al mismo, pero que no funcionasen los botones y no pudiese girar para verlo).

En fin, os he subido de nuevo el código con las modificaciones para que ande a:
http://drumpi.se32.com/cosas/sonic_racing.zip
A ver si le podeis echar un vistazo, yo estoy moralmente agotado ya (demasiadas escaleras hoy), y si no se le puede encontrar solución, abandono el proyecto (lo dejo para otra competición).
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

josebita

En cuanto lo pueda probar os contesto.