- Fixed 2xScaleHQ and 2xScaleHQ shaders (Thanks to @n-at)
- Added Vietnamese (
vi-VN
) (Thanks to @TimKieu) - Disable CUE generation for the PUAE core (Thanks to @michael-j-green)
- Updated German translation (Thanks to @jonas0b1011001)
- Add missing calls to translate (Thanks to @angelmarfil)
- Added Turkish (
tr-TR
) (Thanks to @iGoodie) - Fixed Gamepad support for some older browsers (Thanks to @ZhaoTonggang)
- Default to webgl1 on lower end cores.
- Added ability to switch between webgl1 and webgl2.
- Check core compatibility with EmulatorJS.
- Added core license to right-click menu.
- Removed usage of
replaceAll
. - Added the ability to change settings on game start crash.
- Added
exit
button, to properly shutdown and save files. - Fixed mouse on mobile devices.
- Modularized EmulatorJS.
- Fixed WHLoader hdf roms.
- Added support for
File
objects (Thanks to @pastisme).
4.0.12 View Tree
- Fix scroll bar css (Thanks to @allancoding)
- Flip the context menu instead of going off the page
- Add hooks for save files (Thanks to @gantoine)
- Add class for each virtual gamepad button
- Add
EJS_forceLegacyCores
option - Add
EJS_noAutoFocus
(this is only for advanced developers, not likely an option you will use) - Added supported Amiga file extensions (Thanks to @michael-j-green)
- Display the file name of the ROM/disk when using M3U lists (Thanks to @michael-j-green)
- Added vsync option
- Added advanced shader configuration support (Thanks to @n-at)
4.0.11 View Tree
- Added the ability to disable localstorage using
EJS_disableLocalStorage
. (Thanks to @n-at) - Added the ability to trigger
EJS_emulator.displayMessage
with a duration. (Thanks to @allancoding) EJS_emulator.gameManager.getState
now returns a Uint8Array instead of a promise.- Fixed broken save states from the 4.0.10 release.
4.0.10 View Tree
- Fixed bug with duplicate control inputs.
- Fixed mobile settings menu positioning.
- Ability to load custom files into the wasm instance.
- Renamed the
mame2003
system tomame
. - Removed mame disclaimers on
mame2003
core. - Added VICE cores for C64, C128, VIC20, Plus/4, and PET (Thanks to @michael-j-green)
- Added a padding between popup body and buttons.
- Added ability to disabled cached databases.
- Fixed screenshot for some cores.
- Fixed game element not being focused after fullscreening.
- Added missing Famicom controls.
- Fixed volume slider shadow. (Thanks to @allancoding)
4.0.9 View Tree
- Repository history rewrite - expect faster cloning times.
- Prevent Vice64 from creating cue files (Thanks to @michael-j-green)
- Chinese translation updated (Thanks to @oyepriyansh)
- Added button to open context menu (Thanks to @andrigamerita)
- Fixed menu bar text placement for items on the right.
- Fixed a bug in safari where fullscreen would not resize the game element.
- Fixed a bug in safari where the bottom menu would be visible on initial page load.
- Fixed game rom filename showing as "game" when the game name is set.
- Added legacy nintendo 64 cores for browsers that don't support webgl2.
4.0.8 View Tree
- Fixed typo in virtual gamepad dpad.
- Added updated desmume core.
- Fixed key mapping (Thanks to @allancoding)
- Fixed adblock message (Thanks to @allancoding)
- Added
EJS_startButtonName
option. - Re-Added ability to drag and drop save states.
- Fixed cheats menu.
- Added popup message for Safari mobile users if game is not running.
- Added
EJS_softLoad
option. - Added amiga core.
- Added c64 core.
4.0.7 View Tree
- Added rewind (Thanks to @n-at)
- Added slowdown (Thanks to @n-at)
- Fixed "zone" object in front of settings menu.
- Fixed virtual gamepad alignment.
- Add
EJS_fullscreenOnLoaded
option. - Add virtual gamepad toggle to the control menu (for touchscreen devices)
- Fix gamepad ID showing as "undefined".
- Added threaded cores.
- Added joystick translations (Thanks to @allancoding)
- Fixed fullscreen button tooltip (Thanks to @allancoding)
- Added TurboGrafx-16, SuperGrafx, PC Engine, neo geo pocket, WonderSwan, PC-FX, and ColecoVision support. (Thanks to @n-at)
- Fixed cue file loading (Thanks to @n-at)
- Fixed ability to hide volume slider (Thanks to @n-at)
- Added new mame2003_plus core (now default mame2003 core)
- Use keycodes instead of labels (Thanks to @allancoding)
4.0.6 View Tree
- Fixed n64 on iOS safari
- virtual gamepads for atari2600, atari7800, lynx, jaguar, vb, 3do (Thanks to @n-at)
- control buttons for gba, vb, 3do, atari2600, atari7800, lynx, jaguar (Thanks to @n-at)
- Added
EJS_controlScheme
(Thanks to @n-at) - Added Fast Forward
4.0.5 View Tree
- Added
pcsx_rearmed
core - Made
pcsx_rearmed
core the defaultpsx
core (better compatibility) - Added
fbneo
core - Made
fbneo
core the defaultarcade
core (better compatibility) - Added picodrive core (sega32x)
- Cleaned up documentation
- Fixed/updated rar de-compression
- Added segaMD, segaCD, sega32x button labels and virtual gamepad (Thanks to @n-at)
- Added ability to use threads (pre compiled cores not yet available)
- Fixed reversed gamepad button events (down was up, up was down)
- Fixed Gamepad axis release not triggering
- Add highly beta psp core - see readme
4.0.4 View Tree
- Fix cheats "x" button
- Optimize memory usage
- Added ability to set urls to blob/arraybuffer/uint8array if needed
4.0.3 View Tree
- Remove RetroArch messages
- Center video at top
4.0.2 View Tree
- Add link to RetroArch License on about page
- Fix gamepad support for legacy browsers
4.0.1 View Tree
Complete application re-write. Everything changed. Although some changes to note are:
- Optimization for smaller screens.
- No more dead code.
- Fix Gamepad for firefox.
- Store srm in browser.
- Ability to import/export srm files.
- No more old cores
And much much more was changed...
3.1.5 View Tree
- Fixed iOS bug for iPads
- Added netplay! (only working on old cores)
3.1.0 View Tree
- Added ability to drag and drop save states.
- Fixed some "update" and "cancel" and "close" button confustion
- Removed save state retroarch messages
- Beta netplay cleanup (not yet working)
- (Theoretically) fixed a bug that did not allow iOS devices to work
3.0.5 View Tree
- Fixed screen recording on devices that do not support getUserMedia api.
- Added C label buttons to nintendo 64 virtual gamepad.
- Fixed EJS_color bug.
- Savestates are pulled from the core itself, to always be correct.
- Several new cores. (a5200, beetle_vb, desmume2015, fbalpha2012_cps1, fbalpha2012_cps2, fceumm, gambatte, mame2003, mednafen_psx, mednafen_psx_hw, melonds, mgba, mupen64plus_next, nestopia, snes9x)
- D-pad for virtual gamepad.
- Updated translation files to include new menu options.
- Ability to add more than one zone object to virtual gamepads.
- Added ability to set custom menu options.
- Virtual gamepad left handed mode.
- Fixed Screen record svg.
- Updated svg icons.
- Cache "clear all" button.
- Cache button moved to menu bar.
- Added feature that will display the current downloaded size when the content length is not available.
2.3.9 View Tree
- Fixed incorrect variable referencing when update bios download data callback.
- Fixed rom storage size limits.
- Fixed download percent not showing with some files.
2.3.8 View Tree
- Remove broken shader.
- Add download percent message.
- Fixed UI "saving state" message not going away.
2.3.7 View Tree
- Add more shaders.
- Add bold fontsize option to custom virtual gamepad settings.
- No longer set "normalOptions" from localization file.
2.3.6 View Tree
- Remove default control mappings for gamepads.
- Upgraded invalid character regex to catch more characters.
2.3.5 View Tree
- Use regex to detect and replace invalid characters in filename/gamename settings.
2.3.4 View Tree
- Add new arcade core.
- Fix patch file game id set bug.
2.3.4 View Tree
- Add new arcade core.
2.3.3 View Tree
- Make version in loader.js reasonable.
- Created function to return the game id to prevent unnecessary data stored.
2.3.2 View Tree
- Fix reference error.
- Fix bug in custom virtual gamepad processor where if value is set to 0 it will see that as the value being missing.
2.3.1 View Tree
- Use let instead of var.
2.3.0 View Tree
- Added ability to customize virtual gamepad UI.
- Fixed bug where shader is not set on start.
2.2.9 View Tree
- Added feature to save save files to indexeddb every 5 minutes.
2.2.8 View Tree
- Re-write gamepad handler.
2.2.7 View Tree
- Removed un-needed FS proxy functions.
2.2.6 View Tree
- Added fps counter.
- Fixed gba core aspect.
2.2.5 View Tree
- Added ability to set custom control mappings.
- Added ability to set custom default volume value.
- Fixed gamepad axis as button, gamepad varaible compared to incorrect value.
- Added ability to hide/show menu/context menu buttons.
- Added ability to set game url to other data types.
2.2.3 View Tree
- Fixed rar unarchiving function reference.
- Updated rar header detection.
- Removed netplay.
2.2.1 View Tree
- Added core menu options for new cores.
- Added new mame2003 core.
- Added support for debug emscripten setting for new cores.
2.0.1 View Tree
- Control mapping for beta cores.
- Updated beta cores.
- Beta cores now the default option!
- Added a5200 core.
- Fixed save state for new n64 core.
1.2.2 View Tree
- Moved virtual gamepad menu button to the top left as 3 lines.
- Added screen orientation lock.
- Added beta n64 core!
1.2.1 View Tree
- Updated beta core files.
1.1.6 View Tree
- Replaced axios module with custom script.
- Added pause/play for beta cores.
- Sepperated css into its own file.
- Renamed emu-min.js to emulator.min.js.
1.1.5 View Tree
- Cleaned up fetch error function.
- Cleaned up virtual gamepad event listeners.
- Add code of conduct.
1.1.2 View Tree
- Fixed error where mame files were misnamed.
- Fixed bug where variable referenced was not defined in loader.js.
- Added .gitignore
- Added nodejs script to minify js files.
- Added audio to screen recording.
- Removed lots of dead code from emulator.js file.
- Update axios module.
- Added CORS error message
- Update nodejs buffer module.
1.1.0 View Tree
- Added minify feature.
- Added emulatorjs logo.
- Added beta nds and gb core.
- Fixed bug where when wasm was supported on the beta cores and not the old cores, a network error would appear if not using beta.
- Added volume setting and cheats to beta cores.
1.0 View Tree
- Official release of the beta cores.
- Ability to use beta cores in production.
- Ability to use the old emulatorjs netplay server.
- Set screen recording out file name to gamename if present.
- Set screenshot out file name to gamename if present.
- Fixed virtual gamepad bug where a function was referenced to as an array.
0.4.26 View Tree
- Sepperated emulator.js file into 2 files.
- Added support for a custom netplay server.
- Fixed netplay room password input bug.
- Fixed bug on iOS where virtual gamepad zone was un-responsive.
- Added save state location feature.
- Added mame core setting.
- Added beta cores!
- Added localization.
- Re-wrote virtual gamepad code.
- Added EJS_terminate function.
- Exposed simulate_input function to window.
- Update webrtc adapter.
0.4.25 View Tree
- Moved load state on start from loader.js file to emulator.js file.
- Moved data path function from loader.js file to emulator.js file.
- Added ability to set custom path to data through
EJS_pathtodata
variable. - Added support for custom paths.
- Expose the module and loader to window.
- Added
EJS_startOnLoaded
to start the emulator on load. - Added quick save state slots.
- Added save state message.
- Only show save state slot in settings when save states are supported.
- Added ds pointer lock.
- Added menu button to virtual gamepad. Menu will only open when clicked on mobile.
- Created licenese
- Created official emulatorjs website.
0.4.24 View Tree
- Deobsfocuted emulator.js and loader.js files to the most of my extent.
- Added quick save/load hotkeys.
- Added ability to use gamepad axis as button.
- Fixed typo in controls title.
- Only show needed inputs per system in control settings.
- Re-write the loader.js file.
- Exposed some variables to window.
- Cleaned up context menu code.
- Cleaned up some syntax in emulator.js file.
- Declared
EJS_AdUrl
through loader.js file. - Fixed bug where mapping an axis as a button didn't work.
- Added missing legacy n64 core.
- Updated n64 core.
0.4.23-07 View Tree
- Removed not needed code.
- Added reset button to control settings.
- Added clear button to control settings.
- Added
EJS_AdUrl
option, the ability to add an ad to the emulator. - Cleaned up some file fetching.
- Fixed RAR unarchiving.
0.4.23-05 View Tree
- No longer cache games with the protocols of
file:
, andchrome-extension:
. - Changed default keymappings.
- Added screen recording button.
0.4.23-04 View Tree
- Added mame2003, snes2002, snes2005, snes2010, and vbanext cores.
- Added asmjs for all supported cores.
0.4.23-03 View Tree
- Start loader.js deobsfocuting.
- Deobsfocute extractzip.js.
- Added
EJS_gameName
, the ability to change the file name of save states.
0.4.23-02 View Tree
- Start emulator.js deobsfocuting.
0.4.23-01 View Tree
- Added support for loading "blob:" urls.
- Added support for loading state on game start.
0.4.23 View Tree
- Added update available message.
- Fixed a bug where the 'x' from the ad iframe was still visible on game start.
- Added a2600 and mame cores.
- Remove visible 'x'
- Add rar extraction support.
0.4.19 View Tree
- Added support for 32x, 3do, a7800, arcade, bluemsx, jaguar, lynx, ngp, pce, saturn, sega, segacd, and ws cores.
Initial release View Tree
- Support for unzipping zip files.
- Support for unzipping 7zip files.
- Support for vb, snes, psx, nes, nds, n64, gba, and gb systems. Only support for WASM.