Box86 and Wine on RPi4
-
@russellb That's awesome. The escape key problem on Space Cadet pinball always bothered me. I'm going to have to try this!
- George
-
@george said in Box86 and Wine on RPi4:
@russellb That's awesome. The escape key problem on Space Cadet pinball always bothered me. I'm going to have to try this!
- George
Let me know if you want the files to try this out.
-
So I tryed to use your scripts in combo with lutris installed on pi 4 .
Could work take some time to make lutris act right. It's acts funky sometimes .
The .sh would be simpler to code rough example
Bin bash
Cd "/home/pi/...."
Startx &
Qjoypad "blah"
Lutris lutris game id 3I feel a few things to note/consider
-lutris complied mesa and vulkan itself and your scripts still worked fine.
-lutris can "install" games with a working directory so might be able to remove cd line all together that way .
-lutris has joystick configuration already . Haven't tested it yet . But might be able to remove qjoypad altogether with it .
-metadata for most games is fetched from lutris.net and could be transferred to es in theory .
-lutris takes space on sd with Metadata etc .
-lutris update could cause problems or solutions -
To get xbindkeys working:
- sudo apt-get install xbindkeys
- sudo apt-get install xbindkeys-config
- Modify 'Wine Desktop.sh':
. . . xbindkeys -f ~/.xbindkeysrc & setarch linux32 -L /opt/retropie/emulators/wine/bin/wine "${PROGRAM}" "${OPTIONS}" . . .
- Create ~/.xbindkeysrc:
"/opt/retropie/emulators/wine/bin/wineserver -k" m:0x0 + c:115 End
- Modify the qjoypad layout file you want and assign 115 to the button you want to exit Wine:
Button X: Key 115
Where "X" is the number of the button assigned.
- Run any Wine game and hit the button you assigned in step 5.
- Profit!
-
I noticed the mesa folder generated from the script is almost 2GB in size. The lion's share in:
/opt/retropie/suppementary/mesa/lib/dri/
There are 23 .so files about 85MB a piece. For the RPi4. Wondering if any of these files are being used. I'd like to reduce the storage footprint by nuking any unnecessary files.
Best!
-
@roslof
I can't say if they are need that is rather large though .
Will try and look into it next time I test stuff out .
I assume the pi needs em that's why they are thier but can't conform or denie. -
@russellb said in Box86 and Wine on RPi4:
To get xbindkeys working:
- sudo apt-get install xbindkeys
- sudo apt-get install xbindkeys-config
- Modify 'Wine Desktop.sh':
. . . xbindkeys -f ~/.xbindkeysrc & setarch linux32 -L /opt/retropie/emulators/wine/bin/wine "${PROGRAM}" "${OPTIONS}" . . .
- Create ~/.xbindkeysrc:
"/opt/retropie/emulators/wine/bin/wineserver -k" m:0x0 + c:115 End
- Modify the qjoypad layout file you want and assign 115 to the button you want to exit Wine:
Button X: Key 115
Where "X" is the number of the button assigned.
- Run any Wine game and hit the button you assigned in step 5.
- Profit!
So I ran into a problem with this approach. Shutting down the Wine Server prevented Pinball from saving its high scores. It apparently updates them upon normal close of the main window. So I changes to command in .xbindkeysrc to this:
"xdotool key --window $(xdotool search --name '3D Pinball for Windows - Space Cadet') 'ALT+F4' &" m:0x0 + c:115 End
This shuts Pinball down gracefully and allows it to save high scores.
xdotool needs to be installed (sudo apt-get install xdotool) but once it is it now completes the ability to send key combinations from a controller to a Wine-based game:
qjoypad->xbindkeys->xdotool
- Gamepad Button converts to single keyboard character using qjoypad
- xbindkeys converts single keyboard character into a script that can be executed using xdotool
- xdotool sends the key combination to the actively selected window
This approach does require a different .xbindkeysrc file per game if you want to use the same keyboard character.
I'll probably modify "Wine Desktop" to pick different .xbindkeysrc files as I mentioned above with qjoypad.
This was gonna keep me up at night.. it did last night. Whoo hoo!
Just fixed the 'Exiting' issue from SkiFree as well.
-
So I haven't been on my pi4 in quite sometime but apparently this emulator that's a modification of visualboyadvance supports local multiplayer and is a 32bit Linux version. It'd be quite cool to see if it works with box86
https://linux.softpedia.com/get/System/Emulators/VisualBoyAdvance-Link-103308.shtml
-
@retropieuser555
Why do you need box86 for a Linux app. Wine and box86 are for exe and windows files .
You can launch that linux game with a script from emulation station -
Softpedia redirects to https://github.com/Jacques-Olivier/VisualBoyAdvance_Link, but that link is down.
So if you want this you have to search for the source code somewhere else.
-
@troopaking well I haven't tested it yet but the app isn't for arm, it's a 32bit program. Which is what box86 is solving, allowing you to run 32bit programs on an arm build.
@folly ah bummer, I hadn't tried to download it yet but yeah I'll have a hunt around as I imagine it might be floating around the web somewhere, I'll take a look later on or at the weekend
-
Hi,
so now it happend. I couldn't resist: I opened Pandora's Box and installed Bow86/Wine.There are some Windows games that complement my Dosbox installation perfectly, which are:
- Fallout 1 & 2
- Diablo 2
- Privateer 2
*Dungeon Keeper 2 and - Probably some Civ (3?) or HoMM (3?).
So far I tried the first five, to some success. I've read through the whole thread to get up to date, but I might have overlooked something. What I'm struggeling with are segementation faults. I'm using the
.sh
approach.For debugging purposes I'm starting the scripts for the games from the ports romdir through the shell. Usually this ends in a segmentation fault. But if I try again, it usually works after the second or third attempt. Has anyone noticed some similar behaviour? I haven't played the games for long - just enough so that I know sound and input works - so I can't comment on the overall stability.
Now I'd like to ask on some game specific things:
- Fallout 1 & 2: I have installed the Fallout Fixt mod for Fallout 1 and the Restoration Project for Fallout 2 to be able to play in fullscreen. That seems to work, but there are some color errors in some still images and the FMVs. They go away if I select DirectX 7 in the Fallout configs, but then gameplay is sluggish. Do I need to Install any Direct X runtimes, or is that all included in Wine?
- Diablo 2: I have Patch 1.12 with the resolution mod installed. That seems to work pretty well out ouf the box.
- Dungeon Keeper 2 is very picky. My GOG verion has some patched exe for better (?) DirectX support, but so far, I had not much luck starting it. The one time I did, the graphis where somewhat corrupted. Maybe I have to play around the different Windows versions?
- Privateer 2 with an enhancement fan patch . The game starts, but I have no joystick support. I haven't looked into that so far. Do I need any drivers maybe?
That's it so far from my side. Thanks for hearing me!
-
@ecto
Hello for directx issues I have found best is to get a old install exe of desired directx and install in wine desktop.For controller issues I use qjoypad and xdotool that me and Russellb use .
-
Hey all im trying to get hunter hunted , but with no luck . one of my favorite
strikethrough textgames
@ecto
Dungeon Keeper 2
it did run for me , but its really SLOW with the main menu start, even the mouse really leg to move... :
Diablo 2
dosent really work right for me , only if i skip the movies in the start if not it get stuck ,
and when i pick my character it go nuts a bit... -
@roslof said in Box86 and Wine on RPi4:
I noticed the mesa folder generated from the script is almost 2GB in size. The lion's share in:
/opt/retropie/supplementary/mesa/lib/dri/You probably want to check the installation. All the files in that directory are supposed to be hard links to a single file, so they should not take any more space than a single 87mb file. If you were to copy them from one installation to another, or even FTP them from somewhere, that might turn those hard links into individual files.
- George
-
@george
Hello so I'm trying to assist someone in install and having issues .
Most where sd card issues . Fixed them .
Now we are having issue where github asking for username and password -
@troopaking said in Box86 and Wine on RPi4:
Now we are having issue where github asking for username and password
That's odd. Is that when trying to clone my repo? Perhaps there's a typo? I just checked and it still looks like a public repo.
I just helped someone on the Box86 Discord server get MUGEN running, using your instructions. Nice!
I've been testing out some MUGEN games also. Things seem to work fine, but the sound is choppy with high latency. Have you experienced that?
- George
-
After spending a considerable amount of time, I wanted to share some insights I gathered for running games with box86/wine:
Almost all games I tried are copied over directories from my windows pc, where I installed the (GOG) games in a first step.
-
Fallout 1 & 2 were the most finicky games of the lot. I installed the Restauration Project for FO2 and Fallout et tu for Fallout 1 as mods. On the Pi, the launch of wine needed
WINEDLLOVERRIDE=ddraw.dll=n
to activate the mod. I also had to change some settings inf2_res.ini
for the screen layout, inddraw.ini
the settingsingleCore=0
andOverrideArtCacheSize=0
and infallout2.cfg
I changedart_cache_size=100
. With these settings, Fallout 1 and 2 started and ran nicely in 1920x1080 fullscreen. -
Pro Pinball Series these are quite interesting. At first it looked like that they ran right out of the box, (except for Timeshock!, more to that later). But as I played (in 1280x1024 no less!) the ball movement was erratic, especially around the area of the flippers... So a hunch told me to try the setting
BOX86_DYNAREC=0
in the start script. And alas! the ball moved as expected. Although everything was a lot slower, it worked and looked nice. Maybe some graphic settings need to be lowered, but it seems that this is the ultimate way to play Pro Pinball on the pi4 (I tried them all!). Timeshock! needs some more love, as there is a dll that needs to be inofficially updated so that the (cd) audio track can be heard (the GOG forums are of help here). Otherwise it's perfectly playable without the music. -
Dungeon Keeper 2 this one is also quite interesting. If you want to use DX9, you need to run the (GOG-patched) DKII-DX.EXE. But the menu is vvveeeerrrryyyy slow. The registry of wine ($WINEPREFIX/user.reg) has to be edited (probably easier from within wine -->
regedit
) and a key value has to be entered:HKCU/Software/Wine/Direct3D/csmt=0
. See here, and here. With that Dungeon Keeper is at least startable. I don't know, but I thinkCSMT
should be enabled for all the other games, so maybe the value has to be changed dynamically when starting Dungeon Keeper? Then there is another problem: When you start your dungeon, the creatures behave erratic, andBOX86_DYNAREC=0
has to be set again for normal play, which then is a lot slower... -
Shivers 2 works well, but I think the
WINDOWS.RES
file has to be edited with the patch to the game dir. -
Legacy of Kain: Soul Reaver 2 does not want to start, there seems to be an unknown Opcode...
-
Sanitarium is a nice point and click adventure, but so far I have not gotten it to work. There is an Error (
MapViewOfFile for file 'RES.104' failed ErrorCode=8
, but the game works on my Windows pc without that file, so idk. In some forum there is talk about that, but their solution is a specific version of wine... I have to get this one to work!! ;) EDIT I got Sanitarium to work, by replacing the three filesRES.104
,RES.204
andRES.304
from the install CDs. The GOG versions of those files are quite a lot larger, so I don't know, why they did with them and what other problems might arise by replacing them...
So all in all everything is quite good. I wish I hade more space on my SD Card ;)
I'm thinking about making a Issue on Github for Box86 concerning the dynarec and the missing opcode, but I'd like to wait for your input first...
-
-
@george I copied from your post in this forum directly. I feel the main issue might be hes ssh in the pi not on it.
Was gonna use the github but it doesn't have the emu at the end.
I'm trying on fresh retropie right now . Worked fine.
He was asked for username etc. Made a github entered it said error couldn't resolve host .Also a few other things I've encountered/figured out.
-I would open pixel desktop download scripts. Then in terminal run emulationstation, then retropie-setup.
The reason is I don't get the mono and gecko installer pop up unless on desktop-I always use .sh not .conf with mugens .
With mugen I've been able to shorten .ah a lot . I haven't tested with harder games . Works with mugen, skifree, and spooky castle .
I also use it that way all mugens can use qjoypad layout mugen .
With other games I use conf with Russells wine desktop in my github . With his changes it auto looks for a qjoyoad layout with same name as game folder .Heres my .sh for "mugen1"
#!/bin/bash
cd "/home/pi/RetroPie/roms/mugen/games/mugen1/"
qjoyoad "mugen" &
WINDEBUG........... -
@ecto
Thanks for all that insight and work .I have found any game that you have to install . I woukd do what you said, install on pc then transfer the game files and folders over .
Unfortunately I don't have a windows pc lol.So I have to install in wine and works fine to a extent . Worked for baldurs gate, battlefront 2, and half life.
I'd say itd depend on what yourgame needs to run . Battlefront for example setup up directx and something else when installing it .
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.