Coder Social home page Coder Social logo

kyzsuukii / emulair Goto Github PK

View Code? Open in Web Editor NEW

This project forked from emulairemulator/emulair-lemuroid-clone

0.0 0.0 0.0 141.68 MB

An open-source emulator front-end based on Lemuroid

License: GNU General Public License v3.0

Kotlin 100.00%

emulair's Introduction

Emulair Emulator

Get it on Google Play Get it on F-Droid Get it on GitHub

Details

Emulair is an Android exclusive open-source front-end for Libretro cores, based on Lemuroid. For more information about the project (such as how the code functions, why the project exists, who worked on it, etc.), check the Wiki page. To see our backlog, check the Projects page.

Philosophy

The primary goal of Emulair is to combine the ease of use and simple but accessible interface of Lemuroid with RetroArch's extensive customizability and features.

Origin

It originates from Lemuroid, which, in turn, is a rib of Retrograde. It also uses LibretroDroid under the hood to run Libretro cores. The 2D sprites for the systems are taken from hakchi2 and Faustbear.

Systems (Libretro Cores)

Existing Features (from Lemuroid)

  • Easily search for any installed video game
  • Manually save/load states
  • Automatically save/load states when correctly closing a game (by clicking "Quit" in the pause menu)
  • Save files to Google Drive (only if downloaded from Google Play; inaccessible directly from Drive)
  • Add games to a "Favourites" list
  • Simulate various screens, such as LCD or CRT
  • Remap some touch screen controls (such as joysticks or D-pads) to gyroscopic input, by double/triple tapping the buttons
  • Customizable touch controls (size and position)
  • ROMs scanning and indexing
  • BIOSes scanning and indexing
  • Gamepad support (with button remapping included)
  • .zip ROMs support
  • Local, offline multiplayer (up to 4 controllers, only in games where you can select more than one player)

Added Features

  • A "Jump back in" section on the "Games" page, along with "Recents", "Favorites" and "All Games"
  • Complete visual redesign with consistent sizing, spacing and corner radius
  • Complete conversion to Material Design 3 Components
  • A themed app icon for Android 13+ devices
  • Fixes for bugs that were carried over from Lemuroid

Upcoming Features

  • More emulation cores (almost all cores found on RetroArch)
  • More exposed settings for all the cores
  • Cheat codes support
  • RetroAchievements support
  • .7z ROMs support
  • Syncing save files on Google Firebase and/or Supabase (I will decide which one I will choose after testing them both)
  • A user-friendly intro screen concisely explaining how to use the app
  • An info screen containing frequently asked questions and other useful stuff
  • A profile screen used for easily connecting to RetroAchievements and syncing save files to the cloud
  • Button prompts before every important action, such as saving/loading states
  • Light Theme, AMOLED Theme, Material You Theme (previously there was only a Dark Theme)
  • Slide down in the "Games" page to rescan your directories and refresh your games list
  • Automatically rescan internal directories on app restart
  • Set what screen orientation games should be opened in (landscape/portrait/follow device)
  • Set on-screen buttons' transparency
  • Different app layout for tablets and foldables
  • Different app layout for phones in landscape orientation
  • Automatically save state every x seconds
  • More save file formats support
  • An updated Libretro games database with more fields (e.g. release year, release month, etc.)
  • Add systems to a "Starred" list
  • Long press a game to access a details screen
  • More animations
  • A custom splash screen for Android 12+ devices
  • A "Close menu" button accessible from the pause menu, so users don't have to click their device's back button every time they want to unpause a game
  • [NEW] Choose if you want to automatically fall back on other emulators or not, in case a game doesn't work (this implies unlocking the option to switch between FinalBurn Neo and MAME 2003-Plus)
  • [NEW] Plenty QOL features, updates and fixes
  • [NEW] Easily access and manage all your files from an app-specific folder inside storage/emulated/0

Note: The above features won't be released in this exact order. Concerning the SDM project, not every feature on this list will be implemented (the minimum requirement is 10). Regarding the development after the university project is finished, some features may be changed or even removed.

Removed Features (from Lemuroid)

  • Android TV support
  • Turn games into shortcuts for your launcher
  • Sync saves on Google Drive

Name Meaning

"Emulair" is a triple entendre and the name is inspired by the Lawnchair launcher (not associated with Emulair). Firstly, "Emulair" sounds similar to the word "Emulator" (if you try hard enough). Secondly, "Emulair" means "lair of the emu bird", an animal commonly associated with emulators, given their similar names. Lastly, "Emulair" also means "lair for all your emulators", which is similar to "Vimm's Lair", a place for preserving video games.

Legal

Copyright (C) 2023 Radu-George Bratan

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Before downloading the source code of this software to use it in a project (no matter if it's private or public), please make sure that you understand what the GNU General Public License v3.0 allows you, as well as requires you to do.

emulair's People

Contributors

kyzsuukii avatar radubratan avatar

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.