xdan159 Por xdan159
el: Mie 29 de Dic del 2010
Leído: 16800 veces.

Manual Dosbox

MANUAL DOSBOX:
Introducción - Instalación - MS-DOS Básico

INTRODUCCIÓN

Mucha gente me ha escrito, sumida en grados diversos de frustración, preguntando "¿Cómo coño se usa DOSBox?". Y una cosa es cierta; para el usuario típico de Windows, que se ha iniciado en los ordenadores con versiones diversas de este sistema operativo —y no ha tocado otros—, el asunto puede parecer al principio muy complicado. Imaginémoslo...

Nuestro conejillo de Indias, que únicamente ha conocido Windows 98 o Windows XP, acaba de instalar DOSBox. Lo arranca, y... ¡Horror! ¡Una consola de comandos! ¿Y los iconos? ¿Y los menús desplegables de la barra de arriba? ¿Y...? En resumen, el pobre hombre no entiende nada; cierra DOSBox espantado y nunca ya lo vuelve a tocar. Aunque al final, si se decide por hacer la pregunta que comentaba arriba, podemos decir que ha superado el primer paso.

El otro tipo de mensajes que suelo leer vendrían a ser del estilo de "¡DOSBox es una mierda!", "¡DOSBox es muy lento!", "¡Esto no tiene sonido!"... Estas quejas suelen venir la mayoría de las veces de usuarios novatos, que no le han dedicado al emulador las suficientes "horas de vuelo". Así que, resumiendo, DOSBox no es ninguna porquería; lo que pasa es que hay que saber cómo usarlo.

Y por ello me he decidido a escribir este pequeño tutorial. De hecho, llevaba tiempo dándole vueltas a la idea... Ahora, mi intención no es hacer un compendio enciclopédico sobre todo lo referente a DOSBox —cosa que está fuera de mis posibilidades—, sino una guía "de uso"; algo que oriente a los que lo emplean por primera vez, para que puedan aprender las naciones básicas y sacarle un rendimiento razonable.

Por lo demás, mi idea es enseñar cómo usar el DOSBox tal cual, sin el empleo de front-ends como puedan ser Boxer, D-Fend... Sencillamente, aprendiendo a utilizar DOSBox podréis defenderos con cualquiera de ellos, o bien no usarlos para nada si no lo deseáis —ésta ha sido mi opción—. De todos modos, hacia el final del manual hablaré un poco por encima de D-Fend, que es el que mejor conozco.

Espero que el manual os sirva de ayuda, y podáis ejecutar tranquilamente juegos como Titus the Fox y otras reliquias en vuestros Pentium 4... Aunque con un poco de experiencia, se puede conseguir mucho más.

QUÉ ES Y QUÉ NO ES DOSBOX

Antes que nada, no estaría mal hacerse una idea de lo que es DOSBox, lo que puede y no puede hacer... Aunque me imagino que si estás leyendo este tutorial ya sabrás más o menos de qué va el asunto.

DOSBox es un emulador de MS-DOS; esto es, un programa que permite ejecutar aplicaciones de DOS en otros sistemas operativos. Por ejemplo, podríamos trabajar con viejas versiones de WordPerfect en Windows XP, o jugar a Wolfenstein 3D en nuestro Linux... Así que por si acaso no tiréis a la basura todos esos polvorientos disquetes que guardáis en el armario :risa:.

DOSBox funciona en gran variedad de sistemas operativos: Windows XP, Linux, Mac OS X, BeOS, OS/2... Es capaz de emular el modo protegido —introducido en los procesadores 286—; diferentes modos gráficos —Tandy, Hercules, CGA, EGA, VGA, VESA—; memoria extendida (XMS) o expandida (EMS); y las tarjetas de sonido más utilizadas en juegos y programas antiguos —SoundBlaster, Adlib, Gravis Ultrasound...—.

Bueno, si no sabes qué es todo esto, no importa demasiado; son detalles prescindibles para el usuario típico de DOSBox. Aunque para quién haya usado ordenadores con MS-DOS —supongo que una gran parte de la gente que ahora emplea DOSBox—, debería resultarle familiar.

¿Y qué NO es DOSBox?

Dicho rápidamente: una solución milagrosa.

Puesto que DOSBox es un emulador, lo que ejecutemos con él no tendrá —ni de lejos— el mismo rendimiento que si pudiésemos correrlo de forma nativa en nuestro sistema operativo. Por ejemplo, si alguien pretende jugar a Blood con DOSBox en un Pentium II a 350 MHz, que se lo vaya quitando de la cabeza; quizás la emulación funcionase, pero a un ritmo tan lento que la haría inútil para cualquier cosa.

Por lo que yo mismo he ido viendo, en una máquina de 1-1'5 GHz DOSBox equivaldría a un 486 del montón (25-33 MHz). Ahora, con ordenadores más modernos, con procesadores más potentes y más memoria RAM, supongo que se podrán alcanzar mejores resultados. También es de imaginar que en futuras versiones —en el momento de escribir esto, DOSBox va por la 0.63— se mejorará la velocidad de la emulación.

Digo todo esto para que cada cuál se haga unas expectativas realistas de lo que puede ofrecer el emulador, y nadie se rasgue las vestiduras si DOSBox ejecuta el Doom en su viejo armatoste a la velocidad de una tortuga reumática.

INSTALANDO DOSBOX

Bueno, normalmente esto no es difícil, pero como siempre hay quién se pierde, lo comentaré aunque sea un poco por encima...

Evidentemente, lo primero sería visitar la página web de DOSBox (http://www.dosbox.com), y descargarnos el emulador —en su versión más actual posible, a no ser que tengamos algo especial en mente—. En la sección "Downloads" lo encontraremos disponible para diversos sistemas operativos; evidentemente, escogeremos el que más nos interese.

Windows:

En el caso de Windows, instalar DOSBox resulta bastante fácil, puesto que esta versión viene con un instalador propio. Simplemente especificamos la carpeta dónde queramos colocarlo —por ejemplo, C:\Dosbox—, y a funcionar... En un suspiro tenemos el programa descomprimido y la entrada correspondiente en el menú de inicio.

Linux:

Para Linux hay algunos instaladores disponibles para diferentes distribuciones. Aunque si lo deseamos, podemos bajarnos el código fuente y compilarlo nosotros mismos. Bueno, ésta ha sido mi opción; teóricamente se consigue así un mejor rendimiento en nuestra máquina.

Aquí doy unas indicaciones para quién tenga ganas de hacerlo:

El primer paso es evidente: descargarnos el código fuente de la página oficial del DOSBox (ver arriba), y guardarlo dónde deseemos. Luego lo descomprimimos, cosa que podemos hacer desde una consola de comandos; accedemos a la carpeta en la que hayamos almacenado el archivo .tar.gz, y tecleamos:

$ tar -zxf dosbox-0.63.tar.gz

En este ejemplo, el archivo con el código fuente es dosbox-0.63.tar.gz, aunque obviamente podríamos estar trabajando con otras versiones...

Es posible que nuestra versión de tar no soporte la opción -z; en tal caso —raro, supongo—, deberíamos usar primero gunzip, y luego descomprimir con tar el archivo .tar resultante. De todas formas, cualquier distribución de Linux cuenta con utilidades que permiten hacer esto cómodamente desde el entorno gráfico, como Ark, etc.

El caso es que, lo hagamos de la manera que lo hagamos, nos encontraremos una nueva carpeta (en este ejemplo llamada dosbox-0.63) que contendrá el código fuente listo para compilar. Ahora sólo tendríamos que acceder a esta carpeta recién creada, y proceder a la compilación del modo acostumbrado:

$ ./configure
$ make

En principio no es necesario nada más. Quién quiera echar un vistazo a las diversas opciones de compilación, debería teclear antes que nada el comando ./configure --help; pero ya digo que normalmente no hace falta preocuparse de esto.

Después de ejecutar el make ya tendremos listos los binarios (ejecutables) del DOSBox. Podemos dejarlos en esa carpeta, moverlos a cualquier otra perteneciente a nuestro usuario, o instalarlos en el sistema. En este último caso, accederíamos a la cuenta del administrador, y teclearíamos:

# make install

Con ello instalaríamos DOSBox en el directorio /usr/local/bin/dosbox, con lo que estaría disponible para todos los usuarios de la máquina.

Por último, esto de las compilaciones se sabe cómo empieza pero no cómo acaba..., por el tema de las librerías requeridas en cada caso. Para compilar DOSBox, en principio necesitaríamos las librerías SDL (SDL, SDL_mixer y SDL_net), disponibles en http://www.libsdl.org, y tal vez alguna más... Bueno, en el archivo INSTALL, que viene con el código fuente, suele haber información detallada sobre esto; os recomiendo que lo leáis antes de poneros manos a la obra.

Mac OS X:

Parte del texto que sigue está tomado de la wiki de DOSBox; concretamente, de http://www.dosbox.com/wiki/DOSBox_and_Mac_OSX. Sustituye a una explicación obsoleta escrita en 2005 —han pasado cuatro años, las cosas han cambiado—. Nunca he usado Mac OS X, así que no puedo hablar de primera mano.

La versión de DOSBox para Mac OS X la podemos encontrar en la sección "Downloads" de la página oficial del emulador, en un archivo comprimido que contiene los binarios correspondientes (o sea, el programa listo para usar). Por cierto, sólo funcionará en sistemas Mac OS X 10.3 o superiores; no es compatible con versiones más antiguas.

Y ahora sí, cito de la wiki de DOSBox:

   

«Esta guía usará la versión 0.73 de DOSBox para Mac OS X, la cual [ya] está disponible para descargar. Esta versión 0.73 se ha compilado como un "binario universal", y correrá en Macs basados en Intel y PowerPC. Para instalar DOSBox, primero descomprimid el archivo .zip, y [luego] copiad su contenido a una carpeta que podría llamarse DOSBox. Moved esta carpeta dentro de vuestro directorio Applications.

    Ahora necesitáis crear una carpeta que pueda montarse como vuestra unidad C: [emulada], y contener vuestros juegos. El lugar más recomendable para esta carpeta sería vuestro directorio de inicio (al cual podemos referirnos como ~). En este ejemplo llamaremos a nuestra carpeta DOSGAMES. Dentro de ella podemos colocar todos los programas que queramos que estén disponibles en nuestro entorno DOS emulado. Recordad que, aunque estos archivos estén enterrados en las profundidades de vuestro sistema de ficheros —con rutas como ~/DOSGAMES/TESTDRV—, dentro de DOSBox aparecerán justo en la raíz de la unidad montada; el ejemplo anterior estaría en DOSBox localizado en C:\TESTDRV (esto asumiendo que ~/DOSGAMES fue montado como C:)»

.

NOCIONES BÁSICAS DE MS-DOS

DOSBox es un emulador de MS-DOS, y para poder utilizarlo con un poco de soltura necesitaremos conocer al menos el funcionamiento básico de este sistema operativo. Evidentemente quienes trabajaron en su día con MS-DOS ya tendrán esto bien sabido, y dudo que este apartado les sirva de mucho; pero para muchos usuarios actuales de Windows sí puede resultar interesante echarle una ojeada.

MS-DOS —y por lo tanto, DOSBox— es un sistema operativo que no utiliza entorno gráfico; para entendernos, no hay escritorio, ni iconos de colores, ni menús, ni nada similar. De este modo, para abrir carpetas, ejecutar programas y demás —o sea, para usar el ordenador— no emplearemos el ratón ni haremos doble clic en ningún sitio; todo lo que queramos que haga nuestra máquina lo iremos especificando mediante comandos escritos con el teclado.

Así, si iniciásemos un sistema MS-DOS nos encontraríamos con una simple pantalla de texto. Algo como esto (en este caso se trata de un PC emulado por QEMU, ejecutando la versión 5.00 de MS-DOS):

qemudos50html-455835

De aquí, lo que más nos interesa ahora es la última línea que aparece en la ventana (A:\>). Éste es el llamado prompt, que nos indica la unidad y la carpeta en la que estamos trabajando actualmente. Así, en la imagen de arriba acabamos de iniciar el sistema desde un disquete de arranque, por lo que la unidad en que nos encontramos será la A:.

Si ahora accediésemos a una carpeta determinada (una llamada "torpedo" existente en nuestro disquete de arranque, por ejemplo), el prompt cambiaría para reflejar nuestra nueva posición; en lugar de "A:\>", tendríamos "A:\TORPEDO>". Resumiendo: la primera letra seguida de los dos puntos, indica la unidad en que nos encontramos (A:, C:, D:, etc); y lo que sigue a partir de la barra inclinada, la carpeta.

A continuación del prompt aparece el cursor con el que iremos escribiéndole al ordenador las órdenes que deseemos, una por una. Bueno, nada como verlo en una imagen:

qemucdhtml-24942

Y esto nos lleva al primer comando de MS-DOS que deberíamos aprender: cd (que viene de "change directory"). Nos servirá para movernos entre las carpetas de una misma unidad. El uso viene a ser éste:

CD [nombre carpeta]

Resulta muy sencillo, como puede verse en la captura de pantalla. Como en casi todos los comandos de MS-DOS, podemos usar direcciones relativas o absolutas:

A:\TORPEDO> cd condemor
A:\TORPEDO> cd \condemor

En el primer ejemplo, entraríamos en la carpeta "condemor" existente dentro del presente directorio —en este caso sería A:\TORPEDO\CONDEMOR—; en el segundo, iríamos a parar a A:\CONDEMOR, con independencia de dónde estuviésemos situados en el momento de escribir la orden.

Claro que también podemos ascender por el árbol de directorios hacia la carpeta raíz. Resulta tan sencillo como esto:

A:\TORPEDO\CONDEMOR> cd ..
A:\TORPEDO> cd ..
A:\>

Los dos puntos seguidos en la orden cd indican que deseamos subir un nivel en el árbol de carpetas. Por supuesto, también podemos sustituirlos por una dirección absoluta:

A:\TORPEDO\CONDEMOR> cd \
A:\>

Bien, ahora ya sabemos cómo movernos entre las carpetas... Aunque no sólo de la unidad A: vive el hombre. Lo normal es que tengamos que trabajar con varias unidades. Pero tranquilos, ir de una a otra es tan fácil como teclear la letra de la unidad correspondiente:

A:\> c:
C:\>

Muy bien, pero, ¿y los archivos? ¿Cómo vemos los archivos presentes en cada carpeta, para saber cuál ejecutar?. Bueno, pues para esto tenemos el comando dir, cuyo uso tampoco entraña mayores complicaciones:

dir [archivo o carpeta] [opciones]

Dir nos muestra los archivos contenidos en la carpeta que especifiquemos —o bien los del directorio actual, sino especificamos ninguna—. Es importante señalar que en MS-DOS los nombres de fichero sólo pueden tener como máximo ocho letras (los nombres largos típicos de Windows aparecerán truncados como xxxxxx˜1.xxx).

Así, por ejemplo:

C:\> dir
...

Nos mostraría una lista de todos los archivos —salvo los ocultos— presentes en el directorio en el que nos encontramos, en este caso C:\. También podemos ver el contenido de una carpeta concreta, especificando su nombre o su dirección absoluta.

Por ejemplo:

C:\> dir c:\fistro
... <-- Muestra el contenido de C:\FISTRO

C:\> dir fistro
... <-- Muestra el directorio C:\FISTRO, o el archivo FISTRO., si existe.

Aquí podemos ver este comando en acción:

qemudirhtml-103857

Dir nos permite usar carácteres especiales para especificar qué archivos queremos ver listados. Éstos son el asterisco (*) y el interrogante (?), y cada uno tiene un modo de actuar. Veámoslo:

C:\> dir ?aa.exe <-- Muestra todos los archivos con extensión EXE; sus nombres tendrán tres letras; la segunda y la tercera serán "a", y la primera un carácter cualquiera. Así, en la lista podríamos ver archivos como aaa.exe, faa.exe, 3aa.exe, _aa.exe, etc.

C:\> dir ????.bat <-- Muestra todos los archivos con extensión BAT cuyos nombres tengan cuatro letras: jarl.bat, 1234.bat, gh9_.bat, etc.

Así, vemos que el interrogante es un comodín que sustituye a cualquier carácter concreto —el primero del nombre del archivo, el último de su extensión, etc—. El asterisco, en cambio, reemplaza a cualquier número de ellos. Así, tendremos:

C:\> dir *.bat
Muestra todos los archivos que tengan extensión BAT, sea cual sea su nombre.

C:\> dir chiquito.*
Muestra todos los archivos llamados "CHIQUITO", tengan la extensión que tengan.

C:\> dir ab*.exe
Muestra todos los archivos cuyos nombres comiencen por "ab", y tengan extensión EXE. Por ejemplo, abajo.exe, abr.exe, abfistro.exe, etc.

Ambos comodines pueden combinarse en un mismo comando; de ese modo, podríamos hacer búsquedas sofisticadas como dir ?o*.com, dir *.b??, y similares. Pero muy raro será que tengamos que hilar tan fino.

Por lo demás, me quedaría decir que el comando dir admite varias opciones, que permiten modificar su funcionamiento. Las principales serían estas:

C:\> dir *.exe /p <-- En muchas ocasiones podemos encontrarnos con listas que no caben en la pantalla, y fluyen rápidamente sin permitirnos ver nada. Pero si utilizamos la opción /p, el ordenador hará una pausa cada vez que la lista de archivos llene la pantalla, permitiéndonos así examinarlos con tranquilidad.

C:\> dir *.exe /w <-- La opción /w muestra una lista resumida de los archivos de la carpeta, aprovechando al máximo el espacio de la pantalla. En vez de colocar cada archivo en una línea y listar sus detalles (fecha y hora de creación, etc), los sitúa distribuidos en columnas, y mostrando solamente sus nombres y extensiones.

C:\> dir *.exe /s <-- Por último, especificando la opción /s le indicamos al ordenador que muestre también el contenido de todos los subdirectorios que se incluyan en la lista. Por ejemplo, con dir a:\condemor /s veríamos todos los archivos guardados dentro del directorio A:\CONDEMOR, así como los de los subdirectorios que estuviesen dentro de él.

Estas opciones también pueden combinarse entre sí, para hacer búsquedas más flexibles. Así, podríamos escribir comandos del estilo de dir *.bat /s /p, y otros similares. En la imagen de la siguiente página vemos el efecto de la opción /w:

qemudirwhtml-769893

Bien, y ahora, ¿cómo ejecutar archivos? Nada más sencillo.

En MS-DOS, en principio, los archivos ejecutables tendrán la extensión COM o EXE (binarios), o bien BAT (que son simplemente scripts compuestos por órdenes de MS-DOS, utilizados para arrancar programas con opciones personalizadas, abreviar secuencias de comandos, etc).

Para ejecutar un archivo, simplemente tenemos que escribir su nombre. La extensión no es imprescindible, a no ser que existan varios ficheros con el mismo nombre y distintas extensiones:

C:\> lucas.exe <-- Ejecutaríamos el archivo lucas.exe.
C:\> lucas <-- Ejecutaríamos lucas.exe, lucas.com o lucas.bat; cualquiera de los tres que se halle en la presente carpeta.

Con estos conocimientos tan básicos ya podríamos desenvolvernos, mejor o peor, en DOSBox. No obstante, comentaré otros comandos que también pueden resultarnos útiles:

md [nombre carpeta]

Este comando nos servirá para crear carpetas. Su uso viene a ser similar al del ya visto cd. Y como éste, admite direcciones relativas o absolutas. Esto es fácil de ver con un par de ejemplos:

A:\CONDEMOR> md grijando
Con este comando crearemos la carpeta A:\CONDEMOR\GRIJANDO.

A:\CONDEMOR> md \grijando
Y así crearíamos la carpeta A:\GRIJANDO.

Muy similar a md es la orden rd. Sólo que ésta tiene la función contraria. No crea carpetas, sino que las borra... Ahora, rd sólo eliminará las carpetas que estén vacías; si el directorio que deseamos borrar contiene algún archivo, simplemente nos aparecerá un error, y el comando no hará nada.

Para borrar archivos tenemos la instrucción del. Su uso no es muy diferente al de dir, visto más arriba. Y al igual que ésta, también admite el uso de comodines como el interrogante y el asterisco:

C:\> del a*.* <-- Borra todos los archivos que comiencen por "a".
C:\> del \jarl\*.com <-- Borra todos los archivos con extensión COM presentes en el directorio C:\JARL.

Por lo demás, no uséis del en DOSBox o en el intérprete de comandos de Windows confiando en que los ficheros borrados irán a la papelera de reciclaje. Al contrario, lo que eliminéis con del, eliminado está...

También podemos copiar archivos de una localización a otra; para ello existe el comando copy, que viene a funcionar del siguiente modo:

copy (origen) (destino)

Así, tendríamos:

A:\> copy *.* c: <-- Copia todos los archivos de A:\ a C:\.
A:\> copy trueno.txt c:\nopuido <-- Copia el archivo trueno.txt a la carpeta C:\NOPUIDO.

Y por último, quizás en algún momento necesitemos usar ren, el comando utilizado para renombrar archivos. La sintaxis es la misma que la empleada en copy:

C:\> ren dortor.txt grijando.txt
Cambia el nombre del archivo dortor.txt a grijando.txt.

C:\> ren a*.* b*.*
Cambia el nombre de todos los ficheros que comiencen por "a", sustituyéndola por una "b". Por ejemplo, argh.com pasaría a ser brgh.com, etc.

USO DE DOSBOX

Bueno, después de nuestra pequeña lección de MS-DOS, vamos con el emulador sin más dilación... Así que accedemos a la carpeta dónde lo tenemos instalado y lo iniciamos, o bien lo arrancamos con el correspondiente acceso directo. Veremos que aparecerá rápidamente una ventana similar a ésta:

dosbox1-154959

Bien, en el borde de arriba de la ventana tenemos algunos datos de interés. Los "CPU cycles", por ejemplo, nos indican la cantidad de instrucciones que estamos emulando; algo así como la velocidad a la que está funcionando DOSBox. "Frameskip" indica si hay algún salto de frames activado; lo normal es que tenga un valor de cero (sin salto de frames, el emulador muestra todas las imágenes que produce, sin omitir ninguna), aunque en algunas ocasiones querremos cambiarlo. Por último, "Program" indica simplemente el programa que estamos ejecutando en DOSBox.

Y ya en el interior de la ventana vemos la acostumbrada línea de comandos de MS-DOS, que a estas alturas no debería sorprender a nadie (de lo contrario, echadle una ojeada al capítulo anterior). El recuadro azul con letras blancas que vemos en la mitad superior de la ventana simplemente muestra unas pequeñas ayudas, gentileza de los desarrolladores de DOSBox.

Lo primero que nos llamará la atención será el hecho de comenzar a trabajar en una unidad llamada Z:. En realidad, ésta es una unidad ficticia que crea el emulador al iniciarse. En ella se encuentran las utilidades básicas que incluye DOSBox por defecto, y resultarán imprescindibles para el manejo del emulador —bueno, realmente no todas, pero sí algunas—.

Con el comando dir podemos verlas todas:

dosbox2-3985

Bueno, COMMAND.COM y AUTOEXEC.BAT no nos interesan; forman parte del inicio de DOSBox —y de cualquier sistema operativo MS-DOS—, y no tendremos que preocuparnos de estos archivos para nada.

Ahora vamos a suponer que deseamos jugar una partida a Wolfenstein 3D, un videojuego que tenemos guardado en la carpeta C:\JUEGOS\WOLF3D de nuestro disco duro. Sin embargo, en DOSBox nos encontramos en la unidad Z:, y si intentamos pasar a C:, nos aparece una especie de error. ¿Qué pasa aquí?
Montar unidades y directorios: el comando mount

Muy sencillo; DOSBox no utiliza directamente las unidades lógicas de nuestro sistema operativo. Así que tenemos que "montarlas" antes de hacer nada —un concepto muy familiar para cualquier usuario de Linux—. Para eso tenemos la primera utilidad básica de DOSBox que veremos: mount.

mount (letra de la unidad emulada) (directorio o unidad) [-t tipo] [-aspi] [-ioctl] [-usecd número] [-size tamaño] [-label etiqueta] [-freesize tamaño_en_MB]

Bueno, ante todo no os asustéis :risa:. Parece complicado, pero no lo es. Mount permite de hecho muchas opciones, pero en circunstancias normales apenas usaremos dos o tres. Las únicas que tendremos que especificar obligatoriamente son la letra de la unidad emulada y el directorio o unidad que queremos que lea DOSBox.

Lo mejor, verlo en ejemplos:

Z:\> mount c c:\
Creamos en el emulador una unidad C:, cuyo contenido será nuestro disco duro C: y todos sus directorios.

Z:\> mount c c:\juegos
Básicamente lo mismo que en el ejemplo anterior... Creamos una unidad C:, en la que encontraremos el contenido de la carpeta C:\JUEGOS de nuestro disco duro.

Así, para jugar la partida a Wolfenstein 3D que hemos mencionado arriba, necesitaríamos escribir lo siguiente:

Z:\> mount c c:\juegos
Drive C is mounted as local directory C:\JUEGOS\
(Ahora ya tenemos una unidad C: en DOSBox).

Z:\> c: <-- Accedemos a la unidad C: recién creada.
C:\> cd wolf3d <-- Entramos a la carpeta del Wolfenstein 3D.
C:\WOLF3D> wolf3d.exe <-- Y lo ejecutamos.

Por supuesto, mount también trabaja con otros sistemas de archivos, aparte del clásico de Windows. Por ejemplo, en un sistema Linux:

Z:\> mount d /home/macario/juegos
(Creamos en DOSBox la unidad D:, cuyo contenido será el del directorio /home/macario/juegos de nuestro ordenador, y todos sus subdirectorios).

Con mount podemos también montar unidades de CD-ROM, o de disquete. Para ello tenemos la opción -t, que indica el tipo de unidad que queremos utilizar:

Z:\> mount d e:\ -t cdrom
(Montamos nuestra unidad de CD-ROM E: como D: en DOSBox).

Z:\> mount a a:\ -t floppy
(Creamos en DOSBox una unidad de disquete A:, que contendrá los archivos de la unidad A: de nuestro ordenador).

Las otras opciones de mount muy rara vez las utilizaremos, pero las comentaré aunque sea someramente:

-size (tamaño): Especifica el tamaño de la unidad que queremos montar. No es una opción fácil, porque deberemos introducirlo no en megabytes, sino con los parámetros de disco que vemos en cualquier BIOS: cabezales, sectores y cilindros.

Z:\> mount c d:\ -size 4025,127,16513,1700
(Montamos una unidad C: de 870 MB).

-freesize (tamaño_en_MB): Tiene la misma función que -size, pero un uso más sencillo, puesto que ahora sí podremos introducir el tamaño de la unidad emulada en megabytes:

Z:\> mount c d:\ -freesize 870
(Igual que arriba; montamos una unidad C: de 870 MB).

-label (etiqueta): Especifica una etiqueta para la unidad que vamos a montar; vamos, como asignarle un nombre. Esto puede resultar útil para arrancar ciertas utilidades que necesitan una unidad de CD con un nombre determinado.

Z:\> mount d f:\ -t cdrom -label tekwar

dosbox3-686255

-aspi: Utiliza los controladores ASPI. Sólo nos resultará útil al montar una unidad de CD-ROM en ciertos sistemas Windows.

Z:\> mount e e:\ -t cdrom -aspi

-ioctl: Utiliza los comandos IOCTL para montar una unidad de CD-ROM. Válido solamente en sistemas Windows que lo soporten (Windows 2000/NT/XP).

Z:\> mount e e:\ -t cdrom -ioctl

-usecd (número): Usa el soporte SDL para emular la unidad de CD-ROM. Las unidades de CD-ROM de nuestro ordenador y sus números correspondientes podemos verlos con la opción -cd.

Z:\> mount d e:\ -t cdrom -usecd 0

-cd: Muestra todas las unidades detectadas de CD-ROM, y sus números de identificación para su uso con la opción -usecd, comentada en el párrafo de arriba.

Z:\> mount -cd

dosbox4-527915

-u: Eliminamos la unidad que deseemos de las que tenemos montadas. Obviamente, la única que no podremos desmontar será la Z:...

Z:\> mount c c:\prog
Drive C is mounted as local directory C:\PROG\
(Creamos la unidad C:).

Z:\> mount -u c
Drive C has succesfully been removed.
(Y la eliminamos).

Bueno, si sabemos emplear la utilidad mount y dominamos el funcionamiento básico de MS-DOS, ya tenemos la gran mayoría del trabajo hecho, y podremos usar DOSBox para ejecutar juegos y programas sin grandes complicaciones. Lo que quedaría por comentar serían refinamientos para sacarle el máximo partido al emulador.

Por ejemplo, valdría la pena mencionar las restantes utilidades de DOSBox, si bien para el usuario de a pie no tendrán mucho uso. Información detallada sobre la utilización de cada una de ellas podemos encontrarla en el archivo README que viene con el emulador.
El comando mem

Muestra la cantidad de memoria (convencional, extendida y expandida) que queda libre en la emulación. Viene a ser una versión simplificada de la clásica utilidad de MS-DOS.

Su uso consiste en escribir simplemente:

Z:\> mem

Al contrario que con el comando mount, no hay opciones añadidas que deban preocuparos.
El comando config

Guarda la presente configuración de DOSBox en un archivo. Por supuesto, este fichero estará localizado en alguna unidad física del ordenador, y no en las emuladas con mount.

El archivo de configuración —que usualmente se llama dosbox.conf— controla diversas opciones de funcionamiento de DOSBox: la cantidad de memoria emulada, el modo de renderización gráfica —OpenGL, DirectDraw, etc—, y muchas más.

Si este archivo no existe, el emulador se inicia con las opciones por defecto. Pero con el comando config podemos crearlo, para modificarlo después cómodamente y configurar DOSBox a nuestro gusto.

El uso de config es el siguiente:

config [-writeconf] [-writelang]

Y aquí tenéis un ejemplo práctico:

Z:\> config -writeconf dosbox.conf
Crea el fichero de configuración dosbox.conf.
El comando loadfix

Antes que nada, un sumario sobre su uso:

loadfix [-memoria] [programa a ejecutar]
loadfix -f

Puede suceder que, a la hora de ejecutar algunos programas realmente antiguos, nos encontremos con que tienen demasiada memoria convencional disponible. Loadfix se encarga de remediar esto; por así decir, "engulle" porciones de memoria, reduciendo de este modo la cantidad que queda libre.

-memoria: Indica la cantidad de memoria, en KB, que haremos desaparecer. Si no especificamos nada, será de 64 KB.

dosbox5-201046

Programa a ejecutar: También es opcional. Simplemente podemos arrancar cualquier archivo ejecutable directamente con loadfix. Por ejemplo:

Z:\> loadfix -100 d:\arkanoid\doh.exe

-f: Con esta opción liberamos toda la memoria que hayamos consumido con anteriores usos de loadfix.
El comando rescan

Hace que DOSBox vuelva a leer el contenido de todas las unidades emuladas. Útil si, por ejemplo, hemos modificado alguna de ellas desde fuera del emulador —añadiendo o eliminando algún fichero, etc—.

De todas formas, presionar al mismo [CTRL] y F4 tiene el mismo efecto.
El comando mixer

Sirve para controlar el sonido emulado. Podemos ver el volumen de cada uno de los canales tecleando simplemente mixer. Ahora, también nos permite hacer cambios del siguiente modo:

mixer [canal izquierda:derecha]

El canal puede ser uno de los siguientes: MASTER, DISNEY, SB, GUS, SPKR, FM. Y los valores izquierda:derecha hacen referencia a un porcentaje de volumen (o sea, un número del uno al cien).
El comando imgmount

Con esta utilidad podremos montar imágenes de disco y CD-ROM para usarlas en DOSBox. Los usuarios de máquinas virtuales como Bochs o QEMU estarán familiarizados con la idea; una imagen de disco es un archivo (por ejemplo, c.img, linux.img, blood.iso, etc) que contiene todo un sistema de ficheros. Dicho sistema de ficheros podría ser una partición de disco duro con un sistema operativo instalado, o bien una copia de un disquete o CD-ROM.

Esto quiere decir que hay diversos tipos de imágenes de disco, y cada uno debe manejarse de una forma distinta. La gran mayoría de usuarios no necesitará para nada montar imágenes de disco duro; es bastante engorroso, de todas formas, porque hay que conocer las especificaciones —sectores, cabezales y cilindros— del disco duro que pretende representar la imagen. En cambio, montar imágenes de CD-ROM puede ser una idea más interesante, porque de este modo es posible usar juegos y programas editados en CD-ROM sin tener que grabarlos antes en un disco. Descargas la imagen ISO de Internet, la guardas en tu disco duro, la montas directamente en DOSBox; ya no necesitas una grabadora ni cedés vírgenes.

El uso de imgmount puede resumirse así:

imgmount (letra de la unidad emulada) (imagen de disco) [-t tipo_de_la_imagen] [-fs formato_de_la_imagen] [-size tamaño_del_sector, sectores, cabezales, cilindros]

Todo esto es un galimatías, así que intentaré explicarlo lo mejor que pueda. La letra de la unidad emulada, naturalmente, corresponde a la unidad virtual que le asignará DOSBox a la imagen de disco; la idea es la misma que la del comando mount. Y la imagen de disco es el archivo que deseamos montar.

Así que, antes de seguir, un ejemplo sencillo bastará para la mayoría de los lectores. Hemos descargado de Internet la edición en CD-ROM de Shadow Warrior, que viene en una imagen de disco llamada swarrior.iso, y que tenemos guardada en nuestro disco duro, en la carpeta c:\warez :risa:. Para usar este archivo .iso en DOSBox, teclearíamos una orden como ésta:

Z:\> imgmount d c:\warez\swarrior.iso -t iso -fs iso

Así crearíamos una unidad de CD-ROM emulada (D:) con los contenidos del archivo swarrior.iso.

Bien, pues éste es el modo de usar imgmount para leer imágenes de CD-ROM, que es lo que casi todos vosotros querréis hacer con este comando. Me quedaría señalar dos cosas:

   1. He hablado de imágenes de CD-ROM en formato .iso, pero mediante imgmount también pueden montarse los archivos cue/bin. Se trata de imágenes de disco que vienen divididas en dos partes —por ejemplo, quake1.cue y quake1.bin—. En estos casos, deberéis montar siempre el archivo .cue.

   2. Para MS-DOS llegaron a publicarse algunos juegos que se distribuían en varios cedés —me estoy acordando de una especie de aventura gráfica futurista, con montones de secuencias de vídeo, que ocupaba nada menos que seis discos—; no son muchos, pero existen...

      Pues bien, en estos casos tendréis que montar todas las imágenes de disco en la misma unidad virtual, más o menos como se muestra en el siguiente ejemplo:

      Z:\> imgmount d disco1.iso,disco2.iso,etc -t iso -fs iso

      En este caso, todas las imágenes montadas irían asociadas a la unidad D:. Para alternar entre una y otra —lo que en un ordenador real sería abrir el lector de CD-ROM y cambiar el disco— tendréis que pulsar [CTRL] y F4.

A continuación veremos para qué sirven las diferentes opciones de imgmount. De todas formas, supongo que a la mayoría de la gente le bastará con la explicación anterior... Pero bueno, aquí están.

-t tipo_de_la_imagen: El tipo de imagen que queremos montar. Puede ser uno de los siguientes:

    * floppy: Una imagen de disquete —los denominados floppies, hoy en desuso—. Como había disquetes de varios tipos, estas imágenes pueden tener diversos tamaños. Pero todas ellas deberían funcionar en DOSBox sin mayores problemas.
    * iso: Una imagen de CD-ROM. Aunque la opción se llame iso, alude en realidad tanto a archivos .iso como a parejas cue/bin.
    * hdd: Una imagen de disco duro. Deben especificarse sus cabezales, sectores y cilindros —véase la descripción de la opción -size—.

-fs formato_de_la_imagen: Esta opción alude al sistema de archivos de la imagen. DOSBox admite los siguientes:

    * iso: Especifica el formato de CD-ROM ISO 9660.
    * fat: El sistema de archivos FAT, típico de MS-DOS y otros sistemas similares.
    * none: DOSBox no leerá el sustema de archivos de la imagen. Puede ser útil en circunstancias muy especiales; quizás tengáis una imagen vacía que queréis formatear, o algo así. Tenéis más información sobre esto en el archivo README que viene adjunto con el emulador.

-size tamaño_del_sector, sectores, cabezales, cilindros: Si trabajáis con imágenes de discos duros, esta opción indica las especificaciones de la unidad representada por la imagen. Si no trabajáis con imágenes de discos duros, esta opción no indica nada y no deberíais usarla.
El comando boot

Sirve para arrancar imágenes de disco (bien de disquetes o de rígidos) con otros sistemas operativos en DOSBox; por ejemplo, una imagen de un disquete de arranque de MS-DOS.

Para ver información detallada sobre su uso, leed el archivo README.
Conexiones en red mediante IPX

Por último, me quedaría comentar que DOSBox también permite conexiones en red, emulando el viejo protocolo IPX en nuestras conexiones UDP/IP. Esto debe ser activado en el archivo de configuración —por defecto suele venir inactivo—.

Luego, ya dentro del emulador, contamos con el comando ipxnet para trabajar con nuestra conexión. Yo no tengo conocimientos de primera mano sobre este aspecto concreto de DOSBox, así que no comentaré nada aquí. De todos modos, esto viene bastante bien explicado en el archivo README; aunque para sacarle provecho serán necesarios al menos las nociones más básicas sobre redes (qué es una IP, un puerto, un cliente, un servidor..., esas cosas).

Si alguna vez tengo ocasión de hacer pruebas prácticas con esto, ya actualizaría este manual con una sección al respecto. Mientras tanto, no tengo nada más que añadir...
TECLAS BÁSICAS

Hay varias combinaciones de teclas que, mientras ejecutamos DOSBox, nos permitirán modificar ciertas opciones o llevar a cabo diversas tareas. Conocerlas es prácticamente imprescindible, aunque hayan algunas más importantes que otras:

    * [ALT] + [INTRO]: Cambiamos entre el modo de ejecución en pantalla completa y el de ventana.
    * [CTRL] + F1: Inicia las opciones de configuración de las teclas.
    * [CTRL] + F4: Recarga el contenido de todas las unidades montadas. También sirve para cambiar entre imágenes de CD-ROM, cuando se han montado varias con imgmount.
    * [CTRL] + F5: Guarda una captura de pantalla (en formato PNG).
    * [CTRL] + F6: Comienza / termina la grabación de los sonidos emitidos por el emulador en un archivo WAV.
    * [CTRL] + [ALT] + F7: Comienza / termina la grabación de comandos OPL.
    * [CTRL] + [ALT] + F8: Comienza / termina la grabación de comandos MIDI. Esto es interesante, porque permite guardar las melodías de muchos juegos en pequeños archivos .mid.
    * [CTRL] + F7: Disminuye el salto de frames.
    * [CTRL] + F8: Aumenta el salto de frames. El valor máximo es 10.
    * [CTRL] + F9: Cierra DOSBox.
    * [CTRL] + F10: Captura o libera el puntero del ratón.
    * [CTRL] + F11: Reduce la velocidad de la emulación (disminuyendo el número de ciclos).
    * [CTRL] + F12: Aumenta la velocidad de la emulación.
    * [ALT] + F12: Maxima Velocidad, turbo

Éstas son las combinaciones de teclas que utiliza el emulador por defecto; sin embargo, podemos cambiarlas desde las opciones que aparecen al pulsar [CTRL] + F1.

Las capturas de pantalla y archivos de sonido que grabemos con DOSBox se almacenarán dentro del subdirectorio capture —a no ser que hayamos especificado otra cosa en el archivo dosbox.conf; mirad más abajo—. Y cuidado, porque si éste no existe, DOSBox simplemente no guardará nuestras capturas.

ACELERANDO LA EMULACIÓN

Bien, llegados a este punto, es de suponer que ya controlamos los aspectos básicos de DOSBox, y seguramente ya habremos hecho algunas pruebas con él... En este caso, probablemente —a no ser que hayamos ejecutado software realmente viejo— nos hayamos encontrado con un funcionamiento demasiado lento; sobre todo, si nuestro ordenador tiene ya un poco de "veteranía", o si estamos intentando correr algún juego exigente, como pudiera ser por ejemplo Doom. Esto, claro, no es deseable.

De hecho, muchos huyen de DOSBox cuando ven que sus títulos favoritos son emulados a la velocidad de una babosa renqueante, sin percatarse de todas esas opciones que pueden configurarse para conseguir mejores resultados. Y esto es precisamente lo que trataré aquí; consejos para optimizar el funcionamiento del emulador, y sacarle el máximo partido.

Empezaremos por las cosas básicas; esas que deberían resultar obvias, pero en las que no repara mucha gente...

Lo primero sería, antes de poner en marcha el DOSBox, cerrar todas las aplicaciones innecesarias, aunque estén ejecutándose en segundo plano. Tan sólo deberíamos dejar las más imprescindibles —a no ser que nuestro ordenador vaya sobrado, claro—. No hay que ser muy despierto para percatarse de que si utilizamos DOSBox mientras descargamos películas con el Emule, Firefox tiene diez pestañas abiertas y estamos escaneando un disco, los resultados no van a ser los mejores. En Linux no estaría de más desactivar escritorios virtuales; al menos, si vamos bastante apurados.

También es muy importante ejecutar el emulador en pantalla completa (podemos cambiar entre ventana y pantalla completa pulsando [ALT] + [INTRO]). Así podemos ganar en ocasiones más del doble de velocidad; mostrar el escritorio y al mismo tiempo la ventana de DOSBox consume muchos recursos del ordenador de un modo innecesario.

Y ahora vamos con el interesante tema de los "ciclos".

Como habréis visto en el apartado anterior, en DOSBox tenemos dos combinaciones de teclas ([CTRL] + F11 y [CTRL] + F12) para cambiar el número de ciclos en la emulación. O sea, para modificar la velocidad a la que está trabajando DOSBox. Este número lo veremos, cuando estemos en modo ventana, en su barra superior.

Pulsando [CTRL] + F12 aumentamos el número de ciclos, lo cuál influye decisivamente en el rendimiento. La configuración por defecto suelen ser 2000 ciclos; pero se nos pueden quedar muy cortos cuando ejecutemos software pensado para máquinas 386 o 486, así que a menudo tendremos que incrementarlos.

No hay un límite estricto al número de ciclos que podemos especificar en el emulador. Sin embargo, nuestra CPU sí lo tiene. Quiero decir, que aumentando los ciclos incrementamos también los recursos del ordenador que está utilizando DOSBox; y éstos sí que se agotan... Pasados ciertos valores —que dependen en todo caso de la potencia de nuestra máquina—, hacer crecer el número de ciclos ya no nos servirá de nada. Es más, resulta contraproducente, y suele enlentecer el emulador. Así que en vez de pulsar [CTRL] + F12 a lo loco, deberíamos controlar los recursos del sistema que estamos empleando, para no pasarnos.

dosboxsod-831751

Para acelerar las cosas un poco más, podemos trastear también un poco con el salto de frames; para ello tenemos las combinaciones de teclas [CTRL] + F7 y [CTRL] + F8.

¿Y qué es un frame? Pues cada una de las imágenes generadas por la CPU que son mostradas en nuestro monitor; ni más ni menos. Esto funciona un poco como la técnica de los dibujos animados. Por ejemplo, una animación de una pelotita cruzando nuestra pantalla está elaborada en realidad con un número x de frames —imágenes fijas—, que al sucederse rápidamente crean una ilusión de movimiento.

En DOSBox, el salto de frames por defecto suele ser de 0; esto es, todas las imágenes generadas por el programa que estemos ejecutando serán reproducidas por el emulador. Sin embargo, no siempre podremos permitírnoslo, puesto que esto requiere bastantes recursos. Así que en ocasiones cambiar este valor puede sernos de ayuda.

Por ejemplo, especificando un salto de frames de 1, DOSBox mostrará una imagen e ignorará otra. En la práctica, supone reducir el número de frames reproducidos a la mitad, lo cual aumentará significativamente la velocidad de la emulación.

Ahora, esto tiene su parte negativa. Saltos de frames demasiado grandes pueden restarle mucha fluidez al juego que estemos ejecutando, haciéndolo funcionar a golpes, con lo que estaríamos perdiendo por una parte lo que ganamos por otra. Por lo que yo mismo he ido viendo, saltos de frames mayores de 4-5 ya comienzan a resultar problemáticos en muchos juegos.

Todavía hay más cosas que podemos hacer para acelerar DOSBox.

Por ejemplo, hay ciertos aspectos del sonido que deberíamos tener en cuenta. La emulación de Gravis Ultrasound es algo más rápida que la de SoundBlaster, así que deberíamos escoger esta tarjeta de sonido al configurar los juegos que queramos usar —vamos, si la soportan, cosa que no se cumple en muchos—. Así mismo, para la música midi resulta preferible General Midi en lugar de Adlib o SoundBlaster.

Otra solución es bajar la calidad del sonido de todos los dispositivos de audio emulados. Por defecto suele estar a 22050 Hz, pero podemos dejarlo en 11025 Hz. Para esto deberemos editar el archivo de configuración del DOSBox, el dosbox.conf (ver siguiente capítulo).

En casos más extremos, podemos simplemente desactivar el sonido de ese juego que tanto se resiste a funcionar con fluidez... Esto reduce los recursos utilizados por DOSBox y mejora un poco el rendimiento.

También tenemos la posibilidad de cambiar el "cpu core", de normal (su valor por defecto) a dynamic; esto se hace editando el archivo dosbox.conf, cosa que explico en el siguiente capítulo. El modo "dynamic" nos proporciona una velocidad mayor, pero como contrapartida resulta más inestable. Si os decidís a usarlo, grabad frecuentemente vuestras partidas para evitar disgustos.

Por lo demás, el "dynamic core" sólo funcionará en procesadores x86 (vamos, los PCs típicos). Así que quién quiera ejecutar DOSBox en otro tipo de máquina (un Mac basado en PowerPC, por ejemplo), mejor que se olvide de esta opción.

Por último, los juegos que funcionan en el modo protegido de MS-DOS (son fáciles de reconocer, puesto que para su arranque utilizan el archivo DOS4GW.EXE) exigen bastantes recursos y pueden darnos problemas. Con ellos es preferible usar DOS32A; lo explico en el capítulo correspondiente, más adelante.

EL ARCHIVO DOSBOX.CONF

DOSBox cuenta con un archivo de configuración —dosbox.conf, situado en la misma carpeta que el ejecutable— que podemos modificar para arreglar a nuestro gusto el funcionamiento del emulador. Cualquier editor de texto —Bloc de Notas, Leafpad, etc— nos servirá para hacerlo.

Puede suceder —aunque no es lo normal en la mayoría de versiones de DOSBox— que este archivo no esté presente. En tal caso deberíamos crearlo, arrancando DOSBox y ejecutando la utilidad config. En el capítulo de "Uso de DOSBox" está explicado este detalle.

Bueno, hemos abierto el archivo dosbox.conf y estamos listos para modificarlo... Comentaré las opciones más importantes, aunque suelen venir explicadas dentro del mismo fichero, con comentarios en inglés.
fullscreen= (false, true)

Especifica si DOSBox arranca en un principio en una ventana, o en el modo de pantalla completa. El valor por defecto es false (se inicia en una ventana), pero podemos cambiarlo a true si queremos iniciar el emulador directamente en pantalla completa.
output= (surface, overlay, ddraw, opengl, openglnb)

Aquí establecemos el modo gráfico en el que trabajará DOSBox. Podemos elegir los siguientes valores: surface, overlay, opengl, openglnb, ddraw. Siempre podemos ir probándolos para ver cuál nos da mejores resultados; aunque la mayoría de la gente suele dejar el valor por defecto, surface. No obstante, ddraw también debería funcionar bien en sistemas Windows; así mismo, valdría la pena hacer pruebas con el valor opengl si contamos con una tarjeta gráfica decente.
memsize= (valor)

Especifica los megabytes de memoria RAM que emulará DOSBox. El valor por defecto suele ser de 16, aunque podemos escoger otro que se adapte mejor a nuestras necesidades o a las posibilidades de nuestro ordenador. Por alguna razón, los valores por encima de 31 MB no están recomendados.
machine= (vga, cga, tandy, hercules)

El tipo de tarjeta gráfica que emulará DOSBox. La opción por defecto es vga, que servirá para la mayoría de los viejos títulos de MS-DOS. Juegos programados para EGA o CGA deberían funcionar también con este valor. Sin embargo, para emular software que sólo admita Tandy o Hercules —que es muy poco, en realidad—, tendremos que usar las opciones correspondientes.

Por cierto, con el valor vga también podremos usar los modos en alta resolución VESA —empleados por algunos juegos de mitad de los noventa, como Duke Nukem 3D, etc—..., vamos, si nuestra CPU puede con ello.

Nota: en las últimas versiones de DOSBox —en el momento de añadir este párrafo al tutorial, la más reciente es la versión 0.73— esto ha cambiado un poco. La opción vga ya no existe —en su lugar tenemos vgaonly, que ya no muestra los modos gráficos VESA—, y se han agregado otras nuevas que emulan diversas tarjetas gráficas —svga_s3, svga_et3000, svga_paradise, etc—. La verdad es que vgaonly es un buen valor de compromiso, pero si vais a usar software que admita los modos VESA en alta resolución seguramente querréis probar otras tarjetas emuladas, como svga_s3 o vesa_oldvbe.
captures= (carpeta)

Especifica el subdirectorio en el que DOSBox almacenará las capturas de pantalla, grabaciones de sonido..., que vayamos haciendo. Por defecto suele ser la carpeta captures. Si indicáis aquí un directorio inexistente, el emulador no guardará nada.
frameskip= (valor)

Asignamos el salto de frames con el que funcionará DOSBox por defecto. El valor usual es cero, pero podemos usar cualquier otro que se adapte a nuestras necesidades. Para más información sobre los saltos de frames, echad una ojeada al capítulo "Acelerando la emulación".
core= (normal, full, simple, dynamic)

Núcleo de CPU usado en la emulación. El valor por defecto es normal. Ahora, si queremos acelerar un poco el funcionamiento de DOSBox, podemos cambiarlo a dynamic. Sin embargo, este modo resulta más inestable que el normal (ver el capítulo "Acelerando la emulación").
cycles= (valor)

El número de ciclos (instrucciones emuladas por milisegundo) con el que trabajará DOSBox al iniciarse. Suelen ser 2000, pero podemos cambiar este valor a otro más acorde con lo que necesitamos. Así nos ahorramos ajustar el número de ciclos con [CTRL] + F12 y [CTRL] + F11 cada vez que arranquemos el emulador.

A partir de la versión 0.70 de DOSBox se introdujo la posibilidad de hacer que la máquina ajuste automáticamente el número de ciclos, según las necesidades de la emulación —para ello, escribid auto como valor para esta opción—, o que trabaje siempre al máximo —valor max—.

En el capítulo "Acelerando la emulación" encontraréis un comentario más amplio sobre cómo ajustar los ciclos.
cycleup= (valor)
cycledown= (valor)

"Cycleup" determina el incremento del número de ciclos que obtendremos al pulsar [CTRL] + F12; por ejemplo, 500 o 1000 podrían ser buenos valores. "Cycledown" especifica la reducción de ciclos que conseguiremos con cada pulsación de [CTRL] + F11.

En ambas opciones, valores por debajo de 100 dejan de hacer referencia a una cantidad fija de ciclos, y son interpretados como porcentajes del número total.
rate= (valor)

Especifica la calidad del sonido que reproducirá DOSBox. El valor por defecto es 22050 (22050 Hz), pero podemos bajarlo a 11025 si queremos acelerar un poco la emulación.

Por último, la calidad que asignemos al sonido de las tarjetas emuladas (SoundBlaster, Gravis Ultrasound, etc) no debería superar este valor, que viene a ser una especie de control general. De lo contrario, la emulación de estas tarjetas puede brindar unos resultados bastante pobres.
mpu401= (true, false)
gus= (true, false)
pcspeaker= (true, false)
disney= (true, false)

Con estas líneas activamos o desactivamos la emulación de diversos dispositivos de sonido; MPU401, Gravis Ultrasound ("gus") y Disney Sound Source ("disney"). La opción "pcspeaker" hace referencia al altavoz interno del ordenador. Lo normal —y más recomendable— es que todas ellas estén activadas con el valor true.

En las opciones de configuración de cada tarjeta podremos modificar la calidad del sonido emulado —recomendable no ponerla más alta que la del mezclador general de DOSBox—, así como sus valores de hardware. Estos últimos en realidad no deberíamos tocarlos sin tener muy claro lo que estamos haciendo. Los valores por defecto de las dos tarjetas que los emplean son los siguientes:

    * Base=220, irq=7, dma=1, hdma=5 (SoundBlaster).
    * Base=240, irq1=5, irq2=5, dma1=3, dma2=3 (Gravis Ultrasound).

Aquí tenemos parte del archivo dosbox.conf. Como podréis ver, su sintaxis es bastante sencilla:

dosboxconfhtml-181333

xms= (true, false)
ems= (true, false)

Activan o desactivan la emulación de memoria extendida (XMS) y expandida (EMS). Por defecto, ambas estarán en funcionamiento —valores true—. No es algo que nos deba preocupar mucho. Hay juegos que requieren memoria expandida para funcionar, y otros que no la permiten; pero ambos casos son muy minoritarios.
[autoexec]

Y ahora pasamos a la última parte del archivo de configuración de DOSBox, y una de las más interesantes. Al final del texto probablemente encontraremos dos líneas que dicen así:

[autoexec]
# Lines in this section will be run at startup.

Bien, quiénes hayan usado MS-DOS se acordarán del archivo AUTOEXEC.BAT —que, de hecho, también está presente en Windows 95/98/Me—. Un fichero que ejecutaba diversos comandos al iniciar el sistema... Pues bien, la etiqueta "autoexec" de DOSBox tiene el mismo cometido.

Por ejemplo, imaginemos que tenemos por costumbre, al poner en marcha el emulador, montar la unidad C: de nuestro disco duro. Así, cada vez que iniciásemos una sesión con DOSBox, tendríamos que escribir un comando mount:

Z:\> mount c c:\

Pero en realidad no sería necesario repetir esta orden siempre que arrancásemos el emulador. Lo mejor sería escribirla bajo la etiqueta "autoexec" del dosbox.conf:

[autoexec]
# Lines in this section will be run at startup.
mount c c:\

Y así, el comando se ejecutaría al iniciarse DOSBox, de manera que tendríamos la unidad C: montada automáticamente. Esto es algo muy práctico y cómodo para los usuarios habituales de DOSBox.

Por ejemplo, éste es mi "autoexec":

dosboxautoexec-114192

JUEGOS EN MODO PROTEGIDO: DOS32A

A mediados de los noventa, algunos juegos y programas comenzaron a utilizar el modo protegido de MS-DOS. Éstos son fáciles de reconocer, puesto que todos ellos emplean el fichero DOS4GW.EXE, un antiguo extensor de MS-DOS. Por ejemplo, tenemos títulos tan famosos como Doom, Syndicate, etc.

En esta captura de pantalla, que he tomado mientras se ejecutaba el Doom 2, podemos ver cómo se inicia el DOS4GW antes de proceder a arrancar el juego:

dosboxdos4gw-587632

La cuestión es que los juegos que emplean el modo protegido pueden resultar problemáticos en DOSBox. Requieren muchos recursos, muy a menudo la emulación no es demasiado rápida, y en algunas ocasiones —raras, también hay que decirlo; al menos con las últimas versiones de DOSBox— se vuelven inestables.

Para estos inconvenientes hay una solución: usar DOS32A.

DOS32A, al igual que DOS4GW, se trata de un extensor de MS-DOS. Ahora, resulta mucho más moderno —de hecho, es un proyecto vivo y en desarrollo—. Se distribuye gratuitamente, bajo licencia GPL si no recuerdo mal. Y sobre todo, ofrece un mejor rendimiento que el viejo DOS4GW; mayor velocidad de ejecución, y más estabilidad.

DOS32A podemos usarlo en DOSBox o en cualquier sistema MS-DOS (ya sea una máquina emulada con QEMU, VMWare, Bochs..., o un PC real); en cualquiera de estos casos merece la pena.

Lo primero que deberíamos hacer es descargarlo de la página web del proyecto: http://dos32a.narechk.net/index_en.html. Luego descomprimimos el fichero que nos hayamos descargado dónde nos apetezca. Posiblemente, éste contendrá varios archivos ejecutables (EXE); pero el que nos interesa es el DOS32A.EXE.

Siguiendo con el ejemplo de antes, vamos suponer que queremos utilizar DOS32A para jugar a Doom 2. El asunto es muy sencillo. Primero copiamos el archivo DOS32A.EXE en la carpeta del juego. Y luego, entramos en DOSBox y arrancamos Doom 2 del siguiente modo:

dosboxdos32a-877074
Y ya lo tenemos funcionando.

Así que el uso de DOS32A es el siguiente:

dos32a (archivo .exe a ejecutar)

Lo más cómodo es tener una copia del DOS32A en la carpeta de cada juego que queramos ejecutar de este modo. El programa es muy pequeño —menos de 50 KB—, y no vale la pena andar cortando y pegando.

DUDAS FRECUENTES

Pues eso. Aquí trato de explicar algunas cuestiones que dan dolores de cabeza a muchos usuarios de DOSBox. Algunas han sido tratadas a lo largo de este manual, y otras no.
La unidad de CD-ROM no funciona en DOSBox:

Antes que nada deberíamos asegurarnos de que la estamos montando de la forma correcta (con la opción -t cdrom en el comando mount; ver el capítulo de "Uso de DOSBox"). Si aun así sigue sin funcionar adecuadamente, podemos montarla con emulación a bajo nivel. Por ejemplo:

Z:\> mount d f:\ -t cdrom -usecd 0 (Con soporte SDL).
Z:\> mount d f:\ -t cdrom -usecd 0 -ioctl (Con soporte IOCTL; en sistemas Windows 2000/NT/XP).
Z:\> mount d f:\ -t cdrom -usecd 0 -aspi (En Windows 98, con los controladores ASPI instalados).

Tenéis más información en la parte de "Uso de DOSBox".
El ratón no funciona bien:

Normalmente, DOSBox detecta cuando un juego emulado está utilizando el ratón. Así, si clicamos en la ventana del emulador, el puntero del ratón queda "atrapado" en ella, y podremos usarlo para jugar del modo habitual. Sólo que en ciertas ocasiones esto puede no funcionar, y será necesario que capturemos el ratón pulsando [CTRL] + F10.
El sonido funciona entrecortado; ¿por qué?

En primer lugar, deberíamos ejecutar DOSBox en pantalla completa.

Si aun así persiste el problema, se debe a que estamos usando demasiados recursos de nuestra CPU. En tal caso deberíamos bajar el número de ciclos o aumentar el salto de frames. También hay que recordar que la emulación de Gravis Ultrasound y MPU401 o General Midi tiene un mejor rendimiento que la de SoundBlaster; si el juego o programa que estemos usando nos da la oportunidad, deberíamos utilizar estas tarjetas.

Otra opción sería incrementar el valor de "prebuffer" en el archivo de configuración de DOSBox —usualmente, dosbox.conf—. Esta opción está situada en la etiqueta "mixer".

Ver los capítulos "Acelerando la emulación" y "El archivo dosbox.conf" para una información más general sobre estos asuntos.
¿Qué tarjetas y dispositivos de sonido puede emular DOSBox?

    * El altavoz interno del PC.
    * Creative CMS/Gameblaster:
      La primera tarjeta de sonido desarrollada por Creative Labs. La configuración por defecto la coloca en el puerto 0x220; esto puede ocasionar conflictos si activamos al mismo tiempo la emulación de Adlib (puesto que ambas usaban en mismo puerto).
    * Tandy.
    * Adlib.
    * SoundBlaster 16, SoundBlaster Pro I / II, SoundBlaster I / II:
      Con la configuración por defecto, DOSBox emula una SoundBlaster 16 con sonido estéreo de 16 bits. Esto podemos cambiarlo editando el archivo dosbox.conf.
    * Disney Soundsource.
    * Gravis Ultrasound.
    * MPU401:
      Una interfaz de sonido, pensada para trabajar con música midi, que se usó en diversas tarjetas, entre ellas General Midi y MT-32.

¿Cómo cambiar el tipo de sistema que está emulando DOSBox?

Para esto debemos editar el archivo de configuración del emulador, el dosbox.conf. En él veremos opciones para modificar la cantidad de memoria RAM que queremos disponible en la emulación, el tipo de tarjeta gráfica —VGA, CGA, etc—, y muchos otros detalles de interés.

Leed el capítulo "El archivo dosbox.conf" para más información.
El juego o programa no puede leer su CD-ROM:

Evidentemente, tenemos que asegurarnos de usar la opción -t cdrom con el comando mount. También podríamos emplear la opción -label, asignándole a la unidad emulada la misma etiqueta de volumen que tiene el CD que queremos leer.

Otra posibilidad sería montar la unidad de CD con emulación a bajo nivel. Sobre esto podéis ver el capítulo "Uso de DOSBox", o la primera pregunta de esta misma sección.
¡Hey! ¿Qué pasa con el teclado? ¿Cómo escribir ciertos signos?

DOSBox utiliza por defecto una configuración de teclas inglesa. Con nuestros teclados españoles no tendremos problemas para escribir carácteres alfanuméricos —o sea, letras y números—, pero sí con diversos signos de uso común como corchetes, asteriscos, paréntesis, etc. Ocurre que éstos están situados en teclas diferentes.

Para ahorraros una fatigosa búsqueda, aquí hago una pequeña lista con los símbolos más frecuentes y su localización en la configuración de teclas de DOSBox:

dosboxcaracteres-997116

Por cierto, y al contrario de lo que sucede en MS-DOS, en DOSBox las barras (/ y \) son intercambiables a la hora de especificar rutas de directorios.

Podemos cambiar la configuración del teclado pulsando [CTRL] + F1 mientras trabajamos con el emulador. O bien instalarnos el KEYB.COM de MS-DOS o FreeDOS —preferiblemente éste último—.
¿Cómo compilar el código fuente de DOSBox en Linux?

Más arriba, en el capítulo "Instalando DOSBox" he dejado unas sencillas indicaciones. De todos modos, en el archivo INSTALL —que viene con el código fuente de cualquier versión de DOSBox— encontraremos también instrucciones, y una pequeña lista con las librerías necesarias para la compilación.
DOSBox funciona muy lento:

Hay diversos modos de aumentar el rendimiento del emulador y sacarle el máximo partido; sobre esto he hablado largo y tendido en el capítulo "Acelerando la emulación".

Por lo demás, no esperéis milagros de DOSBox. Es un emulador, y lo que ejecutemos con él nunca irá tan rápido como una aplicación nativa. Con una CPU de 1-1'5 GHz podríamos emular el equivalente a un 486 de gama baja; con un Pentium II a 300-400 MHz, podemos conseguir un 286 potente o un 386. A mejor máquina, claro, mejores resultados.

¿Cómo configuro una tarjeta de sonido en un juego?

Bueno, muchos juegos simplemente las detectaban automáticamente, sin necesidad que nosotros tuviéramos que tocar nada; por ejemplo, era el caso de Titus the Fox, y muchos otros que ahora no recuerdo.

Ahora, en otros casos tendremos que configurar el sonido nosotros mismos. Para ello, normalmente hay que ejecutar alguna utilidad de configuración que venga con el juego —suelen llamarse SETUP o INSTALL—. Por ejemplo, aquí tenemos el "Setup" de Doom 2:

dosboxsonido-836174

Aquí escogeremos la tarjeta de sonido que más nos convenga, tanto para reproducir los efectos digitalizados como las melodías midi. Ahora, las dificultades vienen a la hora de configurar la tarjeta en cuestión; el ordenador nos preguntará por el puerto ("address", "port" o "base address"), la interrupción (IRQ), y otras cuestiones como el canal DMA, etc.

Dado que se trata de tarjetas emuladas, estos valores están determinados por DOSBox. Podemos verlos editando el archivo dosbox.conf, y cambiarlos si lo deseamos —cosa que normalmente no necesitaremos hacer—.

Por si las dudas, los valores por defecto son estos:

    * SoundBlaster: Puerto 220, IRQ 7, DMA 1, HDMA 5.
    * Gravis Ultrasound: Puerto 240, IRQ 5, DMA 3.
    * General Midi: Puerto 330.


Bien aquí esta este pequeño manual,no es mio pero fue el que primero use cuando me enbarque en el mundillo de DOSBox.

La pagina donde puedes descargar este manual es: http://www.arcades3d.com/index.php, en la sección de tutoriales, el autor de este manual autoriza la distribucion.

PD. No inclui la sección de Dfend debido a que este frontend esta desactualizado y la pagina del proyecto ya no existe.