All Projects → workhorsy → SaltyNES

workhorsy / SaltyNES

Licence: GPL-3.0 license
A NES emulator in WebAssembly

Programming Languages

C++
36643 projects - #6 most used programming language
javascript
184084 projects - #8 most used programming language
HTML
75241 projects
c
50402 projects - #5 most used programming language
CMake
9771 projects
shell
77523 projects
CSS
56736 projects

Projects that are alternatives of or similar to SaltyNES

Nes Rust
NES emulator written in Rust + WASM
Stars: ✭ 141 (+104.35%)
Mutual labels:  emulator, wasm, nes, nes-emulator
Rustynes
👾 An NES emulator by Rust and WebAssembly
Stars: ✭ 399 (+478.26%)
Mutual labels:  emulator, wasm, nes, nes-emulator
Flownes
🎮 An NES emulator written in ES2015+ with flowtype
Stars: ✭ 160 (+131.88%)
Mutual labels:  emulator, nes, nes-emulator
first nes
Create your own games for the Nintendo Entertainment System! This "starter" game is easily extensible for your own projects. Includes references.
Stars: ✭ 94 (+36.23%)
Mutual labels:  emulator, nes, nintendo-nes
Anese
Another NES Emulator - written for fun & learning - first implementation of wideNES
Stars: ✭ 323 (+368.12%)
Mutual labels:  emulator, nes, nes-emulator
awesome-emu-resources
A curated list of emulator development resources
Stars: ✭ 26 (-62.32%)
Mutual labels:  emulator, nes, nes-emulator
js-nes-emulator
NES emulator in javascript.
Stars: ✭ 12 (-82.61%)
Mutual labels:  emulator, nes, nes-emulator
Nes.swift
An NES emulator written in Swift
Stars: ✭ 103 (+49.28%)
Mutual labels:  emulator, nes, nes-emulator
Nsfplay
Nintendo NES sound file NSF music player
Stars: ✭ 155 (+124.64%)
Mutual labels:  emulator, nes, nes-emulator
Gearnes
NES / Famicom emulator for iOS, Mac, Raspberry Pi, Windows, Linux and RetroArch.
Stars: ✭ 23 (-66.67%)
Mutual labels:  emulator, nes, nes-emulator
love-nes
A NES emulator in dotnet core
Stars: ✭ 42 (-39.13%)
Mutual labels:  nes, nes-emulator
Fceumm-PS2
FCEUmm-PS2
Stars: ✭ 25 (-63.77%)
Mutual labels:  nes, nes-emulator
Nes Snd Emu
NES / Famicom sound library, descended from blargg's Nes_Snd_Emu
Stars: ✭ 19 (-72.46%)
Mutual labels:  nes, nintendo-nes
Nesicide
Integrated Development Environment for the 8-bit Nintendo Entertainment System
Stars: ✭ 244 (+253.62%)
Mutual labels:  emulator, nes-emulator
Emulator.NES
📺 Nintendo Entertainment System emulator written in C#.
Stars: ✭ 123 (+78.26%)
Mutual labels:  nes, nes-emulator
nests
NES Emulator Written in TypeScript/React
Stars: ✭ 91 (+31.88%)
Mutual labels:  nes, nes-emulator
cfxnes
JavaScript NES emulator and emulation library.
Stars: ✭ 56 (-18.84%)
Mutual labels:  nes, nintendo-nes
react-nes
React UI for https://github.com/fredericcambon/nes
Stars: ✭ 16 (-76.81%)
Mutual labels:  emulator, nes
Awesomenes
🎮 A NES emulator written in Go
Stars: ✭ 245 (+255.07%)
Mutual labels:  emulator, nes
SwiftNES
Cross-platform NES Emulator written in Swift
Stars: ✭ 29 (-57.97%)
Mutual labels:  nes, nes-emulator

A NES emulator in WebAssembly. Try it live: http://workhorsy.org/SaltyNES/

Forked from the NaCl C++ version: https://github.com/workhorsylegacy/SaltyNESLegacy

Which is based on vNES: https://github.com/WorkhorsyForks/vNES

Build requirements

cmake 3.4.3 or greater

python 2

SDL2

Build and run in browser

./init_web.sh
./make_web.sh
python -m SimpleHTTPServer 9999

Build and run in desktop

./make_desktop.sh
./SaltyNES game.nes

TODO

  • Remove the mutex, or replace it with std::mutex

  • see if smb3 and punchout work in vnes

  • save memory to localstorage/indexeddb

  • tetris has no backgrounds

  • Try using opengl for the screen to see if it makes painting faster.

  • make fps show in html

  • Make it so the emulator can be restarted without reloading the page

  • Add gamepad support

  • make the emulator easy to embed in other web apps by having hooks for all gui buttons

  • Make it not cache the wasm file, even after shift reload

  • Is there a way to check if running asm.js instead of WebAssembly?

  • Shrink wasm file by removing complex libraries

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