Giter Club home page Giter Club logo

rmg's Introduction

Rosalie's Mupen GUI

Rosalie's Mupen GUI is a free and open-source mupen64plus front-end written in C++.

It offers a simple-to-use user interface.

Download

Windows

You can download Rosalie's Mupen GUI on Github Releases

Linux

You can download Rosalie's Mupen GUI on

Support

You can ask for help or report issues on

License

Rosalie's Mupen GUI is licensed under the GNU General Public License v3.0.

Showcase

RomBrowser InGame InputSettings

Building

Linux

  • Portable Debian/Ubuntu

    sudo apt-get -y install cmake libhidapi-dev libsamplerate0-dev libspeex-dev libminizip-dev libsdl2-dev libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev pkg-config zlib1g-dev binutils-dev libspeexdsp-dev qt6-base-dev libqt6svg6-dev libvulkan-dev build-essential nasm git zip ninja-build
    ./Source/Script/Build.sh Release
  • Portable Fedora

    sudo dnf install hidapi-devel libsamplerate-devel minizip-compat-devel SDL2-devel freetype-devel mesa-libGL-devel mesa-libGLU-devel zlib-ng-devel binutils-devel speexdsp-devel qt6-qtbase-devel qt6-qtsvg-devel gcc-c++ nasm git ninja-build
    ./Source/Script/Build.sh Release

When it's done building, executables can be found in Bin/Release

  • Installation/Packaging
export src_dir="$(pwd)"
export build_dir="$(pwd)/build"
mkdir -p "$build_dir"
cmake -S "$src_dir" -B "$build_dir" -DCMAKE_BUILD_TYPE="Release" -DPORTABLE_INSTALL="OFF" -DCMAKE_INSTALL_PREFIX="/usr" -G "Ninja"
cmake --build "$build_dir"
cmake --install "$build_dir" --prefix="/usr"

Windows

  • Download & Install MSYS2
pacman -S --needed make mingw-w64-x86_64-cmake mingw-w64-x86_64-gcc mingw-w64-x86_64-hidapi mingw-w64-x86_64-freetype mingw-w64-x86_64-libpng mingw-w64-x86_64-SDL2 mingw-w64-x86_64-qt6 mingw-w64-x86_64-SDL2 mingw-w64-x86_64-hidapi mingw-w64-x86_64-speexdsp mingw-w64-x86_64-libsamplerate mingw-w64-x86_64-nasm mingw-w64-x86_64-minizip git
./Source/Script/Build.sh Release

When it's done building, executables can be found in Bin/Release

rmg's People

Contributors

ghostlydark avatar iweaker avatar jakobdev avatar jaxonwastaken avatar kev4cards avatar loganmc10 avatar nekopsykose avatar opna2608 avatar orbea avatar picsel2 avatar porcino avatar retracarter avatar rosalie241 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rmg's Issues

Add Translations

Would be really nice, if could add the possibility to translate RMG. Should not be much work, since Qt has a built in translation system.

Avast Antivirus warning!

Hi there!
Hey excuse me but when I tried to open RMG newest version but it triggers an Avast Antivirus warning.
Here some screenshots to show what is going on:
Imgur
Imgur

Do you know what could be the problem?

Rom list cache doesn't work on Windows version.

Greetings.

Every time I open RMG on Windows the rom list reload from scratch, like it was a first open after pointed the rom folder, turning every start slower. The cache on linux version works fine and the list shows up instantaneously even after a system restart.

[Linux, FYI] Black screen, audio only; issue disappears after forcing OpenGL 3.3

So, I had the exact same issue as the one from here, and the solution worked perfectly fine for me as well. In case this is needed, these are my integrated GPU specifications:

Graphics: Device-1: Intel 3rd Gen Core processor

  • driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:0166
  • Display: x11 server: X.Org 1.20.13 driver: intel resolution: 1366x768~60Hz
  • OpenGL: renderer: Mesa DRI Intel HD Graphics 4000 (IVB GT2) v: 4.2 Mesa 21.2.6
  • compat-v: 3.0 direct render: Yes

My solution is the same as ha7ak3's: MESA_GL_VERSION_OVERRIDE=3.3 ./RMG, which I initially found documented here. A much more thorough explanation is available in this AskUbuntu thread.

Thank you for this excellent front-end.

[Feature Request] 7z support

Will it be possible to implement .7z in the future? I like to keep all my files the same format to maintain them!

Game List Capped to 50 items

Setting up the ROM Directory only displays the first 50 items (in alphabetic order), not sure if it's a bug or if it's the way the game list was intended to be.

HiDPI Video Output Issue

Video does not fill full window when using HiDPI settings. Screenshot of current display configuration provided.

image
image

Navigating the UI with a screen reader

Hi
I have tried this out and this is really good, it has the settings I want and I can use it very well.
sometimes whenever I press ok to exit settings I can't get back in. I'm using the keyboard to navigate around and there for use the alt menu. When going to options sometimes my screen reader doesn't speak anything.
A screen reader is a software for blind people that let's them navigate a computer. This never happens the first time the app is opened. I would love for this to get fixed. Thanks for reading.

Unable to open filepaths that contain non-ASCII characters

Exactly as title says. If a rom is opened from a non-ASCII filepath (i.e. Japanese text), I get the error message:
  EmulationThread::run Failed!
  read_raw_file Failed: failed to open file!

Not sure if this is something that can be resolved, but it would certainly help if it did get resolved.

System specs are (in case the info is needed)
 CPU: AMD Ryzen 5 4600H with Radeon Graphics @ 3.00 GHz
 RAM: 8.00 GB
 Dedicated Graphics: NVIDIA GeForce GTX 165

read_raw_file Failed

Hope this screencap helps.

Cannot Change Fullscreen Resolution.

I can't seem to change the resolution for fullscreen mode, on Windows 11 machine. I don't remember having this issue with Linux Flatpak version. Editing the GFX plugin cfg simply reverts on RMG startup. Thank you!
Screenshot 2022-05-14 135406

Publish on Flathub

Would be relay nice, if you could publish RMG on Flathub. Flathub is used by many Linux distros as source for Flatpaks, so the Users will be able to install RMG with 1 click. I have some experience in building a Flatpak, so I can help. I already noticed #5, but Flathub requires building without Internet. There are 2 things needed at the moment:

  1. RMG can't store files in the same folder as the Binary, since Flatpaks are read only. They has to be saved in XDG_DATA_HOME/RMG or XDG_CONFIG_HOME/RMG.
  2. git clone during the build is not allowed, because there's no Internet. I can include the needed Repo with commit and destination folder in the Manifest. The build script needs to check if the folder is already there and then not clone.

P can pause, but not resume

There are two ways to pause the emulator: F2 and P.
F2 pauses, and when the game is paused, resumes.
P pauses as well, but can't resume. The only way to resume after pressing P is to press F2, which pops up an error message, since the emulator tries to pause but is already paused. After the error message, you have to press F2 again to resume the game.

[Linux] [SOLVED] Majora's Mask Flathub Graphical Glitches

Because Project64 inputs weren't working, and I wanted to use MMHD, I decided to use RMG. Unfortunately, I was having issues in-game when it came to certain elements, even without the texture pack. Opening the inventory will just show a black screen without the texture pack, and a weird render rainbow texture with it. Same goes with the lens of truth. Hidden objects show up and the vignette show up, but nothing else does.

I assume this is an issue with the Gliden64 version I'm using, but I have no idea how to change it.

Overclocking factor isn't workign as intended?

I'm not sure if this feature is working properly. Comparing it to the PJ64 equivalent, it doesn't seem so.

I played a lot of Goldeneye and PD in PJ64 using the "overclocking modifier". Combining counter per-op "1" with overclocking to "3", the result is a smooth experience at 60fps with no slowdowns anywhere. And if there is some odd slowdown in PD here and there, it cleans up at overclock to "4". Basically, the higher the modifier number is, the faster the N64 gets. And at 4x it's fast enough to brute force both games at uninterrupted 60fps.

This, however, can't be achieved in this emulator. Using the same settings (counter per Op "1" and overclocking to ""3" or "4") makes the games run at 60fps on average, yes, but they still slowdown a lot in many different areas. One area you can test is the first level, right after the tunnel. This is a part is obviously more demanding but the overclock in PJ64 completely brute forces through it. In this emulator it doesn't, you will get slowdowns to 30fps or less.

In fact, i noticed that after "3", all the higher numbers don't make any difference at all. Even at "11" the result is the exact same as "3". Which apparently isn't enough to make these games run smooth at all times.

So i'm not sure if it's a bug, or a lacking implementation or it's working as intended.

Controller detection

My controller is not detected in RMG 0.2.0
Works fine on RMG 0.1.4, but not on any version above.

My system: Linux

[Feature Request] Per-Game Input Profiles

It would be great if we could select controller profiles for each game so that the game automatically opens with the users selected profiles. It would save the end user some time, especially those of us that like to use custom profiles. Cemu has a really great way of doing this. I have attached some pictures that give a better idea of how the Wii U emulator uses this feature which could provide some inspiration.

By right clicking on the game and going to "Edit game profile" it takes you to an "Edit game profile" box. In the far right there is the "Controller" option. Clicking here allows dropdowns of profiles for the various controllers. The game now opens with that controller profile.

Right clicking a game displays the image below:
Cemu Controller Config 1

Clicking "Edit game profile" displays the image below:
Cemu Controller Config 2

Some Games Crashing

Played Mario 64 without any issues, now playing Castlevania: Legacy of Darkness, playing Cornell's quest, noticed it crashes whenever you pickup "the contract" item throughout the game, and right after the first fight with Dracula (the final boss) the game also crashes, just freezes then the program closes, no idea why. Could this be flatpak related?

Some Features requests

Hi, Rosalie
I have some features ideas in mind that maybe you can implement someday if you think that it's possible
You can add them to the very bottom of your todo list if you want.

  • Grid mode for the rom browser with an option to set a custom thumbnail.
  • A way to set a custom controller profile per game.
  • Auto center the main and game windows to the screen.

Greetings

flatpak

You can test the flatpak, it's just Release/rmg directory inside flatpak.

flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
git clone https://github.com/fastrizwaan/Rosalie-s-Mupen-GUI_flatpak
cd Rosalie-s-Mupen-GUI_flatpak/\[flatpak-linux64\]Rosalies_.Mupen_.G.U.I/
./install.sh
./run.sh

I've created a flatpak bundle from compiled binaries of Flatpak runtime sdk.
https://github.com/fastrizwaan/Rosalie-s-Mupen-GUI_flatpak

# flatpak --user remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# flatpak install flathub org.kde.Sdk/x86_64/5.15

app-id: io.github.RMG
runtime: org.kde.Platform
runtime-version: '5.15'
sdk: org.kde.Sdk
command: RMG


finish-args:
  - --socket=wayland
  - --socket=fallback-x11
  - --share=ipc
  - --share=network
  - --device=dri
  - --filesystem=host:ro
  - --filesystem=~/.config/RMG:create
  - --device=all

modules:
 
- name: RMG
  buildsystem: simple
  sources:
  - type: git
    url: https://github.com/Rosalie241/RMG
    
  build-options:
#--share=network is disliked by flatpak devs, but it allows for internet access to during build process; else multiple git clone not allwed
    build-args:
    - --share=network
  build-commands:
  - ./Source/Script/Build.sh Release 1
  - cp Bin/Release/rmg /app -r

After the above build, just copy the build-dir/files/rmg directory and build flatpak using make_rmg_flatpak-linux64.sh

mupen64plus-video-GLideN64.so": No such file or directory. - Make install fails in Fedora 33 Workstation x86_64 -

Install the project...
-- Install configuration: ""
-- Up-to-date: /rmg/RMG
-- Up-to-date: /rmg/Core/libmupen64plus.so.2.0.0
-- Up-to-date: /rmg/Data/mupen64plus.ini
-- Up-to-date: /rmg/Data/mupencheat.txt
-- Up-to-date: /rmg/Data/font.ttf
-- Up-to-date: /rmg/Config/stylesheet.qss
-- Up-to-date: /rmg/Plugin/Audio/mupen64plus-audio-sdl2.so
-- Up-to-date: /rmg/Plugin/RSP/mupen64plus-rsp-cxd4-sse2.so
-- Up-to-date: /rmg/Plugin/Input/libmupen64plus-input-qt.so
CMake Error at cmake_install.cmake:100 (file):
  file INSTALL cannot find
  "/home/rizvan/.build/RMG/Source/3rdParty/mupen64plus-video-GLideN64/projects/cmake/plugin//mupen64plus-video-GLideN64.so":
  No such file or directory.


make: *** [Makefile:105: install] Error 1

Compile Instructions on Fedora 33:

sudo dnf install libqxt-qt5-devel SDL2-devel libsamplerate-devel -y

git clone https://github.com/Rosalie241/RMG.git
cd RMG/
cmake .
make
sudo make install

"Open with" Broken

Trying to launch a ROM through the open with option/setting RMG as the default application for N64 ROMs doesn't work. RMG will be opened, but the ROM will not be launched. Not sure if this is a bug or simply an unimplemented feature. In case it's the former, I'm using Fedora Linux (KDE) and have RMG installed using Flatpak.

Texture packs will only load from cache?

Using the same test files and test cache that worked in 1964 (cache was made in 1964), I can only load up from the cache. Meaning also I cannot generate cache using rmg since the images never load up.

Normally would just go ahead and work on my pack in 1964 then, but rogue squadron does not like 1964 that much unless I use very particular settings on an older version of glide.

CachedRomHeaderAndSettings.cpp lacks an `#include <algorithm>`

/home/fratti/Projekte/RMG/Source/RMG-Core/CachedRomHeaderAndSettings.cpp: In function ‘std::vector<l_CacheEntry>::iterator get_cache_entry_iter(std::string, bool)’:
/home/fratti/Projekte/RMG/Source/RMG-Core/CachedRomHeaderAndSettings.cpp:77:17: error: ‘find_if’ is not a member of ‘std’; did you mean ‘find’?
   77 |     return std::find_if(l_CacheEntries.begin(), l_CacheEntries.end(), predicate);
      |                 ^~~~~~~
      |                 find

resolved by adding #include <algorithm> to the file. Probably specific to the STL version, something used to pull it in and no longer does or something like that.

RMG crashes when exiting/closing the emulator on Windows

Describe the bug
After you are done playing something, have stopped the emulation and want to close/exit the emulator it crashes.
It also crashes upon exiting/closing the emulator if you haven't played anything and have just opened the emulator and close afterwards.

To Reproduce
Steps to reproduce the behavior:

  1. Open RMG.exe
  2. Click on File
  3. Click on Exit
  4. Crash

Expected behavior
Expected behavior would be to exit/close the emulator without crashes.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Windows 10 Enterprise LTSB 21H2
  • GPU: NVIDIA GTX 1070
  • CPU: Intel Core i7 8700K
  • RAM: 64GB

Additional context
According to the built in Reliability monitor in Windows this is what it has to say about the crash of RMG.exe

Problem - Stopped working

Faulting application name: RMG.exe
Faulting module name: mupen64plus.dll_unloaded
Exception code: 0x0000005
Fault offset: 0x0000000000009980
Faulting process id: 0xbf8
Faulting module path: mupen64plus.dll

Error On Steam Deck Since last update

Hello.

I would just like to report I have been getting the Error
CoreArePluginsReady Failed: (Input Plugin)->IsHooked returned false!

No Rom will launch.
Im not sure if some where along the line I made a mistake with folders, or something with the Update.
I am running the latest steam deck stable 3.3.2
RMG has worked for me up until v0.1.9

Thank you very much for your time and consideration.
Cheers!

Can't get Fullscreen to work (57b7811)

Describe the bug
I'm trying to fullscreen with Alt+Enter but it won't respond to my input, it doesn't go fullscreen either if I click on the menu item in the GUI and then I have to force close by using Task Manager because RMG is not responding.

Also if I press Alt+Enter RMG stops responding after a while but I can still hear the game so I have to force close once again in Task Manager.

To Reproduce
Steps to reproduce the behavior:

  1. Start/load a game from the GUI
  2. Attempt using Alt+Enter to fullscreen or click Fullscreen in the GUI
  3. Nothing happens and the application stops responding/hangs

Expected behavior
Be able to go fullscreen without hanging.

Screenshots
N/A

Desktop (please complete the following information):

  • OS: Windows
  • Version: 10 Enterprise 21H1
  • GPU: NVIDIA GTX 1070
  • RAM: 64GB

Additional context
Using ParaLLEl RSP and ParaLLEl RDP, also using cxd4 SSE2 RSP with angrylion RDP Plus with RMG (57b7811)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.