More MDFourier features

These past two weeks have seen a lot of internal changes to the MDFourier Analysis tool, this is the part that runs in a PC/laptop. These changes include,

GUI part:

- Now accepts drag and drop of files

- Can select output resolution without sending extra command line parameters

- Added Phase to graphs section

Back End:

- Can now plot up to 96khz (limited due to relevance, we used some crazy 3.125MHz wav captures by plgDavid and they ran perfectly fine!

- Reduced memory footprint

- Now available in 64-bit and 32-bit precompiled executables

- Fixed and optimized the linux build

- Some plot types now have a subfolder, so the main output is not as cluttered

On that note, MDFourier is written in C (ANSI99), so in theory it can be compiled for any platform. If someone wants to compile a static binary set for MacOS and create a GUI, that would be awesome! Unfortunately I have no access to that environment.

A GUI for Linux is also needed, the command line version however works flawlessly under it.

Most importantly, Pinobatch created the ASM version of MDFourier V6 for NES, and internal testing with it has given perfect frame accurate results. I hope we can get a public version out soon after some testing and a possible change that we need to make due to possible inconsistencies that can be avoided. I'll detail that in a future post.

Here are a couple of images of the initial sync tones and how they align to the frames:

As you can see, waveform plots now have the frame grid and dBFS (amplitude/"volume") for reference. These took quite a bit to get right and reflect the frequency domain normalization done internally by MDFourier to guarantee a proper reference. When using these, you can now be certain the levels and times shown are real.

 Also, a new type of Difference plot was introduced as mentioned above. They are the Phase plots and they indicate how displaced the starting waveform. they have very specific uses, which we are still exploring. However, they were put to good use in the case of the NES profile.

I attached a pdf that describes the whole ordeal and how triangle phase affects the amplitude of a few  test tones under certain circumstances.  MDF-Note01-NESPhase.pdf 

The text is also available from this URL: http://junkerhq.net/MDFourier/notes/MDF-Note01-NESPhase.pdf

Here are a few Phase plots in case you just want to see them

I am still working on the SNES version of MDFourier, since as last described I believe it can be refined.

Regarding the 240p Test Suite, two changes are pending but already implemented. They concern the PC Engine linearity test and some initialization values for the Dreamcast Video registers. I'll publish them when available after testing.

Thanks for your interest and support.