› Foros › Retro y descatalogado › Xbox
Durante mucho tiempo se ha pensado que el chip Xyclops, que contiene el BIOS en una placa base v1.6, no se puede flashear. Sin embargo, recientemente descubrí que tiene un puerto serie con una variedad de comandos interesantes. Admite el volcado del BIOS, así como el código Intel 8051 que ejecuta las funciones SMC del chip. Y al igual que las otras versiones de Xbox que tienen el flash TSOP, podemos reprogramar el BIOS en la v1.6.
En cierto modo, este mod es mejor que el típico flash TSOP porque es fácil recuperarse si lo estropeas. El puerto serie seguirá estando disponible.
Tutorial
Materiales necesarios:
Soldador (estaño y flux de calidad)
Python instalado en tu PC
El script de flasheo https://github.com/Prehistoricman/Xbox_ ... flasher.py
Un archivo BIOS de 256 KB (recomendable CerBios) renombrado como your_bios.bin
Adaptador USB a UART de 3.3V. Puedes encontrar muchos de estos disponibles online a precios muy bajos. Mira de buscar uno que tenga un valor de resistencia TX inferior a 1k porque el RX de Xbox tiene una resistencia interna de 1k.
Pasos:
Conecta el adaptador USB a UART a el/la XBOX. Esto se puede hacer conectándolo al puerto AV o abriendo el/la XBOX y usando conexiones internas.Nota de hal9000
Personalmente antes de conectar nada miraría que estuvieran bien instalados los drivers del adaptador USB a UART y estar seguro del puerto COM que le ha asignado la/el PC
Conexiones internas:
El pin 29 de Xyclops es DEBUG. Conéctalo al voltaje stand-by de 3.3 V.
El pin 64 de Xyclops es TXD. Conéctalo al terminal RX del adaptador.
Cerca de Xyclops:
O al punto alterno bajo el puerto AV:
El pin 63 de Xyclops es RXD. Conéctelo al pin TX del adaptador.
Parte superior, cerca del puerto AV:
O al punto alterno bajo el puerto AV:
Conecta a tierra el terminal GND del adaptador. Puede usar la carcasa metálica de el/la XBOX, cualquier tornillo que sujete la placa base o el pin 2 del encabezado LPC (consulta el diseño de los pines aquí).
Conexiones externas:
Cable AV: ¡no es aconsejable!
Consulta el diagrama del conector AV aquí https://xboxdevwiki.net/AV_Cables
El pin 5 es DEBUG. Conéctalo a 3.3V.
El pin 18 es TXD. Conéctalo al terminal RX del adaptador.
El pin 6 es RXD. Conecta esto al terminal TX del adaptador.
Retira las resistencias debajo del puerto AV: R5M3, R4M10. Esto afectará el reconocimiento del modo de video y puede impedir la visualización normal.
Conecta cualquier pin de tierra (como el pin 6, 7 o 😎 al terminal GND del adaptador.
Flasheo::
Conecta el USB. Es mejor hacer esto antes de encender el/la XBOX
Conecta el/la XBOX. Se puede dejar en modo de espera.
Identifica qué puerto serie tiene su adaptador. En Windows, puedes esperar que sea algo como COM5.
Instala Python 3 si aún no lo tienes
Abre cmd, powershell, bash o lo que sea que esté el terminal en tu PC.
Ejecuta el script escribiendo
python xyclops_flasher.py your_bios.bin COM5
Al terminal, reemplazando your_bios.bin con la ruta a su archivo BIOS y COM5 con su puerto serie. Presiona enter
Sigue el texto en pantalla. Debe decir Xyclops comunicación establecida y preguntar si deseas borrar el flash.
Una vez que se haya realizado la conexión, o incluso se haya intentado, es posible que no puedas encender o apagar el/la XBOX. Es normal. El SMC se congela mientras el serial está activo.
Los Xyclops pueden alterarse y dejar de responder a veces. Si no puedes comunicarte, intenta desenchufar el/la XBOX durante 10 segundos.
Si obtienes un tiempo de espera de borrado, asegúrese de haber realizado la conexión GND.
Si no puedes comunicarse, es posible que su adaptador serie tenga demasiada resistencia interna. Identifica su resistencia TX y redúcela a ~500 ohmios.
El proceso de flasheo tarda unos 2 minutos, y la verificación (si quieres hacerlo) tarda otros 2 minutos.
Si deseas volver a verificar, utiliza la opción -v:
python xyclops_flasher.py your_bios.bin COM5 -v
El botón de encendido de Xbox debería volver a funcionar, así que intenta encenderlo.
Preguntas más frecuentes
¿Podemos usar un BIOS de más de 256 KiB?
No en una Xbox comercial. Algunos kits de desarrollo raros pueden ser capaces de hacer 512 KB, pero no lo he confirmado.
¡Ejecuté el script y mi Xbox no se enciende!
Sí, el SMC se congelará cuando reciba comunicación en serie. El script debería resolver eso si se cierra con éxito, por lo que debo asumir que falló. Puedes desenchufar tu Xbox durante 10 segundos y volver a enchufarla para restablecerla y volver a intentarlo.
¿Se puede hacer esto a través de un método de software?
Que yo sepa, no, pero se rumorea que ha sido descubierto.
Técnicamente, la respuesta es sí, pero implica usar primero el serie y luego reprogramar el SMC (avanzado).
¿Qué más puede hacer?
El puerto serie Xyclops es capaz de realizar muchas acciones de bajo nivel en el SMC. Por ejemplo, puede "presionar" los botones del panel frontal, cambiar la velocidad del ventilador, cambiar los colores de los LED. También puede hacer algunas cosas engañosas, como falsificar el modo de cable de video o eludir el desafío de arranque (FRAG).
También podemos reprogramar el SMC, lo que podría conducir a algunos mods más avanzados para fines específicos y de nicho.
A través del puerto AV???
Sí, lo sé, ¿verdad? No podemos estar seguros de por qué Microsoft lo hizo de esta manera. Es demasiado lento para la programación de fábrica Y hay esas resistencias que lo impiden. Definitivamente podría haber acelerado el proceso de desarrollo de Xyclops, pero eso no explica por qué se dejó presente en la placa base minorista.
El GND a cualquier tornillo / chapa