In attesa dell’homebrew launcher promesso dal developer Plutoo su Twitter per i primi di febbraio, lo sviluppatore Kgsws ha pubblicato una prima alpha release molto precoce di un homebrew launcher alternativo.
Al momento non vi è alcun accesso in lettura sulla porta USB, questo significa che tutti i file devono essere ospitati su di un server HTTP, l’applicazione per poter essere eseguita correttamente necessita del toolkit Pegaswitch sul firmware 3.0.0.
Si tratta sostanzialmente di una interfaccia grafica per Ace Loader che sfrutta la libreria libtransistor (SDK open source per console Switch).
Caratteri bitmap utilizzati: https://github.com/kgsws/kgFont
Applicazioni
L’elenco delle app viene scaricato da ‘http://host/files/app_list’, si tratta di un semplice elenco di directory separate da una nuova riga (0x0A).
Ogni app ha la propria directory per i file NRO
, INI
e BMP
, il file INI viene letto e analizzato in ‘http://host/files/app_dir/app.ini’.
Formato INI
Il parser del file INI
è molto semplice da attuare. Le variabili possono essere definite solo come ‘variable=value’, senza spazi prima o dopo il simbolo ‘=’.
Il valore variabile è tutto dopo “=”, compresi tutti gli altri “=” o spazi, fino a newline o EOF. Le codifiche delle stringhe sono in UTF-8.
Sezioni INI
Per definire le informazioni di base dell’app, viene richiesta la sezione “[app]”. Per definire la sezione delle opzioni di esecuzione (parametri) ‘[option]’ è invece opzionale.
Sezione App
Ogni app deve definire almeno la variabile 'title'
e 'nro'
, mentre gli altri campi sono tutti facoltativi.
- Nome dell’app
'title'
; massimo 31 caratteri. 'nro'
NRO per iniziare; questo NRO dovrebbe trovarsi nella stessa directory del file INI; max. 31 caratteri meno la lunghezza del percorso'files/app_dir'
.- Immagine
'icon'
di tipo BMP; di dimensioni 256×256, sono supportate immagini a 8 bit; se non specificato, verranno utilizzati colori casuali; la BMP deve trovarsi nella stessa directory del file INI. 'version'
solo informativa, facoltativa; massimo 31 caratteri, condivisi con l’author.'author'
solo informativo, facoltativo; massimo 31 caratteri, condivisi con la version.- Massimo 16 app in questo momento.
Opzioni
Ogni opzione deve definire almeno 'title'
, 'type'
e ‘value0'
. Non è necessario comunque che le app abbiano opzioni.
In questo momento vengono supportate solo fino a 8 sezioni di opzioni.
'title'
, nome dell’opzione nel menu; massimo 15 caratteri; necessario.'type'
, tipo di opzione; influire sul comportamento di selezione nel menu; necessario.* 'enum'
– solo uno dei valori forniti può essere selezionato, almeno uno deve essere selezionato.* 'enum2'
– solo uno dei valori forniti può essere selezionato, nessuno può essere selezionato.* 'boolean'
– qualsiasi valore fornito può essere abilitato.'value*'
, selezionare il nome nel menu; sostituire ‘*’ con un valore compreso tra 0 e 7.'param*'
parametro della riga di comando passato a NRO, nel caso in cui almeno una delle opzioni sia abilitata; questo parametro viene passato prima c’è un limite massimo di 4096 byte per tutte le opzioni (tutte le sezioni [opzione]) per tutte le NRO combinate.
Esempio INI da kgDoom
[App]
- title = kgDoom
- version = Beta
- Author = kgsws
- nro = kgdoom.nro
- icon = doom.bmp
[opzione]
- title=Game
- type=enum
- value0=Shareware
- value1=Doom 1
- param1=-doom
- value2=Doom 2
- param2=-doom2
- value3=Ultimate Doom
- param3=-doomu
- value4=FreeDoom
- param4=-freedoom
- value5=FreeDoom 2
- param5=-freedoom2
Download: ACE Loader Gui
voglio l’iso loader..3.0 ce l’ho gia