All Projects → midwan → Amiberry

midwan / Amiberry

Licence: gpl-3.0
Optimized Amiga emulator for the Raspberry Pi and other ARM boards

Projects that are alternatives of or similar to Amiberry

Desmume
DeSmuME is a Nintendo DS emulator
Stars: ✭ 989 (+266.3%)
Mutual labels:  arm, emulator, emulation
desmume
DeSmuME is a Nintendo DS emulator
Stars: ✭ 1,609 (+495.93%)
Mutual labels:  emulator, arm, emulation
Citra
A Nintendo 3DS Emulator
Stars: ✭ 7,009 (+2495.93%)
Mutual labels:  arm, emulator, emulation
Raspberrypi tempmon
Raspberry pi CPU temperature monitor with many functions such as logging, GPIO output, graphing, email, alarm, notifications and stress testing. Python 3.
Stars: ✭ 52 (-80.74%)
Mutual labels:  raspberry-pi, arm, rpi
Mmusiccast
Chromecast emulator that works on any platform. Stream videos from youtube to raspberry pi or any computer with the chromecast protocol.
Stars: ✭ 113 (-58.15%)
Mutual labels:  raspberry-pi, arm, emulator
Ipfs Rpi
IPFS installer for the Raspberry Pi and other ARM-based devices.
Stars: ✭ 130 (-51.85%)
Mutual labels:  raspberry-pi, arm, rpi
Docker Homebridge
Homebridge Docker. HomeKit support for the impatient using Docker on x86_64, Raspberry Pi (armhf) and ARM64. Includes ffmpeg + libfdk-aac.
Stars: ✭ 1,847 (+584.07%)
Mutual labels:  raspberry-pi, arm, rpi
Anese
Another NES Emulator - written for fun & learning - first implementation of wideNES
Stars: ✭ 323 (+19.63%)
Mutual labels:  sdl, emulator, emulation
worldwide
A toy GameBoy Color emulator written in golang.
Stars: ✭ 563 (+108.52%)
Mutual labels:  emulator, emulation
dynarmic
An ARM dynamic recompiler.
Stars: ✭ 675 (+150%)
Mutual labels:  arm, emulation
Raspberry Pi Cross Compilers
Latest GCC Cross Compiler & Native (ARM & ARM64) CI generated precompiled standalone toolchains for all Raspberry Pis. 🍇
Stars: ✭ 261 (-3.33%)
Mutual labels:  raspberry-pi, arm
Hades
🔥 A Nintendo Game Boy Advance emulator
Stars: ✭ 44 (-83.7%)
Mutual labels:  emulator, arm
ness
A work-in-progress SNES emulator written in Rust
Stars: ✭ 31 (-88.52%)
Mutual labels:  emulator, emulation
SkyEmu
Game Boy, Game Boy Color, and Game Boy Advanced Emulator
Stars: ✭ 59 (-78.15%)
Mutual labels:  emulator, emulation
Scanr
Detect x86 shellcode in files and traffic.
Stars: ✭ 16 (-94.07%)
Mutual labels:  emulator, emulation
CeDImu
Experimental Philips CD-I emulator written in C++
Stars: ✭ 41 (-84.81%)
Mutual labels:  emulator, emulation
GhidraEmu
Native Pcode emulator
Stars: ✭ 25 (-90.74%)
Mutual labels:  emulator, emulation
n64
experimental low-level n64 emulator
Stars: ✭ 94 (-65.19%)
Mutual labels:  emulator, emulation
DOSee
DOSee is a DOSBox based, MS-DOS emulator for the web
Stars: ✭ 24 (-91.11%)
Mutual labels:  emulator, emulation
khedgb
Experiments in Game Boy emulation
Stars: ✭ 15 (-94.44%)
Mutual labels:  emulator, emulation

Amiga emulator for ARM boards

Build Status

Gitter

Backers on Open Collective Sponsors on Open Collective

Amiberry is an optimized Amiga emulator, for ARM-based boards (like the Raspberry Pi, ASUS Tinkerboard, Odroid XU4, etc). The core emulation comes from WinUAE, but stripped down somewhat in order to achieve good performance in underpowered boards. It includes JIT CPU and FPU support, to get high-performance results on CPU-intensive emulated environments. On top of that, we have some unique features developed only for Amiberry, such as the WHDLoad booter and support for RetroArch controller mapping.

Amiberry requires the SDL2 framework for graphics display, input handling and audio output. On the RPI platform specifically, we offer a special alternative version which uses Dispmanx directly for the emulation screen, for maximum performance.

Requirements

Amiberry has been tested on Debian/Raspbian Buster, and requires the following packages to run:

  sudo apt-get install libsdl2-2.0-0 libsdl2-ttf-2.0-0 libsdl2-image-2.0-0 libxml2 flac mpg123 libmpeg2-4

If you want to compile Amiberry from source, you'll need the -dev version of the same packages instead:

  sudo apt-get install libsdl2-dev libsdl2-ttf-dev libsdl2-image-dev libxml2-dev libflac-dev libmpg123-dev libpng-dev libmpeg2-4-dev

On the Raspberry Pi, if you're not running Raspbian you'll also need this:

  sudo apt-get install libraspberrypi-dev

Or if you're using an Arch-based distro (e.g. Manjaro), you can use these instead:

  sudo pacman -S base-devel sdl2 sdl2_ttf sdl2_image libxml2 flac mpg123 libmpeg2

Getting Amiberry

The latest stable releases come with binaries, that you can download from the Releases area. Several popular distros (like RetroPie, DietPi, Amibian, and others) already include Amiberry either pre-installed, or through their package management systems. Please follow the methods provided in those distros for a smoother experience.

Alternatively, you can compile the latest from source yourself. Clone this repo, like so:

  cd ~
  git clone https://github.com/midwan/amiberry
  cd amiberry

Choosing a target

Amiberry's Makefile includes several targets, to cover various platforms. For the Raspberry Pi platform specifically, we offer a special Dispmanx version for maximum performance:

  • SDL2 with DispmanX back-end for graphics (RPI platforms only)
  • SDL2 with whatever back-end it was configured with (e.g. KMS, OpenGL, X11, etc.)

Compiling a target

You must specify the Platform you want to build as a parameter to the make command. The process will abort if you use an incorrect platform or no platform at all. Some example platforms are shown below, but feel free to explore the full list within the Makefile.

Raspberry Pi with SDL2 + DispmanX

Use the following command line options for compiling the special RPI-specific versions with Dispmanx:

For the Raspberry Pi 4

  make -j2 PLATFORM=rpi4

For the Raspberry Pi 3(B+)

  make -j2 PLATFORM=rpi3

For the Raspberry Pi 2

  make -j2 PLATFORM=rpi2

For the Raspberry Pi 1/Zero

  make PLATFORM=rpi1

SDL2 Platforms

Below is an example list of several available targets in the Makefile, and what command line option to use when compiling for them:

For the Raspberry Pi 4

  make -j2 PLATFORM=rpi4-sdl2

For the Raspberry Pi 4 64-bit

  make -j2 PLATFORM=pi64

For the Raspberry Pi 3(B+)

  make -j2 PLATFORM=rpi3-sdl2

For the Raspberry Pi 2

  make -j2 PLATFORM=rpi2-sdl2

For the Raspberry Pi 1/Zero

  make PLATFORM=rpi1-sdl2

For the Odroid XU4

  make -j6 PLATFORM=xu4

For the ASUS Tinker board (Supported distro: Armbian)

  make -j6 PLATFORM=RK3288

For the Odroid C1

  make -j4 PLATFORM=c1

For the Vero 4k

  make -j4 PLATFORM=vero4k

For the OrangePi PC

  make -j2 PLATFORM=orangepi-pc

For the Odroid N2/RockPro64

  make -j2 PLATFORM=n2

You can check the Makefile for a full list of supported platforms!

For more documentation subjects, please check the Wiki page

Contributors

This project exists thanks to all the people who contribute. [Contribute].

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

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].