14rtaylor
Posts: 2
Joined: Sat Dec 15, 2018 7:30 pm

Need help with an os for a game console

Sat Dec 15, 2018 7:34 pm

Looking to make a custom games console using a raspberry pi. It needs to run .exe files and be able to use 4 wireless controllers at the same time. This I am fairly certain can be done on a raspberry pi but the os is the hard thing I am finding. I want to use it at parties and when I go out so dont want to have to use a keyboard and mouse to navigate the linux os and also want it to be user friendly (like the playstation menus) so that if I leave it plugged into a tv at a party, people could navigate the menus intuitively. I need to know if either there is an os that already does this, if there is a tool that will help me create an os like this or what I need to do to programme something like this from scratch

LdB
Posts: 1585
Joined: Wed Dec 07, 2016 2:29 pm

Re: Need help with an os for a game console

Sat Dec 15, 2018 10:44 pm

Why remake the O/S just use linux

I assume you are trying to do something along the lines of Lakka, RetroPie or recalcbox

Writing an O/S is a many many man hour job and requires a high degree of technical knowledge.

User avatar
Imperf3kt
Posts: 3674
Joined: Tue Jun 20, 2017 12:16 am
Location: Australia

Re: Need help with an os for a game console

Sat Dec 15, 2018 11:55 pm

14rtaylor wrote:
Sat Dec 15, 2018 7:34 pm
Looking to make a custom games console using a raspberry pi. It needs to run .exe files and be able to use 4 wireless controllers at the same time. This I am fairly certain can be done on a raspberry pi but the os is the hard thing I am finding.
.exe files are a Windows extension, and will not run on a Pi no matter what operating system you use or make because they're designed for x86 CPUs but a Pi has an ARM CPU
55:55:44:44:4C
52:4C:52:42:41

User avatar
DavidS
Posts: 4334
Joined: Thu Dec 15, 2011 6:39 am
Location: USA
Contact: Website

Re: Need help with an os for a game console

Sun Dec 16, 2018 1:56 am

What do you mean by EXE Files?

If you are talking about DOS/Windows/OS/2 format executable formats, than you are in the wrong train of thought. If you are using the slang of binary executable code on any platform, then I do not understand why be specific (as all OS's have that).

Is there a specific reason you want to write your own OS? If so there are a lot of good resources to learn from. Start with all of the stuff in the baremetal resources sticky thread in this (bare metal) sub-forum. Learning to code bare metal is a rewarding task, at one time it was common place and I am glad it is beginning to come back. Fair warning though if you are new to baremetal coding it is a long and twisting road ahead.

If you just need a game consol OS that can be controlled completely from Joystick, then you have many Linux variants, a few BSD varients, and a couple dozen custom OS's that are already there for the RPi.
RPi = The best ARM based RISC OS computer around
More than 95% of posts made from RISC OS on RPi 1B/1B+ computers. Most of the rest from RISC OS on RPi 2B/3B/3B+ computers

User avatar
Gavinmc42
Posts: 4534
Joined: Wed Aug 28, 2013 3:31 am

Re: Need help with an os for a game console

Sun Dec 16, 2018 3:07 am

https://eltechs.com/product/exagear-desktop/
With a simple GUI like Kodi?
Steam on Pi?
I'm dancing on Rainbows.
Raspberries are not Apples or Oranges

bzt
Posts: 563
Joined: Sat Oct 14, 2017 9:57 pm

Re: Need help with an os for a game console

Sun Dec 16, 2018 12:20 pm

Imperf3kt wrote:
Sat Dec 15, 2018 11:55 pm
.exe files are a Windows extension, and will not run on a Pi no matter what operating system you use or make because they're designed for x86 CPUs but a Pi has an ARM CPU
This is not entirely true (although you're right in the most common case).
If .exe is a Windows extension (not DOS), that means it has a Portable Executable header, which can hold an ARM code.

To the OP, I'm not sure you realize how big task that is. Take for example ReactOS, they are writing an OS to execute windows binaries for about 10 years now, and they haven't finished yet.

You could use Linux, as it can load and execute .exe files if you load the appropriate kernel module. LJ article and some doc. It is important that knowing how the executable can be loaded is not enough, not by far. You have to provide the libraries and system calls too that the code expects. There are two pretty cool projects available on Linux that does just that, check out:
dosbox - executing .exe files in DOS environment (so far all retro games I've tried was working)
wine - executing .exe files in Windows environment

Finally, if your executable file contains machine code for a different architecture, then you must load it through an emulator, there's no other way. Like Imperf3kt said, .exe files are most likely for x86. In this case your best bet will be qemu.

If you are not interested in the details, you just want to play on your Pi, check out this Linux distro:
http://www.retrorangepi.org/
http://piboards.com/2017/01/31/review-r ... ngepi-3-0/
It has a nice menu which can be navigated using game controllers, and dosbox, scummvm and others are already installed and configured on it for you. THB I haven't tried this on Raspberry Pi, but I see no reason why it shouldn't work. You have to give it a try to see if it really works.

Cheers,
bzt

Return to “Bare metal, Assembly language”