Configurazione avanzata di FEEL

La struttura della configurazione di Feel, basata su file di testo (estensione .ini) è organizzata in una maniera molto semplice ed intuitiva per l’utente se utilizzata con impostazioni default, ma contemporaneamente molto potente ed evoluta ed in grado di gestire qualsiasi livello di personalizzazione conoscendo la sua modalità di funzionamento (poche regole base).

L’alberatura di esempio fornita è la seguente:

In dettaglio, i livelli di configurazione sono 5:

Livello *master* Livello *platform* Livello *emulator* Livello *gamelist* Livello *game* (opzionale)
config
[platform 1]
[emulator 1]
All games – nomeemu-0.ini
rom1.ini
rom2.ini
[lista 1] – nomeemu-1.ini
[lista 2] – nomeemu-2.ini
[emulator 2]
All games
[platform 2]
[emulator 3]
[emulator 4]
[platform 3]
[emulator 5]
[emulator 6]

In ogni directory dello schema compare un file .ini principale con lo stesso nome della cartella che lo contiene (es.: feel.ini, arcade.ini, mame.ini), e nelle directory di livello emulatore anche i file .ini di livello gamelist (es.: mame-0.ini, mame-1.ini, …), ovvero i file descrittori delle liste di giochi (All games, Favorites, …).

Le 3 regole fondamentali della configurazione di FEEL sono:

  • tutti i parametri presenti nella configurazione (vedi: “Lista completa parametri) possono essere settati AD OGNI LIVELLO, e anche su più livelli contemporaneamente
  • in assenza del parametro in un determinato livello, viene utilizzato il livello immediatamente superiore, a risalire fino al primo
  • in presenza dello stesso parametro su livelli differenti, “vince” il valore con peso maggiore (i.e.: posto ad un livello più basso)

Sfruttando queste 3 regole è possibile definire in maniera rapida e contemporaneamente molto precisa come il frontend deve lavorare su una determinata platform, emulatore o addirittura su un singolo gioco.

 

 

Livelli di default parametri

In realtà, per essere più precisi, c’è un livello dove una buona parte dei parametri trova posizionamento “naturale” (livello default).

Ad esempio, tutti i parametri di impostazione dei tasti di controllo di FEEL (qui riportati alcuni)…

action_key                             1

menu_key                               LAlt

menu_ok                                 LCtrl

menu_cancel                             2

previous_game                           Up

next_game                               Down

previous_letter_game                   Left

next_letter_game                      Right

previous_page                           R

next_page                               F

random_game                             LCtrl

find_game                               LAlt

… “hanno senso” a livello *master* (rimangono identici durante l’uso dell’intero frontend).

Altri parametri hanno senso (salvo casi molto particolari) solo a livello emulatore.

Qui sotto riportato ad esempio il settaggio dei parametri di lancio di un emulatore:

#———————————————————————#

# run emulator

#emulator_commandline   E:\Program Files\Feel\clew.exe

emulator_arguments     -run_mame “[emulator_path]\mame.exe [rom_name] -offscreen_reload”

 

Parametri speciali

Esiste poi la categoria dei parametri speciali (gestiti internamente da FEEL), che riguardano la gestione delle liste:

[feel.ini]

platform_list                           arcade, console, computer, utilities

current_platform                       arcade [GRUPPO.ini]

platform_title                         Arcade

emulator_list                           mame, daphne, vpinball

[EMULATORE.ini]

gamelist_list                           mame-0, mame-1, mame-2

current_gamelist                       mame-2

[LISTA ROM.ini]

current_game                           1

Questi parametri vengono mantenuti aggiornati da FEEL a seconda delle configurazioni trovate nell’alberatura di cartelle sotto config, e non devono quindi essere modificati (è comunque possibile definire un’ordine particolare modificando manualmente i parametri …_list).

 

Tutti gli altri parametri

Gli altri parametri (vedi: “Lista completa parametri”) possono essere posizionati a piacimento nei vari livelli dei percorsi di configurazione, di modo da rendere disponibile l’impostazione su tutto il frontend, su un singolo gruppo di emulatori, su un singolo emulatore, o addirittura su un singolo gioco (vedi: “Configurazione specifica rom con lista file .ini”).

Un esempio di parametro facilmente posizionabile a tutti i livelli: il parametro

current_layout                          sheet

che definisce il layout di visualizzazione (vedi: “Configurazione layout di visualizzazione”), può avere senso impostato:

  • a livello master (quindi il layout sarà uguale su tutto il frontend)
  • a livello platform (quindi ci sarà un layout specifico per ogni platform, es.: uno per “Arcade”, uno per “Console”, etc.)
  • a livello di singolo emulatore (es.: un layout specifico per MAME, uno per Daphne, etc.)

Sono naturalmente possibili anche soluzioni “ibride”, come ad esempio impostare un layout specifico per Mame, ed un layout generico per tutti gli altri emulatori: in questo caso si dovrà semplicemente inserire il parametro current_layout contemporaneamente in feel.ini e in mame.ini.

Questa soluzione è particolarmente adatta a gestire il parametro di re-mapping tastiera (vedi: “Mapping tasti”) input_mapping:

# ePSXe show window with LAlt or Ctrl+Space

input_mapping                           LAlt::L, Space::V

che può essere impostato a un valore di default per la maggioranza degli emulatori (solitamente nessun mapping, espresso da stringa vuota), e specifici su sistemi più particolari (ad esempio, nel caso di emulatori di computer, che spesso richiedevano la digitazione di tasti particolari per controllare il gioco, normalmente non presenti sulla plancia di un cabinato).

 

Parole chiave alias (keywords)

Nell’impostazione dei parametri (in particolare quelli relativi all’esecuzione di uno specifico emulatore), vi sono alcune parole chiave da utilizzare per accedere ai dati del frontend (gioco selezionato, percorsi, etc.).

Qui riportata la lista completa con le relative descrizioni:

[rom_path] = percorso della rom attuale (definito dal parametro rom_path)[rom_name] = nome della rom attualmente selezionata (gestito da FEEL)[rom_extension] = estensione della rom attuale (definito dal parametro rom_extension)[full_path]     = [rom_path]\[rom_name].[rom_extension][full_dos_path] = [full_path] in formato DOS (8.3)[emulator_path] = percorso completo dell’emulatore attuale (definito dal parametro emulator_path)

Queste keyword possono essere utilizzate per comporre la linea di comando di esecuzione, come nell’esempio qui riportato:

rom_path                         E:\daphne\gamesconfig

rom_extension                   txt…

emulator_commandline             E:\daphne\daphne.exe

emulator_arguments               [rom_name] vldp -framefile “[full_path]” -fullscreen -nohwaccel -noserversend

Con questa impostazione, avviando “Dragon’s Lair” su Daphne, verrà eseguito il comando:

E:\daphne\daphne.exe lair vldp –framefile “E:\daphne\gamesconfig\lair.txt” –fullscreen –nohwaccel –noserversend

Altre configurazioni

Lascia un commento


*