Compilata la nuova versione 865 dell'emulatore Model 3 per linux, la trovate nel gruppo Telegram, al sesto piano o sul drive, come sempre.
Buon download.
b4nd1t0
Mame, derivati ed altri emulatori già compilati per Windows, Linux e Raspberry. Progetti e guide, gaming related e non.
Compilata la nuova versione 865 dell'emulatore Model 3 per linux, la trovate nel gruppo Telegram, al sesto piano o sul drive, come sempre.
Buon download.
b4nd1t0
Sto effettuanto la migrazione della BBS sixthfloorbbs.ddns.net su una nuova macchina e riorganizzando i contenuti limitandoli ad Arcade, Commodore e DOS per rendere più semplice la fruizione, non sarà quindi raggiungibile per un po' di giorni, abbiate pazienza.
Potrete comunque continuare ad utilizzare il canale telegram che rimane sempre aggiornato con i pacchetti.
b4nd1t0
Mame64 arcadeonly + groovy switchres 2.002b + nonag + d3d9ex - windows
Mame64 arcadeonly + groovy switchres 2.002b + nonag - linux
To download all the versions compiled by me you can directly access my drive from here and select the corresponding folder or go to the telegram group or go to the sixthfloor BBS
sudo apt update
sudo apt upgrade
sudo apt install wget screen nmap
adesso pensiamo a Java aggiungendo prima il repo
sudo add-apt-repository ppa:linuxuprising/java
diamo conferma ed attendiamo che finisca la procedura, poi
sudo apt update
e
sudo apt install oracle-java16-installer
alla fine, potremo verificare di aver installato la versione 16 di Java digitando
java --version
poi riavviamo
sudo reboot
A questo punto creiamo un nuovo utente (lo chiameremo minecraft), nelle cui cartelle verranno ospitati i file relativi al server, così non correremo il rischio di incasinare il sistema (cosa che avevo fatto nel Rasp)
sudo useradd -m -r -d /opt/minecraft minecraft
creiamo anche la password per il nuovo utente con
sudo passwd minecraft
ora creiamo la directory dove ospiteremo i file, come scritto prima (il nome della cartella è a piacere, ricordate nel caso di variare il nome anche nei comandi che daremo dopo)
sudo mkdir /opt/minecraft/survival
procuriamoci il file del server da quì copiando semplicemente il link che troviamo in corrispondenza dell' 1.17, in questo caso il comando sarà
sudo wget -O /opt/minecraft/survival/minecraft_server.jar https://launcher.mojang.com/v1/objects/0a269b5f2c5b93b1712d0f5dc43b6182b9ab254e/server.jar
è tutto su una linea mi raccomando, ovviamente nel caso cambiasse versione l'indirizzo cambierà e dovrete semplicemente copiarlo e sostituirlo a quanto scritto
una volta scaricato, dobbiamo accettare i termini della licenza
sudo bash -c "echo eula=true > /opt/minecraft/survival/eula.txt"
ora assegnamo la proprietà del server all'utente prescelto
sudo chown -R minecraft /opt/minecraft/survival/
adesso creiamo uno script che avvii in automatico il tutto come servizio
sudo nano /etc/systemd/system/minecraft@.service
incolliamo quanto scritto di seguito nell'editor
[Unit]
Description=Minecraft Server: %i
After=network.target
[Service]
WorkingDirectory=/opt/minecraft/%i
User=minecraft
Group=minecraft
Restart=always
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx2G -jar minecraft_server.jar nogui
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS. SAVING ALL MAPS..."5'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "save-all"5'
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "stop"5'
[Install]
WantedBy=multi-user.target
ATTENZIONE! nella linea 13 viene indicato quanta memoria può utilizzare minecraft, potete cambiare il quantitativo modificando
-Xmx2G (2 Gb assegnati) con -Xmx4G (assegnando 4Gb ad esempio) come per tutto, più ram c'è meglio è, all'aumentare dei giocatori aumenta la richiesta, regolatevi
ricordate di salvare ed uscite
Ora avviamo il server
sudo systemctl start minecraft@survival
possiamo controllare il suo stato
sudo systemctl status minecraft@survival
e quando abbiamo conferma che tutto è andato per il meglio impostarlo in maniera che si avvii automaticamente ad ogni accensione (o anche riavvio) della macchina
sudo systemctl enable minecraft@survival
Nel caso avessimo necessità di intervenire sul server e volessimo interrompere il servizio, ci basterà digitare
sudo systemctl stop minecraft@survival
adesso verifichiamo che il server sia in ascolto sulla sua porta di default
nmap -p 25565 localhost
se è tutto ok (deve esserlo, sennò avete sbagliato qualche passaggio) siamo pronti per andare avanti.
Per essere sempre raggiungibili anche dall'esterno, ci serve un indirizzo fisso da poter comunicare a chi vogliamo, per questo ci rivolgeremo a no-ip ad esempio e registreremo un indirizzo da impostare come quello del server, che chi si vorrà connettere dovrà quindi digitare come indirizzo del server in minecreaft.
Una volta completata la registrazione ed attivato l'indirizzo, dovremo procedere così, sempre da ssh:
cd /usr/local/src/
poi
sudo wget http://www.noip.com/client/linux/noip-duc-linux.tar.gz
una volta completato il download
sudo tar xf noip-duc-linux.tar.gz
non dimentichiamo di installare build-essential e make prima
sudo apt install build-essential make
finita l'installazione, spostiamoci
cd noip-2.1.9-1
ed ora possiamo dare il comando
sudo make install
Prestare molta attenzione a questo passaggio, infatti al termine dell'installazione verrà effettuata la configurazione dell'account che avete registrato prima, vi verranno chiesti email e password per loggarvi al servizio no-ip, una volta immessi vi verranno elencati gli indirizzi registrati e quali volete aggiornare ad ogni avvio del servizio, anche l'intervallo dopo il quale volete effettuare gli aggiornamenti.
Nel caso ci siano variazioni da fare, il file di configurazione nel quale abbiamo appena salvato i dati, si trova in
/usr/local/etc/no-ip2.conf
editando questo possiamo fare tutte le modifiche del caso.
Una volta completato, passiamo alla creazione ed avvio del servizio noip2 per l’indirizzo dinamico in automatico, quindi come prima, creiamo il file
sudo nano /lib/systemd/system/noip2.service
nel file appena creato scrivere quanto segue
[Unit]Description=noip2 service[Service]Type=forkingExecStart=/usr/local/bin/noip2Restart=always[Install]WantedBy=default.target
quindi digitare
sudo systemctl daemon-reload
sudo systemctl status noip2sudo systemctl start noip2sudo systemctl status noip2sudo systemctl stop noip2sudo systemctl status noip2
sudo systemctl enable noip2
sudo systemctl disable noip2
Compilare mame per utilizzarlo sui nostri cabinati è una operazione che può risultare inutile (troviamo quasi sempre la versione che ci interessa) ma vuoi per curiosità, vuoi perché vogliamo personalizzarlo, potrebbe venirci voglia di compilarcelo da soli.
Per questo ci viene in aiuto la guida presente sul sito mamedev, grazie alla quale possiamo fare tutto, predisporre l'ambiente per la compilazione e conoscere più o meno tutti i comandi da utilizzare.
Col tempo ho raccolto informazioni quì e là per cercare di ottimizzare, non essendo io un programmatore, quando leggo codice vedo praticamente una lingua aliena, vorrei quindi condividere alcuni consigli, messi insieme leggendo un po' dappertutto.
Le prime difficoltà compaiono quando si vuole applicare una patch, fino a poco fa, era possibile reperire la patch groovy, la d3d9ex e quella nonag da applicare direttamente al sorgente del mame "liscio", con gli ultimi cambiamenti, calamity ha messo su github il sorgente groovymame già pronto con patch groovy e d3d93x, quindi basterebbe compilare ed abbiamo l'eseguibile pronto ma se vogliamo applicare il nonag?
Dobbiamo intanto trovare la patch relativa alla versione che ci interessa, cambiare l'estensione in .diff semplicemente rinominandola per poi applicarla.
il comando per applicare la patch è
c:\mame_source>patch -p0 <suppression.diff --dry-run
dove sostituiremo i percorsi corretti ed il nome della patch, con i nostri, una volta verificato che non ci siano errori, potremo scrivere lo stesso comando omettendo il --dry-run che di fatto "simula" l'applicazione della patch senza però modificare nulla.
Può capitare infatti che sia disponibile una nuova versione di mame ma la patch non sia stata aggiornata e se ci sono modifiche nella struttura del codice, è necessario effettuare modifiche anche nella patch stessa per far combaciare le cose.
Se si ha fretta, è possibile modificare a mano le linee interessate, leggendo il contenuto del file .diff.
In questo caso consiglio di usare notepad++ e di aprire il file sul quale dobbiamo operare con quest'ultimo, apparirà tutto più chiaro.
Ecco come compare la patch relativa al mame 0.228, utilizzabile anche sul 0.229
se quando la applicate con il comando patch avete diversi errori, è possibile, come già detto, intervenire manualmente, vediamo come, analizzando cosa c'è scritto.
le linee in blu scuro, ci dicono su quale file del sorgente intervenire
diff -Nru oldsrc/frontend/mame/ui/mainmenu.cpp src/frontend/mame/ui/mainmenu.cpp
in questo caso, una volta andati nella cartella del sorgente, dobbiamo spostarci in
src/frontend/mame/ui/mainmenu
ed editare il file mainmenu.cpp con notepad++
quest'altra riga ci da delle coordinate
@@ -130,6 +130,9 @@
ci dice "orientativamente" a quale linea vanno applicate le modifiche, non combacia perfettamente, a me non è successo mai, quindi bisogna armarsi di occhiali e pazienza e trovare la linea confrontando quanto scritto sotto, ad esempio
item_append(menu_item_type::SEPARATOR);
+ // DISABLE SELECT NEW MACHINE & FAVORITES
+ if (!machine().options().skip_gameinfo())
+ {
if (!mame_machine_manager::instance()->favorite().is_favorite(machine()))
item_append(_("Add To Favorites"), 0, (void *)ADD_FAVORITE);
else
in questo caso dovremo aggiungere il codice preceduto dal segno +, tra le linee "item_append...." e "if (!mame_machine_manager...." omettendo i segni + e facendo attenzione a rispettare gli spazi tra le linee e l'incolonnamento (io almeno faccio così).
Nella 0.229 la situazione è questa, siamo alla linea 131 (ci è andata bene)
Il risultato dopo la modifica, sarà questo
item_append(menu_item_type::SEPARATOR);
// DISABLE SELECT NEW MACHINE & FAVORITES
if (!machine().options().skip_gameinfo())
{
if (!mame_machine_manager::instance()->favorite().is_favorite(machine()))
item_append(_("Add To Favorites"), 0, (void *)ADD_FAVORITE);
else
Potrebbe essere necessario anche eliminare qualche linea o semplicemente modificarla, se troveremo quindi il segno - sarà da eliminare per poi aggiungere il codice modificato, come indicato nel file.
Ripetiamo questo per ogni chiamata ad ogni file, salviamo ed avremo tutto pronto per la compilazione.
Con questa mini guida ho riportato solo la mia esperienza per quanto riguarda la patch del nonag, ci sono un sacco di altri argomenti da trattare e piccoli trucchi da utilizzare, dovessero interessare, basta contattarmi e vedrò di scrivere qualcosa, sia per le varie versioni di mame che per compilare altri software o emulatori per altre piattaforme (linux?)
Buona compilazione e buon divertimento.
Mame64 arcadeonly + groovy switchres 2.002a + nonag + d3d9ex - windows
Mame64 arcadeonly + groovy switchres 2.002a + nonag - linux
Fantastico emulatore che consente di giocare fedelmente e con ottimi risultati ai giochi del Model3 che purtroppo non hanno avuto conversioni per le console casalinghe.
Cercherò di spiegare come configurare ed utilizzare questo pezzo di software che viene costantemente aggiornato e perfezionato, nel momento in cui scrivo siamo alla r851, ricordate che potete trovare l'eseguibile nel gruppo telegram o chiamando la BBS sixthfloor.ddns.net via telnet/ftp.
l'utilizzo base del supermodel è da linea di comando, il che lo rende facilmente integrabile ad un qualunque frontend o magari utilizzabile creando dei semplici script per personalizzare l'avvio di qualunque gioco, ad esempio per avviare Scud Race basta digitare
supermodel scud.zip
questo comando avvierà ili gioco con tutte le impostazioni presenti in Supermodel.ini nella cartella Config, possiamo decidere di modificare le impostazioni nel file quindi o di agire direttamente da linea di comando aggiungendo tutti i parametri che vogliamo, ad esempio, se desideriamo avviare Scud Race in full screen senza influire nei settaggi di tutti gli altri giochi che invece vogliamo avviare in finestra, digiteremo
supermodel scud.zip -fullscreen
la logica quindi è questa, possiamo trovare tutte le opzioni sulle quali lavorare, sbirciando nell'ultima parte del supermodel.ini citato prima.
Esiste poi un frontend per chi non volesse utilizzare la commandline, realizzato dall'utente nuexzz.. del Supermodel Forum, anche questo viene aggiornato in caso di cambiamenti che ne minerebbero il funzionamento (attualmente siamo alla r846).
Questa la schermata principale dalla quale possiamo regolare tutto, dopo aver indicato il percorso delle roms, non ci rimane che impostare risoluzione e gli altri parametri per poi cliccare Load Rom ed iniziare a giocare.
Mame64 arcadeonly + groovy switchres 2.001b + nonag + d3d9ex - windows
Ammetto di non essere un grande fan delle console Nintendo, negli anni ho provato a prenderne qualcuna, tipo NES o SNES ma le ho sempre rivendute, il motivo? L'emulazione (di queste citate) è a livelli molto buoni e collegando la macchina al CRT, sarà difficile rendersi conto che non stiamo usando quella vera. Questo discorso, come accennato, vale fino al Nintendo64, su questa macchina, alcuni titoli mi hanno sempre attirato, specialmente quelli di guida e soprattutto le versioni esclusive, diciamo che mi basta leggere quel "64" aggiuntivo per farmi nascere la curiosità e spingermi a provare il gioco, devo effettivamente ammettere che alcuni sono ben fatti e si lasciano apprezzare.
Tornando al titolo del post, dopo diversi anni ho dovuto constatare che, per alcune console, l'emulazione è meglio lasciarla stare, c'è sempre quel titolo che vuoi giocare, che però ha il difettuccio, magari non mina la giocabilità ma tu sai che c'è e, almeno a me, fa passare la voglia fino a quando non lo sistemeranno.
Insomma, per farla breve, per risolvere tutti sti problemini, ho deciso di prendere un vero Nintendo64 e visti i prezzi esagerati che alcune cartucce hanno, un bel cartuccione con SD che mi consente di giocare tutti i titoli, anche quelli USA, eliminando le fastidiose bande nere delle versioni PAL.
Fatte alcune prove, posso affermare che finalmente, riuscirò apprezzare questa console, alla quale sicuramente mi dedicherò con cura.
Di seguito, alcuni appunti e file per chi avesse necessità di ripristinare la SD (nel caso fosse come la mia), aggiungerò alche alcune liste divise per tipologia di titoli che possono magari aiutare ad individuare il gioco cercato (a me ad esempio interessava trovare tutti i titoli che richiedessero/sfruttassero l'espansione aggiuntiva prima di procedere con l'acquisto).
Daje!!
In questa cartella ci sono i file necessari a far funzionare la cartuccia, vanno copiati direttamente nella sd formattata in fat32, andranno poi create elle cartelle con, ad esempio, i giochi divisi per regione o categorie o quello che più ritenete utile.
All'avvio vedrete un semplice file browser dove scegliere il gioco da avviare e finora i giochi mi sono partiti tutti, prediligo quelli USA, almeno non vedo le bande nere.
Mame64 + groovy switchres 2.001a + nonag + d3d9ex - windows
Mame32 + groovy_017t + nonag + nopotfix - windows (on windows XP, booting problems?)
HBMame64 + groovy_017t + nonag + d3d9ex - windows
Mame64 + groovy_017t + nonag - linux
Al sesto piano e sul canale telegram, insieme a tutti gli altri.
Buon download.