All Projects → ares-emulator → ares

ares-emulator / ares

Licence: other
ares is a cross-platform, open source, multi-system emulator, focusing on accuracy and preservation.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to ares

Segs
💪 SEGS - Super Entity Game Server
Stars: ✭ 190 (-59.14%)
Mutual labels:  emulation
Emu Docs
Emulator documentation archive
Stars: ✭ 222 (-52.26%)
Mutual labels:  emulation
Xlmmacrodeobfuscator
Extract and Deobfuscate XLM macros (a.k.a Excel 4.0 Macros)
Stars: ✭ 243 (-47.74%)
Mutual labels:  emulation
Manticore
Symbolic execution tool
Stars: ✭ 2,599 (+458.92%)
Mutual labels:  emulation
Containernet
Mininet fork adding support for container-based (e.g. Docker) emulated hosts.
Stars: ✭ 218 (-53.12%)
Mutual labels:  emulation
Gamestarter
🎮 Retrogaming kodi add-on repository for LibreELEC
Stars: ✭ 222 (-52.26%)
Mutual labels:  emulation
Snowflake
❄️ 🎮 Extensible Emulator Frontend written in C# and Javascript
Stars: ✭ 185 (-60.22%)
Mutual labels:  emulation
RGB
RGB (Rust Game Boy) is a simple emulator for the original game boy
Stars: ✭ 19 (-95.91%)
Mutual labels:  emulation
Punes
Nintendo Entertaiment System emulator and NSF/NSFe Music Player (Linux, FreeBSD, OpenBSD and Windows)
Stars: ✭ 217 (-53.33%)
Mutual labels:  emulation
Openswe1r
An Open-Source port of the 1999 Game "Star Wars Episode 1: Racer"
Stars: ✭ 236 (-49.25%)
Mutual labels:  emulation
Washingtondc
Open-source Sega Dreamcast emulator
Stars: ✭ 201 (-56.77%)
Mutual labels:  emulation
Emupedia.github.io
The purpose of Emupedia is to serve as a nonprofit meta-resource, hub and community for those interested mainly in video game preservation which aims to digitally collect, archive and preserve games and software to make them available online accessible by a user-friendly UI that simulates several retro operating systems for educational purposes.
Stars: ✭ 206 (-55.7%)
Mutual labels:  emulation
Vigem
Virtual Gamepad Emulation Framework
Stars: ✭ 225 (-51.61%)
Mutual labels:  emulation
Runcpm
RunCPM is a multi-platform, portable, Z80 CP/M 2.2 emulator.
Stars: ✭ 192 (-58.71%)
Mutual labels:  emulation
Booma.Proxy
Collection of C#/.NET libraries for communication, understanding and emulating Phantasy Star Online Blue Burst. Both client and server.
Stars: ✭ 30 (-93.55%)
Mutual labels:  emulation
Openemu
🕹 Retro video game emulation for macOS
Stars: ✭ 13,369 (+2775.05%)
Mutual labels:  emulation
T3mujinpack
Collection of film emulation presets for open-source RAW developer software Darktable.
Stars: ✭ 222 (-52.26%)
Mutual labels:  emulation
scemu
x86 malware emulator
Stars: ✭ 150 (-67.74%)
Mutual labels:  emulation
resid-rs
Port of reSID, a MOS6581 SID emulator engine, to Rust
Stars: ✭ 25 (-94.62%)
Mutual labels:  emulation
Yuzu
Nintendo Switch Emulator
Stars: ✭ 17,405 (+3643.01%)
Mutual labels:  emulation

ares logo

License: ISC

ares is a multi-system emulator that began development on October 14th, 2004. It is a descendent of higan and bsnes, and focuses on accuracy and preservation.

Official Releases

Official releases are available from the ares website.

Nightly Builds

Automated, untested builds of ares are available for Windows and macOS as a pre-release. Only the latest nightly build is kept.

Prerequisites

*nix building

g++ make pkg-config libgtk2.0-dev libcanberra-gtk-module libgl-dev libasound2-dev

By default, GTK2 is used, but support for GTK3 is available. You will need to install the additional package libgtk-3-dev as well as specifying the command line option hiro=gtk3 at compile time.

Windows building

To build on Windows, using MSYS2 is recommended which can be download here. Follow the instructions on this page to install and setup an appropriate MINGW64 environment. Running the command pacman -S --needed base-devel mingw-w64-x86_64-toolchain from the MSYS2 MSYS terminal should setup everything you need to compile Ares. Note that in order to compile, you will want to be in a MINGW64 terminal window after install and setup is complete.

Compilation

Check out the source code by running this command:

git clone https://github.com/ares-emulator/ares.git

From the root of the project directory run:

make -j4 build=release

that builds with build type of type 'release'. -j4 indicates number of parallel build processes, and shouldn't be set higher than N-1 cores on your processor. Specifying this option can significantly decrease the time to build this project. There are multiple build types available (debug, etc.). Most additional options can be found in nall's make file (nall/GNUmakefile).

To start compilation from the beginning, run the following prior to compiling:

make clean

Build Output

There is a single binary produced at the end of compilation which can be found in desktop-ui/out. On OS's besides Linux, the Database & Shader directories are copied over here as well. On Linux, running make install after compilation will copy these directories and binary into suitable locations (see desktop-ui/GNUmakefile for details). Alternatively, these directories can be copied from ares/Shaders/* and mia/Database/*.

Command-line options

When started from the command-line, ares accepts a few options.

Usage: ./ares [options] game

  --help                 Displays available options and exit
  --fullscreen           Start in full screen mode
  --system system        Specify the system name
  --shader shader        Specify GLSL shader name to load (requires OpenGL driver)

The --system option is useful when the system type cannot be auto-detected. --fullscreen will only have an effect if a game is also passed in argument.

Example: ares --system MSX examples.rom --fullscreen

High-level Components

  • ares: emulator cores and component implementations
  • desktop-ui: main GUI implementation for this project
  • hiro: cross-platform GUI toolkit that utilizes native APIs on supported platforms
  • nall: Near's alternative to the C++ standard library
  • ruby: interface between a hiro application and platform-specific APIs for emulator video, audio, and input
  • mia: internal ROM database and ROM/image loader
  • libco: cooperative multithreading library
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].