sábado, 28 de septiembre de 2013

¿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, que vieron convertirse en realidad antiguas aspiraciones, tanto laborales, como económicas y espirituales.

Mas no todo es eterno:: quienes 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 fisico 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?

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$.

Durante la época de MS-DOS surgieron gran cantidad de juegos que - por el uso que hacían de la técnica y el diseño que tenían - usaban al máximo las posibillidades del sistema y pueden considerarse hoy como clásicos.

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 factura excelente, pero está orientado a las aplicaciones convencionales de PC: 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$.

Sin embargo, en el caso del empleo lúdico, no suele ser suficiente: para permitir el uso de tales programas se requiere un entorno diferente específicamente maquinado para usar de forma particular el video, la memoria y del sonido emulado.

Por tal motivo desde hace años existe el emulador DOSBox, un entorno similar a M$-DO$ 5.00, intencionado para correr juegos y 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 convencional 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. (En su momento, mediante ingenio y priorizando los controladores más pesados para la memoria "superior" en sus mejores momentos pude tener 621kb de memoria convencional, adecuado para correr la gran mayoría de los juegos).

Asimismo, contaremos con un sistema de sonido emulado por software libre, reminiscente de las tarjetas de sonido "compatible Creative Sound Blaster Pro 2". 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 que traian estas placas). Hemos de saber que por defecto, la configuración de la tarjeta de sonido es Address 220h, IRQ 7, DMA1. 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 (o "SETUP") del juego en particular (si la tuviesen, y si hiciesen uso del sonido digitalizado). De no ser así, el audio digital de los juegos podría entrecortarse, o dará error.


En cuanto al apartado de video, contamos DOSbox simula una plaqueta de video 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.

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.
En mi caso dispuse durante brevisimo tiempo de una 286 de 25Mhz, luego de una 386 de 33Mhz de extendidísima vida, y finalmente una Pentium 133 MHz. Esta era la cual funcionaba mejor con los juegos, de modo que presionaré Ctrl+F12 hasta lograr un valor cercano a los 133000 ciclos.


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 ingresar este simple comando:

keyb sp


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.

No hay comentarios:

Publicar un comentario en la entrada