Bennu Game Development

Foros en Español => Mesa de Ayuda => Topic started by: josebita on April 09, 2011, 04:19:36 PM

Title: Duda sobre get_modes()
Post by: josebita on April 09, 2011, 04:19:36 PM
¿Alguien ha usado get_modes()?
En el wiki el texto de ejemplo está en blanco y me está costando hacerla funcionar.

Agradecería un ejemplo de uso, así lo meto ya en la wiki.
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 09, 2011, 05:23:58 PM
en el foro hay ejemplo de uso.

pero cuidado, lo que muestra get_modes no siempre es lo que el monitor soporta... mas en las consolas.
Title: Re: Duda sobre get_modes()
Post by: josebita on April 09, 2011, 10:31:38 PM
No he encontrado nada en el foro sobre ello...
Y ¿En qué casos no dará lo que el monitor soporte?.
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 10, 2011, 10:47:24 PM
http://betatester.bennugd.org/snapshot/samples/

en wiz te da un monton de modos de video validos, pero solo funciona 320x240.
Title: Re: Duda sobre get_modes()
Post by: josebita on April 10, 2011, 11:31:31 PM
Muchas gracias :)
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 10, 2011, 11:35:27 PM
de nada... ahora no recuerdo si probe mode_is_ok... pero este ejemplo, da un monton de resoluciones validas en wiz, resoluciones, que obviamente producen un crash.
Title: Re: Duda sobre get_modes()
Post by: josebita on April 11, 2011, 12:16:32 AM
Ya veo, igual filtrando con mode_is_ok() va mejor. De todas formas, parece más un bug del driver en particular que del método, ¿no?.

He aprovechado para poner el ejemplo en el wiki.
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 11, 2011, 02:07:49 AM
si, sin dudas es un bug de la SDL o del driver del video (kernel o lo que fuera) que no estan filtrados los metodos validos, me suena mas a una compilacion estandard donde no se preocuparon mucho por limitar los modos invalidos.

no se si tambien pasa en caanoo, pero si no es correcto en uno, puedo suponer que puede ser incorrecto en mas plataformas.

como sea, no creo recordar que haya probado mode_is_ok, quizas esa si funcione, basado en los valores retornados con get_mode, tendria que probar cada uno con mode_is_ok.
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 11, 2011, 02:32:18 AM
Tengo mis 2 consolas wiz con la bateria muerta por completo, la estoy cargando, lamentablemente acabo de comprobar que por mas que la conecte al cable usb, si tiene la bateria baja, da el mensaje de bateria vacia y se apaga...

si alguien quiere probar el ejemplo, aca pongo el codigo, no olvidar capturar la salida de la ejecutacion de este dcb.


#ifdef __VERSION__
import "mod_say";
import "mod_video";
#endif

function get_test_modes(depth)
private
    int * modes;
    int w,h;
begin
    modes = get_modes(depth, MODE_FULLSCREEN);
    say (depth+"bit modes");
    say ("----------");
    if (!modes)
        say ("no video modes available!");
    elsif (modes == -1 )
        say ("any video mode available!");
    else
        while (*modes)
            w = *modes++;
            h = *modes++;
            say ("> " + w + " x " + h + " is " + ( mode_is_ok(w,h,depth,MODE_FULLSCREEN)?"OK": "ERROR" ));
        end
    end
    say ("");
end


Process Main()
Begin
    get_test_modes(8);
    get_test_modes(16);
    get_test_modes(24);
    get_test_modes(32);
End
Title: Re: Duda sobre get_modes()
Post by: SplinterGU on April 11, 2011, 02:50:41 AM
en caanoo da

QuoteFB_OpenMouse()
Using tslib touchscreen
8bit modes
----------
> 1408 x 1056 is OK
> 1280 x 1024 is OK
> 1152 x 864 is OK
> 1024 x 768 is OK
> 960 x 720 is OK
> 800 x 600 is OK
> 768 x 576 is OK
> 640 x 480 is OK
> 640 x 400 is OK
> 512 x 384 is OK
> 480 x 272 is OK
> 320 x 240 is OK
> 320 x 200 is OK
> 240 x 320 is OK

16bit modes
----------
> 1408 x 1056 is OK
> 1280 x 1024 is OK
> 1152 x 864 is OK
> 1024 x 768 is OK
> 960 x 720 is OK
> 800 x 600 is OK
> 768 x 576 is OK
> 640 x 480 is OK
> 640 x 400 is OK
> 512 x 384 is OK
> 480 x 272 is OK
> 320 x 240 is OK
> 320 x 200 is OK
> 240 x 320 is OK

24bit modes
----------
> 1408 x 1056 is OK
> 1280 x 1024 is OK
> 1152 x 864 is OK
> 1024 x 768 is OK
> 960 x 720 is OK
> 800 x 600 is OK
> 768 x 576 is OK
> 640 x 480 is OK
> 640 x 400 is OK
> 512 x 384 is OK
> 480 x 272 is OK
> 320 x 240 is OK
> 320 x 200 is OK
> 240 x 320 is OK

32bit modes
----------
> 1408 x 1056 is OK
> 1280 x 1024 is OK
> 1152 x 864 is OK
> 1024 x 768 is OK
> 960 x 720 is OK
> 800 x 600 is OK
> 768 x 576 is OK
> 640 x 480 is OK
> 640 x 400 is OK
> 512 x 384 is OK
> 480 x 272 is OK
> 320 x 240 is OK
> 320 x 200 is OK
> 240 x 320 is OK

obviamente esos modos no son validos.

viendo estos resultados en caanoo, no necesito verlos en wiz.

podrias joseba probar el ejemplo en wii?

gracias!