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.

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.

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.

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.

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.

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.

Who is online

Users browsing this forum: No registered users and 4 guests

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