Un disco de vinilo solo almacena sonido. Entonces, ¿cómo se puede arrancar un PC? Los usuarios veteranos de ordenadores de los años 80 seguro que lo saben…
Los ordenadores modernos arrancan Windows desde una unidad SSD, una memoria Flash o un disco duro. En casos de emergencia, desde un CD o DVD, o un pendrive. Hace años también se usaban los floppy-disk. Y ahora podemos añadir un nuevo dispositivo: los discos de vinilo.
Los disco de vinilo o discos musicales fueron muy populares en los años 70 y 80, pero fueron sustituidos por los CDs de música, aunque ahora han regresado. Estas unidades almacenan sonido, no datos. Así que no resulta sencillo usar un disco de vinilo para arrancar un PC.
Quizá parezca algo incompatible, pero los ordenadores de 8 bits de los años 80 funcionaba exactamente así: almacenaban datos en sonido, solo que en lugar de discos de vinilo utilizaban cintas de cassette. Era el caso de los míticos ZX Spectrum, Amstrad CPC o Commodore 64.
No hace falta retroceder tantos años en el tiempo para encontrar otros sistemas informáticos basados en el sonido. En la primera generación de Internet, en los años 90, la conexión se establecía a través de la línea telefónica de voz, y por eso cada vez que te conectabas al encender el módem se oían esos pitidos tan agudos, y no podías hablar por teléfono y usar Internet al mismo tiempo.
En realidad codificar datos en audio es sencillo: se convierten al sistema binario, es decir, bits, que solo tienen dos valores, 1 y 0, y se graban frecuencias altas para un valor y frecuencias bajas para el otro.
Es el sistema que ha usado el programador Jozef Bogin para arrancar un PC usando un disco de vinilo.
En primer lugar ha personalizado una versión de FreeDOS, que es un clon de MS-DOS, para conseguir meter este sistema operativo en solo 64 KB. Ha convertido los ficheros ejecutables a audio con el sistema mencionado, y lo ha grabado en un vinilo con un grabador de vinilos.
Después ha conectado el tocadiscos a un PC clásico, un IBM PC de los 80, usando un amplificador. Ha elegido este ordenador porque su BIOS, además de arrancar desde un disquete o un disco duro, tenía una opción de arrancar desde un cassette (desde audio), aunque no se utilizaba.
Finalmente ha escrito un software cargador que se carga a través de la BIOS, que lee el audio enviado por el disco de vinilo, y lo convierte a bits. Así carga en la memoria RAM el sistema operativo FreeDOS, y arranca el ordenador. Puedes ver todo el proceso de arranque (acelerado), en este vídeo:
Los problemas derivados de usar audio para guardar datos, son dos: los errores y la lentitud de lectura. Los usuarios de ZX Spectrum o Commodore 64 seguro que recuerdan cómo un juego tardaba 5 o 10 minutos en cargar desde la cinta de cassette, y en muchas ocasiones daba un error de lectura faltando solo unos segundos, y había que empezar desde el principio.
En el caso de este experimento de Jozef Bogin la carga del sistema operativo tarda más de 6 minutos. Si quieres saber más, echa un vistazo al blog de Bogin.
Desde un punto de vista práctico no tiene mucha utilidad, pero como proyecto informático es uno de los más fascinantes y curiosos que hemos visto este año. Ahora la pregunta es: ¿Y también puede arrancar Doom?…