Skip to content

mkdasher/mupen64-rr-lua-

 
 

Repository files navigation

Mupen64-rr-lua

N64 TASing emulator with Lua scripting support

Quickstart

The latest release is available on the releases page

If any issues arise or you need help, join the discord server

Cutting-edge features with potential instability are available for download as a zipped binary under the latest commit's artifact.

Compiling

Open the solution with your IDE of choice (VS20XX and Rider are recommended) and build the solution.

For Rider users:

It's recommended to disable "Use external console" (Run > Modify Run Configuration...), as it breaks spdlog's text coloring and reduces both startup and runtime performance.

Structure

The project is divided into 3 layers: Shared, Core, and View.

Shared

The shared layer contains code with no dependencies other than the STL and project libraries (e.g.: libdeflate).

This layer contains shared code, such as helpers, contracts, core types, and the config. All other layers can reference the shared layer and utilize its code, hence the name.

Core

The core layer contains the emulation core data and code, with access to the shared layer, STL, and project libraries.

This layer must be driven by the view layer, and is allowed to call into contract functions defined in the shared layer and implemented in the view layer.

View

The view layer contains references to the other layers, implements the required contracts, and drives the view layer.

Platform-specific references (e.g.: Windows.h) are only permitted in the view layer.

Packages

No packages published

Languages

  • C++ 85.0%
  • C 13.8%
  • CMake 1.2%