[Guide][DIY] Wine and Retropie - Legacy driver - Raspberry Pi 3B+
-
@thepigamer thank you so much. I got a bit busy this week but I will give this a shot. I'll let you know how it goes
-
@exarkuniv
WTG,
Here I confirm that the legacy driver blocks ARM-diablo2 from launching in RetroPie (I tried on my 3B+ so if there was some troubleshooting I could help you but it's a nogo :-( ).Diablo 2 mesa drivers don't start while trying to run it. So hopefully RetroPie team will release a fake-kms compliant RetroPie for older Pi's otherwise Pi 3B+ and older users will have to run Diablo 2 only from Raspbian/LXDE based distros.
There is still some way to go from having it starting from startx xterm to having a bash script which launches itself from ports section or from a custom section.
if xterm needs to be launched first (as in startx LD_LIBRARY_PATH.... wine libd2game_arm_sa.exe.so does not work) you will have to resort doing advanced scripting. this part of my guide may help you:
xterm -hold -e `cd /home/pi/RetroPie/roms/wine/installed/HOMM4_eng;WINEPREFIX=/home/pi/winex86 /home/pi/wine-pol/bin/wine ./heroes4.exe;killall xinit;exit` &
matchbox-window-manager
exitYou will have to replace the heroes 4 launching command by diablo 2 launching command.
If you need further help with that don't hesitate to answer or PM me.
-
@thepigamer still no sound,
i just realized that i did not mentioned how i installed it.
i used piKiss to install it all. and im on a Pi4so i know that changes it all up.
-
@exarkuniv
Im blind from now (D2+retropie doesn't work on Pi3b+)
I have 2 tracks to try to help you:- if you are using HDMI check hdmi_group and hdmi_drive in /boot/config.txt
- try to get Alsa to work in xterm :
Download a .wav sample file
Install Alsa (I think
sudo apt-get install alsa-utils
Not sure though)
Install pulseaudio (sudo apt-get install pulseaudio)
And try alsamixer command to check your sound is linked.
Then try playing your .wav file inside xterm
With paplay xxx.wav and aplay xxx.wav
If both work diablo2 will work too.
Pikiss shouldn't change anything, just make all easier.
-
@thepigamer ok ill give that a shot.
i did not think that Pikiss changed it, from looking at the script. -
@exarkuniv
Oh one last thing... that might sound stupid... but make sure sound is enabled in your arm wineprefix (sound can be tested with winecfg)... :-) -
@thepigamer i did see the audio tab when i was looking at the winecfg, i did try the test button. but all it did was make a little pop sound.
im thinking i have something else going on with my stuff
-
@exarkuniv
Pop sound means it works.
Which sound device shows winecfg? Alsa or pulse?
Does Diablo 2 output sound in Raspbian? it might be a problem with Diablo 2 itself. -
@thepigamer in Raspbian it works and sounds great, no issues with anything
and it says winalsa.drv for winecfg, and it is set for system defaults for all outputs
-
@exarkuniv
I would focus on getting aplay and paplay to work.That article hereafter tells you to set hdmi_drive=2 but I guess you already did it.
Tag "Sound does not work at all, or in some applications" could however help youhttps://raspberrypi.stackexchange.com/questions/44/why-is-my-audio-sound-output-not-working
Hope it can help. Ive also had problems when trying to install sound from scratch... it's not easy when its not base installed :-/
-
@thepigamer thanks for the info, and yes for now ill work on getting aplay and paplay to work.
-
@thepigamer at this point i have no idea. i think its something to deal with the file that is used to launch the game. i looked at the last thing you linked and going off of what that said, my sound is working fine.
maybe someone who i has more experentce on this or even got it working, but im lost.
time for me to move on to something else.
thanks for all your help
-
@exarkuniv
Hello,Maybe this can be a track for you:
https://bbs.archlinux.org/viewtopic.php?id=252174
This is an archlinux thread but such packages might exist as well in debian.Using winetricks might help you change from alsa to pulse or vice-versa in order to try it ahead.
For some reason box86 redirects sound quite well, no idea why arm-wine has so many problems with this.
That would indeed be cool to run D2 with wine-arm from RetroPie and get a full compatibility. -
@thepigamer thanks for that, i will have to take a look into it
for right now i just have raspbian with desktop installed and then retropie installed on top of that.
and i have it working good.i might use a new card and try messing around more with what you have given me to see if there is a different way
-
@exarkuniv
might be something like
sudo apt-get install -y alsa-lib alsa-plugins libasound2-plugins -
@thepigamer after some work i have come across what is causing the sound to stop working,
but so far no clue in a work aroundit seems when i do a OS update the sound is killed. if i leave the OS alone and only update the EMUs and ports i still have sound.
so i when and manuly updated the OS and what not.
i have found thatraspberrypi-kernel
is what kills the sound for diablo2
no sure what it is changing
if i have that alone i still have sound.so for now im leaving it
thanks for all your help on this -
@exarkuniv Pi 4 users usually don't have to recompile kernel. And in this case it's a bad thing.
I keep a copy of my ready-to-install 3G/1G kernel for my pi3 on my ext4 sd card so whenever something changes on my kernel, I just retype "kernel-install.sh" to revert to the old kernel.
That might be a good idea to try to recompile your kernel when you get some time and keep a compiled version handy. On Pi3 it takes a single night to compile... you might have it ready in one afternoon on Pi4.
https://www.raspberrypi.org/documentation/linux/kernel/building.md
I won't advise you to just install my Pi3B+ kernel because I don't know if it will start on your Pi4.
-
@thepigamer not sure if its recompiling it completely, i was just apt-get update and updating what comes up, thats how i found that
raspberrypi-kernel
is where the sound breaks.which is why when i do the update through the Retropie setup and let it update the OS and drivers that the sound stops.
since when im dont with my build its not going to be on the network, im not going to worry about it. since everything working just fine. i was more on a mission to find out what was causing the problem
-
Hello so I have been playing with box86 on twister just found you a George's posts .
Awesome work on both ends but I can't get either to open my games.
I tried your method yesterday got startx xterm to open but couldn't/didn't understand resize of xterm.
UPDATE i resized xterm windows fine .
But when i run box86 install script it gets hung up here.
cd box86;mkdir build;cd build; cmake .. -DRPI3=1;make;sudo make installI am now trying to install George's scripts in combination with yours .
-
@troopaking
Hello,First something is a little puzzling: If you are using Twister it probably means that RetroPie is installed as an app and not as a system. It means that normally xserver is already there and that at some point it could be compliant with KMS/OpenGL. You might meet a few problems with my guide since my guide (especially in the graphical tweaking part, tvservice, xrandr, startx... part) works for someone who installed RetroPie as a main system.
For example if you are starting RetroPie from Twister UI you will not have to do that startx/xterm/etc. contorsions. However if you are going to console with ctrl+<+F1 and ditch Twister UI you will be back to my guide. I still suggest that the interest is limited if you are already having Twister or RPD since it's usually easier to run Wine games directly from LXDE or XFCE. The main point of this guide is to use RetroPie as an OS and make a SD card out of it which will exclusively use RetroPie and avoid desktop environment to make a pure gaming machine.That said, on to your problem:
- If you want to know where it hangs, you may try to replace the inline ; by a return (next line). In our case:
cd box86
mkdir build
cd build
cmake .. -DRPI3=1
make
sudo make install
You will know which command hangs.
A friendly reminder: -DRPI3=1 specifies you are compiling ptitSeb's work for Raspberry Pi 3. If you have a Pi 4 you should use -DRPI4=1It also happens that
- "make" command crashes, just relaunch it
- "make" command freezes. It's often a problem with your swap file. You'll need to change it. Follow that guide (I didn't do a guide on swap file, there are plenty of them everywhere): https://www.bitpi.co/2015/02/11/how-to-change-raspberry-pis-swapfile-size-on-rasbian/
If you are having problems with compiling, George's guide will also fail because it compiles box86 at some point too. so you will have to check your swap file anyways.
Hope you'll get everything solved that way. If you have further questions, don't hesitate!
TPG
- If you want to know where it hangs, you may try to replace the inline ; by a return (next line). In our case:
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.