NESVibes is a Nintendo Entertainment System (NES) emulator written in TypeScript that aims to provide cycle-accurate emulation of the original hardware. The emulator strives to replicate the behavior of the NES at the hardware level, ensuring accurate timing.
- CPU
- PPU
- APU
- Cartridge loading
- Mapper 0, 1, 2, 4
- Other mappers
- Some APU sounds
- Some MMC3 games have improper IRQ timing
This project is built using:
- TypeScript for type-safe code
- Modern web technologies
- TailwindCSS for styling
# Install dependencies
npm install
# Start development server
npm run dev
# Build for production
npm run build
Contributions are welcome! Please feel free to submit pull requests, report bugs, or suggest features.
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to the NES dev community for their extensive documentation
- Special thanks to the authors of various technical documents about NES hardware
- Inspired by other cycle-accurate emulators in the community