Offline
WOW MAN!

Currently you can only do a volume fade from the Song Editor but I thought it might be cool if you could do it from the Patterns too.

Problem is I've pretty much run out of bits to implement pattern commands.

Here's what you can do in Patterns:

- Select instrument
- Pitch slide
- Vibrato
- Pitch Table index (for arpeggios etc.)
- override volume for single note
- set Pattern volume
- override Duty Table index
- override Speed Table index

Of all those, you can also set the Speed Table index in the Song so personally I'd favour scrapping that function in the Patterns to make room for a "Fade Pattern Volume" command.

Any opinions?

I suppose for completeness, here's what you can do in the Song Master Track;

- jump to song step
- repeat current song step (1 to 32 times)
- set master (Song) volume
- set master volume fade
- set Speed Table index

Neil

Offline
Stockholm

I hope I understand you correctly when you say pattern commands. You mean commands put in the effects column, like most trackers?

If so, my first question is: is there are kill note command? And if yes, is it possible to kill a note with more detail then on a certain step, in other words, on a given tick of a step?

Also, I often use Delay Commands when tracking. For instance if the speed is set to 06, each step would be divided in to six ticks, and the delay command would enable you do shift the note on the given step up to five ticks forward. If the "kill note" command is placed in the note column, and not the effects column, delay and kill note could be combined together for what I asked for first: kill note with tick precision.

I hope my sentences makes sense to you smile

Cheers!

Offline
New York City
Random wrote:

If so, my first question is: is there are kill note command? And if yes, is it possible to kill a note with more detail then on a certain step, in other words, on a given tick of a step?

I usually thought the kill command was a bit odd. I am used to have a "kill note" character that will do teh same but without using an effect.

Also, volume should be hnadled in its own column instead of using an efect spot, unless you are short on space.

Jumping inside patterns is always useful too.

Offline
WOW MAN!

Hey Random! Nice to see you around here (though perfectly natural I guess) smile

Yes, Pattern Commands = effects column.

There is a "Key Off" command which currently has no parameters. It actually goes in the note column as opposed to being in the command/effect column.

I'll have a think about your suggestions. I hadn't thought about a delay command. What would you use that for? Phase effects with two unison voices and detune? (Actually, fuck, I don't have detune!)

It would be tricky in NTRQ because I have "dual speed methods" i.e. you can opt for either the usual frame (tick) count method or the more-resolution-but-less-accuracy counter overflow method (see my other posts). In fact you can dynamically change between them at any time in a song.

At the moment, the command doesn't totally KILL the sound (well it does on triangle and DPCM) - it actually forces the ADSR into the release phase. If you want it to kill the sound immediately you can have 0 release on your ADSR. There's certainly scope for a parameter on the "key off" command if required.

Offline
neilbaldwin wrote:

I hadn't thought about a delay command. What would you use that for?

I love a delay command. I use it to get some liveness and also a triplet note on occasion.

A kill command with tick resolution would also be very welcomed. Probably my most used command in LSDj.

Offline
WOW MAN!

I wish I hadn't asked wink

Right. Delay command. If I have this correct, you can set a delay "x" and when a new note is triggered it triggers on the next step + "x" ticks?

If so I'll have a look at how I might be able to do it. It's definitely a tricky one because I only call the pattern update routines every step. Have to think of a different approach to achieve the same results. Leave it with me smile

Offline
Tokyo, Japan

I like the idea of a Delay command, I would find it really useful for adding swing and groove in tracks. Also I like the idea of a a more finely tuned kill command than just "note off" its especially useful for varying percussion.


akira^8GB wrote:

I usually thought the kill command was a bit odd. I am used to have a "kill note" character that will do teh same but without using an effect.

Minikomi gets alot of value from the K command in LSDJ on metrodub. There are a couple of new tunes he showed me which should be out soon which are heavily based on D and K commands, lots of really interesting stuff. I think you will like it.

Offline
WOW MAN!

If you want the delay command just to add a swing/groove feel, that's what the speed table is designed for. Using multiple speeds like;

00: 04 01        ;set speed 4, jump to step 1
01: 04 02        ;set speed 4, jump to step 2
02: 02 00        ;set speed 2, jump back to step 0

In a 3/4 song would make the 3rd note play twice as fast as notes 1 and 2, giving you a swing feel.

I'm still looking into Delay (and Detune!) though. smile

Last edited by neilbaldwin (Jan 17, 2010 4:45 pm)

Offline
neilbaldwin wrote:

If I have this correct, you can set a delay "x" and when a new note is triggered it triggers on the next step + "x" ticks?

No, same step + x ticks.

Offline
WOW MAN!
tRasH cAn maN wrote:
neilbaldwin wrote:

If I have this correct, you can set a delay "x" and when a new note is triggered it triggers on the next step + "x" ticks?

No, same step + x ticks.

Yes, sorry, I worded that badly. smile

Offline
WOW MAN!

Oh, and all those that have contributed to this addition to my task list: what about my original question?!

smile

Offline
Stockholm

In addition to adding swing/groove, I tend to use delay commands for "grace notes" as well. Just small detail in leads mostly, to make the melody more jazzy somehow. For instance, a fragment of one of my melodies could be like this (D0X = delay note by X ticks. xx = kill note):

00 E-5  --
01 --     --
02 --     --
03 F#5 D03
04 G-5 --
05 --     --
06 xx    --
07 --     --
08 C-5  --
09 --     --
0A --     --
0B --     --
0C xx    --

And then again, if the delay command could be used in combination with the kill note command, that would be great.

Otherwise, in response to your original question, I agree that it would be easier if you could set volume in the pattern editor as well. In what way have you run out of bits to add? Technically hard to implement more commands?

Then another question: How does the pitch bend work? Simply bend up/bend down, or some kind of slide-to-note (legato) command as well?
In some trackers, the legato command can be used not only to make an audible slide to the note, but also to avoid the instrument to re-trigger. So for instance if you have a looping volume envelope, and just for the sake of example, a looping pulse wave modulation as well, it can sometimes be irritating to have the evenlope/pwm loop re-trigger on every new note. Some trackers handle this by removing the instrument number in the editor (or instrument "0"), and as I said, some (though mostly sample-based trackers as far as I know) do it with the slide-to-note command.

Really excited about the project, looking forward to try it hands on smile

Offline
WOW MAN!

That all makes sense. I'm having a serious look at how to implement it smile

I've "run out of bits" because I only have one command/effects byte per pattern step. Currently;

NOTE ENCODING
------------------------

00 - 57 = note A1 to B8
58 = KEY OFF
60 - 7F = *unused*
80 - D7 = tie note A1 to B8
E0 - EF =  *unused*
F0 = stop pattern early
F1 = set pattern speed
FF = NOP

NOTE COMMAND (effect) ENCODING
------------------------------------------------

00-1F = instrument
20-3F = slide
40-5F = vibrato
60-9F = pitch table index
A0-AF = change velocity for Pattern
B0-BF = change velocity for single note
C0-DF = set duty table index
E0-F3 = set speed table index
F4-FE = *unused*
FF    = NOP

As you can see in the command/effect list, I only have from $F4 to $FE to play with. I could make it so $F4 to $FD = delay (0 to 9). Would 9 ticks be enough as a maximum delay?

But then I'm left with no room at all for any other commands. Certainly no room for Pattern Volume Fade. Detune, I think, would have to go in the Pitch Table.

The Pitch Slide is a "slide to" function, always. To avoid restarting the note I have "tie notes" so you set these in the note column. Same effect as your slide-to-same-note trick.

Offline
uhajdafdfdfa

The maximum delay is normally however many ticks in a step, minus one (so you can't delay notes into the next step)... And I can't imagine people tracking at 10 or more ticks per step very often (I usually use 6, 4 or 3, I imagine most people are the fairly similar). So yeah, I guess 9 ticks would be enough as a maximum delay! smile

Offline
WOW MAN!

Heh.....I just figured out a really cheap way to do it.

Gave it a quick rough test and it seems pretty good.

So, anyway, back to the poll: "Pattern Master Volume Fade Command" or "Pattern Speed Table Command"? Which is better?

smile

Offline
New York City

Can't you add the pattern volume to the Song commands? This is why I suggested a "transpose" or extra effect column per pattern in song arrangement section.

Last edited by akira^8GB (Jan 17, 2010 10:07 pm)