Besserer Sound bei ScummVM Spielen auf einen Raspberry Pi mit Roland MT-32 und CM-32L Synthesizer Modulen Emulator. So klingen die beinahe 30 Jahre alten Spiele nicht mehr nach 8Bit Soundtechnik.

Im folgenden Tutorial wird gezeigt, wie Ihr die Synthesiser-Software Munt auf einem RPi 3B+ installieren und verwenden könnt. Windows-Benutzer können das Programm PuTTY für Aufgabe nutzen, Linux-Benutzer machen das über das Terminal mittels SSH-Verbindung. Falls nicht geändert, dann sollten die Standardlogin Daten gelten (Login: pi PW: raspberry).

1. Notwendige Pakete installieren:

sudo apt-get install build-essential cmake portaudio19-dev qtmobility-dev libx11-dev libxt-dev libxpm-dev

2. Software Munt downloaden:
Hier gibt es nun zwei Möglichkeiten, zu einem die Source Quelle und zum anderen die git Quelle. Ich arbeite am liebsten mit git, da diese einfacher sind zu updaten.

git clone https://github.com/munt/munt.git

3. betreten und build Ordner erstellen:

cd munt
mkdir -p build-munt
cd build-munt

4. Compiler-Flags setzen (RPi3):

export CCFLAGS="-Ofast -march=armv8-a+crc -mtune=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard -ftree-vectorize -funsafe-math-optimizations"
export CXXFLAGS="-Ofast -march=armv8-a+crc -mtune=cortex-a53 -mfpu=neon-fp-armv8 -mfloat-abi=hard -ftree-vectorize -funsafe-math-optimizations"

5. Munt kompilieren/bauen und installieren:

cmake -DCMAKE_BUILD_TYPE=Release -Dmunt_WITH_MT32EMU_QT:BOOL=OFF ../
make -j 4
sudo make install

6. Munt ALSA MIDI Treiber kompilieren/bauen und installieren:

cd ../mt32emu_alsadrv/
make
sudo make install

7. Kontrolle der Installation:

ls -la /usr/local/bin/mt32d

pi@retropie:~ $ ls -la /usr/local/bin/mt32d
-rwxr-xr-x 1 root staff 229068 Aug 29 17:29 /usr/local/bin/mt32d
pi@retropie:~ $

8. MT32 Autostart:

Hierfür tragen wir in die Datei “/etc/rc.local” folgendes vor dem “exit 0” ein.

sudo nano /etc/rc.local

/usr/local/bin/mt32d -i 12 &

9. Das Jamming verringern:

Um das Jamming des Sounds zu verringern, können diese On-Demand-CPU-Regler-Optimierungen in der “/etc/rc.local” Datei, unter der mt32d-Befehlszeile, eingetragen werden.

echo -n 100 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor
echo -n 50000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate

Eine andere Alternative dazu ist

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

jedoch macht treibt dieser die RPi deutlich höher und die CPU wird wärmer.

10. Neustart und erster Device Test:

Neustart mit: sudo reboot

Nachdem das System wieder oben ist und wir uns erneut eingeloggt haben, testen wir ob der Device vorhanden ist.

aconnect -o

pi@retropie:~ $ aconnect -o
client 14: ‘Midi Through’ [type=Kernel]
0 ‘Midi Through Port-0’
client 128: ‘MT-32’ [type=User,pid=619]
0 ‘Standard ‘
1 ‘GM Emulation ‘
pi@retropie:~ $

11. ROM Dateien:

Es fehlen noch die gewissen ROM Datei(en) zu dem ganzen (MT32_PCM.ROM, MT32_CONTROL.ROM und CM32L_PCM, CM32L_CONTROL.ROM). Diese packt ihr euch erstmal ins Home-Verzeichnis (/home/pi/) Eures RPi (mit WinSCP z.B.) um sie dann in PuTTY oder mittels SSH-Verbindung zu verschieben.

sudo mkdir -p usr/share/mt32-rom-data
sudo mv ~/*.ROM /usr/share/mt32-rom-data

12. ScummVM einstellen:

Die Soundeinstellungen können entweder für alle Spiele oder einzeln gemacht werden.
In dem Beispiel hier werden die Einstellungen für alle gemacht.

Standard Audio-Einstellung

MT32 Audio-Einstellung

Teilen:

Der Steam-Client hat eine modifitierte Wine Version, namens Proton, in seinen Beta-Updates, welches dem Benutzer erlaubt Windows Spiele unter Linux-Distributions zu installieren und zu spielen. Seit 2010 wurden auf Steam-Play über 3000 Spiele mit Linux Unterstützung bereit gestellt. Eine Kompatiblitätsliste gibt es hier. Die beste Unterstützung erhalten PCs mit nVIDIA Grafik Karten.




Unter dem Menüpunkt Steam -> Einstellungen -> Account kann man die “Steam Beta Update” aktivieren.

Steam veranlaßt einen Neustart des Clients und installiert dabei die fehlenden Pakete. Anschliessend befindet sich unter den Einstellungen, auf der linken Seite, Steam Play. Dort muss man nur Steam Play aktivieren und es wird nochmals neu gestartet. Nun kann man Windows Spiele auch unter Steam Linux installieren und spielen.

Teilen:

Um nicht ständig Start drücken und durch das Menü zu navigieren kann man auch ein Power System in die Emulationstation einpflegen. Darin befinden sich, je nach Anwendungsbedarf, die Scripte zum Neustarten oder Herunterfahren. Dies kann man beliebig erweitern. Die Dateien Dafür kannst du hier runterladen und entpacken. Hier als Beispiel wird die Theme “Tronkyfran” benutzt.



Schritt 1. – Datei(en) kopieren/verschieben

Da man auf dem Raspberry Pi System mit root Rechten arbeiten muss empfiehlt sich für Windows Benutzer zwei Tools. Zu einem für die Befehlseingabe das PuTTY und zum anderen für das verschieben/kopieren von Datei(en) WinSCP.

Aus dem Themes Ordner den Ordner “power” auf das Homeverzeichnis (/home/pi/) kopieren. Anschliessend mit PuTTY (kann man gleichzeitlich laufen lassen) den Befehl

sudo mv power/ /etc/emulationstation/themes/tronkyfran/

verschieben.
Als nächstes kommen die ROM Daten dran. Wie schon bei Themes, wird auch hier der power Ordner aus dem “roms” Ordner mit WinSCP kopiert und anschliessend der Ordner in roms verschoben.

mv power/ RetroPie/roms/

Da das Homeverzeichnis dem Benutzer als Besitzer gilt muss hier kein sudo verwendet werden.

Da wir grad soviel Spass mit dem kopieren und dann verschieben hatten, machen wir diese Übung noch zwei mal, mit gamelists und downloaded_images. Am besten beide Ordner auf das RPi kopieren und in PuTTY dann:

sudo mv gamelists/ .emulationstation/
sudo mv downloaded_images/ .emulationstation/

Ruhig auch mal mit dem Befehl “ls” kontrollieren ob alles seine Richtigkeit hat

ls .emualtionstation/gamelists

Schritt 2. – es_systems.cfg anpassen/erweitern

Im PowerMenu Ordner ist auch eine es_systems.cfg Datei drin, der Inhalt dieser Datei muss kopiert und in die “/etc/emulationstation/es_systems.cfg” Datei eingetragen werden. Das kann man schnell und bequem mit PuTTY erledigen.

sudo nano /etc/emulationstation/es_systems.cfg

Setzt man den Eintrag oben hin, so wird dieser als erstes in der Emulationstation angezeigt.













Speichern tut man mit STRG+O und Y (Tastaturlayout englisch, kann auch Z Taste sein) oder J und ENTER-Taste und Beenden mit STRG+X

Vor dem Neustart sollten wir noch die Scripte im ROMs Ordner “power” ausführbar machen.

chmod +x RetroPie/roms/power/*.sh

Jetzt nur noch die Emulationstation neustarten (Startmenü -> Quit -> Emulationstation reboot) und Fertig.

Teilen:

Das Gerät misst 3.2cm, mit Analog Stick knapp 6cm an Höhe und ist 18 cm lang. Das Prinzip dieses Bauwerkes ist recht simple, oben und unten befinden sich zwei zurechtgeschnittene Plastik Platten. Die obere schützt die Steuerplatine mit den 3.5 IPS Display, Tastern und den etwas verunglimpften Lautsprechern (die hätte ich ehr auf der Innenseite angebraucht).
Das Raspberry Pi wird über die gesamte GPIO Leiste und einen HDMI doppel Stecker verbunden, der Sound kommt über die HDMI Schnittstelle.

An der linken Seite unterhalb der Taster befinden sich weiter vier Drucktaster an der Steuerplatine, um die Einstellungen des Displays und der Lautstärke zu machen. Auf der Rechten Seite unter dem Analogen Stick haben wir die Akku LEDs und darüber den On/OFF Schalter. Noch weiter höher kommen die Schultertasten und dazwischen befindet sich der Kopfhöreranschluss, sowie die Ladebuchse des Gerätes. Der Stecker ist ein Micro-USB Type-B.

Ich habe RetroPie auf einer Test-SD Karte und die Themes GBZ35-dark gewählt. Da diese Optimal für den Einsatz von 3.5 Zoll Displays gemacht ist, gibt es auch keine Probleme mit der grafischen Ansicht in den einzenlnen Systemen.

Spielen läßt es sich ähnlich wie ein PSP, Dingoo A320 oder GameKing. Das Design ist jedoch ehr der PSP angepasst, mit den rundlichen Seiten.

Galerie:


Teilen:


ROM Hacks sind sehr beliebt und viele verzweifeln an manchen Fanmades. Warum nicht ein eigenens System in der Emulationstation dafür machen? Eine Collection erfüllt den Zweck nicht ganz so, da diese die Spiele nur in einer cfg Datei listet. So sind sie nicht zwischen den ganzen originalen Spielen und man muss nicht lange suchen. Eigentlich ist es das selbe Prinzip wie bei Capcom System, mit ein paar kleinen Veränderungen.

Eigenes System hinzufügen
(Ich verwende hier den schlichten namen “hacks” als Beispiel für mein ROM Hacks System)

Datei: /etc/emulationstation/es_systems.cfg

einfügen von:

  <system>
    <name>hacks</name>
    <path>~/RetroPie/roms/hacks</path>
    <extension>.bin .gen .int .nes .rom .smc .BIN .GEN .INT .NES .ROM .SMC</extension>
    <command>/opt/retropie/supplementary/runcommand/runcommand.sh 0 _SYS_ hacks %ROM%</command>
    <theme>hacks</theme>
  </system>

Themes-Ordner erstellen

Verzeichnis: /etc/emulationstation/themes/DEINE_THEME/hacks

Den Ordner “hacks” unter der Themes am besten über eine SSH-Verbindung erstellen. Unter Windows wie gewohnt mit dem Tool PuTTY.

In diesem Ornder “hacks” werden einfach die Datei theme.xml aus dem “/etc/emulationstation/themes/DEINE_THEMES/snes” Ordner kopiert und die selbsterstellte Logo Datei (system.svg oder system.png) rein kopiert. Nimmt man keine System.svg|png Datei so erscheint das neue System in Klarschrift in der Emulationstation. Später kann man noch Screenshots/Preview Bilder mit reinbringen, ist von Themes zu Themes Unterschiedlich und mit etwas Bastellei im Bildbearbeitungs Programm verbunden.

Konfigurations-Ordner

Verzeichnis: /opt/retropie/configs/hacks

Hier werden ebenfalls Dateien aus dem Ordner “/opt/retropie/configs/snes” kopiert.

emulators.cfg
retroarch.cfg

In der retroarch.cfg muss am anfang der Pfad von “/opt/retropie/configs/snes/” in “/opt/retropie/configs/hacks/” geändert werden.

In dem Sinne war es das bereits, nur noch die ROMs in den hacks rom Ordner und Emulationstation neustarten. Es sollte dann das System hacks auf der Systemauswahl erscheinen.

Zu den Bildern: Ich verwende die Themes “futura-dark-V”, diese ist leicht erweiterbar und hat Rohdateien für die Screenshots/Preview Bilder mit an Board. Ich habe mir die Logo Datei vom SNES System genommen, damit hatte ich die Masse für mein Logo. Habe das fertige Bild dann alspng abgespeichert und in meinen hacks Ordner unter der verwendeten Themes kopier. Dann habe ich in der theme.xml die Logo Datei geändert (von .svg in .png) und die Emulationstation neugestartet. Ergebnis sind die Bilder. Als nächstes werde ich die Metadaten der Spiele erzeugen, das wird ein Spaß…!


Als Bonus habe ich noch ein Launcherimage erstellt.

Teilen:

Das Kult-Advanture Spiel “Day of the Tentacle” ist für alte LucasArts-Advanture-Zockern ein Begriff. Gestern kam der inoffizielle Nachfolger “Return of the Tentacle” aus dem Hause Catmic Games. Dieses Spiel gibt es völlig kostenfrei für Windows, MacOS und Linux zum downloaden. Dazu benötigt auf Linux dazu den Client von itch.io, das registrieren, bzw. einloggen ist nicht notwendig.



Mit neuen modernem Design und der Steuerung wie beim Vorgänger mit Maus, kommen ausserdem alte bekannte und Gäste, mit viel Witz vor. Das Fan-Advanture, welches privat geschrieben und vertrieben wurde, ist sehr gelungen und kann sich sehen lassen. Hoffentlich wird die Story fortgesetzt und es kommen baldige Updates. 😉

Teilen:

So richtig mochte ich diese Startbilder von Gimp noch nie richtig, was mich dazu brachte ein eigenes zu erstellen. Nach vielen herum probieren wurde nun aus purer “Langeweile” ein fertiges Bild. Da ich schon seit längeren mit einer Linux Distribution, sind die Werte des Fensters, welches die Anzeige für die zu ladenen Plugins und Scripte, sowie Arbeitsdaten und Werkzeuge, etwas anders als unter Windows. Dieses kann sich aber jeder je nach System selbst anpassen.


Das Originale Gimp 2.10 Splashscreen

Die Verzeichnisse für das gimp-splashscreen

Windows : C:\Programme\GIMP 2\share\gimp\2.0\images
Linux       : /usr/share/gimp/2.0/images/
Datei       : gimp-splash.png

Wie groß das Bild werden soll entscheidet jeder für sich, es darf nur nicht zu klein aber nicht größer als 1920×1080 Pixel sein.
Vor dem kopieren der eigenen “gimp-splash.png” sollte die Originale Datei umbenannt werden. Hierfür eigenet sich ganz gut “gimp-splash.png.ORIG”

Viel Spass beim austauschen 😉

Teilen:



Monkey Island 4 ist nicht für die ScummVM geeignet, das haben die Entwickler auf deren Website ganz unter Kompatiblität zu stehen. Jedoch auf dem Schwester Projekt ResidualVM, welches nach einen ähnlichen Prinzip wie ScummVM funktioniert, ist es spielbar.



Scummvm und Residualvm sollten auf dem Raspberry Pi unter RetroPie installiert sein. Den Ordner “mi4” oder wie ihr ihn benannt habt, soll von dem ROM-Ordner residualvm in ROM-Ordner scummvm verschoben werden. Desweiteren soll bereits eine rvm Datei existieren, diese erhält man wenn man im ResidualVM Startmenü ein Spiel hinzufügt und anschließend beendet.

Also

1. Beide Emulatoren sollten installiert sein
2. MI4, die +Start Datei und dazugehörige rvm Datei nach scummvm ROM-Ordner verschieben
3. Abändern von es_systems.cfg (.rvm .RVM muss bei scummvm in extension hinzugefügt werden und bei residualvm entfernt werden – sonst taucht das unter residualvm in der Emualtionstation immer wieder auf!)
4. Die Befehlskette aus /opt/retropie/configs/residualvm/emulators.cfg von Emulator residualvm-software muss mit in die scummvm/emulators.cfg (über default).
5. Pfad des Emulators residualvm-software muss geändert werden. (…/roms/scummvm/+Start\ ResidualVM.sh software %BASENAME%”)
6. Beim ersten Start des Spiels muss der Emulator für das ROM geändert werden. Beim starten erscheint ein Dialogfenster, A drücken zum konfigurieren. und ändern der 2 Option zu residual-software durchführen.

das wars 😉

Teilen:

Hascheevos ist ein Tool mit dem man Spiele-ROMs überprüfen kann, ob diese für RetroAchievements geeignet sind. Im Klartext, dieses Script Überprüft die ROMs auf den richtigen MD5 Hash. Hascheevos läuft nicht unter RecalBox/Batocera.

Zur Installation des Tools wird eine SSH-Verbindung (unter Windows mit PuTTY) benötigt. Als erstes werden fehlende benötigte Pakete installiert:

sudo apt-get install jq unzip gzip p7zip-full curl

Als zweiten Schritt wird der Spiecherort des Scriptes bestimmt, hier als Beispiel ein versteckter Ordner im HOME-Verzeichnis des RPi-Benutzers.

cd && mkdir -p .scripte
cd .scripte

Im dritten Schritt wird die Quelle geklont

git clone --depth 1 https://github.com/meleu/hascheevos
cd hascheevos

Der vierte Schritt kompiliert die den “cheevos hash calculator”

make

Als letzten Schritt wird der Pfad zum Script festgelegt

cd
nano .bashrc
##in der letzten Zeile folgendes hinzufügen
export PATH="$PATH:~/.scripte/hascheevos/bin"

STRG+X zum Beenden, bei engl Tastaturlayout Z (deutsches Tasataturlayout dann mit Y oder gar J) zum bestätigen und ENTER bei der Dateiauswahl.

nur noch aktualisieren mit source .bashrc und es kann los gehen.

Ein Bild das zeigt welches ROM in Ordnung für Retroarchievements.org ist. Das erste geprüfte ROM hat den Wert “has no cheevos” und ist damit ungeeignet und wird nicht auf Retroarchievements.org registriert, bzw. gewertet (keine Punktzählung). Das zweite ROM im Bild jedoch kann mit “HAS CHEEVOS” die besten Voraussetzung und deine Spielergebnisse werden damit auf Retroarchievements.org gewerten. Alle mit der Bezeichnung “has no cheevos” sollte daher ausgetauscht werden.

Die Überprüfung der ROMs kann direkt vom Homeverzteichnis (/home/pi) durchgeführt werden, hier als Beipsiel das SNES System.

hascheevos.sh -s snes

Möchte man die Ausgabe in einer Datei schreiben, so tipt man

hascheevos.sh --system snes 2>&1 | tee snes_cheevos.txt

ein. Die Datei “snes_cheevos.txt” befindet sich dann direkt im HOME-Verzeichnis des Benutzers “pi”.

pi@retropie:~ $ ls
backup RetroPie-Setup RetroPie scripte snes_cheevos.txt tools
pi@retropie:~ $

Teilen: