Autor Tema: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?  (Leído 1919 veces)

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

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
 Saludos a quien entre a leer el post. Mi duda es sencilla, tal vez en el título no se entienda pero voy a explicarme:
Necesito que al ejecutar mi archivo .bat se abra la consola y me de a elegir el .exe que quiero ejecutar, ya sea en carpetas distintas para tener un ejecutable que me permita acceder a una trilogía desde un solo click y no tener 3 accesos directos distintos o en un mismo juego que tenga distintos ejecutables para versiones en blanco y negro, VGA u otras opciones, espero haberme dado a entender, gracias por leerlo.



Desconectado SkaZZ

  • Webmasters
  • HAL9000
  • *****
  • Mensajes: 2426
  • País: es
  • Sexo: Masculino
  • Fecha de registro: Noviembre 21, 2004, 20:19:49 pm
  • ZzZzzZz... Dark Souls... ZzZzzZz...
    • Ver Perfil
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #1 en: Abril 14, 2023, 08:20:35 am »
Espero no cometer error tipográficos...

Código: [Seleccionar]
@ECHO OFF
CLS

ECHO 1. Soy la opción 1, nena!
ECHO 2. Soy la opción 2, nene!
ECHO 3. Bye
ECHO.

CHOICE /C 123 /M "Elige, carawebo:"

IF ERRORLEVEL 3 GOTO EXIT
IF ERRORLEVEL 2 GOTO OP2
IF ERRORLEVEL 1 GOTO OP1

:OP1
ECHO Has elegido la opción 1... eres una persona impar.
GOTO EXIT

:OP2
ECHO Has elegido la opción 2... eres una persona par.
GOTO EXIT

:EXIT
ECHO Bye!



      //////       Hora de abandonware llegó, coge a tus
     (o   O)       amigos y vámonos. Con Kendo el friki y
       (_)         SkaZz el chiflado, lo pasaremos guay.
--oooO-----Oooo--  ¡Hora de abandonware!

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #2 en: Abril 14, 2023, 13:05:13 pm »
Muchas gracias SkaZZ, lo pondré en práctica.   :)



Desconectado SkaZZ

  • Webmasters
  • HAL9000
  • *****
  • Mensajes: 2426
  • País: es
  • Sexo: Masculino
  • Fecha de registro: Noviembre 21, 2004, 20:19:49 pm
  • ZzZzzZz... Dark Souls... ZzZzzZz...
    • Ver Perfil
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #3 en: Abril 14, 2023, 16:58:01 pm »
Cambia mis estupideces por código funcional y lo tienes.
Explico el código que se me olvidó:

@ECHO OFF - No mostrará los comandos.
CLS - Limpiar pantalla (CLearScreen)

ECHO [texto] - Muestra texto en pantalla
ECHO. - CF & LF (o, en forma más sencilla, salto de línea)

CHOICE /C xxx /M [texto] - /C indicas las posibles elecciones y /M muestras el texto. Funciona como un INPUT.

IF ERRORLEVEL x GOTO [etiqueta] - Condicional que determina la elección realizada con ERRORLEVEL y x como valor. GOTO es un salto a una [etiqueta]

:[texto] - Etiqueta, es necesario poner ':' para que los sea.

¿Por qué envío a GOTO al final de las elecciones? Porque si no, el código se lee de arriba a abajo y saltaría a la la :OP2
Para poner el ejecutable, simplemente cambia el ECHO con el texto tonto, y pon el ejecutable .EXE según tu diseño. No te olvides del GOTO al EXIT, porque si no te ejecutará el segundo .EXE.
« Última modificación: Abril 14, 2023, 17:05:47 pm por SkaZZ »



      //////       Hora de abandonware llegó, coge a tus
     (o   O)       amigos y vámonos. Con Kendo el friki y
       (_)         SkaZz el chiflado, lo pasaremos guay.
--oooO-----Oooo--  ¡Hora de abandonware!

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #4 en: Abril 14, 2023, 18:40:48 pm »
Perfecto, gracias.  :lol:



Desconectado Otaku_fanatic

  • Apple II
  • *
  • Mensajes: 94
  • País: es
  • Sexo: Masculino
  • Fecha de registro: Diciembre 17, 2019, 20:47:10 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #5 en: Abril 14, 2023, 19:39:31 pm »
Me parece muy interesante, me lo apunto por si hago un .BAT desde un .TXT, nunca se sabe.

Gracias.

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #6 en: Abril 15, 2023, 14:51:12 pm »
Me surge la duda, ¿si tengo dos carpetas MUSIC y quiero que en un EXE se reproduzca el audio español y en otro el inglés por ejemplo, eso cómo lo tengo que hacer? Supongamos que tengo MUSIC (Para reproducir con el archivo que tengo en /GAME) y MUSIC2 (Para el que tengo en GAME2).

PD: Solo pude conseguir que me de a elegir entre Y o N, en las opciones, no sé que hice mal que no me permite escribir los números, ¿habrá algún ejemplo ya configurado? Me queda medio chapucero (de por si soy chapucero pero quiero dejar de serlo algún día).  :lol:
« Última modificación: Abril 15, 2023, 15:34:23 pm por Darkoz Krull »



Desconectado SkaZZ

  • Webmasters
  • HAL9000
  • *****
  • Mensajes: 2426
  • País: es
  • Sexo: Masculino
  • Fecha de registro: Noviembre 21, 2004, 20:19:49 pm
  • ZzZzzZz... Dark Souls... ZzZzzZz...
    • Ver Perfil
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #7 en: Abril 15, 2023, 23:12:46 pm »
Ponlo aquí. Si quieres lo de la música, puedes usar MD para renombrar las carpetas.



      //////       Hora de abandonware llegó, coge a tus
     (o   O)       amigos y vámonos. Con Kendo el friki y
       (_)         SkaZz el chiflado, lo pasaremos guay.
--oooO-----Oooo--  ¡Hora de abandonware!

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #8 en: Abril 15, 2023, 23:52:25 pm »
[autoexec]
@echo off
CLS

ECHO 1. Fantasy General (ESP) Yes.
ECHO 2. Mini-Campaign (ING) No.
ECHO 3. Presiona CTRL+F9 para salir.

CHOICE /C Presiona "Y" para jugar Fantasy General (ESP) o "N" para la Mini-Campaign (ING).

IF ERRORLEVEL 2 GOTO OP2
IF ERRORLEVEL 1 GOTO OP1

:OP1
ECHO
mount c .\GAME
imgmount D game.cue -t iso
mixer cdaudio 50
mixer master 80
config -securemode
cls
c:
cd fg
call fg.bat
exit
GOTO EXIT

:OP2
ECHO
mount c .\GAME2
imgmount D game.cue -t iso
mixer cdaudio 50
mixer master 80
config -securemode
cls
c:
cd fg
call fg.bat
exit
GOTO EXIT



Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #9 en: Abril 15, 2023, 23:53:18 pm »
Eso tengo de momento, como no pude hacer que me acepte los números, solo me deja escribir "Y" o "N" hice la chapuza esa.



Desconectado nagual

  • IBM Roadrunner
  • ****
  • Mensajes: 1220
  • País: es
  • Fecha de registro: Septiembre 09, 2017, 13:08:44 pm
  • 4 a free new world
    • Ver Perfil
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #10 en: Abril 16, 2023, 00:38:46 am »
Hola, !

Creo Tienes mal escrito el Choice, casi lo tenías pero deberías usar el esquema de skazz literalmente

Donde pusiste

CHOICE /N /C Presiona "Y" para jugar Fantasy General (ESP) o "N" para la Mini-Campaign (ING).

Deberías ponerlo asi

CHOICE /N /C12  Presiona "1" para jugar Fantasy General (ESP) o "2" para la Mini-Campaign (ING).



Creo así debería funcionar sino otro compañero te podrá indicar mejor

Aquí un ejemplo práctico,  puedes modificar los nombres de las elecciones a tu discreción,

@echo off

choice /n /c:123 Press key '1' or '2' or 'a':

if errorlevel==3 goto key_a
if errorlevel==2 goto key_2
if errorlevel==1 goto key_1

:key_1
echo Option one is the best
goto end

:key_2
echo Option two is for you
goto end

:key_a
echo AAAAAAAAAAAAAAAAAA
goto end

:end


Prueba mirar el. Cfg que hice en el juego Xwing Comannder español tiene un choice funcional  :)

Prueba el del wing commander verás que al abrir el juego el menu tiene un cuadrito con colores dibujado basado en el snv de Ignatus y el de la versión gog por si quieres darle más estilo a tus launchers  :)

Si copias la estructura te funcionará  ;)

https://www.abandonsocios.org/index.php?topic=15652.msg184054#msg184054

Citar
choice /c1234 /s Que Deseas Hacer, Comandante? [1-4]: /n
if errorlevel 4 goto TSM2
if errorlevel 3 goto TSM
if errorlevel 2 goto SM2
if errorlevel 1 goto WC

:WC
mount C .\C
# imgmount A  C:\A\WCOM_S1.ima C:\A\WCOM_S2.ima C:\A\WCOM_3.ima -t floppy
cls
c:
cd wing
wc
exit

:SM2
mount C .\C
cls
c:
cd wing
sm2
exit

:TSM
mount C .\C
cls
c:
cd wing
TRANSFER
exit

:TSM2
mount C .\C
cls
c:
cd wing
TRANS2
exit

Spoiler (click para mostrar/ocultar)


Para lo del Audio inglés o español otra idea es dejar preparadas 2 versiones del juego si ocupan poco y lanzar cada una independiente, sino el comando MD para renombrar como te indica skazz,  pones un audio en AUDIOSP y otro en AUDIOENG, y renombrar a AUDIO la que quieras,, lo que no se me ocurre ahora como devolverla a su estado original, habría que hacer antes una búsqueda para ver que carpeta falta y renombrar la Audio si existiera?  XD,  no se si la programación de los Bat permite esto,, a mi me limitó para crear un árbol de opciones encadenadas solo te permite opciones simples... quizá sería mejor usar un Copy *. * de AUDIOSP o AudioEng a Audio,  previo de un del Audio para dejar limpia la carpeta antes,,  yo de ms dos poco lo use siempre para abrir carpetas listar archivos y poco más, pero disfrutaba con ello desde los 486

Yo usaría 2 versiones del juego ya preparadas para cada audio que seguro no pesa tanto, o si?
« Última modificación: Abril 16, 2023, 01:10:27 am por nagual »
Temet Nosce
"Hay mas de un Universo por Explorar, muchos Ocultos mas alla de esta Realidad, mas bien,, Ocultos por esta Realidad,, porque cuando dejas de fijar tu Atención en lo Conocido, se abren las puertas a lo Desconocido,,, Si Dispones de la Energia Necesaria, Fija tu Silencio Interno,, usa tu Intento y Podras Cruzarlas Siempre que lo Desees,, pero no seas idiota, sino dispones de el poder suficiente, al otro lado tan solo te esperara la muerte "  Nagual Jo   :nes: 

Desconectado Darkoz Krull

  • Sinclair ZX Spectrum
  • **
  • Mensajes: 275
  • País: ar
  • Sexo: Masculino
  • Fecha de registro: Diciembre 14, 2017, 15:03:14 pm
    • Ver Perfil
    • Email
Re: ¿Cómo hacer que Dosbox me de a elegir 2 EXE distintos al ejecutar un BAT?
« Respuesta #11 en: Abril 16, 2023, 02:28:56 am »
Gracias, lo probaré.  ^-^
Respecto a la carpeta MUSIC, es que allí están las voces del juego en un track que tiene música al inicio y las voces al final, por eso cambian el idioma de las voces.  :(
« Última modificación: Abril 16, 2023, 03:49:12 am por Darkoz Krull »