Cómo convertir una Xbox en un PC Linux de 150 dólares
En esta receta de TechBuilder exploraremos de qué está hecha una Xbox y cómo hacerla funcionar ejecutando Linux. ¡Lo mejor de todo es que lo haremos sin abrir la caja!
Pero primero, me gustaría que consideraras el hecho de que una Xbox no es una simple consola de juegos. En realidad, es un potente PC. Echa un vistazo a lo que hay dentro de esa Xbox de 150 dólares:
- Cpuente Intel Celeron a 733 MHz
- Gráficos Nvidia Geforce MX3 a 300 MHz
- 64 MB de RAM
- Disco duro de 8 o 10 GB
- Disco DVD
- 4 puertos USB
- 10/100 Mbit/seg. Puerto Ethernet
Eso es un montón de PC. La pregunta es, ¿cómo se llega a él? La respuesta, por supuesto, es con Linux.
Naturalmente, Microsoft no invita a usar otros sistemas operativos en su principal máquina de juegos. Especialmente los gratuitos. Pero en pocos y sencillos pasos, y con el apoyo de una amable comunidad Linux, se puede cargar y ejecutar Linux para desbloquear todo el hardware de Xbox.
Un grupo conocido como The Xbox Linux Project ha sido pionero en el camino. Han tenido la amabilidad de publicar una gran cantidad de información y experiencia en su sitio. Vamos a hacer uso de toda esa información. Pero antes de empezar, será útil entender un poco sobre el interior de la Xbox.
Cuando una Xbox se enciende, como cualquier máquina de computación, necesita arrancar algo. Fuera de la estantería de su Wal-Mart local, la Xbox contiene un sistema operativo espartano que tiene lo suficiente para cargar un conjunto mínimo de controladores y mostrar una sencilla interfaz de usuario llamada Dashboard. El Dashboard permite a los usuarios seleccionar juegos, guardar y copiar la información de los juegos en el disco duro o en las unidades de memoria, copiar música de los CD, pero no mucho más. De hecho, la única interfaz del usuario con el Dashboard son los cuatro mandos de juego del sistema, conocidos como Xpads. No hay teclado, ni ratón, y sólo un sistema operativo muy limitado. Además, la Xbox sólo ejecutará los DVD que reconozca como juego Xbox. La buena noticia: es bastante fácil superar todos estos obstáculos.
De hecho, para acceder al verdadero potencial de la Xbox, todo lo que hay que hacer es engañar a la Xbox para que piense que una pequeña versión de Linux es en realidad un juego. La Xbox inicia esta pequeña versión de Linux, que, a su vez, carga los controladores. Estos controladores soportan cosas como sesiones de telnet que permiten la entrada en el hardware e invitan a la posibilidad de instalar una distribución completa y de arranque de Linux. Y ¡voilá! ¡Libertad informática!
De acuerdo, tal vez estés pensando: «Esto me revienta la garantía, ¿no?». Bueno, no del todo. Sí, la documentación de Microsoft dice claramente que abrir la Xbox o ejecutar software que no sea de juegos anula la garantía de un año. Pero algunos expertos dicen lo contrario. Y lo que es más importante, hay algunos precedentes que demuestran que al menos una parte de la garantía se mantiene. Si estás realmente preocupado, lee este breve artículo sobre las diferencias entre «Garantía por ley» y «Seguro del fabricante».
Pasos básicos
A continuación, he desglosado la operación en pasos con algunos detalles técnicos brevemente explicados junto con enlaces a información aún más detallada proporcionada por la comunidad Linux de Internet.
Paso 1: Construir un cable para conectar dispositivos de memoria USB a la consola Xbox.
Paso 2: Encontrar un dispositivo de memoria USB adecuado.
Paso 3: Obtener una imagen que arranque Linux en el dispositivo de memoria USB.
Paso 4: Utilizar las utilidades de copia de Xbox para copiar la imagen en el disco duro.
Paso 5: Ejecutar la imagen utilizando software de juego con licencia.
Paso 6: Obtener e instalar una distribución completa de Linux.
Ahora veamos cada paso con más detalle.
Paso 1: Construir un cable
Los controladores de Xbox, llamados Xpads, son realmente dispositivos USB. Puede que no parezcan dispositivos USB, ya que no utilizan los conectores USB estándar. Pero en el interior del cable apantallado que conecta el mando de juegos con la consola se encuentran los familiares cuatro hilos utilizados en los cables USB estándar, más un misterioso cable amarillo que se rumorea que es para una futura incorporación de un lápiz de luz. Esto es una buena noticia: Los dispositivos de memoria USB, los teclados y los ratones se conectarán aquí con sólo un cable modificado. Construí un cable utilizando un conector hembra cortado de un cable de extensión USB barato y un cable controlador deshilachado que necesitaba reemplazar. Este es el aspecto de mi cable modificado:
Para construir el cable modificado, hice coincidir los hilos de colores en los cables, rojo con rojo, negro con negro, etc. Dejé el amarillo desconectado, pero aislado de los demás. La tabla de abajo da un poco más de detalle:
Pin-out USB estándar
- Rojo: VCC (5Volt, máx. 100mA/500mA)
- Negro: Gnd
- Blanco: D0 negativo
- Verde: D0 positivo (puede ser azul)
- Blindaje (trenza): Drain-wire (normalmente conectado a la carcasa)
Para más información sobre cómo conectar dispositivos USB a una Xbox, consulta este artículo del Proyecto Xbox Linux. Alternativamente, si no quieres hacer tu propio cable modificado, también puedes comprar un cable pre-fabricado de Lik-Sang.
Paso 2: Encontrar un dispositivo de memoria USB
Las tarjetas de memoria que se conectan a los mandos de la Xbox son simplemente dispositivos de memoria USB – como las unidades de datos portátiles, «sticks» USB o «jump drives» – pero con un conector propietario. El truco está en encontrar una con la que la Xbox funcione y en la que puedas obtener una imagen. Por desgracia, algunos funcionan y otros no. Aquí hay dos dispositivos que funcionan con la Xbox y están ampliamente disponibles:
* Kingston DataTraveler 32 y 256 MB.
* Lexar JumpDrive Secure 128 y 256 MB (debe ser «Secure» — otros modelos pueden no funcionar).
También, asegúrese de consultar la lista de compatibilidad de dispositivos Xbox/USB aquí.
Importante: Asegúrese de hacer una copia de seguridad de su dispositivo de memoria USB. Una vez que el dispositivo USB sea detectado por la Xbox, se reformateará.
A continuación, conecte su cable USB modificado en la consola. Inserte el dispositivo de memoria USB en el otro extremo. Encienda su Xbox. El dispositivo USB será descubierto y reformateado. Puede tardar un minuto, y es posible que tengas que intentarlo más de una vez. Una vez que el dispositivo USB esté formateado, aparecerá en Dispositivos de memoria en la Interfaz Xbox. A diferencia de los otros dispositivos de memoria, este dispositivo puede ser leído y escrito por tu PC. Por cierto, puedes utilizar el dispositivo USB igual que las tarjetas de memoria de Xbox, incluso guardar tus juegos en él. Lo mejor de todo es que ya no está limitado a 8 MB en las unidades de memoria estándar de Xbox que se conectan a los mandos Xpad. Existen tarjetas de terceros, pero todas ellas son pequeñas en comparación con los robustos lápices de memoria de 128 o 256 MB.
Paso 3: Consigue una imagen de arranque
La imagen que querrás descargar y copiar en tu dispositivo de memoria recién formateado es un «Savegame» que puede cargar un par de juegos. Te servirá para arrancar un sistema operativo Linux rudimentario. El que he utilizado es el juego MechAssault con licencia de Xbox. Hay una imagen de MechAssault disponible en SourceForge.net. Descarga la imagen que coincida con el tamaño de tu dispositivo de memoria: 128 MB, por ejemplo.
Nota: El formato utilizado por los dispositivos de memoria de Xbox es FatX. FatX puede ser fácil de manejar si ya tienes una caja Linux o un Mac con OS X. Pero no es compatible con Windows PC. En otras palabras, cuando conectes el lápiz de memoria a un PC con Windows, verás el dispositivo, pero no el contenido. Tendrás que usar un programa shareware llamado Stick Explorer, que está disponible en OzXChip.com para flashear la imagen FatX en la memoria USB. Funciona bastante bien. O encontrar un amigo que ejecute Mac OS X.
Para obtener más información sobre el uso del Stick Explorer y sobre la preparación del software de la Xbox, consulte esta página del Proyecto Xbox Linux.
Paso 4: Copiar la imagen a la Xbox
Este paso es natural para todos los jugadores. Utiliza el Dashboard de Xbox para ver el contenido de la memoria USB. Ahora debería contener tres entradas: Linux de emergencia, Eliminar Linux e Instalar Linux. (Por cierto, ese apuesto pingüino de los iconos es Tux, la mascota de Linux). Utiliza los métodos habituales de Xbox para copiar los tres juegos guardados en la memoria USB al disco duro. Ahora verás, y lo que es más importante, podrás invocar estos Savegames en nuestro siguiente paso.
Paso 5: Ejecutar la imagen para iniciar Linux
Para ejecutar la imagen, necesitarás el DVD del juego MechAssault. Los savegames están asociados a juegos específicos. Es esta asociación la que engaña a la Xbox para que ejecute la imagen. Necesitarás el juego sólo para iniciar Linux. Yo alquilé una copia en mi videoclub local.
Aunque elegí MechAssault para nuestra instalación, he oído hablar de otras modificaciones que utilizan el DVD 007 Agent Under Fire de EA. Es importante tener en cuenta que el juego que utilices debe coincidir con las imágenes del Savegame que has descargado ya que es el juego el que «engaña» a la Xbox para que lo ejecute.
¡Bien, hagámoslo!
Introduce el juego MechAssult. Selecciona Campañas y Linux de emergencia (uno de los Savegames que copiamos en el paso anterior). Verás que la Xbox se reinicia. Esta vez, no verás los gráficos habituales del Dashboard; en su lugar, verás una pantalla negra con letras blancas desplazándose por el arranque de Xbox Linux.
Si has llegado hasta aquí, ¡felicidades! Una pequeña versión de Linux se está ejecutando, y ahora puede telnet en la Xbox en su dirección por defecto:
Ingresa como «root» con la contraseña «xbox». A continuación, escriba el siguiente comando:
xbox_tool-a
Escriba esta clave del disco duro. La clave del disco duro está encriptada en la memoria EEPROM de la Xbox y puede ser utilizada si alguna vez necesitas recuperarla o hacer más modificaciones. Ahora ya lo sabes.
De nuevo, inserta el juego MechAssault. Seleccione Campañas, y esta vez seleccione Instalar Linux. Una vez que esto se completa, el disco de Xbox se ha configurado y el elemento Linux aparecerá en el Dashboard. Nuestro truco de Savegame ya no será necesario.
Si necesita ayuda adicional con el paso anterior, siga las instrucciones detalladas en esta página del Proyecto Xbox Linux.
Ahora, simplemente seleccionando Linux en el Dashboard arrancará la versión mínima de Linux. Una distribución completa de Linux puede ser cargada en nuestro siguiente paso. Emergeny Linux es esencialmente una forma temporal de empezar; Install Linux realmente configura el disco; y la instalación de Debian (nuestro siguiente paso) carga el verdadero sistema operativo Linux.
Paso 6: Instalar una distribución completa de Linux
Como probablemente sepa, hay muchas variantes de Linux incluyendo RedHat, Mandrake, FreeBSD, SuSE y Gentoo. Pero la mejor y probablemente única opción para un funcionamiento fiable en la Xbox actualmente es Debian de Ed. Está basada en la popular Debian x86 y adaptada específicamente para Xbox. Aquí hay una buena página general de información sobre Ed’s Debian Linux.
Las versiones recientes de Ed’s Debian vienen con un CD de arranque, que se usa para instalar el sistema base en el disco duro. El CD arranca en un entorno de escritorio limpio y gráfico de Xwindows. Hay incluso un teclado virtual en pantalla que puedes utilizar con el mando de la Xbox, pero un teclado USB real también funcionará. Otra opción es iniciar sesión a través de SSH (192.168.0.2/255.255.255.0) y completar la instalación de esa manera. El nombre de usuario y la contraseña por defecto son «root» y «xbox», respectivamente.
También hay dos tutoriales para obtener e instalar la distribución de Ed: How To Debian y Install Debian.
Cuando se carga Debian, es necesario utilizar el teclado virtual para iniciar el proceso de instalación. Después de la instalación, el SO reconoce los dispositivos USB.
La instalación de Debian es sencilla. Inserte el disco de instalación en la unidad Xbox y arranque desde él. Al poco tiempo, aparecerá en pantalla un teclado virtual. Cuando aparezca, escriba «su» para entrar como superusuario. El sistema te pedirá una contraseña; escribe «xbox». Ahora escribe «XBOXLinuxInstall», y recuerda que las mayúsculas son importantes. Luego siga las instrucciones en pantalla para completar la instalación.
Dado que ahora tiene un conector USB estándar en la XBox, puede conectar cualquier teclado, ratón, cámara web, impresora o escáner USB que sea compatible con Debian. Podría considerar un teclado USB con un conector de ratón USB o PS2 incorporado para mayor comodidad. O utilizar un simple cable divisor de USB a PS2, que cuesta unos 10 dólares.
Eso es todo, pero también es sólo el principio. Ahora pon esa consola de juegos Xbox a trabajar como un completo ordenador de sobremesa con ratón y teclado o como un buzón de web/correo electrónico conectado a la televisión o incluso a un servidor o router. Ah, y diviértete jugando a algunos juegos en ella de vez en cuando, también.
ANDY MCDONOUGH es un músico profesional, compositor, actor de voz, ingeniero y educador que trabaja felizmente por su cuenta en Nueva Jersey. De vez en cuando juega a la Xbox, pero nunca ha ganado a su hijo de 10 años.
¿Has probado esta receta de TechBuilder? Si es así, ¿cómo funcionó? Inicie o únase a un hilo de discusión en el Foro de Recetas.