Offline
Philadelphia, PA

By the magic of decapping a 2a03, additional hidden "TEST" features were found on at least a couple revisions of the 2a03 on pin 30.  Not everything has been fully tested to determine all capabilities, which revisions of 2a03 contain the set of TEST features, or if the PAL 2a07 and its revisions have any TEST features at all.  Among the known features there is extended APU function in addresses $4018 through $401A.  Registers $4018 through $401A are readable.  When read those registers supply the current values of the sound channels.  Interestingly enough, when the first 4 bits of $401A are written to it changes the position of the triangle channel.  In laymans terms, it allows for 4-bit PCM on the triangle channel.  Why was this feature conceived and hidden?  The 7th bit of $401A locks all sound channels if turned on.

Related post here.  More technical details are explained within.

Not much testing has been done as of yet, but there are great possibilities for demoscene productions and these functions.  Also there may be additional functions undiscovered with the TEST pin given voltage that we are all unaware to the possibilities.

Offline
buffalo, NY

4bit PCM means 16 steps of envelope volume on the triangle channel right?

Offline
rochester, ny
danimal cannon wrote:

4bit PCM means 16 steps of envelope volume on the triangle channel right?

that would be insane if 30 years after the NES came out, the triangle wave gets 16 steps of volume. i love this community.

Offline
Savannah, Georgia
danimal cannon wrote:

4bit PCM means 16 steps of envelope volume on the triangle channel right?

HOLY FUCK

Offline
Nottingham, UK

Damn, less limitations. How are people going to be creative now?

Offline
Philadelphia, PA

To be very honest, much of this is speculations until proof of concepts are made. The hardware is there.

Offline
uhajdafdfdfa
danimal cannon wrote:

4bit PCM means 16 steps of envelope volume on the triangle channel right?

i think it means using the 16 levels the triangle already has to play audio samples actually

Offline
Philadelphia, PA
ant1 wrote:
danimal cannon wrote:

4bit PCM means 16 steps of envelope volume on the triangle channel right?

i think it means using the 16 levels the triangle already has to play audio samples actually

Yes. I figure that the triangle waveform starts at 0, goes up 15 steps, then goes down 15 steps. You could make a few 32 sample (or step) wave tables -- maybe 75%, 50%, 25%, and 12.5% volume that could follow the same frequency tables; but full 4-bit (16 step) volume would be impractical.

Distortion loop commands or filters might be cool too.

Offline
San Francisco

this is rad. that is all.

Offline
Chicago IL

i was thinking a while ago, couldn't you do some clever DPCM delta counter programming to act as a volume control for the triangle channel?

Offline
buffalo, NY
Saskrotch wrote:

i was thinking a while ago, couldn't you do some clever DPCM delta counter programming to act as a volume control for the triangle channel?

I'm not sure about the specifics, but there's a trick like that where you're able to get 50% volume on the triangle channel but thats about it

Offline
Chicago IL

ahhh alright FINE

:slams the door:

Offline
Neo Jersey

yea, Z7F = approx 50% tri volume, but you get a wicked popping noise, moreso than usual anyway. having actual vol control on the tri would pretty freakin awesome. this is quite a breakthrough. i wish you the best of luck sir

Offline
Philadelphia, PA

Right for two reasons actually.  Setting Z7F in FamiTracker makes a direct write to $4011 (the 7-bit DAC register; basically the raw audio sample register).  $7F is 127 decimal; which is the highest sample position and number for the 7-bit register.  This corresponds to volume as well.  $7F in a DPCM decoded sample (or a directly written 7-bit PCM sample) to the DAC is the highest "volume" marker in the sample waveform that can be made in 7-bits.  So basically even though you aren't hearing anything, it's basically a loud low frequency drone.  The triangle and noise channel pins are all shared with the DPCM channel going to the audio out on the NES/Famicom.  So if the DPCM channel is droning a loud low frequency, then the triangle and noise channels are in competition with it.  So basically it would be like two people trying to speak on stage without amplification while an amplifier connected to nothing is turned on next to them with the gain all the way up; drowning out a lot of their speech with the low frequency.

Last edited by B00daW (May 10, 2012 5:01 am)

Offline
Michigan

triangle channel volume control?

Offline
Godzilladelph
ForaBrokenEarth wrote:

Damn, less limitations. How are people going to be creative now?

yo dawg u need to chk out dis program fruity logic studio live pro 8. shits got mad everything