Home Homebrew Rilasciato Twili – Homebrew Debug Monitor (ora con stub GDB) v1.4.0-pre2

[Scena Switch] Rilasciato Twili – Homebrew Debug Monitor (ora con stub GDB) v1.4.0-pre2

492
0

Pubblicata una seconda preview della versione 1.4.0 di Twili, il monitor di debug personalizzato sviluppato dal team ReSwitched per console Nintendo Switch.

L’aspetto del monitor di debug mira a fornire una sana soluzione per stdio e logging, al punto da facilitarne lo sviluppo generando rapporti sugli arresti anomali e consentendo il debug delle applicazioni in esecuzione.

L’aspetto del bridge di debug mira a fornire utilità simili a ADB, consentendo un sideload rapido e conveniente.

Caratteristiche

  • Questo strumento consente di inviare e avviare homebrew tramite USB (o TCP).
  • Se l’applicazione homebrew è compatibile, ti permette di avere anche stdin/stdout/stderr su USB, tramite lo strumento da riga di comando. Ciò consente un ciclo di sviluppo più rapido.
  • Se non hai bisogno che il tuo homebrew sia un’applet (stai sviluppando un sysmodule in background), puoi ridurre ulteriormente i tempi di iterazione prevenendo errori fatali quando il sysmodule si arresta inevitabilmente.
  • Puoi utilizzare GDB per eseguire il debug dell’applicazione homebrew (applet, sysmodule, ecc…) o persino software ufficiale.
  • Quando qualcosa si arresta in modo anomalo, puoi generare un dump del core ELF che puoi caricare nel debugger (aarch64-linux-gnu-elf) per aiutarti a capire cosa è andato storto invece di dover spegnere la console, rimuovere la scheda SD , cercare il registro degli arresti anomali e utilizzare addr2line per trasformarlo in qualcosa di significativo.
  • Ho già detto che puoi eseguire il dump core di qualsiasi processo e non solo di homebrew?
  • Ti consente di interrogare l’utilizzo complessivo della RAM sulla console.
  • Ti consente di ottenere un elenco di tutti i processi in esecuzione sulla console e …
  • Ti permette anche di terminarli.
  • Se il debug di basso livello è il tuo stile, ti consente anche di eseguirne il debug. A partire dalla 1.2.0, c’è persino uno stub GDB.

FAQ

Domanda: Come posso usare l’IO standard di Twili?
Risposta: Se stai utilizzando libtransistor, lo ottieni gratuitamente. Se stai utilizzando libnx, puoi collegarti a libtwili (disponibile all’interno della repository twili-libnx). Se avvii l’applicazione tramite twib run, stdout/stderr andrà alla tua console e stdin proviene da quella console. Se si avvia in altro modo, stdout/stderr passerà ai registri twibd e stdin si bloccherà.

Domanda: In cosa differisce da nx-hbloader/nxlink?
Risposta: Oltre ad avere molte più funzioni, esegue ogni homebrew nel proprio processo, che è una tabula rasa tranne un piccolo stub che fornisce le chiavi HBABI. Ciò significa che l’homebrew può gestire la propria memoria e non deve preoccuparsi di ripulire completamente dietro se stesso per la prossima applicazione.

Domanda: Ha uno stub GDB?
Risposta: A partire dalla versione 1.2.0, sì! Consultare il README all’interno della repository github per ulteriori istruzioni.

Domanda: Su quali versioni del firmware funziona?
Risposta: Per quanto ne so, tutte. Il firmware 1.0.0 potrebbe comportarsi in modo leggermente diverso rispetto agli errori irreversibili di arresto anomalo del sistema.

Domanda: Su quali CFW funziona?
Risposta: L’unico CFW su cui posso confermare la funzionalità e supportare attivamente è Atmosphère, e solo versioni un po’ recenti (0.10.2+). Twili è stato testato su Atmosphère 0.10.2. Twili potrebbe funzionare su altri CFW con alcune modifiche.

Domanda: Cosa devo sapere prima di installarlo?
Risposta: Sostituisce nx-hbloader. Ciò significa che sostituisce hbl.nsp. Se non ti piace Twili e vuoi rimuoverlo, non dimenticare di rimettere hbl.nsp di nx-hbloader.

Domanda: Come posso installarlo?
Risposta: Vedere le istruzioni di installazione all’interno della repository GitHub.

Domanda: Qual è la versione più recente?
Risposta: La versione più recente è Twili 1.3.0. Aggiorna anche Twib ad ogni versione, poiché sono incluse correzioni di bug.

Changelog v1.4.0-pre2

Aggiunte

  • Aggiunto un watchdog per ottenere, si spera, una visione migliore dei deadlock del sysmodule.
  • Aggiunta la ricerca del codice di errore a twib (twib err).

Cambiamenti

  • I core dump non includono più i mapping IO.
  • AppletTracker ora rinvia la lettura di hbmenu fino a quando non è necessario, quindi puoi eseguire Twili senza hbmenu e non si bloccherà.
  • Aggiornato libtransistor.

Correzioni

  • Corretto il problema con USBBridge su firmware 11.0.0+.

Changelog v1.4.0-pre1

Aggiunte

  • Aggiunta integrazione launchd per twibd (grazie a @liuervehc).
  • Aggiunta la classe SystemVersion per il monitoraggio delle versioni del firmware.
  • Aggiunto supporto per il firmware 10.0.0 (PGL).
  • Aggiunto output più dettagliato per le chiamate ITwibDebugger.
  • Aggiunto “none” alle posizioni di archiviazione comprese dal lancio di twib (grazie a @averne).
  • Aggiunto il comando twib-get-module-info.
  • Aggiunto il comando “monitor get base” a gdb stub.

Rimozioni

  • Rimosso il modulo process_creation ormai obsoleto.
  • Rimosso il titolo 0100000000006482 Hack ECS (non più necessario).

Cambiamenti

  • Aggiornato a c++ 20.
  • Spostata la maggior parte del codice di servizio in Services.cpp, basato sulla versione del firmware.
  • Ricostruito il codice di gestione degli errori per non utilizzare le eccezioni.
  • Resa la confusione ECS un errore critico.
  • Aggiunto output ShellTracker al debug di twib.

Correzioni

  • Corrette le risposte a 0 byte (grazie a @comex).
  • Corretto il problema con il file di unità systemd per twibd.
  • Corretto il problema della riga di comando di esecuzione di twib (“Managed process has been removed.”).
  • Corretto il problema con ShellTracker che riceveva notifiche di processo sul thread sbagliato.
  • Corretto il problema con l’uccisione e l’interruzione dei processi di avvio sospesi.
  • Corretto il problema con la risposta LaunchProgram.
  • Corretto l’ordine di distruzione di ITwibDebugger wait_handle.
  • Corretto il problema con la logica non sicura del riavvio invertito.

Download: Twili – Homebrew Debug Monitor v1.4.0-pre2

Download: Twibd Linux64

Download: Twib Linux64

Download: Source code Twili – Homebrew Debug Monitor v1.4.0-pre2

Fonte: github.com

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.

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.