It is currently Fri Oct 20, 2017 12:54 pm

All times are UTC - 7 hours





Post new topic Reply to topic  [ 38 posts ]  Go to page Previous  1, 2, 3
Author Message
 Post subject:
PostPosted: Wed May 16, 2012 1:41 pm 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5726
Location: Canada
I've been getting around to testing out the VRC7.

I made a test of the VRC7 patch set vs the one posted by quietust a long while ago:
vrc7_patch_test.flac (dropbox link removed, file lost)

Patch set used:
http://nesdev.com/cgi-bin/wwwthreads/showpost.pl?Board=NESemdev&Number=1440

Each patch sounds 6 tones, each 2 seconds on, 1 second release, 1 second off.

1. Hard patch, low pitch, sustained release
2. Custom patch, low pitch, sustained release
3. Hard patch, medium pitch, regular release
4. Custom patch, medium pitch, regular release
5. Hard patch, high pitch, regular release
6. Custom patch, high pitch, regular release

After a full loop through all 15 at volume 0 (full volume) I run them again at volume 8 (low volume).

As you can hear, it's actually a very good guess at the patch set. All the noticeable differences are rather minor ( e.g. release on patch 8 ). I'll work on hammering out these minor differences, then I'm going to try to write an emulator that actually sounds correct.


Last edited by rainwarrior on Mon Aug 07, 2017 3:04 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Mon May 21, 2012 12:03 pm 
Offline

Joined: Wed Apr 14, 2010 12:25 pm
Posts: 34
jrlepage wrote:
Yeah.. But it's not as bad as NEZPlug++ or FamiTracker make it sound. At least, I didn't want to murder anything after a minute of listening to King of Kings on the real Famicom, unlike those two emulators...


Seems more possible between various models & clones that the output can be stronger or weaker. Great.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2012 1:32 pm 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5726
Location: Canada
As I've been making these recordings I have noticed that volume levels vary over time as the machine/cartridge warms up, etc. so in addition to the difference between various models, you also have variation due to temperature on the same console. Precision simply isn't possible.

This is what I think we're looking at in the differences between systems, in decreasing order of importance.

1. The output chain after the cartridge generally contains some sort of lowpass filter, and possibly a highpass as well. This chain could include circuitry in the console (e.g. NES' mild lowpass) or in the television (RF demodulator, EQ, speaker). Some may include a significant highpass as well.

2. The actual output volume of the 2A03 may be significantly different between types of Famicom, which could consistently affect 2A03/expansion volume balance for any particular model.

3. The inaccuracy of resistors and other components in the cartridge and in the famicom will result in minor variations in volume balance from system to system, cart to cart, or time to time depending on temperature. This factor limits the precision with which we can measure the volume balance.

4. Other factors in the input or output chain. Noise from the microphone circuit, environmental noise, bad wiring, etc. These I don't think are very significant in general, and aren't normally worth modelling.

Factors 1 and 2 are already addressed fairly well by NSFPlay's settings, especially the "Easy Setup" menu which has some presets made by Brezza to simulate various models of Famicom. Factors 3 and 4 aren't really addressable, and are just an indication that there are limits to the precision in which system-to-system variation can be modelled.



As for the output of an N163, the 8-channel recordings speak for themselves, I think. I just added Erika to Satoru no Yumebouken to the list of recordings. These are recordings coming right off the cartridge's audio out, so it's about as pure an example as you can get, I think. The device used to record them from there has its own lowpass/highpass filter out of necessity, but these have a fairly minor impact.

On a television you have plenty of options to mitigate the aliasing issue for the two 8-channel games. RF demodulation generally includes a huge lowpass on the signal. Many TVs have a simple bass/treble adjustment that you can use to filter out most of the aliasing.

The really interesting thing is we can see that we have the update rates correct by the spectrum graphs. The spectrum has a natural curve down to the nyquist frequency (around 7.5kHz), and then you see it curve back up with a mirror set of aliased frequencies back up to the update frequency (~15kHz), and above there is mirrors yet again but you're starting to fight the lowpass filter in the recording device itself at that point.

NEZPlug++ does sound a little too harsh, I think, even against the relatively unfiltered output jrlepage and I have made recordings of, but it is at least getting the update rate correct. I'm still working out my own version of it, but I haven't quite nailed it down yet. I suspect there's some nonlinearity in its DAC as well that I will want to model.


Last edited by rainwarrior on Tue May 22, 2012 11:59 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2012 1:43 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6287
Location: Seattle
rainwarrior wrote:
As I've been making these recordings I have noticed that volume levels vary over time as the machine/cartridge warms up, etc. so in addition to the difference between various models, you also have variation due to temperature on the same console. Precision simply isn't possible.
Both the NES and Famicom use a 74-series inverter as an audio amplifier. (74'04 for the NES, 74'368 for the Famicom). They are wired (by R7 here) to be functioning at their highest possible gain, but because these are digital logic parts, neither the voltage nor gain is characterized, let alone consistent. I'd expect a strong temperature dependence.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2012 2:12 pm 
Offline
Formerly ~J-@D!~
User avatar

Joined: Sun Mar 12, 2006 12:36 am
Posts: 445
Location: Rive nord de Montréal
Highest possible gain? This resistor does negative feedback, which reduces the gain of any amplifier and help linearize output as well as extending the bandwidth of the amplifier and make the overall gain less affected by variations of the amplifier's gain. Of course, the amount of feedback seems low, so variations of the inverter's 'gain' could have noticeable effects on the overall gain.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2012 4:45 pm 
Offline

Joined: Sun Apr 13, 2008 11:12 am
Posts: 6287
Location: Seattle
You're right; the self-biasing may not even cause it to be in the highest-slope region of the transfer function depending on the function's exact shape. In any case, http://www.fairchildsemi.com/an/AN/AN-88.pdf describes the temperature dependence nicely.


Top
 Profile  
 
 Post subject:
PostPosted: Tue May 22, 2012 5:38 pm 
Offline
Formerly ~J-@D!~
User avatar

Joined: Sun Mar 12, 2006 12:36 am
Posts: 445
Location: Rive nord de Montréal
Nice find!


Top
 Profile  
 
PostPosted: Mon Feb 04, 2013 9:36 am 
Offline
User avatar

Joined: Sun Jan 22, 2012 12:03 pm
Posts: 5726
Location: Canada
Added a recording of several carts at once to compare their audio level. See OP.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 38 posts ]  Go to page Previous  1, 2, 3

All times are UTC - 7 hours


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group