The "effnes" project aims to be a core for developing low RAM consuming NES emulators. This project provides the tools for helping developers to only worry about the project's UI and, maybe, about the project's RAM optimization (only on extreme cases where the implemented RAM optimizations for the cartridge mappers are not enough).
As this project is presented in a modular manner, it's easy to use only what's needed, making the process less painful, and allowing the developer to implement his own methods of emulation if he wants to.
Warning
This project is at an early development stage. It should not be used until it hits a stable version. Expect sudden API changes!
Currently, this is the only package that it's already implemented and fully usable. It's a memory-efficient oriented implementation of the NES CPU (MOS6502 without Decimal arithmetic). Also, it features correct cycle emulation, and it's emulation behaviour is documented in the code.
It's tested against the nestest CPU test, passing it with everything working as intended. See this for checking if support for other tests has already been added.
See "enhancement" labeled issues.