mirror of
https://github.com/tildearrow/furnace.git
synced 2024-11-19 11:05:11 +00:00
ef104ce0b0
2 Pulse channels: - 8 level pulse duty cycle, DAC mode(just ignores duty cycle)/pulse wave mode, 4 bit volume. - Furnace support PCM playback in pulse channels with duty cycle ignore mode. Sawtooth: - nothing but 6 bit volume (8 bit accumulator in technically) and 12 bit frequency (periodic). VRC6 instrument: - 6 bit Volume macro for finer sawtooth volume handling, also 3 bit Duty cycle macro for pulse channels. Duty, PCM mode command and Duty macro affects for pulse channel only.
16 lines
No EOL
812 B
Markdown
16 lines
No EOL
812 B
Markdown
# Konami VRC6
|
|
|
|
Its one of NES mapper with sound expansion, and one of two VRCs with this feature by Konami.
|
|
|
|
The chip has 2 pulse wave channel and single sawtooth channel.
|
|
volume register is 4 bit for pulse wave and 6 bit for sawtooth, but sawtooth output is corrupted when volume register value is too high. because this register is 8 bit accumulator in technically, its output is wraparoundable.
|
|
|
|
pulse wave duty cycle is 8 level, it can be ignored and it has potential for DAC at this case: volume register in this mode is DAC output and it can be PCM playback through this mode.
|
|
Furnace supports this routine for PCM playback, but it's consume a lot of CPU resource in real hardware.
|
|
|
|
# effects
|
|
|
|
- `12xx`: set duty cycle. (0 to 7)
|
|
- `17xx`: toggle PCM mode.
|
|
|
|
* All effects are affects at pulse channels only. |