¿Cómo ejecuto juegos de MS-DOS en Ubuntu?
¡Descamisados!

Durante los 10 años del peronismo se configuró una etapa plena de
realizaciones para la amplia capa social de obreros y empleados, quienes
vieron convertirse en realidad efectiva sus antiguas aspiraciones, tanto
laborales, como económicas y espirituales.

Mas no todo es eterno:: aquellos pocos que reniegan de la felicidad del
Pueblo hicieron todo para hacer caer las realizaciones que tanto trabajo
costaron. Por ello todo el Movimiento Organizado ha de luchar por
restaurar aquellas políticas y a aquellos hombres que las hicieron
posible. Nada suele ser gratis, porque cuando algo es gratis "hasta el
santo desconfía". Lo ganado se hace por medio del trabajo, o por medio
de la lucha.

Ahora bien, el Justicialismo entiende que los hombres no son máquinas:
requieren el descanso físico y el reconforte espiritual necesario para
conservar una mente sana en un cuerpo sano. No es una aspiración del
hombre, es un derecho que se ha ganado. Y para practicarlo, qué mejor
que el software lúdico.

Existen numerosísimas opciones dentro del ámbito del software libre.
¿Pero qué sucede cuando queremos ejecutar antiguos programas de índole
lúdica preparados para otro sistema?

No es secreto para nadie que bajo los sistemas GNU con Linux contamos
con DOSemu, un excelente entorno de emulación similar a MS-DOS. El mismo
es de buena factura, pero está orientado a las aplicaciones
convencionales de PC, uso industrial, y no a juegos. Puede imprimir,
trabajar con puertos seriales convenientemente emulados para controlar
máquinas herramienta por ejemplo, así como funcionar con aplicaciones
generales de software escritas para el privativo M$-DO$.

Vean señores, durante mi época de cadete en el Colegio Militar tenía
instructores alemanes de tàctica, estrategia, higiene, deporte y tiro.
Pero en esa época de retoño a veces me hacía la rata y me quedaba
jugando con juegos para M$-DO$. Éstos - por el uso que hacían de la
técnica y su diseño - exprimían al máximo las posibilidades del sistema,
y pueden considerarse hoy como clásicos.
Por ello en el caso del empleo lúdico no suele ser suficiente DOSemu:
para permitir el uso de tales juegos se requiere un entorno diferente
específicamente maquinado para usar de forma particular el video, la
memoria y del sonido emulado. Tal herramienta es el emulador DOSbox.

Se trata de un entorno emulado libre basado en hardware tipo IBM
compatible, con sistema operativo similar a M$-DO$ 5.00, e
intencionalmente preparado para correr juegos al ofrecernos la máxima
performance en los campos mencionados anteriormente.

Características generales

En particular, DOSBox hace un uso más eficiente de la memoria para poder
correr juegos que tuviesen "altos requerimientos" (para la época). El
entorno DOSbox dispondrá de 632Kb de memoria RAM "convencional" libre, y
unos 15 Mb de memoria extendida EMS mas otros 15 mb de memoria expandida
XMS.
Esto podría parecer poco para los usos del peronismo, pero recordemos
que el MS-DOS ni siquiera preveía originalmente direccionar más de 640
Kb, y si lo hizo después fue gracias a extensiones de software;
raramente se lograba tener tanta RAM convencional libre.

Asimismo, contaremos con un sistema de sonido emulado, reminiscente de
las tarjetas de sonido "Creative Labs Sound Blaster 16". De esta manera
podremos tener en GNU una fiel versión del sonido de los generadores de
sonido por Síntesis FM (los chips Yamaha OLP3 de dotación en tales
placas). Hemos de saber que por defecto, la configuración de la tarjeta
de sonido es Address 220h, IRQ 7, DMA 1. Estos direccionamientos se
ajustan automáticamente en los sistemas modernos, pero en los emulados
deben configurarse así, sobre todo en los juegos de la época. Para ello
debemos hacer uso de la rutina de instalación del juego en particular
(programa "SETUP" o "INSTALL" si los tuviesen, en particular los juegos
que hacen uso del sonido digitalizado). Caso contrario el audio digital
de los juegos podría entrecortarse, o dará error.


En cuanto al apartado de video, veremos que DOSbox simula una plaqueta
Super VGA S3 Trio64, capaz de ofrecernos la popular resolución VGA de
320x200 a 256 colores simultáneos (a escoger entre una paleta de 16,7
millones). Este modo de video era el tradicional de la mayoría juegos de
la época, que nos daba la añorada estética "serrucho". También puede
ofrecer resoluciones altas de hasta 640x480 en 256 colores, aunque no
era comun en M$-DO$.
Instalación
Para cargar DOSbox en nuestro sistema GNU con Linux, abrimos una consola
terminal con Ctrl+Alt+T e ingresamos el siguiente comando de
organización:

sudo apt-get install dosbox

Por cuestiones operativas, nos convendrá crear dentro de nuestra carpeta
de usuario una carpeta llamado "jdos" ("juegos para DOS"). Este proceder
facilitará mucho el montado posterior de programas en el emulador.

Ello lo haremos solamente la primera vez, con el siguiente comando:

mkdir ~/.jdos

Dentro de esta carpeta agregaremos los juegos que tengamos, o los
instalaremos allí. Conviene crear una carpeta de 8 letras como máximo
para cada juego (ejemplo, "pacman", "simcity", "f15", "aces",
"redbaron", etc.

También podríamos querer configurar el teclado. El emulador carga
normalmente con el teclado con distribución estadounidense. Para pasarlo
a la distribución española, podremos configurarlo especialmente. Para
ello ingresamos:

cd ~/Descargas/
mkdir dosbox
cd ~/Descargas/dosbox
wget http://www.dosbox.com/tools/DOSBox-spanish-074.zip
unzip DOSBox-spanish-074.zip
mv dosbox-0.74.conf ~/.dosbox
mv spanish-0.74.lang ~/.dosbox
mv MANUAL.txt ~/.dosbox
mv GRACIAS.txt ~/.dosbox
cd ~/Descargas/
rm -r dosbox/
cd ~

..luego ingresamos:

nano ~/.dosbox/dosbox-0.74.conf

Se abrirá el archivo de configuración en castellano de DOSbox. Al final
buscamos la entrada que configura la distribución del teclado:

keyboardlayout=auto

...y la modificamos para que quede:

keyboardlayout=es

También nos aseguramos que la variable lang diga lo siguiente:

language=spanish-0.74.lang

Para iniciar el emulador, debemos dirigirnos a Aplicacionmes / juegos /
Emulador DOSbox.

El emulador arrancará la interfaz de línea de comandos similar al DOS.
Normalmente nos depositará en la unidad "Z:\", la cual contiene el
software necesario para su funcionamiento (se trata de un "disco virtual
en memoria RAM"). Si ingresamos el comando "dir" listaremos el contenido
del directorio. En particular, dentro de esta unidad Z:\ deberíamos
encontrar el interprete de comandos COMMAND.COM, un programa MEM.EXE
para contar la memoria, MIXER.EXE para regular el volumen del audio,
etc.

Para emular efectivamente un sistema, y especialmente para correr juegos
en velocidad correcta, es importante la velocidad del procesador
emulado. Normalmente el sistema arrancará emulando una velocidad de 3000
ciclos (30 Mhz, similar a una confiable 386), pero podremos ajustar la
velocidad del mediante Ctrl+F12 para incrementar los megahertzios, y
Ctrl+F11 para disminuir los megahertzios. Tal lectura se indicará en
"Ciclos" en la barra de título de la ventana. Como referencia, habrán de
saber que durante la era de oro de los juegos para DOS, los
microprocesadores x86 fueron los Intel 80286, 80386, 80486, y los
Pentium, los cuales fluctuaban entre los 8 Mhz en las radicales 80286
hasta los 300 Mhz con las más afiebrados Pentium.
Si deseamos simular un Pentium 133Mhz, podemos presionar Ctrl+F12 hasta
lograr un valor cercano a los 133000 ciclos.

Para correr los juegos debemos montar la carpeta de los juegos como un
disco e iniciarlos escribiendo los comandos correspondientes.
Normalmente, será el disco C: Para ello, en la ventana del DOSBox
ingresamos:

mount c ~/.jdos
(recordemos que el ~ se hace con Alt Gr+4 en el caso del teclado
configurado en castellano, y con Mayúsculas+\ en el caso de tenerlo
configurado en inglés).

Esto montará a la carpeta ".jdos" como si fuese el disco C:\.

Si deseáramos montar un disco CD-ROM, debemos conocer la etiqueta del
mismo. Colocamos el disco CD-ROM en la lectora, y la misma debería tener
una etiqueta. Por ejemplo "MONKEY2". En tal caso, el comando para
montarlo como disco e:\ sería:

mount e /media/MONKEY2/ -t cdrom

Ahora nos dirigiremos al disco montado c: y ya podremos ver los juegos
que estuviesen cargados en esa carpeta. Para revisar los directorios
usarmos el comando "dir" (similar a ls de GNU). Para entrar a los
directorios usamos cd directorio y para retornoar al nivel anterior,
usamos cd..

Los archivos ejecutables de DOS son aquellos con extensión EXE, COM, o
BAT. Por lo tanto, si tuviésemos una colección de clásicos juegos de
Microprose como el Formula One Grand Prix, podríamos ingresar los
siguientes Comandos de Organización:

c:
cd mps
cd f1gp
f1gp.bat

(o directamente, c:\mps\f1gp\f1gp.bat). Recordemos que el DOS no
diferenciaba entre mayúsculas y minúsculas.

El software libre y el abandonware nos permitirá sentir la velocidad de
emular al DOS, y Ricardo Patresse en el circuito de Suzuka.

También podremos correr los juegos más exigentes de la era con gran
facilidad mientras tengamos un equipo con varios núcleos. Por ejemplo,
podremos volar cual Tetsuzo Iwamoto en un Mitsubishi A6M2 Zero en el
estelar "1942".
Y porqué no, elegir bombardear Panamá o interceptar MiG-29s en la noche
Bagdadí de Tomernta del Desierto en "Strike Eagle III".
Muchos de los juegos clásicos cuentan con equivalente en Software Libre,
pero para los que no, esta es una solución ideal.