Goto Effectcommand

I somehow remembered that FBXX would allow me to goto another pattern than the next - it doesn’t. I looked through the EffectCommands page in the manual, and it seems it’s not possible.

I think this would be handy, especially in a live situation, where I could prepare a song for live performance by inserting gotos in a seperate track, that would loop parts until I send renoise somewhere else by scheduling a new pattern.

I do realize that you might end up with a messy song structure (gotos are not really a clear way of programming in the first place), but I still think it could come in handy.

What do you think?

FExx seems to be free… (and in combination with FBxx it could allow for jumping to a specific line of a specific pattern :o)

Maybe with a future full fledged arranger it is possible to schedule multiple cue points (that little ‘play’ button icon in the utter left of the pattern arranger) and save such a set-up with a song, that would be similar to having a goto command hard coded.

Addendum :)

In Steinbergs music program for rookies ‘Sequel’, it is possible to group ‘patterns’ under colored arranger blocks that can be named.

If that’d be translated in Renoise you could say something like:

pattern 1-4 = block A (intro)
pattern 5-6 = block B (verse 1)
pattern 7-10 = block C (verse 2)
pattern 11-12 = block D (chorus 1)
etc

Live you could click the arranger block representing a pattern section and it would loop those patterns indefinitely, till you click another block (have it trigger right away or after X amount of bars). In sequel there is also a possibility to schedule the blocks like, A-A-D-B-E-A-C etc and you can re-arrange these on the fly . I wouldn’t mind seeing these functions in Renoise in the future!

Deal :)

We’re running out of commands though?

Protracker also had this, and it was great:

 Cmd E6. PatternLoop [Loops:$0-$F]  
 ----------------------------------  
 Usage: $E6 + number of loops  
  
 This command will loop a part of a pattern.  
  
 Example: C-300E60 Set loopstart.  
 C-300E63 Jump to loop 3 times before playing on.  

That sounds very nice, too. Less geeky and more mousy/clicky :)

Basically I could “just” combine the patterns I want to loop and enable loop pattern. But that has two problems:

  1. I quickly hit the 512 lines barrier.

  2. I often need “something special” to happen before going into a new part, like a pickup or break or fill before the chorus. That’s impossible to do if verse is one block and chorus is one block. With a goto command I could loop a group of pattens that make up a verse, with the last pattern being say half a bar. Then I could simply schedule the pickup 1/2 bar and go into a looping chorus.

Verse:
0 (1 bar)
1 (1 bar)
2 (1 bar)
3 (1/2 bar) ← schedule 5 when playing this to get a chorus
4 (1/2 bar) goto 0, so loop verse if not scheduled

Pickup for chorus:
5 (1/2 bar)

Chorus
6 (1 bar)
7 (1 bar)
8 (1 bar) ← schedule 10 when playing this to end chorus and get a verse
9 (1 bar) goto 6, so loop chorus if not scheduled

End of chorus, leading to verse:
10 (1 bar) goto 0, back to verse