========= Revisions ========= * v 0.40 beta 1 (01/06/2001) - Implemented audio updates 4 times per frame via queue, might slow down performance so I waited this long to do something drastic like this, sounds great tho - 16-bit audio and mixing - Raw PCM emulated nicer now.. - Noise and Pulse volume enveloping corrected I hope - Tri counters fixed? (Thanks to Matt Conte for the doc on nesdev a while back) - Pulse freq sweeps rewritten finally, put this off a long time - DPCM rewritten from scratch, big difference in beat style - Vertical scroll problem fixed in TMNT - Changed the scanlines back to 262, this makes a game I know not work right but I feel having correct timing is the right way to go - Another NSF loading problem fixed - Sunsoft Mapper fixes and speedups - Implemented an accurate real-time zapper read handler, didnt realize necessary.. - Small transparency fix for some games (Windowed only) - Added ability to load external palettes or keep default, 3-byte RGB triplets - Integrated NSF support into the j6502 main cpu core, via small hack - Rewrote sign flag, and IP handling in j6502, speedup - Window 3X mode added - Added an option for NES 8-pixel clipping emulation - Sprite0 hits tweaked a little - Rewritten Game Genie from scratch, max codes is 64 per game - Rewritten PPU Rendering, which removed MMX/ASM speedups, still fast tho - Rewrote direct draw frame locking technique, dangerous when jnes crashes.. - Removed 24bpp rendering support, useless, slow etc, use 16/32 - Rewritten entire banking system for cpu and ppu, speed boost - Added a recent menu into the interface, quite nice - Rewrote every mapper, less memory used, faster speed, save state friendly - Rewrote sound graph, more friendly to direct draw these days - Rewrote bitmap capture code from scratch, faster and nicer. - Finally released the partial MMC5 support, not the most accurate emulation, but it is good enough to play Castlevania III US well, which is good enough.. - Tweaked save states to save the new structures as well - Rewrote ppu mapper tile handling, works right now, no hack - Started allocating and releasing large chunks of memory nicely - Direct Input 2-Player code rewritten, smaller, easier to maintain, as well as the option to completely? tweak the devices - Changed quick-save to F7 key, F6 was too close to F5 really, you could hit it accidently - Added save slots selection to the Cpu menu, it might of been confusing because it was previously only accessible on the keyboard * v 0.30a (01/04/2000) - PCM exception problem solved - NSF Banking fixed * v 0.30 (12/25/99) - Internal NSF Player - Added nsf files to command line load - Added NINA-1 Emulation (iNES #34) - Fullscreen Triple Buffering - Improvements to PCM decoding - Solved an mmc3 IRQ problem - Fixed sprite priorities a little more - Fixed zapper in 24/32 bpp - Screen captures work in 8bpp - Performance enhancements - Keyboard reading now includes the numkeys for d-pad. - DirectX dialog more informative - Fixed the CPUID problem on Cyrix CPU's - Removed surface fills at the beginning of frame, this reduces DirectDraw overhead for old hardware * v0.26c (10/26/99) - Corrected registry alignment issues - Saves last directory to registry * v0.26b (10/23/99) - PCM channel improvements - Higher quality audio generation - Direct Input interface fixes * v0.26a (10/20/99) - Direct Input enumerator supports multiple gamepads that are under the same name. - Corrected the new dpcm buffering for games that use large buffers with low frequencies. - Implemented zapper into the via the mouse, preliminary but works in a few games * v0.26 (10/09/99) - Added Konami VRC4 Emulation (iNES #21) - Added Konami VRC2b Emulation (iNES #23) - Added Konami VRC4b Emulation (iNES #25) - Added Konami VRC6 Sound Emulation, Thanks to Kevin Horton for his docs - Improved PCM channel emulation - Minor MMC1/MMC3 mirroring change - Tweaked MMC3 IRQ - Fixed 4-window vram - Support for Controller #2 - Put back correct palette reading - Fixed game genie length detection - Major 6502 core optimizations - MMX enhanced PPU emulation - DirectSound is now used again - Dialog for input devices with button config - Background Sleep is now an option - Sound output graph * v0.21 (08/25/99) - Added MMC4 Emulation (iNES #10) - Added Sunsoft Mapper #4 (iNES #68) - Tweaked MMC3 IRQ Slightly - MMC1 Bankswitching changed - PPU moved into seperate assembly files - Fixed a long time Vertical scroll bug - Minor GameGenie save fix - Modified the Direct Input Axis mode - Documentation updated for Sidewinders - Fixed small windowing problem. - Removed DirectSound, switched to a hopefully more reliable audio method - Vsync removed as a result of timing. - FPS meter disabled in full screen - Lots of other options were taken out - Keyboard reading works on NT4 SP4 (DX3) * v0.20 (08/20/99) - Fixed triangle frequencies and hold note - Fixed flag sets when RTI<->NMI<->BRK happens - Well, RCR/RCL doesn't set ZF - Added MMC1 512/1024 kb ROM support - Added Konami VRC6 (iNES #24) - Added Nintendo MMC2 (iNES #9) - Better MMC3 IRQ - Improved Sprite priorities and hits - Improved Frequency Sweeping - Preliminary RAW PCM sound emulation - Noise channel enveloping fixes - DPCM Irq's Disabled - Changed save state format to save all audio data, added padding for future modifications - Game Genie Emulation is now alot better - Support for trained roms - Sprite priority in 24-bit are better - Small speed-up in 16-bit rendering - Windows 98 SE compatible - Rewritten interface, structured better - Record wave save dialog box - Read-only files open now - Frames per second counter available for full screen mode only if Vsync is turned on. - New Stretch mode added to full screen - Fixed bitmap writing in RGB555 mode - Wait for Vsync only affects full screen video mode - Timing uses new higher performance method - All threading and program halt problems are fixed * v0.10 (08/05/99) - Initial release