Batch + Diskettera = Música

Iniciado por yopcool, 29 Octubre 2011, 02:11 AM

0 Miembros y 1 Visitante están viendo este tema.

yopcool

Hola!

Me di cuenta hace poco, que en mi vieja Pentium 3 que estoy 'restaurando', cuando intento acceder a la unidad de diskettes, y no hay ningún diskette dentro, la diskettera hace un sonido (como intentando 'leer' el diskette que no está).

Y me pregunté, no habrá algún comando en Batch para 'intentar leer la diskettera', de tal manera que pueda hacer música con ella?

Estilo...

sonido
<sleep>
sonido
sonido
sonido
<sleep>
sonido
<sleep>


Algo así... Poner simplemente 'a:' en el símbolo del sistema funciona para hacerla sonar, pero me tira un cartel que dice que no se pudo leer,  y que presione reintentar o cancelar, etc...


Gracias.

Geormarsch

Podrias generar un bucle...
pero el problema es lo que te pregunta reintentar/cancelar

Código (dos) [Seleccionar]
@echo off
:bucle
cd A:\
goto bucle
"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"

yopcool

#2
Gracias por responder!


Estuve viendo como hacer sonar el beep interno, bastante fácil, con echo <Ctrl P> <Ctrl G> en el editor Edit (por si alguien que no supiera esté leyendo esto!).

Pero me gustaría 'mezclarla' con el sonido de la disquetera para tener 2 ritmos diferentes, como 2 instrumentos :).

Toda ayuda es bien recibida.

Edit: Estaba pensando en que, tal como el sonido del beep es Ctrl G, o Alt 7 (séptimo lugar en la tabla ascii) podría usar un comando ascii como el 24 que es cancel o el Alt 27 que es escape, pero la ventana esa que aparece diciendome 'reintentar' o 'cancelar' nisiquiera está focuseada! Así que no sirve de nada hacer eso, creo...

Grave

"y el conocimiento os hara libres"

Module Console1
   Console.Write("Hello Word")
   Console.ReadLine()
End Module
http://aion.cr0n0triger.operaunite.com/

Geormarsch

Man En Mi Escuela, Son computadores Fiscales y si yo presiono repetidamente el shift muchas veces, Me Aparece una ventana sin tocar nada presiono enter y luego presiono shift y suena un Beep si lo presiono denuevo suena denuevo y asi hasta que para de sonar, para volverr a escuchar ese ruido se repite todo denuevo.

PD: En mi computador no funciona
"Comentar el código es como limpiar el cuarto de baño; nadie quiere hacerlo, pero el resultado es siempre una experiencia más agradable para uno mismo y sus invitados"

leogtz

¿Y si mejor creas música como tal?

Código (bash) [Seleccionar]
@ECHO OFF
::MUSIC.BAT
::LEO GUTIERREZ .. ROCKOX
;IF /I ["%1"]==[""] (;GOTO:SYNTAX)
;IF /I ["%1"]==["-H"] (;GOTO:SYNTAX)
;IF /I ["%1"]==["/?"] (;GOTO:SYNTAX)
:NOTAS
;IF /I ["%2"]==[""] (;GOTO:SYNTAX)
;IF %2 GTR 3 (
;ECHO.NUMERO DE ESCALA DEMASIADO ALTO!. & ECHO:
;GOTO:SYNTAX
)
;IF %2 LSS 1 (
;ECHO.NUMERO DE ESCALA DEMASIADO BAJO!. & ECHO:
;GOTO:SYNTAX
)
;IF %2 EQU 1 (
;IF /I ["%1"]==["C"] (NIRCMD BEEP 262 600 & GOTO:EOF)
;IF /I ["%1"]==["C#"] (NIRCMD BEEP 277 600 & GOTO:EOF)
;IF /I ["%1"]==["D"] (NIRCMD BEEP 294 600 & GOTO:EOF)
;IF /I ["%1"]==["D#"] (NIRCMD BEEP 311 600 & GOTO:EOF)
;IF /I ["%1"]==["E"] (NIRCMD BEEP 330 600 & GOTO:EOF)
;IF /I ["%1"]==["F"] (NIRCMD BEEP 350 600 & GOTO:EOF)
;IF /I ["%1"]==["F#"] (NIRCMD BEEP 370 600 & GOTO:EOF)
;IF /I ["%1"]==["G"] (NIRCMD BEEP 393 600 & GOTO:EOF)
;IF /I ["%1"]==["G#"] (NIRCMD BEEP 416 600 & GOTO:EOF)
;IF /I ["%1"]==["A"] (NIRCMD BEEP 440 600 & GOTO:EOF)
;IF /I ["%1"]==["A#"] (NIRCMD BEEP 466 600 & GOTO:EOF)
;IF /I ["%1"]==["B"] (NIRCMD BEEP 494 600 & GOTO:EOF)
)
;IF %2 EQU 2 (
;IF /I ["%1"]==["C"] (NIRCMD BEEP 525 600 & GOTO:EOF)
;IF /I ["%1"]==["C#"] (NIRCMD BEEP 555 600 & GOTO:EOF)
;IF /I ["%1"]==["D"] (NIRCMD BEEP 590 600 & GOTO:EOF)
;IF /I ["%1"]==["D#"] (NIRCMD BEEP 623 600 & GOTO:EOF)
;IF /I ["%1"]==["E"] (NIRCMD BEEP 660 600 & GOTO:EOF)
;IF /I ["%1"]==["F"] (NIRCMD BEEP 699 600 & GOTO:EOF)
;IF /I ["%1"]==["F#"] (NIRCMD BEEP 740 600 & GOTO:EOF)
;IF /I ["%1"]==["G"] (NIRCMD BEEP 784 600 & GOTO:EOF)
;IF /I ["%1"]==["G#"] (NIRCMD BEEP 830 600 & GOTO:EOF)
;IF /I ["%1"]==["A"] (NIRCMD BEEP 880 600 & GOTO:EOF)
;IF /I ["%1"]==["A#"] (NIRCMD BEEP 930 600 & GOTO:EOF)
;IF /I ["%1"]==["B"] (NIRCMD BEEP 990 600 & GOTO:EOF)
)
;IF %2 EQU 3 (
;IF /I ["%1"]==["C"] (NIRCMD BEEP 1048 600 & GOTO:EOF)
;IF /I ["%1"]==["C#"] (NIRCMD BEEP 1110 600 & GOTO:EOF)
;IF /I ["%1"]==["D"] (NIRCMD BEEP 1176 600 & GOTO:EOF)
;IF /I ["%1"]==["D#"] (NIRCMD BEEP 1246 600 & GOTO:EOF)
;IF /I ["%1"]==["E"] (NIRCMD BEEP 1320 600 & GOTO:EOF)
;IF /I ["%1"]==["F"] (NIRCMD BEEP 1395 600 & GOTO:EOF)
;IF /I ["%1"]==["F#"] (NIRCMD BEEP 1480 600 & GOTO:EOF)
;IF /I ["%1"]==["G"] (NIRCMD BEEP 1569 600 & GOTO:EOF)
;IF /I ["%1"]==["G#"] (NIRCMD BEEP 1660 600 & GOTO:EOF)
;IF /I ["%1"]==["A"] (NIRCMD BEEP 1764 600 & GOTO:EOF)
;IF /I ["%1"]==["A#"] (NIRCMD BEEP 1880 600 & GOTO:EOF)
;IF /I ["%1"]==["B"] (NIRCMD BEEP 1980 600 & GOTO:EOF)
)
:SYNTAX
;ECHO:%~NX0 
;ECHO:
;ECHO:MODO DE USO :
;ECHO:
;ECHO:%~NX0 [-NOTA] [#] [1-3]
;ECHO:
;ECHO:LAS SIGUIENTES NOTAS ESTAN DISPONIBLES:
;ECHO:C : DO 
;ECHO:D : RE 
;ECHO:E : MI 
;ECHO:F : FA 
;ECHO:G : SOL 
;ECHO:A : LA 
;ECHO:B : SI 
;ECHO:
;ECHO:# : ALTERACION SOSTENIDO.
;ECHO:[1-3] : Numero de escala.
;ECHO:
;ECHO:EJEMPLOS:
;ECHO:%~NX0 C 2
;ECHO:%~NX0 G# 3
GOTO:EOF


Se requiere de nircmd.exe:
http://www.nirsoft.net/utils/nircmd.zip
Código (perl) [Seleccionar]

(( 1 / 0 )) &> /dev/null || {
echo -e "stderrrrrrrrrrrrrrrrrrr";
}

http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com