Author
Topic: Emulation on Linux (Read 1262 times)

Earlier this year I started using Linux, and it was a steep learning curve.

I managed to get PCSX2, Gens, and Higan to work. The Linux version of ePSXe is a nonfunctional hot fucking mess, but fortunately the Windows version of ePSXe is WINE compatible.

I haven't been gaming (or ROM hacking) much because of my IRL job and stuff, so I haven't had much time to tinker with this.

Now I'm trying to get an N64 emulator to work, and it's quite a throbbing headache. Project64 is Windows only, and not WINE compatible. Mupen64Plus uses a command line interface, and it's front end M64Py doesn't even fucking work.

I've heard of this thing called "RetroArch". I installed it once upon a time, couldn't get it to work, and tried to remove it but traces of it still remain for some reason.

There's got to be a solution to emulation gaming on Linux that doesn't involve a wall of text of command lines.

Linux users, what is the easiest way to emulate on Linux?

« Last Edit: October 23, 2018, 01:35:58 am by danke »

Logged

Pen PenTobleroneVomitPooh Cancer is waifu of the year. Fucking Internet....

Goblin Slayer is a heartwarming tale of magical teenage adventurers overcoming adversity with the power of friendship and believing in oneself. Wholesome family entertainment! Watch it now!

Earlier this year I started using Linux, and it was a steep learning curve.

I managed to get PCSX2, Gens, and Higan to work. The Linux version of ePSXe is a nonfunctional hot fucking mess, but fortunately the Windows version of ePSXe is WINE compatible.

I haven't been gaming (or ROM hacking) much because of my IRL job and stuff, so I haven't had much time to tinker with this.

Now I'm trying to get an N64 emulator to work, and it's quite a throbbing headache. Project64 is Windows only, and not WINE compatible. Mupen64Plus uses a command line interface, and it's front end M64Py doesn't even fucking work.

I've heard of this thing called "RetroArch". I installed it once upon a time, couldn't get it to work, and tried to remove it but traces of it still remain for some reason.

There's got to be a solution to emulation gaming on Linux that doesn't involve a wall of text of command lines.

Linux users, what is the easiest way to emulate on Linux?

I haven't used the Linux build of ePSXe in a long time, but even over a decade ago it was already out-dated and you had to jump through hoops to get it working on a modern system. pSX has been working pretty well for me, though it doesn't support plugins and it's closed-source, so there may be some annoyances depending on your distro. The PSX core in Mednafen is pretty great nowadays, as is its libretro fork called beetle-psx.

I can say much about the state of N64 emulation, as I've no need to emulate that particular platform, but AFAIR libretro seems to have at least one N64 core.

RetroArch is actually really neat once you set it up. I use it for most of my emulation needs nowadays. Before that I used to keep around a lot of different emulators: ZSNES, Snes9x, Gens, Kega Fusion, Mednafen etc. But emulating everything from a single launcher reminiscent of Sony's XMB, having unified settings for stuff like shaders, controllers etc. is pretty nice. It also gets bonus points for being able to run on a Raspberry Pi, though not all cores are available or perform as well as on PC. I do agree first setting it up might be tricky, especially if you don't have a controller that's supported out of the box, as the menus are controller-driven. A more traditional GUI has been added recently, though I haven't used it, so I can't say much about it. Anyway, what I'm saying is, if you take the time to configure it correctly, it's a pretty nice option covering most systems. If it doesn't work out for you, well, it's a shame.

I haven't used the Linux build of ePSXe in a long time, but even over a decade ago it was already out-dated and you had to jump through hoops to get it working on a modern system. pSX has been working pretty well for me, though it doesn't support plugins and it's closed-source, so there may be some annoyances depending on your distro. The PSX core in Mednafen is pretty great nowadays, as is its libretro fork called beetle-psx.

I can say much about the state of N64 emulation, as I've no need to emulate that particular platform, but AFAIR libretro seems to have at least one N64 core.

RetroArch is actually really neat once you set it up. I use it for most of my emulation needs nowadays. Before that I used to keep around a lot of different emulators: ZSNES, Snes9x, Gens, Kega Fusion, Mednafen etc. But emulating everything from a single launcher reminiscent of Sony's XMB, having unified settings for stuff like shaders, controllers etc. is pretty nice. It also gets bonus points for being able to run on a Raspberry Pi, though not all cores are available or perform as well as on PC. I do agree first setting it up might be tricky, especially if you don't have a controller that's supported out of the box, as the menus are controller-driven. A more traditional GUI has been added recently, though I haven't used it, so I can't say much about it. Anyway, what I'm saying is, if you take the time to configure it correctly, it's a pretty nice option covering most systems. If it doesn't work out for you, well, it's a shame.

I attempted to use RetroArch when I first got Linux and got confused. Where and how do I setup individual controller configurations for different consoles? I think I was able to get Sonic 3 running in a small window, but couldn't play it because I had no idea on how to setup the controls (or resize the window).

If my understanding is correct, this thing uses "cores", right? Is that comparable to plugins in an emulator, except they emulate an entire system? Does RetroArch support the N64 and Dreamcast?

I guess I might as well give it another shot, since it seems I cannot remove it from my system anyway.

Logged

Pen PenTobleroneVomitPooh Cancer is waifu of the year. Fucking Internet....

Goblin Slayer is a heartwarming tale of magical teenage adventurers overcoming adversity with the power of friendship and believing in oneself. Wholesome family entertainment! Watch it now!

I attempted to use RetroArch when I first got Linux and got confused. Where and how do I setup individual controller configurations for different consoles? I think I was able to get Sonic 3 running in a small window, but couldn't play it because I had no idea on how to setup the controls (or resize the window).

Well, I configured mine a long time ago before it even had an actual menu and only tweaked the config since then, so I'm not clear on current best practices, but here is the official howto. Just to make sure, what do you see when you run RetroArch with no arguments? Is it something like this? What controller are you using? There might be an autoconfig profile for your device. As for going fullscreen, you just need to press F. Here is an overview of the keyboard controls, if you want to know more.

The main idea is that you have a main profile for your controller(s) and remap controls for the core or game if needed. To remap you go into the menu (by pressing F1, which is the default menu button) after loading a game and scroll down to Controls, then change the controls and pick Save Remap File. This is all for the XMB-like menu, mind you.

Quote

If my understanding is correct, this thing uses "cores", right? Is that comparable to plugins in an emulator, except they emulate an entire system? Does RetroArch support the N64 and Dreamcast?

Yeah, cores are basically whole emulators stripped down and made into plugins. There is a mupen64plus core for N64 and reicast for Dreamcast, though I haven't used either.

I even plugged the controller onto the other "free port" on that USB adapter, still nothing.

I am really hoping I can use this RetroArch thing to emulate everything from old 16-bit games to N64 and Dreamcast. Otherwise, it's just crap installed that's taking up space. How would I remove it? The following directions DO NOT WORK:

I even plugged the controller onto the other "free port" on that USB adapter, still nothing.

What distro are you running? This may just be a permission issue. If you try to run RetroArch as root (sudo retroarch) does it detect your controller? It would be easier to diagnose if I had your RetroArch config (~/.config/retroarch/retroarch.cfg) and the output of the lsusb command. The output of "retroarch -v" from the terminal would also be useful.

I am really hoping I can use this RetroArch thing to emulate everything from old 16-bit games to N64 and Dreamcast. Otherwise, it's just crap installed that's taking up space. How would I remove it? The following directions DO NOT WORK:

Those instructions look fine if you're running a flavor of Ubuntu and installed RetroArch from a repository. It won't do anything if you built your own and installed it. So the question is, how did you install it? What does the "which retroarch" command show?

Oh, and just in case this isn't obvious, all of the commands I mentioned in this post need to be run from the terminal.

Lastly, I have to agree with the person above. Running Lakka from an usb stick might be a good way to get your feet wet and eliminate many possible problems which stem from your current install. You seem to be having a lot of problems, so a tailor-made solution might be better.

What distro are you running? This may just be a permission issue. If you try to run RetroArch as root (sudo retroarch) does it detect your controller? It would be easier to diagnose if I had your RetroArch config (~/.config/retroarch/retroarch.cfg) and the output of the lsusb command. The output of "retroarch -v" from the terminal would also be useful.

Those instructions look fine if you're running a flavor of Ubuntu and installed RetroArch from a repository. It won't do anything if you built your own and installed it. So the question is, how did you install it? What does the "which retroarch" command show?

Oh, and just in case this isn't obvious, all of the commands I mentioned in this post need to be run from the terminal.

Lastly, I have to agree with the person above. Running Lakka from an usb stick might be a good way to get your feet wet and eliminate many possible problems which stem from your current install. You seem to be having a lot of problems, so a tailor-made solution might be better.

I am using Ubuntu 16.04 LTS built into a Dell Precision 7520 laptop. I initially installed RetroArch through the Ubuntu Software Center when it was available. However, it was taken off the Ubuntu Software Center, so when I wanted to uninstall it using that, I couldn't.

I am using Ubuntu 16.04 LTS built into a Dell Precision 7520 laptop. I initially installed RetroArch through the Ubuntu Software Center when it was available. However, it was taken off the Ubuntu Software Center, so when I wanted to uninstall it using that, I couldn't.

Well, if you're using Ubuntu, you can just use Synaptic instead of those commands. It should be present by default. It's kind of like Ubuntu Software Center, but more advanced. Uninstalling should be as simple as searching for the package you want, right-clicking and choosing the right option from the context menu, then clicking apply from the toolbar.

The config paths in retroarch.cfg look fine and from the log I see it's using the udev driver for input, so that's also good. However, it doesn't show any detected controllers, so my "permission problem" hypothesis seems very likely. This can be fixed, but I'll need more data:1) the output of lsusb2) the output of cat /proc/bus/input/devices3) the output of ls -l /dev/input/*

You could try "sudo retroarch" from the terminal to force running as root. If it detects your pad, this proves it's just permissions that need fixing.

So I got it to "work" with the sudo command, but all the controls are weird. How can I set it up so it uses one control scheme for one "console" and a different one for another?

I already covered that in one of my previous posts:

Quote

The main idea is that you have a main profile for your controller(s) and remap controls for the core or game if needed. To remap you go into the menu (by pressing F1, which is the default menu button) after loading a game and scroll down to Controls, then change the controls and pick Save Remap File. This is all for the XMB-like menu, mind you.

As for actually resolving the permissions issue, it'd be quite simple, but you haven't provided the data I asked for in my previous post. Actually, just the log from "sudo retroarch -v" should be enough for me to know what controller (USB vendor/product ID) you're using.

Quote

Also, it isn't giving me force feedback. How do I turn that on?

I'd first check if force feedback is even supported for your controller. Search for "feedback effects" in the output of the aforementioned command (sudo retroarch -v). You should see something similar to this, if it supports FF:

[INFO] [udev]: Pad #0 (/dev/input/event4) supports 16 force feedback effects.The number of supported effects will be zero if the driver for your controller doesn't support FF. Happened to me once with one Chinese DualShock 3 knock-off.

As for enabling it in RetroArch, if it's detected, there should be an Options / Enable Vibration in the F1 quick menu.