Home Homebrew Rilasciato sys-patch v1.6.1: Aggiunta patch AM per ripristinare la compatibilità homebrew...

[Scena Switch] Rilasciato sys-patch v1.6.1: Aggiunta patch AM per ripristinare la compatibilità homebrew e fix teardown su Switch

121
0

Pubblicato un rapido aggiornamento per sys-patch, il modulo di sistema per Nintendo Switch progettato per applicare automaticamente, all’avvio della console, le patch necessarie ai componenti fondamentali del sistema come fs, es, ldr e nifm.

A differenza di una semplice modifica manuale, sys-patch opera in modo trasparente e strutturato, garantendo che le patch vengano caricate correttamente fin dalle prime fasi di boot.

Uno degli aspetti più apprezzati di questo strumento è la capacità di generare un registro dettagliato che elenca tutte le patch applicate, indicando chiaramente quali sono andate a buon fine e quali eventualmente hanno fallito.

Questo permette agli utenti di avere una visione chiara dello stato del proprio sistema, facilitando sia il controllo dell’integrità della console sia l’individuazione di eventuali problemi legati a configurazioni non corrette o file obsoleti.

Questo aggiornamento interviene in modo mirato per migliorare la compatibilità su Nintendo Switch, agendo direttamente sul comportamento del loader.

Il modulo continua a svolgere il suo ruolo principale, cioè applicare automaticamente all’avvio della console le patch necessarie ai componenti critici del sistema come fs, es, ldr e nifm, mantenendo un approccio trasparente e affidabile che evita interventi manuali da parte dell’utente.

La novità introdotta riguarda una patch specifica applicata al modulo “am” (Application Manager), pensata per risolvere problemi legati alla compatibilità. In particolare, viene disabilitata una chiamata alla funzione di “teardown” attraverso una sostituzione diretta del codice con un’istruzione NOP (no operation).

Questo intervento impedisce l’esecuzione di una routine che, nelle versioni più recenti del sistema, può causare malfunzionamenti o la chiusura non corretta delle applicazioni homebrew.

Dal punto di vista tecnico, è stata aggiunta una nuova sezione di patch embedded all’interno del loader, integrata tramite un file dedicato e richiamata nel processo di patching.

Il sistema verifica l’ID del modulo caricato e, se corrisponde a quello previsto, applica automaticamente la modifica in memoria durante il caricamento.

L’implementazione è stata pensata come soluzione temporanea, in attesa di un redesign più pulito da parte degli strumenti principali della scena homebrew come hbmenu e libnx, che in futuro potrebbero gestire diversamente la fase di uscita delle applicazioni.

Configurazione

Il sysmodule sys-patch presenta una semplice configurazione. Questo può essere modificato o aggiornato manualmente utilizzando l’overlay.

Il file di configurazione può essere trovato in /config/sys-patch/config.ini, se il file non esiste, il file verrà creato quando il sysmodule sys-patch viene eseguito.

ini

[options]
patch_sysmmc=1 ; 1=(default) patch sysmmc, 0=don't patch sysmmc
patch_emummc=1 ; 1=(default) patch emummc, 0=don't patch emummc
logging=1 ; 1=(default) output /config/sys-patch/log.inim 0=no log
version_skip=1 ; 1=(default) skips out of date patterns, 0=search all patterns

Overlay

L’overlay può essere utilizzato per modificare le opzioni di configurazione e per vedere quali patch vengono applicate (se presenti).

  • Unpatched – Significa che la patch non è stata applicata (probabilmente non trovata).
  • Patched (verde) – Significa che è stato patchato da sys-patch.
  • Patched (giallo) – Significa che è già stato patchato, probabilmente da sigpatches o da una creazione di un’atmosphère personalizzata.

Cosa viene patchato?

Ecco un breve riassunto di ciò che è stato patchato:

  • fs
  • es
  • ldr

fs ed es necessitano di nuove patch dopo ogni nuova versione del firmware. ldr d’altra parte ha bisogno di nuove patch dopo ogni rilascio di una nuova versione di Atmosphère, ciò è dovuto al fatto che il servizio ldr è stato reimplementato da Atmosphère.

In particolare, nel firmware 10.0.0 è stato aggiunto un nuovo controllo nel firmware originale che richiedeva una correzione immediata. Atmosphère ha quindi introdotto questo stesso controllo, rendendo necessaria una nuova patch per quel firmware specifico.

Questa necessità di applicare nuove patch in modo specifico per ldr dopo ogni aggiornamento di Atmosphère è dovuta alla stretta integrazione tra Atmosphère e il firmware originale, garantendo la compatibilità e il corretto funzionamento del modulo ldr.

Come funziona?

Sys-patch utilizza una raccolta di modelli per individuare il pezzo di codice che deve essere corretto. Questo approccio consente di individuare le aree problematiche senza dover fare affidamento solo sugli offset, il che sarebbe inefficiente e richiederebbe aggiornamenti frequenti dopo ogni nuovo aggiornamento del firmware. L’utilizzo di modelli consente di individuare e correggere i problemi in modo più accurato.

Quando le patch vengono applicate all’avvio, il sysmod smette di funzionare, il che è normale poiché le modifiche vengono apportate per correggere i problemi.

Nonostante ciò, l’impronta di memoria del sysmod è estremamente piccola, utilizzando solo 16 kib in totale. La dimensione del file binario stesso è di soli ~50 kib, il che è un risultato notevole e dimostra l’efficienza del codice.

Questo significa che dovrei smettere di scaricare/usare le sigpatch?

È comprensibile che l’utente preferisca continuare a utilizzare le sigpatch attuali anziché passare alle sys-patch. Il motivo di questa scelta è la preoccupazione che, nel caso in cui il sysmodule sys-patch dovesse presentare dei problemi, potrebbe non essere risolto prontamente.

Se sto già usando sigpatch, ha senso usare anche questo?

Sì, in 2 casi di nicchia.

  1. Una nuova patch ldr deve essere creata dopo ogni aggiornamento di Atmosphère. A volte viene rilasciato un nuovo aggiornamento silenzioso di Atmosphère. Questo strumento correggerà sempre ldr senza dover aggiornare le patch.
  2. La creazione di Atmosphère dal src richiederà di generare una nuova patch ldr per quella versione personalizzata di Atmosphère. Questo è abbastanza facile grazie agli script/strumenti pubblici che esistono là fuori, tuttavia sarà sempre possibile.

Inoltre, se dimentichi di aggiornare le tue patch quando aggiorni il firmware o l’Atmosphère, questo sysmod dovrebbe essere in grado di correggere tutto bene! quindi è bello averlo come ripiego.

Changelog

Download: sys-patch v1.6.1

Download: Source code sys-patch v1.6.1

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.