Puerto paralelo con VMWARE

En ocasiones no siempre es posible migrar todo el software a las últimas versiones, para sistemas anticuados (legacy) en los que es necesario utilizar el puerto paralelo (Line Print Terminal – LPT) en máquinas virtualizadas, por ejemplo dongles de seguridad, VMWARE no da soporte para tarjetas PCI de expansión oficialmente.

¿Por qué? El bus Peripheral Component Interconnect (PCI) nació en 1991 para unificar los buses ISA, VESA, EISA y MCA; si bien VESA era más rápido era dependiente del procesador, lo que implicaba tener que cambiar de placa si querías cambiar de microprocesador. Con esta mejora era posible conectar varios dispositivos al mismo tiempo en el bus, lo que al inicio era una ventaja, supuso un problema cuando se conectaban muchos componentes al bus sufriendo retrasos en la comunicación, de ahí que las tarjetas gráficas pasaran a su propia conexión (AGP) en aquel momento.

Simplificar siempre acaba siendo positivo, de la comunicación paralela en PCI se volvió a la comunicación en serie para PCIe, siendo generalizada en otras arquitecturas conocidas como Universal Serial Bus (USB) y Serial ATA (SATA).

¿Funciona con PCIe? Sí, es posible adquirir tarjetas adaptadoras como la Startech PEX1P y virtualizar el puerto paralelo. Debemos instalar los drivers en la máquina host y la virtualizada dependiendo del sistema operativo que vamos a utilizar.

Si pese a ello nos parece el mensaje de error:

Virtual device parallel0 will start disconnected.
Cannot open VMparport driver for LPT1: The operation completed successfully. Failed to connect virtual device Parallel0.

Debes iniciar explicitamente VMPlayer (o la versión que tengas instalada) como administrador.

Windows NT virtualizado en VMware

En ocasiones por limitaciones de presupuesto, disponibilidad de software, recursos… no es posible en la práctica real tener todos los sistemas actualizados como nos gustaría. Con estas premisas nos toca virtualizar un equipo obsoleto con nada más y nada menos que Windows NT, nos remontamos al año 1993! Aquí es donde la virtualización nos ayuda a dar una solución estable a varios problemas que nos podemos encontrar:

– Reutilización de dongles de seguridad con puerto paralelo (LPT1)
– Ejecución de código de programas para Win16

En nuestro caso concreto no era posible ejecutar el programa ni en Windows 2000, por lo que tuvimos que extraer los discos para crear un disco duro virtual a partir del físco. Una vez creada la máquina en nuestro entorno de virtualización pudimos empezar a actualizar Windows NT a la última versión disponible Service Pack 6a y los discos de instalación originales.

El siguiente paso tocaba mejorar el sistema de ficheros, desde FAT (no fat32) a NTFS dentro del entorno ya virtualizado y redimensionar las particiones originales de 2 GB, ciertamente la máquina NT se había comportado de forma más o menos estable (dentro de los esperable) todos estos años. La conversión desde el propio equipo con el comando:

convert C: /fs:ntfs


Después de un par de reinicios, ya teníamos una mejora necesaria. Aprovechamos para optimizar el funcionamiento, añadiendo un disco duro adicional al sistema para el archivo de paginación y ampliar la RAM hasta los 3 GB, más que suficiente en este caso. La máquina virtualizada en un entorno más estable y controlado empezada a notarse menos perezosa en sus inicios.

Ahora necesitábamos red, en VMware la instalación debía ser sencilla instalando los drivers y las herramientas de integración para el driver AMD PCNET Family Ethernet Adapter pero en este caso se torno algo más complicado al no encontrar los drivers en las fuentes que indica el fabricante. Tras varias pruebas con diferentes discos de instalación, encontramos 2 fuente fiables para los drivers:

– Driver de HP: SP1657
– Driver de IBM: 32p0067

En ambos casos hallamos los archivos que requeríamos para la instalación de la tarjeta de red, sin acudir a los CDs de Windos NT 4.0:

– amddlg.dll
– Amdpcn.sys
– Oemsetup.inf
– vmxnet.sys

Tras el obligado reinicio, ya disponíamos de conectividad de red a través del host:

Actualización: dependiendo de los requisitos tambien es posible virtualizar Windows NT en Hyper-v