Originally Posted by
tomaitheous
Yeah, I have a few tables. Though most are for address calculation and such (palette conversion too). GFX data; I just re-organize it on the fly since both are planar (pce just happens to have composite-planar for tiles like the snes. But sprites on PCE are regular planar like NES, just wider. I just write zero to the second byte so the following 8 pixels are invisible/transparent). Yeah, the emulation code goes into the top part of active display and so normally you would see a floating black gap at the top. But a single frame delay, buffering/saturating/check does the trick.
Real audio emulation, I would say with pce acceleration??? I mean, all the port writes to the audio registers are intact. I emulate the behavior of the APU and such via the registers in real time (I even use the 7khz timer to handle the sequencer part of the APU emulation; for hardware note length and hardware envelopes because those are reside in the 120hz and 240hz time domain). The only thing on the PCE side is the assist of the PCM buffers of the channels (waveform buffers that hold the NES duty cycles and triangle waveforms. And the PCE already has a noise channel mode), so I don't have soft mix and such to a single DAC like you might on a PC. And of course the PCE uses a period based system (instead of a phase accumulator) like the NES, but at a higher frequency - so I'm able to translate the NES period register values on the fly to PCE's period values. Despite NES being linear volume and PCE being log, the translation works out fairly well too. The only thing I haven't emulated yet, is DMC channel. Most early games don't use it though. That, I would probably hack in the nes rom as per basis for PCE DDA playback because of resource issues at that point.
Thanks :) At some point, some of the more later gen advance nes games would need more hacking as additional emulation would become too over whelming and slow things down. But yeah, SMB3 is doable. I figured there wasn't a need for it since it was on the remake pack on the SNES. Btw, you did Go Planes? I've seen your nick around before, but didn't put two and two together (from spritesmind) until I saw the new avatar pic.