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
Basically, I am thinking it would be a good idea to somehow impliment a way to have a new note follow the envelope of the previous note.
An example of what I mean is posted below.
As you can see, I have it set up so instrument 0 has the envelope, and instrument 1 is representing what would be the tail end of the envelope. Implimenting something like this will avoid having to create many new instruments depending on the complexity of the track. It will be less of a mess in general.
The only way I can think of this is to have new notes without an instrument number behave this way.
[quote=Raijin]The only way I can think of this is to have new notes without an instrument number behave this way.[/quote]
That's not possible though as notes without instruments are supposed to keep the last instrument.
I see what you want and it's basically the same thing people have requested for the VRC7 chip, I'm not sure exactly how it should be done though. Maybe by adding a new pattern command?
Well, if placing notes with no instrument number actually has a function (I didn't think it did to be honest), then I suppose the only way would be a new effect.
I second this. It's a thing I definitely miss going from LSDJ to FamiTracker. I like Raijin's idea of invoking it by omitting the instrument numbers. That seems like the most elegant solution if it gets added.
_______________________
electricity comes from other planets
[quote=Raijin]Well, if placing notes with no instrument number actually has a function (I didn't think it did to be honest), then I suppose the only way would be a new effect.[/quote]
If you have a pattern that doesn't define an instrument at its start, it inherits whatever instrument was last in use by the previous pattern. So if you have one pattern that gets repeated with different instruments, you don't actually have to define separate patterns for each repetition. (I've done this.)
I'm also starting to think that 'instruments' as we know them are actually a FT concept and all it actually does for the NES side of things is assign the instrument's specific volume/etc. sequences to the channel.
_______________________
Where to find me:
YouTube: [url=http://youtube.com/user/stratelier]http://youtube.com/user/stratelier
DeviantArt: [url=http://stratadrake.deviantart.com/]http://stratadrake.deviantart.com/
imo, this problem should be tackled as being ADSR envelopes on the PSGs. I assume LSDJ people think in this way.
A line like
C-3 01
Should begin the volume envelope, whereas a line like
D-3
Would not retrigger the start of the envelope, but would act as a new frequency without a key-on.
[edit:]
And if there is no instrument number defined in the current pattern, then there is by default no key-on for there to be any sound playing, so it shouldn't play any sound for that line.
Or it could look backwards at previous patterns if you ever figure out getting the same problem with lingering Axy/4xy/7xy dealt with.
[quote=Xyz_39808]A line like
C-3 01
Should begin the volume envelope, whereas a line like
D-3
Would not retrigger the start of the envelope, but would act as a new frequency without a key-on.[/quote]
I agree this can be a useful feature to take advantage of when you want it, but is it compatible with how the NES actually plays an NSF? (E.g. if switching to a new note frequency automatically resets that channel's sequence counter to zero, then it's a cantfix.) I do not know the answer to that.
_______________________
Where to find me:
YouTube: [url=http://youtube.com/user/stratelier]http://youtube.com/user/stratelier
DeviantArt: [url=http://stratadrake.deviantart.com/]http://stratadrake.deviantart.com/
I think (but am not sure) that would be true if you used hardware volume envelopes, but the software volume register are completely independent from the frequency register.
[url=http://www.mmlshare.com/tracks/view/883]This NSF (with source) demonstrates that it's possible to play a new note without resetting the volume.
_______________________
Follow me on [url=https://twitter.com/jrlepage2a03]Twitter.
I record (some) NSFs on hardware. Feel free to [url=http://www.famitracker.com/forum/posts.php?id=3633]request a hardware render.
[quote=Raijin]Well, if placing notes with no instrument number actually has a function (I didn't think it did to be honest), then I suppose the only way would be a new effect.
Can you think of anything in particular though?[/quote]
There might be other ways, for example a special command in the instrument column would be possible.
[quote=Stratelier]I'm also starting to think that 'instruments' as we know them are actually a FT concept and all it actually does for the NES side of things is assign the instrument's specific volume/etc. sequences to the channel.[/quote]
This is an important understanding that I think anyone writing music for the NES should be aware of. All the NES does is to translate the 15 volume levels, 2047 pitch levels, etc, into sound. The rest (instruments, patterns, orders etc) is just software.
[quote=jrlepage]I think (but am not sure) that would be true if you used hardware volume envelopes, but the software volume register are completely independent from the frequency register.
[url=http://www.mmlshare.com/tracks/view/883]This NSF (with source) demonstrates that it's possible to play a new note without resetting the volume.[/quote]
It's possible to write the 8 low bits of the period when using hardware envelopes, but writing the 3 high bits will reset it.
[quote=jsr]This is an important understanding that I think anyone writing music for the NES should be aware of. All the NES does is to translate the 15 volume levels, 2047 pitch levels, etc, into sound. The rest (instruments, patterns, orders etc) is just software.[/quote]
I guess what I mean is more along the lines of: If a given NES cartridge uses NSF-based software code to play its BGM, the distinction between an NSF limitation and an NES APU limitation is moot to the composer.
_______________________
Where to find me:
YouTube: [url=http://youtube.com/user/stratelier]http://youtube.com/user/stratelier
DeviantArt: [url=http://stratadrake.deviantart.com/]http://stratadrake.deviantart.com/
I'm a bit unsure what you mean with NSF-based software? NSF was designed to contain ripped game music so it's just a container format, much like iNES. There is no significant difference between the code in a NSF and the code in a game.
Regarding limitations, the NSF specification is missing support for DPCM IRQs, that's the only thing I can think of.
[quote=jsr]I'm a bit unsure what you mean with NSF-based software? NSF was designed to contain ripped game music so it's just a container format, much like iNES. There is no significant difference between the code in a NSF and the code in a game.[/quote]
Okay, thanks for explaining. I do wonder what kind of tools actual composers used to write actual NES music sometimes, and it's easy to get confused between what a tool's limitations are and what the hardware's limitations are. Kinda like the difference between even assembly language vs. raw machine code.
_______________________
Where to find me:
YouTube: [url=http://youtube.com/user/stratelier]http://youtube.com/user/stratelier
DeviantArt: [url=http://stratadrake.deviantart.com/]http://stratadrake.deviantart.com/
Then I recommend reading [url=http://famitracker.com/forum/posts.php?id=6172]this thread if you already haven't.
Considering that the composer often also was a programmer back in the days, I think it's safe to assume that the limitations rarely depended on the tools. It's more related to the limited resources (RAM and ROM) available for music when used together with a game.
This is off-topic though so I recommend starting a new thread if you wish to further discuss software vs hardware limitations.