RetroASD = JammASD (versione usb) + Mini PC!

Tutto quello che c'e' da sapere su questa mitica interfaccia made in Italy
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

JammASD+RetroPie... nome del progetto da ora in poi sarà RetroASD.

Oggi voglio concentrarmi sulla mappatura dei tasti.

JammASD emula una tastiera, il pdf di riferimento della mappatura risulta essere https://www.webasd.com/public/doc/ASD27 ... Pinout.pdf

Ovviamente dovremo mappare i giusti tasti sia sul frontend che su ogni emulatore. Iniziamo dal frontend.

Emulation Sattion salva i propri tasti nel seguente file:
/opt/retropie/configs/all/emulationstation/es_input.cfg

Lo standard scelto da emulation station è il valore decimale ritornato dalla libreria SDL 2.0, troviamo quindi i valori da inserire nel file: https://wiki.libsdl.org/SDLKeycodeLookup

Facciamo un esempio pratico...

Il tasto LEFT che viene mappato da JammASD con il cursore a sinistra, avrà codice SDL 1073741904, quindi nel file dovremo inserire:
<input name="left" type="key" id="1073741904" value="1"/>

Il tasto pagedown che invece per ora vorrei associare al tasto 6 del player 1 dobbiamo guardare il PDF di ASD che riporta come tasto X, quindi dovremo inserire 120:
<input name="pagedown" type="key" id="120" value="1"/>

Per praticità ora prima di compilare il file farò un piccolo Excel con tutte le decodifiche... appena pronto lo condivido!

Riflessione personale i tasti scelti da Picerno potrebbero necessitare di alcune personalizzazioni, sarebbe molto cool se al primo boot la scheda venisse riprogrammata in funzione delle necessità di RetroASD. Ovviamente questo per ora non è fattibile, ho chiesto a Picerno se è disponibile darmi le specifiche per riprogrammare i tasti della scheda, e appena avrà tempo dovrebbe fornirmi il tutto... poi da capire quando implementerò il tutto ma lo metto intanto nella lista della spesa.
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Creato un piccolo repository, dentro troverete l'Excel che ho creato per creare velocemente configurazioni di Emulation Station per JammASD.

https://github.com/zanac/RetroASD/tree/master
Avatar utente
Tox Nox Fox

BanHammer Silver Medal Donatore
Moderatore
Moderatore
Messaggi: 12123
Iscritto il: 14/01/2007, 23:35
Medaglie: 3
Grazie Inviati: 180 volte
Grazie Ricevuti: 301 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da Tox Nox Fox »

Posso chiederti come mai vorresti rimappare alcuni tasti ?
WP.ARCADEITALIA.NET
La Guida al MameCab
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Tox Nox Fox ha scritto: 18/10/2019, 12:57 Posso chiederti come mai vorresti rimappare alcuni tasti ?
Non so, devo fare delle prove... non mi torna perfettamente di poter fare un bel lavoro ;)
Però appunto poter personalizzarli direttamente dalla mia immagine sarebbe il top, ad oggi tocca avere un windows, poterlo fare dal cab... è un sogno.
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Tox Nox Fox ha scritto: 18/10/2019, 12:57 Posso chiederti come mai vorresti rimappare alcuni tasti ?
Guarda, te ne dico già una... se prendo la mappatura dei tasti così come è documentata: https://www.webasd.com/public/doc/ASD27 ... Pinout.pdf

Nella seconda pagina riporta che il tasto "Coin" spedisce il numero 5, ma il numero 5 è usato anche come tasto shiftato del Pulsante 1 del primo giocatore... la cosa non mi piace, così mi perdo una combinazione... Picerno, se sei in ascolto, come mai questa scelta? Forse per i cab che non ha gettoniera? Cmq come dicevo poco male... l'idea sarebbe di personalizzare la mappatura in funzione dei settaggi che predispongo, al primo avvio (e solo al primo avvio), spedisco una sequenza di programmazione e preparo la JammASD "come piace a RetroASD"... così sarebbe tutto trasparente ed immediato per l'utente finale!
Avatar utente
Tox Nox Fox

BanHammer Silver Medal Donatore
Moderatore
Moderatore
Messaggi: 12123
Iscritto il: 14/01/2007, 23:35
Medaglie: 3
Grazie Inviati: 180 volte
Grazie Ricevuti: 301 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da Tox Nox Fox »

La mappatura della JammASD seguendo standard del Mame
Il Coin del p1 è sempre il 5
Il Coin del p2 è sempre il 6
WP.ARCADEITALIA.NET
La Guida al MameCab
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Tox Nox Fox ha scritto: 19/10/2019, 13:45 La mappatura della JammASD seguendo standard del Mame
Il Coin del p1 è sempre il 5
Il Coin del p2 è sempre il 6
Si, ma io parlavo delle combo "shifted" che è una caratteristica della JammASD davvero fica, che a mio parere però non è sfruttata al 100% per i tasti impostati... cmq se Picerno mi darà supporto ho in mente grandi cose anche su questo fronte.

Cmq oggi un passo indietro... e due avanti.

vanni@domon:~$ gcc -march=native -Q --help=target | grep march
-march= haswell
vanni@domon:~$ logout
Connection to 192.168.2.18 closed.
vanni@harlock:~$ gcc -march=native -Q --help=target | grep march
-march= sandybridge


ok, questo non è per tutti. Cosa significa? Che il PC che ho collegato al cab ha architettura haswell (è abbastanza recente)... dopo aver preparato tutti i core su quel sistema e ottimizzati per haswell, ho fatto il boot con la chiavetta sul PC di casa (un vecchiotto sandybridge) e... porcaccia, non funzionava! Il codice era ottimizzato per un'architettura errata e tutto andava in core dump!

Mi sono messo di sana pianta a ricompilare tutto per sandybridge, ora gli emulatori e il sistema gira perfettamente su tutti i PC prodotti da 7-8 anni a questa parte!!!

Le richieste hardware saranno quindi: un PC Sandybrige o superiore con bios UEFI (praticamente un PC appunto di massimo 7 anni fa). Detto questo anche gamecube rulla alla grande sulla "misera" Intel 630!
Avatar utente
alucard

Donatore
Affezionato
Affezionato
Messaggi: 279
Iscritto il: 02/12/2017, 16:19
Medaglie: 1
Città: MotherEarth
Grazie Inviati: 5 volte
Grazie Ricevuti: 15 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da alucard »

zanac ha scritto:...anche gamecube rulla alla grande sulla "misera" Intel 630!
Si, va liscio anche su miniPC con Intel UHD Graphics 605
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Oggi affronterò il tema dell'utilizzo dell'emulatore Supermodel (vedi https://www.supermodel3.com) su RetroASD.

Abbiamo sostanzialmente due problemi da affrontare... il primo è mappare l'emulatore con i tasti della JammASD, per fare questo ho iniziato a creare il file corretto sul git, lo trovate su https://github.com/zanac/RetroASD/tree/ ... supermodel

Il problema più spinoso riguarda l'utilizzo di una risoluzione superwide-15-khz (1920x240) per far girare un gioco che è nato per 496x384 (24 khz)... Potremmo scegliere di usare una "bella" interlacciata, ma personalmente sono dell'avviso di usare la superwide e accontentarsi di una risoluzione progressiva ma con qualche artefatto dovuto a filtri di interpolazione.

Stranamente supermodel non ne vuole sapere però di partire e si blocca quando viene lanciato in fullscreen sulla nostra superwide... dopo uno studio del codice sorgente ho scoperto che il bug non è di supermodel ma bensì della libreria grafica utilizzata: SDL. Supermodel fa infatti uso della vetusta SDL1.2, ormai superata da anni dalla 2.0... abbiamo nuovamente due soluzioni.

1. Creare una patch di SDL 1.2 che permetta di utilizzare il fullscreen di risoluzioni anomale (strada più difficile ma "pulita", ora non ho tempo quindi per ora la lasciamo nella todo list).
2. Patchare supermodel per avviarsi in finestra e fare una patch del codice perchè non visualizzi il titolo della finestra (questa è più facile).

La soluzione 2 è stata banale approntarla, basta nella chiamata a SDL_SetVideoMode aggiungere il flag SDL_NOFRAME (più una forzatura alla risoluzione di destinazione desiderata), lavorando poi sulla variabile SDL_VIDEO_CENTERED è possibile posizionare la finestra nell'angolo 0,0! Ok, ci siamo... gira, e pure bene! Prima di rilasciare la patch su git tenterò di perseguire la strada dalla patch di SDL nel tempo libero, nel caso non sia fattibile tenterò anche di contattare gli autori di supermodel per capire se sono interessati a includere questo hack in modo "più ufficiale". E' rimasto un piccolo glitch (ovvero il cursore del mouse visibile), ma è una baggianata risolverlo e lo farò una di queste sere.



edito ed aggiungo, forse forse c'è una terza soluzione, ho scoperto l'esistenza di un wrapper che mappa chiamate SDL 1.2 verso la nuova SDL 2.0: https://github.com/MrAlert/sdlcl, in coda a tutto farò un tentativo... una volta fatto tutte le prove vi aggiorno con l'opzione che reputerò la migliore.
Avatar utente
xbrunox
Affezionato
Affezionato
Messaggi: 285
Iscritto il: 06/07/2017, 15:36
Città: castellanza
Grazie Inviati: 35 volte
Grazie Ricevuti: 31 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da xbrunox »

Se ti torna utile io il supermodel a 15 kHz lo faccio girare a 640x240 che é sicuramente più normale della tua 1920x240 e poi per sistemare le cose con il rapporto 4:3 nell'ini del supermodel abilito il parametro stretch=1

Ma se nn ricordo male forse mi andava anche con la 2560x240
Avatar utente
giOKer
Newbie
Newbie
Messaggi: 11
Iscritto il: 28/03/2018, 16:18
Città: Fitenze

Re: RetroASD = JammASD + Mini PC!

Messaggio da giOKer »

Progetto interessantissimo, i complimenti non saranno mai abbastanza.


Avatar utente
picerno

Helper
God of Arcade
God of Arcade
Messaggi: 3652
Iscritto il: 20/11/2006, 21:31
Medaglie: 1
Località: Provincia di Potenza
Grazie Inviati: 1 volta
Grazie Ricevuti: 43 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da picerno »

zanac ha scritto: 16/10/2019, 17:03 Doc, tu che sei l'autore di questo splendido gioiello... mi confermi che la tua jammasd protegge i monitor da segnali che potrebbero danneggiarli?
la jammasd controlla costantemente la frequenza orizzontale che se non rientra nel/nei range impostati non la fa passare in uscita verso monitor
zanac ha scritto: 16/10/2019, 17:03 In teoria ho sempre saputo che lavorare su dot-clock elevati non danneggia il monitor (in fondo il cannone catodico comunque deve scansionare tutta la linea, che "virtualmente" sia composta da più pixel non fa differenza sulla velocità con cui il cannone deve lavorare...
anche io ho sempre saputo che bisogna stare attenti alla frequenza orizzontale che, se troppo elevata, può danneggiare prima di tutto il finale di riga ma anche gli altri circuiti del monitor ad esso collegati. essendo analogico una velocità più elevata del cannone non dovrebbe creare danni, non so però se le caratteristiche del giogo possano rispondere in maniera pronta a questa maggiore velocità. detto questo mi viene un dubbio: se dal pc esce un'immagine di 1920 pixel mentre la nostra immagine al centro è di soli 320 pixel, durante il disegno delle bande laterali nascoste, il fascio luminoso (ammesso che le bande siano bianche invece che nere) resterebbe fermo sui bordi?
zanac ha scritto: 16/10/2019, 17:03 Nella seconda pagina riporta che il tasto "Coin" spedisce il numero 5, ma il numero 5 è usato anche come tasto shiftato del Pulsante 1 del primo giocatore... la cosa non mi piace, così mi perdo una combinazione... Picerno, se sei in ascolto, come mai questa scelta? Forse per i cab che non ha gettoniera?
per i cab senza gettoniera è sicuramente indispensabile ma per chi invece ce l'ha è indubbiamente comodo. sul mio cab la gettoniera è funzionante ma è scomodo aprire sempre il cassetto per prendere i gettoni, quindi praticamente non la uso mai e do una scarica di crediti con la combo non appena parte il gioco
zanac ha scritto: 16/10/2019, 17:03 Cmq come dicevo poco male... l'idea sarebbe di personalizzare la mappatura in funzione dei settaggi che predispongo, al primo avvio (e solo al primo avvio), spedisco una sequenza di programmazione e preparo la JammASD "come piace a RetroASD"... così sarebbe tutto trasparente ed immediato per l'utente finale!
fatto lo script di programmazione, se ci fosse la necessità, si potrebbe cambiare anche la configurazione al volo in base al sistema di emulazione utilizzato
JammASD SmartASD Developer
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

picerno ha scritto: 22/10/2019, 14:21
zanac ha scritto: 16/10/2019, 17:03 Doc, tu che sei l'autore di questo splendido gioiello... mi confermi che la tua jammasd protegge i monitor da segnali che potrebbero danneggiarli?
la jammasd controlla costantemente la frequenza orizzontale che se non rientra nel/nei range impostati non la fa passare in uscita verso monitor
Questo mi tranquillizza che le ultrawide danni non dovrebbero farne, per tutte le ragioni già esposte.

Sul tasto coin immaginavo fosse una sorta di "cheat" per scaricare gettoni senza usare la gettoniera, tuttavia sono un purista... e contrario a queste insane pratiche ;) quantomeno intendo recuperare i tasti 1 e 2 shiftati e usare un altro "cheat" per questa pratica.

Sulla riprogrammazione dei tasti della JammASD ti chiedo... su che tipo di memoria interna salvi l'informazione? Si rischia di danneggiare la scheda facendo esperimenti e/o tante riprogrammazioni? Sai com'è, non vorrei prima cosa buttare la scheda che ho acquistato in modo così prematuro, e seconda cosa danneggiare schede di futuri utenti di RetroASD!

Ultimissima cosa, ho il tuo benestare per il nome RetroASD? Non ho al momento nomi migliori ;)
Avatar utente
giOKer
Newbie
Newbie
Messaggi: 11
Iscritto il: 28/03/2018, 16:18
Città: Fitenze

Re: RetroASD = JammASD + Mini PC!

Messaggio da giOKer »

Ti faccio una domanda da incompetente quale sono. Sfortunatamente non sono esperto di risoluzioni su crt, è un tema che sto approfondendo prima di fare "il grande passo".
Mi stavo chiedendo, ma in assenza di interfaccia jamma, e quindi andando diretti dalla scheda video al monitor, sarebbe possibile sfruttare comunque il tuo lavoro almeno per quanto riguarda le risoluzioni? Certo ci sarebbe certamente da riconfigurare i controlli e qualche altro aspetto ma sarebbero dettagli, almeno credo.

Mi scuso in anticipo se ho detto qualche castroneria, ma come dicevo poc'anzi sono piuttosto a digiuno di tubi catodici.
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

giOKer ha scritto: 22/10/2019, 15:29 Ti faccio una domanda da incompetente quale sono. Sfortunatamente non sono esperto di risoluzioni su crt, è un tema che sto approfondendo prima di fare "il grande passo".
Mi stavo chiedendo, ma in assenza di interfaccia jamma, e quindi andando diretti dalla scheda video al monitor, sarebbe possibile sfruttare comunque il tuo lavoro almeno per quanto riguarda le risoluzioni? Certo ci sarebbe certamente da riconfigurare i controlli e qualche altro aspetto ma sarebbero dettagli, almeno credo.

Mi scuso in anticipo se ho detto qualche castroneria, ma come dicevo poc'anzi sono piuttosto a digiuno di tubi catodici.
Certamente, ma sarà un lavoraccio immagine, l'idea di usare una base comune (JammASD) ci permetterà di avere tutti un hardware di riferimento per quanto riguarda i settaggi degli emulatori velocizzando il processo di miglioramento del lavoro una volta che rilascerò l'immagine! L'idea è di ripetere quanto ho fatto a suo tempo con RetroPAN, li avevamo tutti la pandora, quindi in più smanettoni hanno iniziato a lavorare per correggere i piccoli settaggi sui vari emulatori... se resti isolato ad ogni aggiornamento di immagine sarai tagliato fuori (ottenendo il cosiddetto fork). A questo punto tanto vale farti la tua immagine seguendo le prime dritte su xargs per far lavorare linux a 15khz...
Avatar utente
giOKer
Newbie
Newbie
Messaggi: 11
Iscritto il: 28/03/2018, 16:18
Città: Fitenze

Re: RetroASD = JammASD + Mini PC!

Messaggio da giOKer »

Grazie, ho capito cosa intendi. Alla fin fine installare un'interfaccia jamma non sarebbe un lavoro così complesso. E il gioco ne varrebbe la candela.
Avatar utente
picerno

Helper
God of Arcade
God of Arcade
Messaggi: 3652
Iscritto il: 20/11/2006, 21:31
Medaglie: 1
Località: Provincia di Potenza
Grazie Inviati: 1 volta
Grazie Ricevuti: 43 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da picerno »

zanac ha scritto: 22/10/2019, 15:03 Sulla riprogrammazione dei tasti della JammASD ti chiedo... su che tipo di memoria interna salvi l'informazione? Si rischia di danneggiare la scheda facendo esperimenti e/o tante riprogrammazioni? Sai com'è, non vorrei prima cosa buttare la scheda che ho acquistato in modo così prematuro, e seconda cosa danneggiare schede di futuri utenti di RetroASD!
utilizzando il comando che ti ho descritto tramite PM, la nuova configurazione resta in RAM quindi nessun problema per i tuoi test. per salvarla in modo definitivo su memoria flash (dovremmo essere sui 100000 cicli ma da verificare) c'è un altro comando
zanac ha scritto: 22/10/2019, 15:03 Ultimissima cosa, ho il tuo benestare per il nome RetroASD? Non ho al momento nomi migliori ;)
non c'era nemmeno bisogno di chiedere :wink:
JammASD SmartASD Developer
antoniomauro

Donatore
Cab-maniaco
Cab-maniaco
Messaggi: 1646
Iscritto il: 02/08/2005, 8:40
Medaglie: 1
Città: Latina
Grazie Inviati: 6 volte
Grazie Ricevuti: 3 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da antoniomauro »

Posso suggerire l'inclusione (se non già prevista) dell'emulatore Daphne?
Dovrebbe lavorare in 640x480i
Avatar utente
xbrunox
Affezionato
Affezionato
Messaggi: 285
Iscritto il: 06/07/2017, 15:36
Città: castellanza
Grazie Inviati: 35 volte
Grazie Ricevuti: 31 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da xbrunox »

Il daphne lo puoi mandare anche a 1920x240
Avatar utente
zanac
Cab-dipendente
Cab-dipendente
Messaggi: 538
Iscritto il: 10/09/2017, 16:13
Città: PD
Grazie Inviati: 16 volte
Grazie Ricevuti: 22 volte

Re: RetroASD = JammASD + Mini PC!

Messaggio da zanac »

Daphne è l'ultimo dei miei pensieri... a suo tempo ne avevo fatto il porting funzionante alla perfezione persino per la misera pandora ;)

Grazie al canale aperto con Picerno si aprono ora interessanti scenari... sui cab a 6 tasti i famosi tasti "shiftati" che risultano doppioni del tasto credit, e che potrebbero essere usati per simulare alcuni tasti delle console new-gen (psx/gamecube).... potremmo rimapparli all'apertura dell'emulatore. Positivo il fatto che verrebbero riprogrammati in ram senza cambiare la flash della JammASD, in questo modo non compromettiamo la flash (che hanno un limite dei cicli di scrittura, ma lavorando in questo modo la scheda non verrà mai danneggiata).

Appena il buon Picerno avrà tempo (e io avrò a mia volta tempo per scrivere lo script in funzione delle sue specifiche) potremo lavorare anche su questo importante punto che darà sicuramente valore aggiunto.
Rispondi

Torna a “JammASD / SmartASD - Domande e Problemi”