Share

Nemus - Portable NES Emulator

File Release Notes and Changelog

Release Name: 1.0.1 Alpha

Notes:
Many new improvements to Nemus--see the changelog.
The PPU has really stabilized in this release, and you
will find a lot of games that didn't work before now do.

Changes: - Fixed bug where could not load rom images with file names containing spaces. - Fixed bug where the reset console function was not being registered. - Fixed font cell size not being correctly set when creating a font. - Fixed PPU sprite/background clipping bug. - Cleaned up documentation and windows installer. - Fixed UNIF loading bugs which were causing Nemus to crash. - Fixed font rendering problem on some video cards. - Fixed sprite priority problems in some games like Super Mario Bros. 3. - Fixed PPU accuracy, and improved NMI timing. A lot of games that didn't work before now work! - Fixed bug where sprite zero wasn't being horizontally flipped for collision detection with background. - Improved MMC3 timing - still needs some tweaking. - Fixed bug where left & right or up & down on the directional pad could be pressed simulataneously. - Added support for NES-PNROM-05 (MMC2) mapper. Going to play Mike Tyson's Punchout now. :) - Integrated new Nes::MmcManager into the main client. - Improved the iNES to UNIF conversion source code. - Fixed PRG-ROM swapping bug in MMC3 mapper. Super Mario Bros. 2 & 3 now work. - Fixed slight palette generation problem that was creating colors that looked the same when in fact they sould have been of different intensities. - Fixed CPU timing problems with some absolute addressing instructions. - Improved sprite zero timing by fixing problems in CPU core. - Fixed bugs with MMC1 mapper, now properly emulates MMC1B2 behaviour for SOROM/SVROM/SUROM games (ie. Dragon Warrior 3 & 4) - Fixed bug causing Nemus to quit on some hardware, as a result of not selecting a proper display mode pixel format. - Refactored CHR-ROM/RAM bank switching code for MMC's. More flexible and should be slightly more streamlined now. - Added Nes::MmcFactory and Nes::MmcManager classes for improved flexibility in instantiating Nes::Mmc objects. This also fixes the crash when trying to load a rom image that uses an unsupported MMC. - Added MMC implementations for UNROM, CNROM, SGROM, and MMC3 based MMCs. - Now properly emulates the the PPU bus when reading/writing write-only/read-only PPU registers, respectively. - Fixed absolute indirect JMP instruction bug in Nes::StaticCpu. - Fixed indirect-indexed instruction bugs in Nes::StaticCpu. - Fixed BRK instruction not pushing 'b' flag in Nes::StaticCpu. - Fixed 'd' flag not being cleared on interrupt in Nes::Cpu and Nes::StaticCpu. - Fixed MMC1 bug in which the top bit of the CHR-ROM paging registers was being ignored. The Legend of Zelda 2 now works in the overworld map mode.