Macifom is a highly-accurate NES emulator and debugger written in Objective-C that leverages the latest Mac OS X APIs to provide excellent performance and usability. The purpose of this project to facilitate new NES development on the Mac OS X platform while leveraging OS X technologies such as AppKit, OpenCL, CoreAudio, OpenGL and more!
The latest version of Macifom features:
- Cycle-exact CPU (2A03) emulation for valid opcodes
- Scanline-accurate PPU (2C02) emulation
- Excellent sound reproduction care of Blargg's Nes_snd_emu library
- Windowed and full-screen display modes
- Support USB Gamepad and Joystick controls
- Supports games designed for NROM, UxROM, CNROM, AxROM, SNROM, SUROM, TxROM, VRC1, VRC2a, VRC2b, and iNES #184 (Sunsoft) boards.
- Automatic saving of cartridge SRAM to disk
- A debugger featuring breakpoints, live disassembly of program code, reading and writing of memory locations, register display and step-through execution.
I am working to extend Macifom's emulation and debugging capabilities with the following:
- Support for additional mapper chips and cartridge boards
- Interfaces for viewing and modifying live program and graphics memory
- Française, 日本語, Español and Deutch localizations