cge_nes 0.1.1

Cycle-accurate NES (Nintendo Entertainment System) emulator library: CPU, PPU, cartridge, input, and iNES ROM loading.
Documentation
//! CGE-NES is a Nintendo Entertainment System (NES) emulator library written in Rust.
//!
//! This crate provides the core functionality for emulating the NES hardware, including:
//!
//! - ROM loading and cartridge management (iNES format, mappers 0-4)
//! - CPU emulation (MOS 6502)
//! - PPU (Picture Processing Unit) emulation
//! - Memory mapping and bus communication
//! - Input handling
//!
//! To Do:
//! - Implement APU (Audio Processing Unit) emulation
//!
//! The library is organized into clearly-scoped modules (`cartridge`, `input`,
//! `ppu`, `nes`, `rom_loader`) and can be integrated into different frontends
//! for creating complete NES emulators.

#![deny(missing_docs)]

pub mod cartridge;
pub mod input;
pub mod nes;
pub mod ppu;
pub mod rom_loader;

pub use cartridge::{Cartridge, ChrRomContentStatus};
pub use input::{
    ConnectedSocket, GamepadButtonsPressedFlags, GamepadState, HostInput, InputDeviceState,
    InputRegisters,
};
pub use nes::NesConsole;
pub use ppu::{Color, FrameEvent, Ppu, PpuCartMemorySpace, Register};
pub use rom_loader::{load_rom, LoadRomResult, RomError};