An open API service indexing awesome lists of open source software.

https://github.com/robloach/raylib-libretro

:space_invader: libretro frontend using raylib.
https://github.com/robloach/raylib-libretro

libretro raylib

Last synced: 4 months ago
JSON representation

:space_invader: libretro frontend using raylib.

Awesome Lists containing this project

README

          

# raylib-libretro :space_invader: [![Tests](https://github.com/RobLoach/raylib-libretro/workflows/Tests/badge.svg)](https://github.com/RobLoach/raylib-libretro/actions)

[libretro](https://www.libretro.com/) frontend to play emulators, game engines and media players, using [raylib](https://www.raylib.com). The [raylib-libretro.h](include/raylib-libretro.h) raylib extension allows integrating any raylib application with the libretro API. *Still in early development.*

![Screenshot of raylib-libretro](src/screenshot.png)

## Usage

``` sh
raylib-libretro [core] [game]
```

| Control | Keyboard |
| --- | --- |
| D-Pad | Arrow Keys |
| Buttons | ZX AS QW |
| Start | Enter |
| Select | Right Shift |
| Menu | F1 |
| Save State | F5 |
| Screenshot | F8 |
| Load State | F9 |
| Switch Shader | F10 |
| Fullscreen | F11 |

### Core Support

The following cores have been tested with raylib-libretro:

- fceumm
- picodrive

## Wishlist

- [x] Video
- [x] Resizable Window
- [x] Graphical User Interface
- [x] Shaders
- [x] Mouse Support
- [x] Fullscreen
- [ ] Audio
- [ ] Core Options
- [ ] `raylib-libretro.h` documentation
- [ ] Rebindable Inputs
- [ ] Gamepad Support
- [ ] Project Templates (VS2017, etc)
- [ ] Zip Loading
- [ ] Binary Releases
- [ ] OpenGL Cores

## Compile

[CMake](https://cmake.org) is used to build raylib-libretro. Looking to add more project templates to help the build process!

``` sh
git clone http://github.com/robloach/raylib-libretro.git
cd raylib-libretro
git submodule update --init
mkdir build
cd build
cmake ..
make
```

### Mac OSX

- Make sure you have you have cmake/xcode-cli-tools installed
- Run the above compile instructions
- After installing RetroArch and some cores, you should be able to run the below:
```bash
bin/raylib-libretro ~/Library/Application\ Support/RetroArch/cores/fceumm_libretro.dylib ~/Desktop/smb.nes
```

## License

[zlib/libpng](LICENSE)