[Bennu Module] mod_beep

Started by FreeYourMind, February 22, 2010, 08:13:02 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SplinterGU

ahora si... no pide nada, pero no hace nada... pongo codigo de ejemplo...


import "mod_beep";

begin

Beep(329,300); //E
Beep(493,300); //B
Beep(698,300); //F^
Beep(659,600); //E^

Beep(783,300); //G^
Beep(698,300); //F^
Beep(659,600); //E^

Beep(329,100);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(392,250);
Beep(440,200);
Beep(587,300);

Beep(349,250);
Beep(587,500);

Beep(329,300);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(783,300);
Beep(698,300);
Beep(659,600);

Beep(329,100);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(392,250);
Beep(440,200);
Beep(587,300);

Beep(349,250);
Beep(587,400);

end


probe tambien poner un loop con frame... no hace nada...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

No puede ser, si a mi me va, lo probe incluso con la 3.

    set_mode(m320x200);
    set_fps(60, 0);
    /*
    beep(100, 300); // Freq, Tiempo
    beep(50, 300);
    beep(150, 300);
    beep(100, 300);
    beep(150, 300);
    beep(50, 600);
    beep(200, 500);
    beep(230, 400);
    beep(100, 700);
    */

/*   
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
Beep(876,500);
Beep(982,500);
Beep(1050,500);

*/

Beep(329,300); //E
Beep(493,300); //B
Beep(698,300); //F^
Beep(659,600); //E^

Beep(783,300); //G^
Beep(698,300); //F^
Beep(659,600); //E^

Beep(329,100);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(392,250);
Beep(440,200);
Beep(587,300);

Beep(349,250);
Beep(587,500);

Beep(329,300);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(783,300);
Beep(698,300);
Beep(659,600);

Beep(329,100);
Beep(493,300);
Beep(698,300);
Beep(659,600);

Beep(392,250);
Beep(440,200);
Beep(587,300);

Beep(349,250);
Beep(587,400);

/*
Beep(739.99, 210);
Beep_Sleep(1600);
Beep(739.99, 210);
*/


   
    loop
    frame; end
END

FreeYourMind

Quote from: DCelso on February 22, 2010, 11:24:45 PM
eres mas duro que arturo, mira que te cuesta dejar el src :D

Que va, si no tiene nada, sólo llama directamente al beep de C y lo exporta en funciones de Bennu, nada nuevo para ti ni para nadie, no lo puse porque sencillamente estoy utilizando otro modulo al crear este pequeño modulo, o sea, ni tiene su proprio modulo, ya que comente otras funciones y puse estas, como iba a poner basura del otro que todavia ni siquierá lo tengo preparado para sacarlo (y lo que me queda ademas). Esto sólo fue un experimento, que me alegro el día por cierto, he vuelto al tiempo de qbasic cuando me curraba musiquillas para el speaker  ;D

SplinterGU

sera cosas de wine...

alguien mas puede confirmar si le va?
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

Tiene que funcionar vamos, si va en el mio, no puedes reiniciar el wine ? Igual se quedo algo pillado en memoria.

SplinterGU

el wine es una aplicacion... pero no hace nada me refiero a que ejecuta todo y sale en decimas de segundo...

a vos te puede funcionar porque tenes el entorno armado de cierta forma, por eso te iba la opengl... pero bueno, nada... deberia funcionar, es algo bastante basico...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

en mi windows xp con el último bennu y el mod beep a secas va de poca madre, no me pide nada de nada.
el juego de sonidos que has puesto Splinter me recuerda a un juego de spectrum pero no caigo ahora cual es, lo hiciste a posta o es casualidad ;D
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

FreeYourMind

Lo he puesto yo, era un ejemplo, es mera casualidad.
Bueno, por lo menos se confirma que funciona en tu máquina.
Me voy a dormir, mañana a ver si el crio ese me pasa la del super mario que esta muy bien recreada. Ciao.

SplinterGU

me gusta este hilo, lastima que no funciona en linux... a menos que el amigo ponga el codigo... no quiero tener que hacerme una lib yo...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

FreeYourMind

Jo, ostias con el código, ;)

toma a ver si te sirve ;)

int beep(INSTANCE *my, int *params, char *title[])
{
        Beep(params[0], params[1]);
}

int beep_sleep(INSTANCE *my, int *params, char *title[])
{
        Sleep(params[0]);
}

Tambien quieres que te enseñe como se exportan a funciones Bennu ;) ???

PS: ya se que tiene errores de parametros, etc, etc, pero funciona ;)

SplinterGU

#25
jajaja... dale, si me explicas como se hacen las dlls para bennu quizas me atreva a hacer un modulo... sino no...

wait! eso esta mal, vas a hacer que la aplicacion caiga... no puedes hacer eso cuando se espera otra cosa...

quita ese parametro title... por eso quizas no me funciona en linux...

otro detalle, esas funciones no son de C, son de windows, por eso no podras hacerlo portable...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

DCelso

Que diver, recomponiendo mis canciones que tocaba al organillo de peque, aquella época en que tener un ordenata era todo un privilegio y nos divertíamos con la casio haciendo ruidos o pulsando la demo y diciendo que eras tu el que tocaba :D.
menos mal que me hice una tabla con la frecuencia de las notas musicales.
Por cierto, es una lástima que no acepte float el beep ese, las frecuencias de las notas no son todo lo exactas que deberían ser, yo por si acaso he puesto el valor real de frecuencia que deben de tener, ahora mismo bennu los redondea a enteros y no se escucha la nota todo lo real que debería ser pero da el pego.
A ver si alguien sabe qué cancion es esta :D.

import "mod_beep";

#define DO_1 65.406
#define DOsos_1 69.296
#define RE_1 73.416
#define REsos_1 77.782
#define MI_1 82.407
#define FA_1 87.307
#define FAsos_1 92.499
#define SOL_1 97.999
#define SOLsos_1 103.826
#define LA_1 110
#define LAsos_1 116.541
#define SI_1 123.471

#define DO_2 130.813
#define DOsos_2 138.591
#define RE_2 146.832
#define REsos_2 155.563
#define MI_2 164.814
#define FA_2 174.614
#define FAsos_2 184.997
#define SOL_2 195.998
#define SOLsos_2 207.652
#define LA_2 220
#define LAsos_2 233.082
#define SI_2 246.942

#define DO_3 261.626
#define DOsos_3 277.183
#define RE_3 293.665
#define REsos_3 311.127
#define MI_3 329.628
#define FA_3 349.228
#define FAsos_3 369.994
#define SOL_3 391.995
#define SOLsos_3 415.305
#define LA_3 440
#define LAsos_3 466.164
#define SI_3 493.883

#define DO_4 523.251
#define DOsos_4 554.365
#define RE 4 587.33
#define REsos_4 622.254
#define MI_4 659.255
#define FA_4 698.456
#define FAsos_4 739.989
#define SOL_4 783.991
#define SOLsos_4 830.609
#define LA_4 880
#define LAsos_4 932.328
#define SI_4 987.767

#define DO_5 1046.502
#define DOsos_5 1108.731
#define RE_5 1174.659
#define REsos_5 1244.508
#define MI_5 1318.51
#define FA_5 1396.913
#define FAsos_5 1479.978
#define SOL_5 1567.982
#define SOLsos_5 1661.219
#define LA_5 1760
#define LAsos_5 1864.655
#define SI_5 1975.533

#define DO_6 2093.005
#define DOsos_6 2217.461
#define RE_6 2349.318
#define REsos_6 2489.016
#define MI_6 2637.02
#define FA_6 2793.826
#define FAsos_6 2959.955
#define SOL_6 3135.963
#define SOLsos_6 3322.438
#define LA_6 3520
#define LAsos_6 3729.31
#define SI_6 3951.066

#define DO_7 4186.009
#define DOsos_7 4434.922
#define RE_7 4698.636
#define REsos_7 4978.032
#define MI_7 5274.041
#define FA_7 5587.652
#define FAsos_7 5919.911
#define SOL_7 6271.927
#define SOLsos_7 6644.875
#define LA_7 7040
#define LAsos_7: 7458.62
#define SI_7 7902.133

#define DO_8 8372.018
#define DOsos_8 8869.844
#define RE_8 9397.273
#define REsos_8 9956.063
#define MI_8 10548.082
#define FA_8 11175.303
#define FAsos_8 11839.822
#define SOL_8 12543.854
#define SOLsos_8 13289.75
#define LA_8 14080
#define LAsos_8 14917.24
#define SI_8 15804.266

begin

Beep(DO_2,200); //E
Beep(RE_2,200);
Beep(MI_2,200);
Beep(MI_2,300);

Beep(DO_2,200);
Beep(RE_2,200);
Beep(MI_2,200);
Beep(MI_2,300);

Beep(DO_2,200);
Beep(RE_2,200);
Beep(MI_2,400);

Beep(SOL_2,200);
Beep(FA_2,200);
Beep(MI_2,200);
Beep(RE_2,200);
Beep(RE_2,300);
Beep(RE_2,200);
Beep(MI_2,200);
Beep(FA_2,200);
Beep(FA_2,300);
Beep(MI_2,200);
Beep(RE_2,200);
Beep(MI_2,200);
Beep(MI_2,300);

Beep(RE_2,200);
Beep(DO_2,200);
Beep(RE_2,400);
Beep(FA_2,200);
Beep(MI_2,200);
Beep(RE_2,200);
Beep(DO_2,400);

end
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

DCelso

splinter, encontré esto para linux, podría integrarse con una macro en el módulo para que sirva para los SOS.

http://www.frank-buss.de/beep/index.html
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

SplinterGU

excelente... si, se podria usar...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Juas, creo que podríamos dar un premio a la librería mas friki... o más retro :D
¿En serio sería portable a la Wiz y todo? La wiz no tiene buzzer, no se yo si...
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)