Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /storage/content/49/145849/famitracker.com/public_html/forum/classes/dbHandler.php on line 29 FamiTracker
Login:
Menu:
Post: Author:
FamiTracker > General > Bug Reports & Feature Requests > Question/Request: VRC6 $9003 Owner: B00daW New post
Page 1 of 1 Sort:  
Question/Request: VRC6 $9003 Posted: 2012-08-27 18:44  (Last Edited: 2012-08-27 18:45) Reply | Quote
B00daW

Avatar

Member for: 4986 days
Status: Offline

#38729
[url=http://wiki.nesdev.com/w/index.php/VRC6_audio#Frequency_Control_.28.249003.29]According to the NESdev Wiki...

[quote=] Frequency Control ($9003)

Normally you should write $00 to this register on startup to initialize it, and not make any further writes to it. This is what all three original VRC6 games do.

$9003 controls the overall frequency of the VRC6 audio.

7 bit 0
---- ----
.... .ABH
|||
||+- Halt
|+-- 16x frequency (4 octaves up)
+--- 256x frequency (8 octaves up)

H - halts all oscillators, stopping them in their current state
B - 16x frequency, all oscillators (4 octave increase)
A - 256x frequency, all oscillators (8 octave increase)
[/quote]

I don't believe that FamiTracker uses the global VRC6 frequency multiplier bits as I have checked the source in v0.3.7.

How could we utilize these bits and what happens when both are set at once?

Posted: 2012-08-27 20:21 Reply | Quote
rainwarrior

Avatar

Member for: 4150 days
Location: Canada
Status: Offline

#38733
The only emulator that supports this is the NSFPlay beta. (It was first discovered by me about two weeks ago.)

It says on the wiki, but if you use multiple bits, there is an order of precedence. 256x overrides 16x, halt overrides them both.

It's really not useful at all, since you can just play notes 4/8 octaves up normally. You don't get any extra frequency resolution because it's literally just a shift on the period register. (All of the VRC6 games just wrote 0 to this register and left it alone after that.)

Posted: 2012-08-27 21:20 Reply | Quote
B00daW

Avatar

Member for: 4986 days
Status: Offline

#38737
Guess it might be neat for a little tracker transpose command since it's for all three channels.

Posted: 2012-08-28 00:59 Reply | Quote
jsr
Administrator

Avatar

Member for: 5924 days
Location: Sweden
Status: Offline

#38749
Yeah I don't think this is a very useful register. The only thing I can imagine is that this must be some kind of test feature.

An identical transpose command would be possible in software, but then compatible with all channels and not just VRC6.

_______________________
Programmer and developer
Page 1 of 1 Sort: