Pagina 5 di 7
Re: Software MAME Clean
Inviato: 07/02/2013, 23:15
da pucci
visto che se ne parla anche su MAME Italia (
http://www.mameitalia.net/index.php?showtopic=14518) e visto che il tempo è sempre meno da quando mi hanno cambiato incarico sul lavoro, posto qui il codice sorgente (scritto in Visual Basic) delle "scheletro" di quello che sarebbe dovuto essere MAME Clean (che in realtà ho rinominato "MAME Washer").
liberi di usarlo/migliorarlo/completarlo (alla sola condizione che venga rilasciato il sorgente delle modifiche e che non venga usato a scopi commerciali)
liberi di farmi domane sul codice (sempre che mi ricordi cosa ho scritto)
MAME Washer.rar
Re: Software MAME Clean
Inviato: 17/02/2013, 15:40
da pucci
vi posto una versione eseguibile del mio programmino.
si tratta di una versione veramente pre-pre-pre-alpha, dove mancano istruzioni, gestione degli errori, ecc...
quando lanciate l'eseguibile, vi si apre una finestra dove potete selezionare un file: scegliete o un eseguibile del MAME oppure in file XML generato dal MAME con la funzione -listXML e attendete.
il resto più o meno è comprensibile.
ecco il programma:
MAME Washer.rar
ed ecco un file INI per MAMEUI basato sulla versione 0.148u1 e dal quale sono stati tolti: device, bios, mechanical, not working, cloni (passando da una lista di 28459 ad una di 3758!):
MAMEWasher.rar
Re: Software MAME Clean
Inviato: 17/02/2013, 23:39
da AntoPISA
pucci ha scritto:vi posto una versione eseguibile del mio programmino.
si tratta di una versione veramente pre-pre-pre-alpha, dove mancano istruzioni, gestione degli errori, ecc...
quando lanciate l'eseguibile, vi si apre una finestra dove potete selezionare un file: scegliete o un eseguibile del MAME oppure in file XML generato dal MAME con la funzione -listXML e attendete.
il resto più o meno è comprensibile.
ecco il programma:
MAME Washer.rar
ed ecco un file INI per MAMEUI basato sulla versione 0.148u1 e dal quale sono stati tolti: device, bios, mechanical, not working, cloni (passando da una lista di 28459 ad una di 3758!):
MAMEWasher.rar
A me la tua idea pare molto utile, che ne diresti se aggiungessi il tuo "programmino" alla mia pagina dei tools? Fammi sapere.

Re: Software MAME Clean
Inviato: 18/02/2013, 21:37
da pucci
non ho problemi a renderlo disponibile (sorgenti compresi), solo che il mio programma al momento non è "sperimentale", è "più che sperimentale".
penso che se lo metti sul sito ti sputtani!!!
magari cerco (con i miei tempi da bancario improvvisato programmatore) a renderlo un attimino più "usabile"
però se vuoi già metterlo posso passarti sorgenti ed eseguibili
Re: Software MAME Clean
Inviato: 18/02/2013, 22:30
da pucci
avrei biasogno di un aiuto da un programmatore "serio" come dR.pRoDiGy
nel programma ho creato un form (frmFileSelect) che si occupa semplicemente di permettere all'utente di selezionare alcuni dei file necessari al programma principale, ecco il form:
Cattura.JPG
una volta selezionati correttamente i file, quando l'utente preme il pulsante "let's clean", i dati relativi ai 4 file devono essere passati al form principale (frmMAMEWasher) che si occupera dell'elaborazione.
qual'è il modo migliore e più corretto per gestire il passaggio dei dati tra i due form? non di sicuro delle variabili globali. qui ci sono dei suggerimenti:
http://forum.masterdrive.it/visual-basi ... ali-65604/
dR.pRoDiGy, mi dai qualche dritta?
Re: Software MAME Clean
Inviato: 18/02/2013, 22:46
da dR.pRoDiGy
Programmatore serio?? Troppo buono
Le prime 2 soluzioni che mi vengono in mente:
1) creare le variabili di input nel secondo form (o saranno probabilmente già lì perchè ti servono), e appena prima di avviarlo ( frm2.Show() ), scriverci dentro i valori
Codice: Seleziona tutto
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm2 As Form2
frm2 = New Form2()
frm2.var1 = "Ciao mondo"
frm2.Show()
End Sub
End Class
Public Class Form2
Dim var1 as String
End Class
2) soluzione un pò più "fine": creare in Form2 una sub che sia l'overload del metodo standard Show().. aggiungendogli i parametri da ricevere. All'interno del metodo si inizializzano, e per ultimo si chiama il metodo Show()
Codice: Seleziona tutto
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm2 As Form2
frm2 = New Form2()
frm2.Show("Ciao mondo")
End Sub
End Class
Public Class Form2
Dim var1 As String
Overloads Sub Show(ByVal s As String)
var1 = s
Show()
End Sub
End Class
Tutto chiaro? Fammi sapere

Re: Software MAME Clean
Inviato: 18/02/2013, 23:04
da pucci
chiarissimo!
magari sarà una cazzata o uno scrupolo inutile, ma in questo modo non si rende form2 (che in realtà al momento è il cuore del programma) una specie di form "dipendente" dal primo
forse è effettivamente una cazzata, ma io vengo dal mondo della programmazione procedurale (la programmazione ad oggetti ce l'hanno accennata l'ultimo anno di istituto tecnico indicandolo come "il futuro")
Re: Software MAME Clean
Inviato: 18/02/2013, 23:14
da pucci
dR.pRoDiGy ha scritto:1) creare le variabili di input nel secondo form (o saranno probabilmente già lì perchè ti servono), e appena prima di avviarlo ( frm2.Show() ), scriverci dentro i valori
Codice: Seleziona tutto
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm2 As Form2
frm2 = New Form2()
frm2.var1 = "Ciao mondo"
frm2.Show()
End Sub
End Class
Public Class Form2
Dim var1 as String
End Class
in questa soluzione non sarebbe più corretto per i concetti di incapsulamento questo:
Codice: Seleziona tutto
Private _var1 As String
Public Property var1() As String
Get
Return _var1
End Get
Set(ByVal Value As String)
_var1 = Value
End Set
End Property
con la tua soluzione non viene "esposta" all'esterno una variabile senza il filtro dato dall'uso di una proprietà della classe?
e sopratutto: funziona? nel senso che lo scope della tua variabile "var1" le permette di essere visibile da form1?
Re: R: Software MAME Clean
Inviato: 19/02/2013, 8:47
da dR.pRoDiGy
pucci ha scritto:chiarissimo!
magari sarà una cazzata o uno scrupolo inutile, ma in questo modo non si rende form2 (che in realtà al momento è il cuore del programma) una specie di form "dipendente" dal primo
Ottimo!

No beh, più che altro si fa in modo che form2 esponga al resto del programma un'interfaccia (i.e.: metodi, proprietà) che permetta di usarla dove più ci serve!

Re: R: Software MAME Clean
Inviato: 19/02/2013, 9:04
da dR.pRoDiGy
pucci ha scritto:dR.pRoDiGy ha scritto:1) creare le variabili di input nel secondo form (o saranno probabilmente già lì perchè ti servono), e appena prima di avviarlo ( frm2.Show() ), scriverci dentro i valori
Codice: Seleziona tutto
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim frm2 As Form2
frm2 = New Form2()
frm2.var1 = "Ciao mondo"
frm2.Show()
End Sub
End Class
Public Class Form2
Dim var1 as String
End Class
in questa soluzione non sarebbe più corretto per i concetti di incapsulamento questo:
Codice: Seleziona tutto
Private _var1 As String
Public Property var1() As String
Get
Return _var1
End Get
Set(ByVal Value As String)
_var1 = Value
End Set
End Property
con la tua soluzione non viene "esposta" all'esterno una variabile senza il filtro dato dall'uso di una proprietà della classe?
e sopratutto: funziona? nel senso che lo scope della tua variabile "var1" le permette di essere visibile da form1?
Diciamo che nella programmazione ad oggetti l'uso di proprietà è più corretto stilisticamente rispetto alle pure variabili pubbliche, appunto per via dell'incapsulare e proteggere le complessità all'interno delle classi..
Ma di fatto nel tuo esempio l'incapsulamento non serve in quanto non c'è .. nulla da incapsulare
Diverso il caso se:
- la definizione della proprietà (in lettura o scrittura) avesse dovuto contenere della logica (codice di controllo, normalizzazione, etc.)
- avessi voluto inibire la lettura o la scrittura della proprietà dall'esterno (es.: caso delle proprietà in sola lettura, inizializzate all'interno della classe che le contiene)
Ultimo, si, in VB.NET funziona, in quanto (essendo il linguaggio più "per principianti" di .Net, rispetto al più rigoroso c# ), se non diversamente specificato, tutte le variabili vengono create col modificatore Friend (= visibile da tutto il programma).
In c# avresti dovuto dichiararla public

Re: Software MAME Clean
Inviato: 19/02/2013, 23:02
da pucci
ecco una nuova versione di MAME Washer
al momento il changelog è molto "scarno" (ma purtroppo fino a quando tornerò a casa alle 20:00 non posso fare molto di più):
- aggiunta le selezione dei file: MAME.exe o XML, catver.ini, languages.ini, multiplayer.ini (al momento solo i primi due vengono realmente usati)
- implementata la lettura del genere e categoria dei giochi (ma non ancora usabile per la selezione)
ricordo che il programma è ancora MOLTO "user unfriendly" e manca completamente la gestione degli errori
vi allego anche il sorgente in visual basic
Re: Software MAME Clean
Inviato: 04/07/2013, 15:08
da superlilly
Ciao Pucci, fammi estrarre il dat per clrmamepro dal tuo programmino è ti do un bacio sul chiappino !!!
Re: Software MAME Clean
Inviato: 04/07/2013, 18:55
da pucci
superlilly ha scritto:Ciao Pucci, fammi estrarre il dat per clrmamepro dal tuo programmino è ti do un bacio sul chiappino !!!
è in programma, ma purtroppo causa molti impegni estivi al momento lo sviluppo è fermo.
nel frattempo potresti usare romlister che, pur essendo un pò più complicato e non supportando tutti i dat per il filtro, fa comunque quello che vuoi tu
Re: Software MAME Clean
Inviato: 08/07/2013, 11:24
da superlilly
Provato ma è molto meglio il tuo per via dei filtri, dai aspetto che lo finisci e grazie comunque.
Re: Software MAME Clean
Inviato: 18/07/2013, 16:31
da vic20
Faccio una domanda stupida....Dopo aver ottenuto il file ini, come faccio a darlo in pasto a mala per poter creare una lista di giochi pulita??
Grazie
Re: Software MAME Clean
Inviato: 24/07/2013, 9:20
da vic20
Scusate mi rispondo da solo, nel MalaGameList import custom mame list...
Ciao
Re: Software MAME Clean
Inviato: 13/08/2013, 18:04
da pucci
superlilly ha scritto:Ciao Pucci, fammi estrarre il dat per clrmamepro dal tuo programmino è ti do un bacio sul chiappino !!!
il mio chiappino è pronto per il bacio...
ecco la versione 1.0.0.3 che permette anche di salvarsi un DAT per ClrMAME Pro
io l'ho testata e direi che funziona, ma magari fate qualche test pure voi per esserne sicuri
MAME Washer.rar
e vi lascio anche i sorgenti aggiornati
MAME Washer SOURCE.rar
è ancora da perfezionare, perchè devo tenere conto delle rom BAD DUMP e NO GOOD DUMP KNOW (per il momento il programma le considera tutte buone)
e anche dei CHD (che al momento non sono presenti nel DAT)
poi il passo successivo sarà aggiungere nuovi filtri per:
- categorie (catlist)
- linguaggio (languages)
- numero di giocatori (nplayer)
ecc
Re: Software MAME Clean
Inviato: 18/08/2013, 14:25
da superlilly
smack smack ottimo lavoro pucci e grazie 1000
Re: R: Software MAME Clean
Inviato: 18/08/2013, 15:15
da pucci
Oggi ho fatto altre migliorie al dat ClrMAME pro che viene generato:
- aggiunti i CHD e i sample
- aggiunti i flag baddump e nodump
- aggiunti year, manufacturer e sourceof
- aggiunti status e deviceof
Inoltre ora il programma salva la posizione degli ultimi file usati
Non l'ho ancora caricato perché devo terminare delle modifiche e ora devo andare a Urbino
Inviato dal mio MB526 con Tapatalk 2
Re: Software MAME Clean
Inviato: 18/08/2013, 16:50
da pucci
ok, sono riuscito a pubblicare una versione aggiornata:
MAME Washer.rar
i sorgenti non sto a pubblicarli, tanto ho visto che nessuno li scarica