MameCab Avvio e spegnimento come un ArcadeCab

Problemi e soluzioni su configurazioni software, firmware
Avatar utente
PaTrYcK
Moderatore
Moderatore
Messaggi: 11232
Iscritto il: 12/10/2009, 19:35
Reputation: 106
Città: Cagliari

MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da PaTrYcK » 13/12/2010, 12:27

Dato che nn ci basta mai 8-) e vogliamo che il nostro mamecab sia il piu' possibile vicino al funzionamento di un vero Arcadecab, ecco a voi una buona soluzione alla discussione iniziata nel 3D viewtopic.php?f=29&t=5846&hilit=brutale

L’idea e’ quella di avere il nostro mamecab che si possa avviare in pochi secondi (senza la mimina comparsa di alcuna interfaccia grafica di windows) e che si possa spegnere direttamente dall’interruttore principale del cabinato senza avviare ogni volta la procedura di spegnimento.
Tutto questo e’ possibile sfruttando due sistemi:
- L’EWF (Enhanced Write Filter) , una particolare funzione presente su Windows Embedded, un sistema operativo basato su XP creato dalla Microsoft x i sistemi che abbiano la necessita' di essere sempre funzionanti con una manutenzione pressoche’ inesistente, che nn possano essere modificati dagli utenti (es. sistemi informativi presenti in ferrovie, poste ecc...) e che possano anche essere poter spenti da interruttore senza dover eseguire una procedura di spegnimento, la caratteristica fondamentale dell’EWF e’ che “scrive” tutto cio' che viene eseguito nella RAM e non su hard disk, dove avvengono solo ed esclusivamente operazioni di lettura e mai di scrittura.
Da tutto questo si evince che la durata dei dischi e' pressoche' illimitata e si e' esenti anche da virus, problemi di manuntenzione ecc... molti dei pc che adottano questo sistema nn utilizzano nemmeno un hard disk ma una vera e propria compact flash da 4GB!!!!!
Tutto cio' nn e’ ovviamente possibile su un normale Win XP, ma estraendo cio’ che ci serve da WIN Embedded possiamo continuare ad utilizzare il nostro WIN XP implementando soltanto l'EWF.

- L’HORM (Hibernate Once Resume Many), permette di eseguire un avvio rapidissimo e di poter ritornare alla stessa immagine ibernata più volte. E' molto differente dalla modalità con cui viene solitamente utilizzata questa funzionalità su PC senza l'HORM, senza l'ausilio di questa infatti è solo possibile ripristinare l'ultima immagine che è stata ibernata e le immagini ibernate non resistono ai successivi reboot.

Utilizzando entrambe le funzioni possiamo ottenere cio’ che serve al nostro scopo, ovvero un cab che si avvia e ci mostri in pochi secondi il nostro front end utilizzando sempre la stessa immagine “congelata” e che si debba spegnere da interruttore anziche’ avviare la solita procedura di spegnimento, operazione fattibile dato che come ho gia’ scritto i dati vengono scritti sulla ram e non si corrono assolutamente rischi di errori di scrittura su disco...
Ovviamente qualunque modifica, installazione, correzione, cancellazione, virus, cambio di impostazioni del desktop, modifica password, viene persa al riavvio successivo, dove il sistema si ripresenta “dimenticando” qualunque operazione da quando l’ EWF e’ stato abilitato, x fare qualsiasi modifica dovremmo sempre disabilitare l'EWF in modo che i dati possano essere scritti su disco e nn sulla ram...
Dopo questa lunga premessa x farvi capire sommariamente il funzionamento vi indico la procedura, in pochi passi avrete il vostro mamecab pronto :wink:


Procedura:
Innazitutto scaricatevi lo zip, inoltre dovete controllare alcune impostazioni sul vostro WIN XP, ovvero:
1- disabilitate gli aggiornamenti automatici (pannello controllo- aggiornamenti automatici- disattiva)
2- abilita la sospensione (ibernazione) su XP (pannello di controllo - opzioni risparmio energia - sospensione e attivala)
3- disabilita richiesta password dopo standby/sospensione (pannello controllo - schermo - screen saver - alimentazione - avanzata e disabilita la casella "chiedi la pass al termine dello standby)
4- disabilitare il paging (pannello controllo- sistema- avanzate- prestazioni/impostazioni - avanzate - memoria virtuale - nessun file di paging, clicca su imposta altrimenti nn si ha nessun effetto).

5- Aprite lo zip e scaricate tutto il contenuto siu una cartella, cercate il comodo soft EWFtool.exe e cliccate:
a)install ewf (installa alcuni file necessari all'EWF)
b) minimize disk writer
La terza funzione Horm non e' necessaria, provvederemo noi a creare il file necessario per l'HORM

6- Copiate il file horm.dat presente nella cartella su C:, poi copiate i file ewfapi.dll ed ewfdll.dll presenti nella sotto-cartella "Ewf-Horm files" su c:\windows\system32

7- Eseguite il file di registro Horm.reg

8- Riavviate

Adesso abbiamo la funzionalita' EWF aggiunta al nostro WIN XP, ripeto, e' bene ricordarsi che con l'EWF attivato tutti i cambiamenti e le modifiche fatte saranno "scritte" sulla Ram e nn su HD, quindi al prossimo riavvio del pc non saranno presenti!
X accertarci se questa e' attiva o disattiva andate su start-esegui e date il comando cmd x aprire prompt dei comandi:
Nella finestra scrivete ewfmgr c:
Immagine

Dovreste ottenere questa schermata:
Immagine
Sulla schermata e' indicato uno stato EWF disabilitato, se invece fosse attivo (enable) e' necessario disabilitarlo, lo si fa semplicemente tramite il comando sempre da prompt dei comandi:
"ewfmgr c: -commitanddisable" oppure utilizzate il file presente sulla cartella: "Disabilita EWF.bat"
Riavviate e avrete l'EWF disabilitato al prossimo riavvio.

Adesso verificate che l'horm (Hibernate Once Resume Many) sia abilitato, scrivete ewfmgr e dovreste avere la risposta:
"Horm active"
Immagine

Adesso siete praticamente allo stadio finale, ovvero stato EWF disabilitato, Horm attivato, avete quindi il sistema pronto x creare "l'immagine" che windows utilizzera' ogni volta che avvierete il pc, quindi se dovete sistemare/modificare qualcosa fattelo adesso...
Quando sarete pronti dovete riandare sul prompt dei comandi, ed indicare
ewfmgr c: -enable oppure utilizzate il file presente nella cartella: "Abilita EWF.bat"
Se adesso controllate lo stato digitando ewfmgr c: avrete che lo stato dell'EWF e' disabilitato (dato che sara' attivo solo al prossimo riavvio), ma nella riga sotto "boot command" ci sta indicando che ha ricevuto il vostro comando ed al prossimo riavvio verra' abilitato l'EWF.
Al prossimo riavvio avrete l'EWF attivo, qualsiasi cambiamento vorrete fare sara' ininfluente, potete creare, spostare cartelle ecc. ma se riavviate nn saranno presenti le vostre modifiche :)
Verificate che l'ewf sia attivo, sempre da promt dei comandi scrivete ewfmgr c: avrete questa risposta:
Immagine

Dopo quest'ultima verifica l'ultimo step sara' quello di andare in ibernazione x creare l'immagine che verra' sempre utilizzata all'avvio del cab, quindi impostate il Front end in primo piano, dopodiche' dovrete mandare il sistema in ibernazione, vi indico due vie ma ne esistono altre:
1) settare il front end in modo che quando si esce ti chieda di andare in inernazione anziche' spegnere il pc, non tutti i front end hanno questa opzione (su Mala e'possibile)
2) impostate il pc in modo che quando si clicca il pulsante di on/off del pc parta l'ibernazione anziche' lo spegnimento (pannello controllo-opzioni risparmio energia-avanzate: "Se viene premuto il pulsante di alimentazione del computer?" spuntare sospensione)
Immagine

In entrambi i casi verra' creato il file di ibernazione che verra' utilizzato ogni volta che voi avvierete il cab, d'ora in avanti spegnete il cab dall'interruttore SENZA passare x il pulsante sospendi che avrebbe altrimenti l'effetto di aggiornare ogni volta l'immagine dell'ibernazione....

Ricordatevi che ogni qualvolta vorrete passare da uno stato ad un altro dell'EWF (es. da enable a disable o viceversa) x fare delle modifiche bisogna dare il comando e poi riavviare, mentre l'HORM nn e' assolutamente necessario disattivarlo.

Quindi se siete nello stato enable e volete fare delle modifiche al sistema dovete disattivare l'EWF:
ewfmgr c: -commitanddisable oppure utilizzate il file presente sulla cartella: "Disabilita EWF.bat" e riavviate
Se invece siete nello stato disable e volete riattivare l'EWF: ewfmgr c: -enable o eseguite "Abilita EWF.bat" e riavviate.
Ho inserito anche un interfaccia grafica dove potete attivare/disattivare l'EWF, la trovate nella sotto-cartella EWF&HORMmanager, nel file leggimi e' indicato come installarlo
Immagine

Dopo aver creato l'immagine se il vostro sistema e' ben configurato e nn e' pesante, avrete il cab con il front end attivo pochissimi secondi e potrete (anzi dovrete) spegnerlo dall'interruttore principale del cabinato, tutto ( o quasi) come un vero cabinato da bar!!! \:D/
Inoltre per chi avesse un cabinato con l'ArcadeVGA (o un monitor nn arcade 15khz) e' possibile nn visualizzare la scritta "Resuming Windows" e la relativa barra di avanzamento tramite una modifica fatta da User9999, trovate come fare all'interno della cartella "Disatt. Resuming Windows (AVGA)", ovviamente chi utilizza soft15khz o simili nn e' necessaria questa procedura dato che tale schermata e' gia' invisibile.

Ultimo appunto, se modificate qualsiasi file sul vostro pc, il sistema EWF (dato che scrive sulla ram e nn su HD) nn manterra' le modifiche al prossimo riavvio, questo puo' essere una scocciatura se uno volesse ad esempio modificare una configurazione, un file ecc...dato che dovrebbe disattivare l'ewf, riavviare, effettuare le modifiche, attivare l'ewf e riavviare.
Un modo semplice e veloce per aggiornare la propria configurazione e' mandare il sistema nuovamente in ibernazione quando avete apportato delle modifiche, in questo modo il sistema provvederà a riaggiornare l'immagine che utilizzera' successivamente x i prossimi riavvii...

Un ultima considerazione sui salvataggi dei record, questo sistema e' nato per far sembrare il nostro mamecab simile ad un vero arcadecab, quest'ultimo una volta spento non tiene in memoria gli eventuali record fatti ed anche il nostro mamecab in questo non differisce, x chi fosse interessato e' possibile salvare i propri hiscore utilizzando una classica pennina usb, in questa si dovranno trasferire le cartelle del Mame "Hi" e "Nvram" e, dopo aver configurato Mame indicando il nuovo percorso delle cartelle, avrete memorizzati i vostri record anche al successivo riavvio del mamecab...



P.s. Visto cosi' puo' sembrare complicato, ma una volta che si capisce come utilizzare il comando EWF e' facilissimo, x qualsiasi dubbio sono qui :wink:
<-gamers3->

-Edit ho ri-aggiornato lo zip alla vers. 3B, chi lo avesse precedentemente scaricato utilizzi l'ultimo presente-

http://www.mediafire.com/?38wzzzbc27bww9s
oppure:
EWF&HORMmanager-3B.zip
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.


Avatar utente
Kernel
Moderatore
Moderatore
Messaggi: 6771
Iscritto il: 25/07/2005, 9:54
Reputation: 29

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da Kernel » 13/12/2010, 14:12

Ottimo lavoro!
Quindi basta avere tutti gli emulatori su una partizione diversa dal "c:" o su un altro disco e le modifiche non si perdono.

L'unico dubbio che mi rimane è sull'incolumità del disco rigido continuando a subire spegnimenti brutali. Io per ora preferisco attivare manualmente l'ibernazione tramite pulsante.
L'ideale, come dici nella guida, sarebbe avere tutto su compact flash dove non ci sono parti meccaniche in movimento.


Avatar utente
PaTrYcK
Moderatore
Moderatore
Messaggi: 11232
Iscritto il: 12/10/2009, 19:35
Reputation: 106
Città: Cagliari

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da PaTrYcK » 13/12/2010, 14:23

Tranquillo Kernel, purtroppo siamo abituati che spegnendo brutalmente possano crearsi dei problemi, ma se gia' ricordi in altro 3d si era parlato di questo: viewtopic.php?f=29&t=2315&hilit=virtual ... =10#p23065
Quello che noi stiamo facendo e' che i dati nn vengano scritti su hd ma sulla ram, in questo modo nn si ha problema di sincronizzazione ed il disco nn subisce assolutamente nessun trauma dato che dopo l'avvio nn interviene piu'...
Se fai una prova infatti noterai che dopo aver attivato l'EWF se crei una cartella questa al successivo riavvio nn e' presente, il disco praticamente e' inerme e rimane tate sino al prossimo avvio!

Il sistema EWF estratto da win embedded e' stato creato appositamente x essere gestito anche in modo "barbaro" dagli utenti che lo utilizzano x esempio nei sistemi informativi presenti nelle nostre citta, dove vengono strapazzati e spenti e riaccesi in continuazione senza nessun trauma...figurati che nella maggior parte di questi viene installato win xp embedded su una memory card e nn su disco, quindi figurati un po...


Avatar utente
Kernel
Moderatore
Moderatore
Messaggi: 6771
Iscritto il: 25/07/2005, 9:54
Reputation: 29

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da Kernel » 13/12/2010, 14:31

PaTrYcK ha scritto:figurati che nella maggior parte di questi viene installato win xp embedded su una memory card e nn su disco, quindi figurati un po...
Ma infatti secondo me l'ideale sarebbe avere tutto su compact flash/memory card dove non ci sono parti meccaniche in movimento. Se carichi le rom/emulatori/dati vari dal disco rigido D: per esempio e il disco in un momento di lettura/scrittura viene spento brutalmente può capitare che la testina atterri sulla superficie magnetica facendo danni, non credi che sia un ipotesi reale o comunque un rischio da mettere in preventivo?

EDIT: rileggendo con calma credo che effettivamente usando il solo disco C: non ci siano problemi visto che il disco rimane "immacolato" nelle fasi di non caricamento rom/ecc...


Avatar utente
PaTrYcK
Moderatore
Moderatore
Messaggi: 11232
Iscritto il: 12/10/2009, 19:35
Reputation: 106
Città: Cagliari

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da PaTrYcK » 13/12/2010, 14:36

Kernel ha scritto:Se carichi le rom/emulatori/dati vari dal disco rigido D: per esempio e il disco in un momento di lettura/scrittura viene spento brutalmente può capitare che la testina atterri sulla superficie magnetica facendo danni, non credi che sia un ipotesi reale o comunque un rischio da mettere in preventivo?
Beh certo, ma si presuppone che nessuno spenga il cab dall'interruttore dopo che ha scelto di caricare un gioco, lo spegnimento va fatto dopo che un gioco e' avviato, in ogni caso si tratta sempre di operazioni di lettura e mai di scrittura, su un sistema dove e' presente l'EWF nn succedera' mai che si perdano dati o altri problemi simili....


antoniomauro
Cab-maniaco
Cab-maniaco
Messaggi: 1494
Iscritto il: 02/08/2005, 7:40
Medaglie: 1
Reputation: 11
Città: Latina
:
Donatore

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da antoniomauro » 13/12/2010, 16:44

Sono consigliate 2 partizioni oppure si può lasciare tutto su c?


Avatar utente
Kernel
Moderatore
Moderatore
Messaggi: 6771
Iscritto il: 25/07/2005, 9:54
Reputation: 29

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da Kernel » 13/12/2010, 17:19

Io farei 2 partizioni per avere la possibilità di salvare/modificare/aggiungere files (sulla seconda partizione) senza problemi.


djfiorec
Cab-maniaco
Cab-maniaco
Messaggi: 1277
Iscritto il: 07/06/2010, 11:13
Medaglie: 1
Reputation: 5
Città: Salerno
Località: Pagani (SA)
:
Donatore

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da djfiorec » 13/12/2010, 20:22

Ma cosa succede se il cab lo spengo in modo classico, ossia premendo il bottone power del pc?

Un'altra domanda: Usando mamewah, come faccio ad abilitare l'ibernazione mentre è in esecuzione?

Come fa a freezare se il frontend è ridotto ad incona per poter utilizzare la shell?


Avatar utente
PaTrYcK
Moderatore
Moderatore
Messaggi: 11232
Iscritto il: 12/10/2009, 19:35
Reputation: 106
Città: Cagliari

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da PaTrYcK » 14/12/2010, 1:02

antoniomauro ha scritto:Sono consigliate 2 partizioni oppure si può lasciare tutto su c?
Dopo diverse prove fatte su diversi dischi il "congelamento" viene fatto su tutto l'HD, quindi dopo aver creato il file di ibernazione su tutto i ldisco nn verranno fatte modifiche...
Se si vuole che si possa registrare un record si deve mettere una seconda unita' di memorizzazione, io ad esempio ho due partizioni, C dove e' presente il sistema operativo e D dove ci sono emulatori e roms e ho dovuto utilizzare una comune pennina usb esterna x i salvataggi record, la cosa migliore sarebbe un hd x il sistema operativo ed uno x emulatori e roms...
djfiorec ha scritto:Ma cosa succede se il cab lo spengo in modo classico, ossia premendo il bottone power del pc?
Nn succede niente, o meglio al prossimo riavvio riparte dall'immagine ibernata, ma nn ha molto senso spegnere dal bottone quando puoi tranquillamente spegnere dall'interruttore...
djfiorec ha scritto:Un'altra domanda: Usando mamewah, come faccio ad abilitare l'ibernazione mentre è in esecuzione?
Come fa a freezare se il frontend è ridotto ad incona per poter utilizzare la shell?
Nn ho fatto prove con il tuo FE ma si puo' fare cmq in diversi modi, ad esempio schiacciare il pulsante win sulla tastiera, andare su spegni sistema e scegliere sospendi, oppure meglio impostare in modo che quando si clicca il pulsante di on/off del pc parta l'ibernazione anziche' lo spegnimento stesso del pc ed avrai cosi l'immagine ibernata con il tuo FE in primo piano (pannello controllo-opzioni risparmio energia-avanzate: "Se viene premuto il pulsante di alimentazione del computer?" spuntare sospensione) :wink:


Avatar utente
Kernel
Moderatore
Moderatore
Messaggi: 6771
Iscritto il: 25/07/2005, 9:54
Reputation: 29

Re: MameCab Avvio e spegnimento come un ArcadeCab

Messaggio da Kernel » 14/12/2010, 9:34

PaTrYcK ha scritto:Se si vuole che si possa registrare un record si deve mettere una seconda unita' di memorizzazione, io ad esempio ho due partizioni, C dove e' presente il sistema operativo e D dove ci sono emulatori e roms e ho dovuto utilizzare una comune pennina usb esterna x i salvataggi record, la cosa migliore sarebbe un hd x il sistema operativo ed uno x emulatori e roms...
Perchè hai dovuto usare una pennina?
Non rimangono i dati modificati su D:?


Rispondi