Ver Mensaje Individual
  #5  
Antiguo 05-07-2008, 00:16:46
Avatar de Japofran
Japofran Japofran is offline
Admin
Fecha de Ingreso: Mar 2006
Ubicación: Valladolid, España
Predeterminado Continuación (y 5 de 5)

El comando de DOSBox más importante que tenemos que aprender es "mount". Es algo difícil de comprender al principio, pero DOSBox no accede a nuestras unidades (discos) directamente. En su lugar debemos "montar" carpetas (o imágenes) como unidades "virtuales" de la sesión de DOSBox. Los nombres de nuestras unidades reales y los de las unidades virtuales de DOSBox no tienen nada que ver, aunque coincidan. Por ejemplo, podemos montar la carpeta raíz de nuestra unidad (real) C: como unidad (virtual) C: de DOSBox, pero también podemos montar cualquier carpeta de cualquier otra unidad real como unidad virtual C:, o como cualquier otra.

Podéis aprender a usar el comando mount en el README.txt de DOSBox, pero usando DOSBox bajo Windows, para montar una carpeta como disco duro virtual, el comando es simplemente de la forma

Código:
mount  (letra unidad virtual)  "(carpeta real)"
por ejemplo

Código:
mount c "d:\abandon"
Tened en cuenta que DOS no soporta nombres de archivo largos (nombre con más de 8 caracteres y extensión de 3), y por tanto DOSBox tampoco dentro de sus unidades virtuales (pero DOSBox no fallará sino que usará nombres acortados); sin embargo podéis montar como unidad virtual una carpeta cuyo nombre o los de su ruta sean largos (aunque en ese caso no debéis olvidaros las comillas), siempre que los de sus carpetas hijas no lo sean.

Para montar disquetes o CD-ROMS virtuales, usamos mount con el parámetro -t, seguido de floppy o cdrom según el caso. Por ejemplo, los siguientes comandos montarían una carpeta como disquete A y nuestra unidad de CD-ROM E: como unidad de CD-ROM virtual D: de DOSBox (fijaos cómo los nombres de las unidades real y virtual pueden coincidir o no indistintamente):

Código:
mount a "d:\abandon\juego\disco1" -t floppy
mount d "e:\" -t cdrom
También podemos montar imágenes en lugar de carpetas con el comando imgmount. (De hecho si algún CD con protección de copia no funciona en DOSBox, puede funcionar montar una imagen suya.) Al igual que antes tenéis todas sus instrucciones en el README.txt, por ejemplo para montar cierto archivo de imagen como CD-ROM virtual podría ser:

Código:
imgmount d "d:\abandon\juego\cd.cue" -t iso
Para "desmontar" una unidad virtual (y poder volver a montar otro directorio o imagen real con la misma letra), la instrucción es

Código:
mount  -u  (letra unidad virtual)
__________________

Ya sabemos cómo montar unidades en DOSBox. El resto de comandos que necesitaremos serán básicamente los nombres de los programas que inician los juegos, y cd para cambiar de carpeta actual dentro de unidades virtuales. Al cambiar de carpeta, el símbolo "\" separa a una carpeta madre (a la izquierda) de su hija (a la derecha), y cuando no tiene ningún nombre a la izquierda se refiere a la carpeta raíz de la unidad virtual correspondiente. Por ejemplo, las tres instrucciones seguidas

Código:
cd \
cd uno
cd dos
son completamente equivalentes a la instrucción

Código:
cd \uno\dos
(Y de igual modo que el símbolo "\" se refiere a la raíz, el símbolo de dos puntos seguidos ".." se refiere a la carpeta madre de la actual.)

El comando cd cambia entre directorios, pero no entre unidades. Para cambiar la unidad virtual activa, simplemente teclamos su letra seguida de dos puntos, por ejemplo

Código:
c:
d:
a:
__________________

¡Por fin ya sabemos todo lo necesario para que nuestros accesos directos inicien los juegos directamente! (Y de paso hemos aprendido también a manejar DOSBox a mano desde su línea de comandos.) Para ello tenemos que: montar --al menos-- una unidad donde esté el juego, situarnos en ella, luego en la carpeta exacta, y por fin llamar al programa que inicia el juego.

Podemos montar un disco duro por defecto (donde vayamos a colocar todos nuestros juegos de DOS) en nuestro dosbox.conf y dejar el resto de comandos para los demás archivos de configuración, o poner todos los comandos en éstos, o como queramos; yo voy a poner un ejemplo con el primer enfoque, que es el que recomiendo.

Así que idealmente todos nuestros juegos de DOS estarán en subcarpetas separadas, dentro de una carpeta que a su vez esté dentro de los Documentos Compartidos (o de una subcarpeta suya dependiendo de la organización que prefiráis). Montaremos esta carpeta como disco duro virtual C, así que necesitamos su ruta completa. No os preocupéis si no estáis seguros, tan solo mirad en la barra de dirección, o en las propiedades de la carpeta de uno cualquiera de los juegos (aseguraos de copiar toda la ruta y no sólo la parte que quepa en el ancho):


Un posible ejemplo sería:

Código:
[autoexec]
mount c "c:\users\all users\documentos\abandon"
mount d "d:\" -t cdrom
c:
La primera línea crea el disco duro virtual C: donde están todos nuestros juegos. Es sólo un ejemplo, reemplazad la ruta entre comillas con la vuestra. (Fijaos que hay una carpeta con el mismo propósito que en Windows Vista se llama "Users" y en XP "Documents and Settings".) No obstante se recomienda usar C como la letra del disco duro virtual, ya que es lo que esperan muchos juegos de DOS.

La segunda línea monta nuestra unidad de CD-ROM real D: (si la vuestra tiene otra letra cambiad el "d:\") como unidad de CD-ROM virtual para que DOSBox pueda acceder a ella; y la última línea nos sitúa en la recién creada unidad virtual C: donde están los juegos.

Si ejecutáramos DOSBox sin parámetros --por ejemplo desde el menú Inicio o desde otro acceso directo al que no hayamos añadido los parámetros "-conf (nombrearchivo)"--, llegaríamos a la línea de comandos, pero con las unidades virtuales C y D ya montadas como disco duro y CD-ROM, y con la primera como unidad activa.

Pero queríamos que los distintos accesos directos que habíamos creado para cada juego no sólo cargaran una configuración adecuada para que el juego funcione bien, sino que lo inicien automáticamente. Para ello no tenemos más que escribir en la sección [autoexec] de cada archivo de configuración las instrucciones que ejecutan el juego, para no tener que introducirlas a mano cada vez en la línea de comandos.

Recordad que el acceso directo tal como lo hemos hecho antes carga tanto la configuración por defecto en dosbox.conf como las líneas especiales del otro archivo de configuración, y eso incluye la secciones [autoexec] de ambos archivos. Así que, dado que el dosbox.conf ya tiene las líneas de arriba, ya tenemos las unidades montadas, y aquella donde se encuentra el juego ya es la unidad activa; entonces sólo nos queda cambiar la carpeta activa a aquella donde está el juego, y llamar al programa que lo inicia. Retomando el ejemplo del UFO - Enemy Unknown, la sección [autoexec] del ufo.conf sería

Código:
[autoexec]
cd \xcom
call ufocd
exit
suponiendo que el juego estaba en la carpeta real "C:\Users\All Users\Documentos\abandon\xcom" (es decir en la carpeta virtual "C:\xcom" según el montaje que hicimos), y que el programa que lo inicia se llama "ufocd". El último comando, "exit", saldría de DOSBox al acabar para que no tengamos que hacerlo a mano.
__________________

Ya hemos llegado al final del tutorial, pero aquí tenéis otros comandos que podéis llegar a encontrar útiles (de nuevo están explicados junto con otros más en el README.txt de DOSBox):

loadfix ocupa una cantidad de memoria convencional, porque algunos juegos antiguos fallan cuando se encuentran demasiada libre. No suele hacer falta especificar parámetros, llamad a este comando y luego al juego.

keyb cambia la configuración de teclado --como la opción "keyboardlayout" de los archivos de configuración, pero dentro de una misma sesión. Por ejemplo, la instrucción "keyb sp" cambia a teclado español, y "keyb us" a teclado estadounidense.

boot arranca imágenes de discos de arranque.