*Nota: algunas traducciones pueden estár desactualizadas, y puede tardar un poco en actualizarse en comparación con la versión en inglés.
Modxo (pronunciado "Modsho") es un firmware para RP2040/RP2350 que convierte una Raspberry Pi Pico (o cualquier dispositivo similar basado en RP2040/RP2350) en un periférico LPC compatible con la Xbox original.
Modxo puede ser usado para cargar una imagen de BIOS de XBOX Original desde el puerto LPC, asi como para interconectar software de XBOX compatible con dispositivos periféricos como pantallas HD44480 o LEDs RGB direccionables.
Modxo no es un modchip. Mientras que los modchips tradicionales dependen de hardware obsoleto, como chips de memoria flash LPC o costosos circuitos integrados programables, Modxo es la primer implementación de un dispotivo perférico completamente por software de un dispositivo periférico LPC. Es software de código abierto, mayormente escrito en C, desarrollado usando el SDK oficial de Raspberry Pi Pico y diseñado para correr en hardware basado en el procesador RP2040/RP2350.
No necesita ningún hardware especializado ni herramientas complicadas para cargar Modxo en un dispositivo compatible -- en la mayoría de los casos, basta con un cable USB. Y la instalación funciona de forma muy similar a los dispositivos antiguos -- todo lo que necesita para la instalación es un dispositivo compatible con el procesador RP2040/RP2350, algunas resistencias, cable y equipo básico de soldadura. Existen PCBs personlizados que simplifican aún más el proceso de instalación.
- Una Xbox (cualquier versión) con un puerto LPC funcional. Las Xbox 1.6 necesitarán una reconstrucción del puerto LPC
- Una placa de desarrolo RP2040. Es posible que algunas placas clon no sean compatibles. Se sabe que las placas compatibles que funcionan con Modxo son las siguientes:
-
- Raspberry Pi Pico (Oficial)
- Raspberry Pi Pico W (Oficial)
- Raspberry Pi Pico 2 (Oficial)
- YD-RP2040
- RP2040 Zero/Tiny
- XIAO RP2040
- 4 resistencias de 100 Ohm (probadas con resistencias de 1/4 de Watt)
- 1 Diodo 1N4148 (tecnicamente opcional pero altamente recomendado con ciertas placas de desarrolo, consulte las instrucciones especificas de instalación de cada placa, mencionadas a continuación para obtener más información)
- Ve a https://team-resurgent.github.io/modxo/
- Arrastre y suelte su archivo de BIOS
- Una vez subido el archivo de BIOS, se creará un archivo UF2 con la imagen del BIOS que debe descargar
Los siguientes pasos no son requeridos sí pretende utilizar PrometheOS, sólo actualice PrometheOS-{variante de placa}.uf2 directamente...
- Conecte la placa Raspberry Pi Pico al PC con el botón BOOTSEL (ó cualquier botón equivalente) presionado, Windows detectará una nueva unidad de almacenamiento y la abrirá.
- Copie Modxo-{variante de placa}.uf2 en la unidad de la Raspberry Pi Pico. Una vez hecho esto, la Raspberry se desconectará automáticamente.
- Reconecte la Raspberry Pi Pico con el botón BOOTSEL presionado, de modo que la unidad de almacenamiento de la Raspberry Pi Pico aparazca nuevamente.
- Copie el archivo UF2 de su BIOS en la unidad de la Raspberry Pi Pico.
Los siguientes pasos solo son necesarios sí desea actualizar PrometheOS con actualizaciones/correciones de errores de Modxo...
- Suponiendo que PrometheOS-{variante de placa}.uf2 ya está instalado.
- Conecte la Raspberry Pi Pico a la PC con el botón BOOTSEL (o cualquier botón equivalente) presionado, y una nueva unidad de almacenamiento aparecerá.
- Copie Modxo-{variante de placa}.uf2 en la unidad de la Raspberry Pi Pico.
Notas:
- D0 es requerido para versiones 1.0 - 1.5 a menos esté conectado a tierra.
- Las conexiones LFrame y LPC 3.3v solo son necesarios para la versión 1.6 o cuando se conecta la Raspberry Pi Pico al puerto USB.
- LFrame no es requerido para la depuración USB.
- Se requiere una reconstrucción del LPC para la versión 1.6
- Nota: Agregue el diosdo si conecta la Raspberry Pi Pico al USB. Esto evita que se alimente el el pin LPC de 5v desde el cable USB, lo que podría tener consecuencias no deseadas.
*Nota: Agregue el diodo si conecta la Raspberry Pi Pico al USB. Esto evita que se alimente el pin LPC de 5v desde el cable USB, lo que podría tener consecuencias no deseadas.
- Nota: No olvide puentear R68 si usa LEDS RGB integrados en la placa
- Nota: Por favor agrege el diodo si conecta la Raspberry Pi Pico al USB. Esto evita que se alimente el pin LPC de 5v desde el cable USB, lo que podría tener consecuencias no deseadas.
1.- Descargue e instale Visual Studio Code
2.- Instale la extensión: "Raspberry Pi Pico"
3.- Asegurese de de el SDK 2.0.0 esté seleccionado...
4.- Ir a la pestanaña Raspberry Pi Pico y haga click en "Configure CMake"
5.- Ir a la pestaña ejecutar y depurar y seleccione Compilar para su placa
6.- Haga click en "Start Debugging" (flecha verde)
7.- El archivo UF2 se generará en la carpeta Build
Construya su imagen base de docker con
docker build -t modxo-builder .
docker compose run --rm builder
La salidad será out/modxo_[pinout].uf2
También hay algunos parámetros extra que se pueden pasar al script de compilación:
-
MODXO_PINOUT=
official_pico
|yd_rp2040
|rp2040_zero
|xiao_rp2040
- El valor predeterminado esofficial_pico
. -
CLEAN=
y
: inicia una compiliación limpia. El valor predeterminado es desactivado. -
BUILD_TYPE=
Release
|Debug
- El valor predeterminado esDebug
.
Ejemplos:
MODXO_PINOUT=rp2040_zero BUILD_TYPE=Release docker compose run --rm builder
CLEAN MODXO_PINOUT=yd_rp2040 docker compose run --rm builder
Coloque su archivo de bios nombrada bios.bin
en este directorio o coloque cualquier archivo de bios (sin importar su nombre) en el directorio de bios
docker compose run --rm bios2uf2
- Windbg aveces se bloquea cuando se conecte al puerto serial de Modxo SuperIO's
- Actualmete, Modxo usa el ID 0xAF. Idealmente cualquier hardware derivado con cambios significativos debería usar un ID diferente. Esto es para que un software como PrometheOS puedan apuntar a sus caracterisiticas de forma adecuada.
a) **Atribuciones:**
Sí distribuye o modifica este trabajo, debes proporcionar la
a atribución adecuada a los autores originales. Esto incluye:
- Mencionar el nombre original del proyecto: `Modxo`.
- Listar los autores originales: `Shalx / Team Resurgent`.
- Incluir el enlace (link) al repositorio original del proyecto:
`https://github.com/Team-Resurgent/Modxo`.
- Declarar claramente cualquier modificación realizada.
b) **Logo y marca:**
Cualquier derivado del trabajo o distribución debe incluir los logos proporcionado por
los autores originales de acuerdo con las pautas de marca. Los
logos deben ser mostrados de manera destacada en cualquier interfaz o documentación
donde se haga referenia o atribuya al proyecto original.
c) **Lineamientos de marca**
Puede encontrar los logos y los Lineamientos de marca detallados en el
archivo `BRANDING ES-MX.md` proporcoinado con este proyecto. Los logos no deben ser
aleterado de ninguna forma que distorciono o tergiverse la marca original.