Just one problem. They based their cpu off of the 6502c processor, not the 6502. Plus the execution cycle times differed from the 6502. So many thanks to the 2 links up there I found on the 6502 instruction set, so as a result I created a better 6502 module. I also found a couple opcodes needed more code or slightly changed after examining numerous opensource emulators as well as some other documentation on how to execute each instruction.
My APU is currently in its beta stages, and whats really slowing it down is the For Loop on the sound buffer where the sound is mixed. Most languages can handle this such as C# and C++. But making it fast in vb6 is a real challenge. I may have to split up the buffers more so, so the for loop isnt stressing the main loop. Inlining some functions is another way, but it comes at an unfortunate cost, which is readability. Funny thing is, I get a blazing 320 fps average with the sound on my computer when I shut off the Lock_FPS, which locks the framerate to whatever frames per second you desire. And thats with software rendering. So on my computer the sounds fine. However I'm gonna continue to optimize it. Well....it could be because I already optimized the hell out of it but didn't upload it yet.
[EDIT] For now I'm gonna stick with DirectX8 since it coincides with vb6 by default, and not too many people don't know how to get vb6 to work with DX9. I don't wanna risk running into problems and end up reverting back to DirectX8. That would suck!
Also, since you messaged me about mapper 5, here are a couple of files to get you on the go, with C# source code you might be able to convert to vb6, as well as this link to all the mappers with docs to each: