Hi-Def NES firmware update is here!

Kevtris’s post on nesdev:

Well here it is, after 14 months!

HiDefNES Firmware Update V3.01.nes

3.0 Changes:

* Audio DC level restoration to fix some monitors that’d be silent or have other weird audio volume issues.
* FDS channel redone to be hopefully more accurate.
* DPCM fixed to allow retriggering.
* Address bus filtering fixed so that graphical/palette glitches should be a thing of the past.
* PAL pixel capturing fixed.
* 4 new palettes added.
* Removed interpolation and associated menu. I needed the logic gates in the FPGA to fix the other things.

I tested 5 sets of PAL chips- 1 set always worked, but the other 4 had minor to very severe “speckling”. These are all working perfectly now.
I tested 3 sets of “laser H rev” parts as found in the newest AV famicoms (I think) and they are all working perfect now as well.

This should fix all the problems people had I hope.

This update is a beta because I am not 100% sure I didn’t break something else relating to DPCM, so if I did please let me know.

The four new palettes are:

Firebrand X NTSC
Firebrand X PVM D93
RGBSOURCE Hybrid
RGBSOURCE NESCAP

The original 4 palettes are still in there of course.

Hope that’s enough because this thing is fulllllllll up. There is absolutely no room left anywhere. I have scavenged it all. btw,
the xray mode is “free” so it doesn’t use any logic elements. It’s the internal decisions being made about the HQX stuff. It’s basically detecting edges.

3.01 updates:

I slightly changed the way DPCM works, so it should be correct now with regards to retriggering it. It will only retrigger now if the sample is done playing, instead of retriggering no matter what.

Also, I bumped the volume up by a factor of 4 for sunsoft 5B since it was kinda quiet.

I noticed something really weird though with DPCM. I have a laser H rev CPU here and the DPCM is… corrupt on it sometimes. I tested with the 2.25 rev of firmware and it does it there, too so it isn’t something new I introduced.

Using a legit SMB3 cart, it works fine- DPCM drums play OK, game works fine. I tested both composite and Hi def outputs.

Using a powerpak, though (with powermappers) DPCM is kind of broken. Samples end earlier than they should, like the length isn’t being programmed right. The analog audio coming out of the CPU is broken in the same way, and watching the CPU bus the sample fetching just stops! I am at a loss as to what’s going on here. Needless to say, it only happens with one specific CPU chip out of the dozen or so test samples, so I am not sure what’s going on. I am suspecting the chip might be flaky somehow.