Box86 - Linux Userspace x86 Emulator

Post Reply
User avatar
ptitSeb
Posts: 64
Joined: Tue Jan 26, 2016 7:28 pm
languages_spoken: english, french
Contact:

Box86 - Linux Userspace x86 Emulator

Unread post by ptitSeb » Mon Mar 04, 2019 4:42 pm

Box86 is a Linux Userspace x86 Emulator with a twist: unlike other solution, this one doesn't need a full chroot environnement to works.

The software is very young, so it's still full of bugs and incomplete (or missing) features.
What you do with for now:
  • Launch a few Linux games (including Airline Tycoon Deluxe, Undertale, Not-A-Hero, Risk of Rain, HumandRessourcesMachine, WorldOfGoo,...)
  • Launch some other stuffs (like Pico8...)
  • Develop you patience
The current version is already able to correctly load most linux files, including de dependant libraries. Some will be "wrapped" and the native ARM version used (for libs like libc, libm, SDL, X11, etc...). Librairies that are C++ (like libstdc++) are not wrapped and need to be the i386 version.

Note that Box86 is a 32bits apps exclusivelly. Because there is a direct mapping between ARM World and x86 World, both "sides" needs to be equivalent: so 32 bits (and little endian) only.

What the current version doesn't implement is: a debug, and a JIT.

https://youtu.be/bLt0hMoFDLk
A video of Airline Tycoon Deluxe on the Pandora

The Lack of JIT makes some games too slow to be playable for now, but because some ODroid have some serious horsepower (like the XU4), the situation is better with some games already playable.

https://youtu.be/8hr71S029Hg

Bit.Trip.Runner on the ODroid XU4

https://youtu.be/B4YN37z3-ws

Neverwinter Night running on the ODroid XU4

Box86 is opensource, so contributions are welcome!

The home of box86 is here: https://github.com/ptitSeb/box86

For now, you need to build it yourself.
Last edited by ptitSeb on Sun Mar 10, 2019 6:20 am, edited 2 times in total.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by meveric » Mon Mar 04, 2019 4:59 pm

I can confirm that Airline Tycoon Deluxe works perfectly fine with this on ODROIDs as well.
FTL (Faster Than Light) Advanced works as well, but has some sound and speed issues, still already spend quite some hours playing it on the ODROID.
Some other games such as Eschalon Books series work as well.

The last two require OpenGL which is the main reason why they don't work under ExaGear, but thanks to the OpenGL wrapper from @ptitSeb they work under Box86.
But as @ptitSeb said, you have to learn to be patience as some games take "forever" to load. (FTL requires about 5mins to load to the main menu, after that it doesn't need much loading).
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

salvalie
Posts: 8
Joined: Sat Feb 16, 2019 1:59 am
languages_spoken: english
ODROIDs: anyone yet
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by salvalie » Thu Mar 07, 2019 12:40 pm

Well done petit. Once again! Maybe with panfrost growing up faster than expected we could use full opengl support on xu4 and n2... Just a thought

User avatar
ptitSeb
Posts: 64
Joined: Tue Jan 26, 2016 7:28 pm
languages_spoken: english, french
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by ptitSeb » Sat Mar 09, 2019 2:54 am

Just a quick note: using latest sources of Box86, you can play Neverwinter Night.
I used the windows "Diamond" edition, from GoG, and used tha Play.It packager (here: https://wiki.dotslashplay.it/en/games/n ... ter-nights) to create a .deb (2 actually) that I extracted by hand (for example

Code: Select all

ar x /PATH/TO/neverwinter-nights-data-fr_1.68-gog2.1.0.21+20180904.1_all.deb
for my french version) and moved the files a bit to get data and binary in a conveniant folder. When launching, you need to use

Code: Select all

BOX86_LD_LIBRARY_PATH=lib:miles
and it works, and the speed seems correct (on an XU4 at least), at the default 800x600. I haven't tried much, but it works.

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by meveric » Sat Mar 09, 2019 5:23 am

That's amazing news!
I've already downloaded all the components and definitely gonna try it!
OpenGL Goodness on ODROIDs! :D

Edit:
Tested NWN and was running it in 720p which it was running quite nicely.
It's really nice to see this game on the ODROID. So much fun back then (and now).
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

User avatar
ptitSeb
Posts: 64
Joined: Tue Jan 26, 2016 7:28 pm
languages_spoken: english, french
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by ptitSeb » Sun Mar 10, 2019 6:20 am

Added a short video on Neverwinter Night running on my XU4 on first post :)

User avatar
ptitSeb
Posts: 64
Joined: Tue Jan 26, 2016 7:28 pm
languages_spoken: english, french
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by ptitSeb » Fri Mar 15, 2019 1:32 am


User avatar
mad_ady
Posts: 5398
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1, H2, N2
Location: Bucharest, Romania
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by mad_ady » Fri Mar 15, 2019 3:16 am

That was a very interesting article, it would look good in Odroid Magazine as well :)

Quick question about running Box86 on arm64 systems: do you foresee many problems?
I'm guessing x86_64 games are rare anyway, so 32bit intel support is more important.
Also - with such an interesting project, don't you find playing the games boring? :D

User avatar
meveric
Posts: 9761
Joined: Mon Feb 25, 2013 2:41 pm
languages_spoken: german, english
ODROIDs: X2, U2, U3, XU-Lite, XU3, XU3-Lite, C1, XU4, C2, C1+, XU4Q, HC1, N1, Go
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by meveric » Fri Mar 15, 2019 4:05 am

mad_ady wrote:
Fri Mar 15, 2019 3:16 am
Also - with such an interesting project, don't you find playing the games boring? :D
I kinda have the same issue. I'm constantly porting, compiling, writing magazine articles, testing, try to find new software, maintain my repositories and images (and also help @ptitSeb with testing his programs and drivers).
And while it's really fun to get all this stuff done, it really shortens the time that you have to actually enjoy the games that you bring forth.
There are plenty of games I really enjoyed playing in the past and seeing them come to life on the ODROID (and often being the one making this happen) makes me want to dive right into these games again or sometimes for the first time.
But there's always the next project around the corner and time is way to short to get everything done.
So the answer to your question is more likely that it's not boring to play these games, but you often simply do not have the time to dive into these games, cause the next project is already waiting, and you always strive to improve what you already have.
Donate to support my work on the ODROID GameStation Turbo Image for U2/U3 XU3/XU4 X2 X C1 as well as many other releases.
Check out the Games and Emulators section to find some of my work or check the files in my repository to find the software i build for ODROIDs.
If you want to add my repository to your image read my HOWTO integrate my repo into your image.

User avatar
ptitSeb
Posts: 64
Joined: Tue Jan 26, 2016 7:28 pm
languages_spoken: english, french
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by ptitSeb » Fri Mar 15, 2019 4:46 am

@mad_ady : a 64bits version on box86 would be a major rewrite. Function call convention is different (so most wrapper stuff have to be adapted / rewrote) and mainly, the x86_64 emulator is a really different beast than x86. x86 isn't easy, but x86_64 have so many options in the opcode! So not for now!

About Odroid magazine, I'll probably write something about box86, but something different, I don't like recycling ;)

And games, yeah, basically what @meveric said: I don't have much time left to play (but you can also see it the other way: developping all this stuff is more fun than playing the games themselves).

User avatar
mad_ady
Posts: 5398
Joined: Wed Jul 15, 2015 5:00 pm
languages_spoken: english
ODROIDs: XU4, C1+, C2, N1, H2, N2
Location: Bucharest, Romania
Contact:

Re: Box86 - Linux Userspace x86 Emulator

Unread post by mad_ady » Fri Mar 15, 2019 2:30 pm

developping all this stuff is more fun than playing the games themselves
That's what I thought :D

Post Reply

Return to “Games and Emulators”

Who is online

Users browsing this forum: No registered users and 1 guest