Code Monkey home page Code Monkey logo

emulatorjs's Introduction

EmulatorJS

Self-hosted Javascript emulation for various system.


If something doesn't work, please consider opening an Issue
with as many details as possible, as well as the console log.

The Screen Recording option currently doesn't support Audio .

The beta version of the emulator core files are now avaliable. (For limited systems)
If you would like to use it, please add the following line to your code.

EJS_BETA = true;

When reporting bugs, please specify that you are using the beta version


EmulatorJS Website ⸥ ⸢ Example Use ⸥ ⸢ Emulator Demo ⸥ ⸢ Beta


Supported Systems

Nintendo

Game Boy Advance | Famicom / NES | Virtual Boy | Game Boy | SNES | DS | 64

Sega

Master System | Mega Drive | Game Gear | Saturn | 32X | CD

Atari

Jaguar | Lynx | 7800 | 2600

Other

TurboGrafs 16 PC Engine | WanderSwan Color | Neo Geo Poket | PlayStation | Arcade | MSX | 3DO


Usage

For questions please use the Issue tab.


Setup
  1. Download this repository.
    Code ➞ Download As Zip

  2. Use a WebServer to host the emulator.

  3. Use your Browser to navigate to localhost


ROMs

ROMs can be used as zip / rar / 7z archives.


Netplay

By default Netplay is disabled,
to enable it, add the following:

// ID in your website, required for netplay. Each game in your site should have a different ID
EJS_gameID = 1;

by default, the netplay server url will be emuserver.emulatorjs.ga, but to default to the default ws.emulatorjs.com server add the following line

EJS_oldEJSNetplayServer = true;

To self host:

  1. Download the Server.

  2. Specify the servers address with:

EJS_netplayUrl = 'http://localhost:3000/'; // Absolute Url To Your Netplay Server

Custom Save Filename

To customize the filename of save states
simply add the following lines of code.

EJS_gameName = 'Game Name';

➞ Save Filename: Game Name.state


AD

To place an advertisement in front of the
play now screen, include the following line:

EJS_AdUrl = 'URL';

Interface Color

To use a different color for the emulator interface, use:

EJS_color = '#FF0000'; // Hex Color Code

Direct Start

To start the emulator immediately, add this line:

EJS_startOnLoaded = true;

For audio to play the user still
needs to interact with the page.


Custom Paths

Paths to emulator files can be customized with:

EJS_paths = {
    'fileName' : '/somepath',
    'emulator.js' : 'https://example.com/emulator.js',
    'n64-asmjs.data' : '/asdfds.data'
};

If a file is not defined, the default is used.


Localization

please see the localization readme


USING MAME SYSTEM

you must add the line

EJS_core = 'mame';

and the line

EJS_mameCore = '' // mame core options (example: '4|0')

set the mame core value to the mame core number (1 - 6) + | + save states supported (0 or 1)


LICENSE

Licenced under the GNU General Public License v3.0

Please state changes and the licence when re-distributing

Read the whole license here

If I find a repository that does not follow the licence, I will report it.

emulatorjs's People

Contributors

ethanaobrien avatar allancoding avatar electronicsarchiver avatar imneckro avatar cheesykyle 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.