VRC7 Instruments - Lagrange Point

Discuss NSF files, FamiTracker, MML tools, or anything else related to NES music.

Moderator: Moderators

Post Reply
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

VRC7 Instruments - Lagrange Point

Post by dougeff »

VRC7 audio has 15 presets and 1 blank / custom instrument available. Lagrange Point used a unique custom instrument for each song (I think it reuses one of them).

I found the table of settings and it actually contains over 90 instruments, so... most of them were unused in the game music. (I can't be sure they were never used). Anyway... I copied them over to famitracker files, if anyone is interested. Split accross 2 different files.

Here is the table...


$25 $A1 $23 $17 $65 $81 $25 $25
$61 $A1 $0A $21 $76 $51 $12 $33
$B9 $01 $20 $17 $A8 $A5 $51 $02
$88 $81 $25 $1D $F0 $C2 $10 $23
$21 $67 $0A $02 $93 $90 $74 $45
$01 $02 $CF $04 $C3 $86 $11 $12
$03 $21 $0C $06 $E8 $E1 $32 $25
$03 $21 $12 $07 $E6 $81 $32 $03
$03 $21 $0B $07 $E7 $81 $32 $27
$23 $21 $20 $17 $41 $73 $71 $13
$21 $61 $1B $07 $93 $81 $12 $06
$02 $01 $12 $03 $E2 $81 $10 $11
$04 $01 $1E $03 $80 $73 $10 $33
$04 $01 $23 $07 $80 $80 $00 $02
$02 $01 $12 $03 $E2 $E2 $10 $10
$03 $01 $15 $07 $E6 $82 $21 $63
$01 $01 $00 $06 $E0 $E0 $00 $00
$32 $21 $1E $06 $E1 $72 $01 $48
$23 $61 $16 $35 $64 $81 $21 $06
$23 $61 $1B $06 $64 $91 $51 $06
$61 $A2 $10 $04 $76 $62 $12 $25
$31 $A1 $0C $00 $76 $70 $41 $04
$21 $23 $0E $03 $93 $79 $66 $07
$03 $00 $5A $03 $E2 $E2 $10 $10
$33 $25 $17 $00 $43 $83 $14 $17
$B9 $01 $15 $17 $A8 $A5 $51 $02
$01 $01 $06 $08 $FA $B4 $30 $63

ff

$61 $A1 $0A $21 $76 $52 $12 $23
$63 $21 $18 $27 $34 $52 $32 $23
$61 $A3 $08 $22 $82 $42 $43 $04
$32 $61 $1A $06 $91 $66 $01 $26
$01 $06 $14 $04 $92 $94 $43 $34
$11 $51 $0A $0D $D8 $F4 $23 $46
$13 $41 $08 $0D $D6 $F6 $31 $00
$13 $41 $0A $0D $D8 $F6 $22 $12
$61 $63 $02 $01 $92 $90 $74 $45
$A1 $04 $13 $03 $54 $B9 $11 $02
$A5 $42 $07 $08 $54 $E9 $31 $02
$00 $02 $0C $08 $E4 $E4 $23 $12
$03 $61 $0B $07 $E8 $81 $42 $47
$21 $61 $1A $07 $74 $A3 $42 $17
$23 $28 $16 $03 $92 $84 $50 $36
$21 $04 $0C $00 $73 $74 $41 $43
$31 $34 $18 $07 $63 $46 $1A $16
$14 $82 $0F $05 $C5 $F4 $11 $22
$21 $26 $14 $02 $42 $88 $30 $14
$02 $08 $D3 $05 $C4 $C4 $23 $26
$01 $25 $0C $03 $23 $62 $42 $37
$03 $21 $0A $07 $E7 $84 $32 $37
$01 $05 $0C $02 $80 $D2 $02 $33
$21 $26 $0E $06 $42 $84 $62 $15
$0B $01 $0E $05 $C6 $A3 $32 $14
$21 $21 $15 $04 $12 $31 $52 $23
$01 $06 $04 $14 $86 $A3 $23 $32
$01 $06 $04 $14 $86 $A3 $42 $34
$1A $81 $4B $05 $C6 $A4 $23 $23
$0D $81 $4E $07 $C6 $A4 $23 $23
$03 $21 $0C $04 $86 $93 $33 $15
$21 $41 $09 $00 $DD $8F $4A $05
$01 $07 $11 $20 $D2 $84 $F4 $F5
$02 $01 $06 $00 $A3 $E2 $F4 $F4
$01 $01 $11 $00 $C0 $B4 $01 $F6
$F9 $F1 $24 $20 $95 $D1 $E5 $F2
$F9 $F1 $24 $00 $95 $D1 $E5 $F2
$02 $11 $0E $00 $CA $E6 $44 $24
$E0 $F4 $1B $00 $11 $F0 $04 $08
$FF $70 $19 $20 $50 $1F $05 $01
$13 $11 $11 $00 $FA $F2 $21 $F4
$A5 $41 $10 $00 $FB $B9 $11 $02
$41 $32 $09 $00 $C7 $F9 $14 $04
$41 $43 $0B $00 $94 $B0 $33 $F6
$01 $03 $0B $00 $BA $D9 $26 $06
$41 $01 $00 $00 $FA $D9 $37 $04
$02 $03 $09 $20 $CB $FF $39 $06
$18 $11 $09 $20 $F8 $F5 $26 $26
$0B $04 $09 $00 $F0 $F5 $01 $27
$40 $40 $07 $00 $D0 $D6 $01 $27
$00 $01 $07 $00 $CB $E3 $36 $25
$11 $11 $08 $00 $FA $B2 $20 $F4
$11 $11 $11 $00 $C0 $B2 $01 $F4
$17 $51 $15 $00 $E7 $95 $21 $03
$31 $71 $19 $00 $42 $62 $26 $24
$62 $71 $25 $00 $64 $43 $12 $26
$21 $03 $0B $00 $90 $D4 $02 $F5
$01 $03 $0A $00 $90 $A4 $03 $F5
$42 $52 $0E $00 $90 $D4 $02 $F5
$35 $31 $26 $00 $50 $30 $76 $06
$72 $32 $5A $00 $99 $F5 $14 $15
$72 $12 $16 $00 $F9 $F5 $33 $03
$61 $21 $11 $26 $86 $54 $23 $06
$63 $70 $1B $00 $75 $4B $45 $15
$61 $A1 $0A $20 $76 $54 $12 $07
$61 $78 $0D $00 $85 $F2 $14 $03
$31 $71 $15 $00 $B6 $F9 $03 $26

ff
Attachments
LagrangePoint2.ftm
(3.56 KiB) Downloaded 131 times
LagrangePoint.ftm
(3.58 KiB) Downloaded 132 times
nesdoug.com -- blog/tutorial on programming for the NES
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: VRC7 Instruments - Lagrange Point

Post by dougeff »

And here are the presets (and hidden drum presets)


(from wiki)

0 | -- -- -- -- -- -- -- -- | (Custom Patch)
1 | $03 $21 $05 $06 $E8 $81 $42 $27 | Buzzy Bell
2 | $13 $41 $14 $0D $D8 $F6 $23 $12 | Guitar
3 | $11 $11 $08 $08 $FA $B2 $20 $12 | Wurly
4 | $31 $61 $0C $07 $A8 $64 $61 $27 | Flute
5 | $32 $21 $1E $06 $E1 $76 $01 $28 | Clarinet
6 | $02 $01 $06 $00 $A3 $E2 $F4 $F4 | Synth
7 | $21 $61 $1D $07 $82 $81 $11 $07 | Trumpet
8 | $23 $21 $22 $17 $A2 $72 $01 $17 | Organ
9 | $35 $11 $25 $00 $40 $73 $72 $01 | Bells
A | $B5 $01 $0F $0F $A8 $A5 $51 $02 | Vibes
B | $17 $C1 $24 $07 $F8 $F8 $22 $12 | Vibraphone
C | $71 $23 $11 $06 $65 $74 $18 $16 | Tutti
D | $01 $02 $D3 $05 $C9 $95 $03 $02 | Fretless
E | $61 $63 $0C $00 $94 $C0 $33 $F6 | Synth Bass
F | $21 $72 $0D $00 $C1 $D5 $56 $06 | Sweep

unused
| $01 $01 $18 $0F $DF $F8 $6A $6D | Bass Drum
| $01 $01 $00 $00 $C8 $D8 $A7 $68 | Snare Drum / Hi-Hat
| $05 $01 $00 $00 $F8 $AA $59 $55 | Tom / Top Cymbal
Attachments
VRC7presets.ftm
(1.62 KiB) Downloaded 125 times
nesdoug.com -- blog/tutorial on programming for the NES
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: VRC7 Instruments - Lagrange Point

Post by dougeff »

I had a hard time deciding what to name each instrument. You might disagree with my descriptions.

Also, I haven't got around to figuring out which song used which custom instrument.
nesdoug.com -- blog/tutorial on programming for the NES
User avatar
Ben Boldt
Posts: 1149
Joined: Tue Mar 22, 2016 8:27 pm
Location: Minnesota, USA

Re: VRC7 Instruments - Lagrange Point

Post by Ben Boldt »

I actually did some work on this recently:

https://wiki.nesdev.com/w/index.php/Use ... 13_Patches

Also this thread:

viewtopic.php?t=23328

Interestingly, one of the Lagrange Point patches matches a built-in VRC7 patch. None of the other ones match anything else I could find.
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: VRC7 Instruments - Lagrange Point

Post by dougeff »

After looking into the source code of Dn-Famitracker... I noticed that there are multiple versions of the preset patches. You can switch between them if you click File/Configurations/Emulation/ then change the VRC7 patch set.

My question is, why are there multiple versions of the presets? Shouldn't this be a known constant?

If you look at the value tables, they aren't even close to each other. Are we just guessing at what the preset values are?

Which one would be considered "accurate" to the actual VRC7 hardware?

The one that Dn-Famitracker defaults to is...
https://github.com/Dn-Programming-Core- ... one_nuke.h

Which appears to be the same as the one one the WIKI (under VRC7 audio).
nesdoug.com -- blog/tutorial on programming for the NES
User avatar
Quietust
Posts: 1920
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: VRC7 Instruments - Lagrange Point

Post by Quietust »

dougeff wrote: Wed Mar 09, 2022 6:18 am My question is, why are there multiple versions of the presets? Shouldn't this be a known constant?
They've only been "a known constant" for the past 3 years - before that, there were a bunch of different sets that various people had "ear-tuned" as close as they could get.
dougeff wrote: Wed Mar 09, 2022 6:18 am If you look at the value tables, they aren't even close to each other. Are we just guessing at what the preset values are?
Clearly, the people who "ear-tuned" the presets didn't have very good ears.
dougeff wrote: Wed Mar 09, 2022 6:18 am Which one would be considered "accurate" to the actual VRC7 hardware?

The one that Dn-Famitracker defaults to is...
https://github.com/Dn-Programming-Core- ... one_nuke.h

Which is notably different than the table found on the wiki... in fact, every table seems to be different from the table found on the wiki (on the VRC7 page).
Er, that one exactly matches what's on the wiki page...
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: VRC7 Instruments - Lagrange Point

Post by dougeff »

Er, that one exactly matches what's on the wiki page...
Right, I was looking at the wrong thing, and I edited my original statement, but you were too fast for me.
nesdoug.com -- blog/tutorial on programming for the NES
User avatar
Quietust
Posts: 1920
Joined: Sun Sep 19, 2004 10:59 pm
Contact:

Re: VRC7 Instruments - Lagrange Point

Post by Quietust »

So, to answer your question, the "Nuke.YKT" patch set is the definitive 100% correct one, and all of the other patch sets out there can be ignored.
Quietust, QMT Productions
P.S. If you don't get this note, let me know and I'll write you another.
lidnariq
Posts: 11432
Joined: Sun Apr 13, 2008 11:12 am

Re: VRC7 Instruments - Lagrange Point

Post by lidnariq »

dougeff wrote: Wed Mar 09, 2022 6:18 am My question is, why are there multiple versions of the presets? Shouldn't this be a known constant?
Because the initial guesses were wrong, but it was deemed better to let musicians choose which of the previous incorrect patch sets than to make them use older versions.
User avatar
rainwarrior
Posts: 8732
Joined: Sun Jan 22, 2012 12:03 pm
Location: Canada
Contact:

Re: VRC7 Instruments - Lagrange Point

Post by rainwarrior »

dougeff wrote: Wed Mar 09, 2022 6:18 amMy question is, why are there multiple versions of the presets?
Several revisions of the patch set were estimated over the years by different people. Since Famitracker existed for a very long time as well, when it got better versions of the patches, we still wanted support for the older ones so the music made with those patches could be still be played as it was originally composed.

Same deal with NSFPlay. I kept legacy patch sets because there's a lot of VRC7 Famitracker NSFs out there that were meant for the earlier sets. (...and PPMCK, etc.)

Of course you should use the real dumped set for Lagrange Point. Anything made by homebrewers, on the other hand, becomes an archeology problem.
dougeff wrote: Wed Mar 09, 2022 6:18 amIf you look at the value tables, they aren't even close to each other. Are we just guessing at what the preset values are?
I think all of us that made estimations were using the CopyNES' VRC Tuner feature. You make a change, and play it back through VRC7 as a custom patch, then you play the same note on the built-in patch, and you listen for differences, or analyze differences via FFT/etc. Over time we got closer and closer.

A lot of the values that "look" different aren't functionally different. Not all parameters do something meaningful at all times (e.g. modulator decay parameters that are never reached because of a short carrier envelope).

A lot of the things that were different, we could hear they were different, but it's really hard to guess parameters based on sound. Like if you have everything except the attack envelope perfect, you might easily hear that it's 4 instead of 5. If 2 or more parameters are wrong and they interact with each other (e.g. modulator strength vs. its envelope, or keyboard rate scaling, etc.) maybe any one thing you try changing makes it worse, and what you really need to do is change a few things at once. We also didn't know how to reset the LFOs before NukeYKT's dump, so any patches with LFO (a lot of them) were especially tricky to compare, because the start of a note wouldn't ever line up with consistent part of the LFO.

When the real dumped set appeared, I did a comparison vs. my last best estimate, broken down by parameter, if that's of interest:
forum post
User avatar
dougeff
Posts: 3079
Joined: Fri May 08, 2015 7:17 pm

Re: VRC7 Instruments - Lagrange Point

Post by dougeff »

Interesting.

I'm pretty late to the game (and generally wasn't paying much attention) to VRC7 information.

I guess Dn-Famitracker is better than previous Famitracker versions, due to the corrected VRC7 presets.

Also, I noticed that you can play multiple notes simultaneously in the virtual keyboard, whereas earlier Famitracker versions, you could only play 1 note at a time.

I don't think the text export from Dn-Famitracker works with famitone (without editing the export). I'll have to look into that.
nesdoug.com -- blog/tutorial on programming for the NES
Post Reply