Closed Jj0YzL5nvJ closed 3 years ago
I'm glad mupen64plus issues is being acknowledged but to be honest I don't really see any point in using a N64 emulator that is so annoyingly complex to use.
Going back to m64p again which used to be a neat mupen64plus frontend which just worked out of the box is just a shore to use today.
First you have to hunt down older builds of m64p which still supports cxd4 and angrylion-plus, then you have to make unstable Frankenstein builds with newer versions of the plugins and just hope to god it will work.
I can't even get angrylion-plus r8-35 working on it, while r8-12 does.
I'm happy with Project64 for the games I play, recently started playing through Paper Mario again and things just work great. Angrylion-Plus r8-35, Azimer Audio WIP9 and the official N-Rage input plugin along with cxd4 or latest included Project64 RSP is basically all you need.
Paper Mario also runs fullspeed with the highest accuracy settings in angrylion for me so there is literally no issues at all.
As long as the situation with mupen64plus is what it is there's again no point in using it and m64p will never be the same again.
It should be easy and fun setting up and using an emulator, mupen64plus just fails in that department while Project64 makes it a breeze.
Well, from a CLI user's perspective, I find mupen64plus annoyingly simplistic, unnecessarily self-explanatory, and painfully redundant. Example: https://imgur.com/a/NpXxWh7
TOO MUCH SYNTAX!! Even without my GALLIUM_HUD it's too much syntax for what it does:
rm -f /tmp/mupen64plus.cfg
mupen64plus --corelib $HOME/m64p/test/libmupen64plus.so.2.0.0 --plugindir $HOME/m64p/test --datadir $HOME/m64p/test --configdir /tmp --gfx mupen64plus-video-angrylion-plus.so --audio mupen64plus-audio-sdl2.so --rsp mupen64plus-rsp-z64.so --input mupen64plus-input-sdl.so --emumode 0 "/tmp/DOOMSHAREWARE.Z64"
mupen64plus --corelib $HOME/m64p/test/libmupen64plus.so.2.0.0 --plugindir $HOME/m64p/test --datadir $HOME/m64p/test --configdir /tmp --rsp mupen64plus-rsp-cxd4-sse2.so --set Input-SDL-Control1[mode]=0 --set Input-SDL-Control1[mouse]=True --set Input-SDL-Control1[Z\ Trig]="key(122) mouse(1)" --set Input-SDL-Control1[B\ Button]="key(306) mouse(2)" --set Input-SDL-Control1[R\ Trig]="key(99) mouse(3)" --set Video-Angrylion-Plus[Parallel]=True --set Video-Angrylion-Plus[NumWorkers]=4 --set Video-Angrylion-Plus[ViMode]=1 --set Video-Angrylion-Plus[DpCompat]=2 --windowed --resolution 720x540 --emumode 1 "/tmp/Turok 2 (U).z64"
mupen64plus --corelib $HOME/m64p/test/libmupen64plus_new.so.2.0.0 --plugindir $HOME/m64p/test --datadir $HOME/m64p/test --configdir /tmp --audio mupen64plus-audio-sdl.so --set Video-Angrylion-Plus[Parallel]=False --set Video-Angrylion-Plus[NumWorkers]=1 --set Video-Angrylion-Plus[ViMode]=0 --set Video-Angrylion-Plus[DpCompat]=1 --windowed --resolution 800x600 "/tmp/Goldfinger.z64"
mupen64plus --corelib $HOME/m64p/test/libmupen64plus.so.2.0.0 --plugindir $HOME/m64p/test --datadir $HOME/m64p/test --configdir /tmp --rsp mupen64plus-rsp-parallel.so --set Input-SDL-Control1[plugged]=False --set Input-SDL-Control1[mouse]=False --set Video-Angrylion-Plus[Parallel]=True --set Video-Angrylion-Plus[NumWorkers]=0 --set Video-Angrylion-Plus[DpCompat]=0 --windowed --resolution 1280x960 --emumode 2 "/tmp/Zelda - Majora's Mask (U).z64"
mupen64plus --corelib $HOME/m64p/test/libmupen64plus_new.so.2.0.0 --plugindir $HOME/m64p/test --datadir $HOME/m64p/test --configdir /tmp --audio mupen64plus-audio-sdl2.so --set Input-SDL-Control1[mode]=2 --set Video-Angrylion-Plus[ViMode]=1 --fullscreen --resolution 1920x1080 "/tmp/Space Station Silicon Valley (U).z64"
For me, a syntax like this makes more sense:
rm -f /tmp/mupen64plus.cfg
mupen64plus --portable --confdir=/tmp --vo=angrylion-plus --ao=sdl2 --rsp=z64 --in=sdl --mode=0 "/tmp/DOOMSHAREWARE.Z64"
mupen64plus --portable --confdir=/tmp --rsp=cxd4-sse2 --set=Input-SDL-Control1[mode]=0:[mouse]=True:[Z Trig]="key(122) mouse(1)":[B Button]="key(306) mouse(2)":[R Trig]="key(99) mouse(3)" --set=Video-Angrylion-Plus[Parallel]=True:[NumWorkers]=4:[ViMode]=1:[DpCompat]=2 --window --res=720x540 --mode=1 "/tmp/Turok 2 (U).z64"
mupen64plus --portable --core=libmupen64plus_new.so.2.0.0 --confdir=/tmp --ao=sdl --set=Video-Angrylion-Plus[Parallel]=False:[NumWorkers]=1:[ViMode]=0:[DpCompat]=1 --window --res=800x600 "/tmp/Goldfinger.z64"
mupen64plus --portable --confdir=/tmp --rsp=parallel --set=Input-SDL-Control1[plugged]=False:[mouse]=False --set=Video-Angrylion-Plus[Parallel]=True:[NumWorkers]=0:[DpCompat]=0 --window --res=1280x960 --mode=2 "/tmp/Zelda - Majora's Mask (U).z64"
mupen64plus --portable --core=libmupen64plus_new.so.2.0.0 --confdir=/tmp --ao=sdl2 --set=Input-SDL-Control1[mode]=2 --set=Video-Angrylion-Plus[ViMode]=1 --fs --res=1920x1080 "/tmp/Space Station Silicon Valley (U).z64"
If anyone sees mpv's influence on such syntax, it's not a coincidence. I think it's possible to emulate such syntax from a script... hmm... even better, emulate profiles per plugin.
@RokkumanX, can you test with angrylion-plus_m64p_test.7z?
If you extract that with my standalone build and drop a ROM over m64p_test.cmd
it's quicker.
m64p_test.sh
#!/bin/bash
# [Regression] Angrylion-Plus ignores "Video-General" settings of mupen64plus
# ata4/angrylion-rdp-plus#109
set -e
ORIG=`dirname $0`
for REV in _r8-30 _r8-31; do
echo ""
echo Testing ${REV:1}
rm -f "$HOME/.config/mupen64plus/mupen64plus.cfg"
mupen64plus --corelib $ORIG/libmupen64plus.so.2.0.0 --plugindir $ORIG --datadir $ORIG --gfx mupen64plus-video-angrylion-plus$REV.so --rsp mupen64plus-rsp-parallel.so "$@"
mupen64plus --corelib $ORIG/libmupen64plus.so.2.0.0 --plugindir $ORIG --datadir $ORIG --set Video-Angrylion-Plus[Parallel]=True --set Video-Angrylion-Plus[NumWorkers]=0 --set Video-Angrylion-Plus[ViMode]=1 --set Video-Angrylion-Plus[DpCompat]=2 --windowed --resolution 1152x864 "$@"
mupen64plus --corelib $ORIG/libmupen64plus.so.2.0.0 --plugindir $ORIG --datadir $ORIG --fullscreen --resolution 1920x1080 "$@"
read -s -n 1 -p "Press any key to continue . . ."
echo ""
done
Script to build test mupen64plus on Unix-like operating systems
I might check it out later, thanks for all your hard work.
This have nothing to do with you but right now I don't have energy or motivation to test it out, there have been a ton of things to do at work recently so I'm pretty low.
Seems like the problem got solved, I apologize for not being more helpful earlier.
Great work to all involved!
From
r8-31
(5033601b0449bef16f460bd52e5b2d72c6b06556) onwards angrylion-plus ignores window settings like width, height and fullscreen mode. The only way to make the plugin obey is by resizing the window manually. This regression is probably the true cause of the failures described in #106.r8-30-g576db8c
r8-31-g5033601
To get a standalone build for Windows