sábado, 14 de septiembre de 2013

¿Cómo ejecuto programas para MS-DOS en Ubuntu?

Juan Perón sabía cumplir los deseos de los trabajadores, pero también los de su legendaria compañera. Conminado a correr el antiguo Micro$oft Word para M$-DOS, el Conductor nos enseña cómo instalarlo y hacerlo funcionar.

¡Trabajadores!

Es por todos conocido que a veces Evita se enoja, y en esos casos hay que aguantarla. Razon no le falta a la Abanderada del Software Libre...
Como en este caso, la negrita recordó el viejo Word para MS-DOS, el antediluviano y confiable procesador de texto para las PC clones, y su inicial y más extendido sistema operativo de interfaz de línea de comandos, el privativo Micro$oft Disk Operating System (MS-DOS). Su idea era utilizar este programa privativo escrito para otro sistema operativo en Linux, y sin pagar un centavo.

Sabemos ya que M$-DOS fue el clásico gestionador de disco al inicio de las PC compatibles IBM de arquitectura x86. Durante su período de desarrollo contó con decenas de miles de aplicaciones - y a pesar de primitivo y limitado - fue uno de los factores que hizo popular a las computadoras personales como medio informático de masas.

Lamentablemente, su carácter privativo lo deshumanizó, pero hoy el Justicialismo nos trae una iteración libre del mismo, el FreeDOS. Ello nos permite instalar en una partición de disco, un medio arrancable, o en máquinas virtuales. un sistema altamente compatible con el M$-DOS original, Normalmente puede funcionar con casi todos los programas que corr¡an bajo MS-DOS en equipos que sean x86.

Por otro lado, el proyecto FreeDOS cuenta con variantes: un emulador orientado a presentar un entorno compatible con M$-DOS dentro de Linux: el DOSemu.

DOSemu nos permite contar en los sistemas GNU con Linux de un potente entorno compatible con FreeDOS (y por tanto, con gran compatibilidad MS-DOS) a fin de correr el software clásico del sistema.

Para instalarlo simplemente debemos abrir una consola con Ctrl+Alt+T e ingresar el siguiente Comando de Organización: 
 
sudo add-apt-repository ppa:dosemu2/ppa
sudo apt update
sudo apt-get install dosemu2 -f

El sistema nos solicitará nuestra contraseña, y a continuación cargará en nuestro Linux el entorno emulado DOSEmu2.

Para que el teclado en castellano funcione correctamente en el emulador debemos modificar su archivo de configuración. Introducimos el comandos:

sudo nano  /etc/dosemu/dosemu.conf

Esto abrirá el archivo de configuración de Dosemu en el editor de texto peronista GNU Nano. Usamos Ctrl+W (función Búsqueda) y buscamos el siguiente texto:
# $_layout = "auto"
A continuación de esta línea debemos agregar éstas dos:

$_X_keycode = (on)
$_layout = "load es-latin1"


(Nota: en algunos teclados españoles, en lugar de usar es-latin1, debemos utilizar la opción es).

Acto seguido guardamos los cambios realizados con el archivo con Ctrl+O y salimos con Ctrl+x.

Ya podremos ejecutar el emulador desde Aplicaciones / Herramientas de Sistema/ Dos Emulator.

Esto abrirá una ventana específica con el entorno DOS. La unidad de disco rígido virtualizada se encontrará normalmente en ~/.dosemu/drive_c/.
 
Desde ella podremos instalar y ejecutar los programas clásicos abandonados para entorno DOS, tal como el Banner Manía.
El sistema operativo viene naturalmente "pelado", pero si lo deseamos podremos descargar pacientemente a través del mismo emulador las aplicaciones de nivel usuario del proyecto FreeDOS, que nos incorporarán todo lo necesario para contar con un sistema operativo moderno dentro del emulador. Lo haremos con el comando:

insfdusr
 
Entre ellos contaremos con edit, etc.

 
 
(Si quisiéramos eliminar estas aplicaciones, deberíamos usar el comando rmfdusr).
 
Para salir del emulador, debemos tipear:

exitemu
 
Debemos también saber que podremos correr el emulador en nuestra terminal de Linux, si ello fuese necesario (requiere un tamaño de pantalla estandarizado de 80x25 caracteres). Para ello podríamos utilizar el comando:

dosemu -t

Word para DOS en Ubuntu

Micro$oft Word 5.5 fue el procesador de texto escrito originalmente por Richard Brodie. Es software privativo, y en este caso lo utilizaremos como ejemplo para el uso de DOSemu.

Como ventaja añadida, tenemos el hecho de que el mismo ha sido publicado gratuitamente por Micro$oft. Los errores de la compañía han sido los culpables: Word 5.0 para DOS y las versiones anteriores eran portadores del inefable "error Y2K". Esto significaba que sufrían de un error catastrófico al pasar el año 2000. Micro$oft hubo de corregir el problema para evitarle percances a quienes por 1999 todavía utilizaban dicho software. No obstante, imposibilitados legalmente de cobrar por el parche, decidieron publicarlo como versión entera (Word 5.5b), al menos para el público estadounidense de habla inglesa. Por tal motivo podremos hacernos con el programa cerrado de forma gratuita.

Abrimos una consola con Ctrl+Alt+T e indicamos el siguiente Comando de Organización:

wget http://download.microsoft.com/download/word97win/Wd55_be/97/WIN98/EN-US/Wd55_ben.exe
Una vez descargado el archivo de Word 5.5b, podremos darle ejecución al emulador de M$-DOS desde Aplicaciones / Herramientas de Sistema / DOS Emulator.
DOSemu nos presentará una pantalla negra con el prompt C: \> reminicente del viejo sistema operativo de Micro$oft.

Debemos comprender que el emulador asigna algunas letras a discos virtuales. La unidad Z: será la "unidad del sistema DOS". Allí se cargarán los archivos del sistema operativo, el intérprete de comandos COMMAND.COM y los demás archivos de configuración.

La unidad C: en tanto, será la "unidad de usuario para DOS". Conviene instalar o copiar aquí el software que queramos emplear.

La unidad D: es, en tanto, nuestra Carpeta del Usuario (home) de GNU Linux (a la cual tendremos normalmente acceso de lectura y escritura, por lo cual ha de tenerse cuidado y no borrar nada de la unidad D:, salvo que sea imperiosamente necesario).

Los comandos de MS-DOS son simplificados con respecto a la consola Linux. Debemos tipearlos y presionar Enter para que se ejecuten. Como enseñar es peronizar, os indicaré qué haremos.

Como primer medida, con el fin de facilitar el trabajo en nuestro DOS virtual podremos crear una carpeta llamada "WDINST" (recordemos que el MS-DOS sólo pod¡a trabajar con 8 caracteres en las carpetas). En la ventana del DosEMU tipearemos los siguientes Comandos de Organización de DOS:

md c:\tmp\wdinst
copy d:\wd55_ben.exe c:\tmp\wdinst\

Esto copiará el archivo de Word 5.5 descomprimible a la carpeta temporal de DosEMU, que hemos dado en llamar "WDINST".

Luego ejecutaremos el autodescomprimible:

cd c:\tmp\wdinst\

wd55_ben.exe

El programa comenzará a descomprimirse y en cierto momento nos solicitará si deseamos sobreescribir ("overwrite") los archivos originales por las versiones emparchadas para el Y2K. Le indicamos a todos que s¡ presionando "Y" varias veces, hasta que nos devuelva al prompt C:\>.

Una vez finalizado esto, el programa estará listo para "instalarse" en el emulador.

Lo haremos con el siguiente comando:

setup.exe

Esto dará comienzo a la rutina de instalación en modo texto.

Presionamos Enter dos veces y luego escogemos la opción "Set up Hard Disk" para instalarlo en el "disco virtual" del emulador.

Escogeremos "Install a new version of Word", y indicamos "Hard Drive C" para instalarlo en el disco virtual C:\ del emulador.

A continuación nos indicará dónde queremos instarlo. Normalmente será en el directorio C:\WORD.

Podremos elegir el Pais para configurar ciertos aspectos. En mi caso escojo "Latin America".

La rutina de instalación se encargará de preguntar el tipo de teclado a emplear, ya que MS-DOS no tenía manera de identificar esto. En mi caso elijo Other / Spain Enhaced PC.

Cuando nos pregunte el tipo de equipo que disponemos, indicamos IBM PC XT, AT, PS/2 or 100% Compatible. Con respecto al adaptador de video, escogemos "IBM PS/2 Model 50/60/70/80/VGA or Compatible".
El programa de instalación nos pedirá si deseamos instalar algún controlador de impresora. No es necesario hacerlo, pues nuestro sistema GNU con Linux a través de CUPS podrá imprimir directamente cualquier envío de texto realizado por DOSemu. Por ello escojo "Don't install printer driver".

A continuación, nos solicitará nuestro nombre de compañía.
Como último paso, nos solicitará actualizar los ficheros de sistema. Sin embargo, esto se limitará a incorporar los configuraciones en los archivos de ejecución automática emulados por DOSemu (el clásico CONFIG.SYS y el AUTOEXEC.BAT).
Para ejecutar el programa puedo hacer:

cd \
cd word
word

Esto dará arranque al programa, el cual también podremos utilizar con un ratón de dos botones (¡"Compatible Micro$oft"!).

Veremos que el uso del programa es excelsamente simple para los estándares actuales de interfaces gráficas. Funciona en modo texto o pseudo gráfico, de 80x30 caracteres. hasta 80x60. Mi favorito es 80x43 para las nuevas pantallas widescreen, con las clásicas letras enormes. Podremos dar formato con negrita, cursiva, subrayado, y poco más. Podremos dar cajas de texto, y tendremos normalmente una única fuente para utilizar.

Notemos también que para el caso de desear correr juegos, contaremos con otro enterono, el DOSbox. Este está especialmente pensado para correr juegos.

Para instalarlo podremos indicar en una terminal:

sudo apt-get install dosbox

M$-DOS contaba con una gran cantidad de clásicos, y al convertirse en Abandonware, el DOSbox permite correr en varios sistemas, los juegos de antaño. Como recurso añadido, el DosBOX emula de manera notable las placas de sonido "compatibles con SB-Pro", de modo que contaremos con el clásico sonido FM Syntesis de los chips Yamaha OLP que mun¡an a las clásicas AdLib y SoundBlasters.

2 comentarios: