I began working on MZSNES around November 15th 2014. This was actually work primarily on the 65816 cpu core which was based on the 6502 cpu core used in my multiple NES emulators. It took around a month of working on this in my free time before the cpu core was working well enough that I began working on SNES system and graphics emulation. Around December 18th was one of the earliest versions of the emulator to have any graphics emulation. Mega Man X was my primary test game. Progress seemed quite rapid once I was able to start on really getting games to run.

My original goal at the beginning was very small. I just wanted to get a game playable. I knew the SNES is a very complex machine and did not set out to try to make the best and most accurate emulator. I just wanted to see if I could get some games working. Mega Man X was my original goal. The game is already very playable. I have not tried to do so, but the game can probably be played from beginning to end already. However the game does use 3 graphical features I do not support yet. HDMA, Windowing, and Color Math. HDMA and windowing are used in dialogue boxes and color math is used to create translucent water. I hope to eventually support these features so that Mega Man X as well as other favorite games of mine will not be lacking these effects.

During early development I recorded video of the emulator's progress.
December 18th: Mega Man X - Final Fight
December 19: Mega Man X
December 20th: Mega Man X (Early Day) (Late Night)
December 26th: Mega Man X - T.M.N.T. IV - Final Fight

And here are some screenshots.

 Mega Man X running in MZSNES build date 123114, showing debug information. The palette is displayed and there is a memory viewer, CPU Status, disasembly, and various register status. At this stage graphics are rendered in a very simple method. Scrolling and layering priority are supported. HDMA and IRQ for mid-frame changes are not, or other special features like windowing and color math. Even so, Mega Man X looks great in action.

 Super Castlevania IV, looking just fine here. The game uses HDMA, Color Math, and Mode 7 for some special effects. None of those features are supported at the time of this writing. Mode 7 is used for rotating graphics such as the swinging chandelier and the draw bridge. Color Math is used for both translucent fog and water. I hope to support these features for this game eventually.

 Super Castlevania IV gameplay. Everything looks good here. Fantastic game. Didn't work properly until implementing the Multiply/Divide math registers. Also had to fix a cpu bug with ROL to get it really playable.



Current Status:  I am still actively working to improve MZSNES. I hope to improve rendering by making a scanline based renderer so that I can support both IRQ and HDMA for mid-frame effects. I plan to add support for those and windowing, as well as hopefully color math and screen brightness. I also need to try to improve the timing between the SNES-CPU and SPC-CPU to increase game compatibility.

Downloads:
Not Yet..
Allegro Library ( alleg40.dll )
Zlib Library ( zlib1.dll )

Build Numbering is YYMMDD (Year, Month, Day).