/yNES

Rust-based NES emulator

Primary LanguageRustMIT LicenseMIT

yNES

Rust製ファミコンエミュレータ

Demo

Windows

nestest SMB
image capture
YouTube (with audio)

Browser

https://ydkk.github.io/yNES/

Implementation

Emulator Core

  • CPU
    • Official Opcodes
    • Unofficial Opcodes
  • APU
    • Pulse Channel (1, 2)
    • Triangle Channel
    • Noise Channel
    • DMC
  • PPU
    • nestestやSMBが正常に動作する程度
      • その他の細かい挙動は怪しい
    • Nametable Mirroring
      • Horizontal
      • Vertical
      • Single-Screen
      • 4-Screen
      • Other
  • ROM
    • iNES Format

Frontend

  • Windows
    • 画面出力
    • 音声出力
    • Pad入力
    • 実行速度変更
  • Browser
    • 画面出力
    • 音声出力
    • Pad入力

Build

Emulator Core

cd src/common
cargo build --release

Frontend

Windows

cd src/win
cargo build --release

Browser

cd src/wasm
cargo install wasm-pack
wasm-pack build --target web --release

License

MIT