Home Homebrew Rilasciato xbMacson: Il nuovo debug monitor per Xbox originale che sostituisce xbWatson...

Rilasciato xbMacson: Il nuovo debug monitor per Xbox originale che sostituisce xbWatson su macOS, Linux e Windows

52
0

xbMacson segna un passo avanti significativo per gli sviluppatori homebrew della prima console Xbox, offrendo finalmente un debug monitor moderno e multipiattaforma.

Sostituendo il vecchio xbWatson, limitato a sistemi Windows obsoleti e all’uso dell’XDK, xbMacson permette di gestire il debug su macOS, Linux e Windows grazie a un’implementazione completamente in Python.

Il software, sviluppato da MrMilenko, si basa su una TUI interattiva, intuitiva e colorata, progettata per essere controllata quasi interamente da tastiera. I messaggi di debug vengono mostrati in tempo reale con codici colore che distinguono errori, avvisi e messaggi informativi.

Il monitoraggio live dell’output della console permette di ricevere direttamente le stringhe generate da OutputDebugString o DbgPrint, con informazioni su thread e timestamp, e filtrarle in tempo reale per isolare ciò che serve.

Tra le funzioni più utili c’è lo scanner automatico della rete locale, essenziale per individuare la console quando l’IP di debug differisce da quello della dashboard.

Recentemente è stata aggiunta la possibilità di catturare screenshot direttamente dalla console, salvati in PNG sul desktop con timestamp, utile per documentare bug o momenti chiave durante lo sviluppo.

xbMacson include anche un file browser integrato per esplorare il filesystem della console, aggiornare directory e avviare file XBE tramite MAGICBOOT.

Supporta operazioni remote come riavvio della console, auto-reconnect e logging su file, oltre a un file di configurazione JSON che semplifica l’uso ricorrente del tool senza reinserire parametri ogni volta.

Per funzionare è necessario che la Xbox abbia un BIOS debug compatibile e XBDM attivo sulla porta 731/TCP, con connessione alla stessa rete locale del computer.

Caratteristiche

  • Interfaccia TUI interattiva — nessun parametro da ricordare: tutto è controllabile da tastiera.
  • Scanner di rete — individua automaticamente le console Xbox presenti sulla subnet locale.
  • Filtro live — digita per filtrare l’output di debug in tempo reale.
  • Output con codici colore — errori (rosso), avvisi (giallo), messaggi di inizializzazione (verde), tag (ciano).
  • Tracciamento dei thread — mostra da quale thread proviene ogni messaggio di debug.
  • File di configurazione — memorizza la Xbox predefinita, le console recenti e la directory dei log.
  • Logging su file — attiva o disattiva la registrazione dei log, oppure abilitala di default nelle impostazioni.
  • Cattura screenshot — salva il framebuffer della Xbox in formato PNG (solo librerie standard Python, senza PIL).
  • Modalità probe — consente di interrogare versione XBDM, nome debug, XBE in esecuzione e moduli caricati.
  • Riavvio remoto — riavvia la Xbox direttamente dal monitor con richiesta di conferma.
  • Riconnessione automatica — si riconnette automaticamente quando la Xbox si disconnette.
  • Nessuna dipendenza esterna — utilizza esclusivamente la libreria standard di Python (socket, curses, threading).

Requisiti

  • Python 3.6 o successivo.
  • Una Xbox originale con BIOS di debug e XBDM abilitato.
  • Connessione di rete verso la Xbox (porta 731/TCP).

Nota: Il BIOS di debug può assegnare alla Xbox un indirizzo IP secondario diverso da quello della dashboard. Utilizza lo scanner di rete per individuarlo correttamente.

Utilizzo

bash

Avvio dell’interfaccia TUI
python3 xbmacson.py Connessione rapida a un IP conosciuto python3 xbmacson.py 192.168.0.121

Tutto qui. Nessun parametro da ricordare: l’interfaccia TUI gestisce automaticamente ogni operazione.

Controlli TUI

Menu principale

TastoAzione
e Naviga
Seleziona
Scansiona rete
Esci

Monitor View

TastoAzione
Sfoglia il filesystem — elenca le unità, naviga tra le cartelle, avvia gli XBE
Screenshot — cattura il framebuffer in formato PNG
Filtro — ricerca in tempo reale mentre digiti
Attiva/disattiva modalità raw (mostra l’output XBDM non elaborato)
Attiva/disattiva il logging su file
Pausa/riprendi l’output
Pulisci lo schermo
Ottieni informazioni sulla Xbox (versione, moduli, XBE in esecuzione)
Riavvia la Xbox (con conferma)
Imposta la Xbox corrente come predefinita
e Scorri la cronologia
e Scorri di una pagina
e Vai all’inizio/fine
Torna al menu (la connessione rimane attiva)
Esci

File Browser

TastoAzione
e Naviga tra gli elementi
Apri la cartella o avvia un XBE (con conferma)
Torna alla cartella superiore
Aggiorna la cartella corrente
Torna alle unità / monitor

Modalità filtro

TastoAzione
DigitaFiltra in tempo reale mentre scrivi
Conferma il filtro
Annulla e cancella il filtro

Configurazione

La configurazione è salvata in ~/.xbmacson.json e viene gestita tramite il menu Settings. Può essere modificata anche manualmente:

json

{
  "default_ip": "192.168.0.121",
  "auto_reconnect": true,
  "default_logging": false,
  "log_dir": "",
  "screenshot_dir": "~/Desktop/xbox_screenshots",
  "last_connected": [
    ["192.168.0.121", "milenko"]
  ]
}

È incluso anche un esempio di configurazione nel file config.sample.json.

ImpostazioneDescrizione
default_ipIP della Xbox mostrato come prima opzione nel menu per la connessione rapida
auto_reconnectRiconnessione automatica in caso di disconnessione (predefinito: true)
default_loggingAvvia automaticamente il logging alla connessione (predefinito: false)
log_dirCartella per i file di log (predefinito: cartella corrente)
screenshot_dirCartella per gli screenshot PNG (predefinito: ~/Desktop/xbox_screenshots)
last_connectedConsole collegate di recente — gestito automaticamente

Come Funziona

xbMacson comunica usando il protocollo testuale XBDM tramite TCP:

  • Si connette alla porta 731 e riceve il messaggio di benvenuto 201- connected
  • Interroga DBGNAME e DMVERSION per ottenere informazioni sulla console.
  • Invia NOTIFY debugstr per iscriversi all’output di debug.
  • Analizza le righe ricevute nel formato debugstr thread=NN cr|lf string=<messaggio>
  • Mostra i messaggi elaborati con timestamp, ID del thread e codifica a colori.

Funzioni come screenshot, esplorazione file, riavvio e avvio di XBE utilizzano connessioni separate temporanee per non interferire con il flusso di notifiche di debug.

Il browser dei file utilizza i comandi:

  • DRIVELIST per elencare le unità.
  • DIRLIST per visualizzare le cartelle.
  • MAGICBOOT per avviare a freddo un XBE.

Download: Source code xbMacson

Alcune parti di questo articolo sono state generate con l’aiuto dell’intelligenza artificiale.

🔥 Prodotti in promozione e articoli più venduti: Nintendo Switch

Vedi altri prodotti Nintendo Switch

Questo articolo contiene link affiliati a Amazon. Se acquisti tramite questi link, potrei guadagnare una commissione senza costi aggiuntivi per te.

Ultimo aggiornamento 2026-04-12 / Link di affiliazione / Immagini da Amazon Product Advertising API

LASCIA UN COMMENTO

Per favore inserisci il tuo commento!
Per favore inserisci il tuo nome qui
Captcha verification failed!
Punteggio utente captcha non riuscito. Ci contatti per favore!

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.