Here is the bouncing ball. Started by executing Row 01 (SHIFT+OK on 01) or the XMAP FX. Works with V2.0C
BOUNCE1.MAP (Size: 1,47 KB / Downloads: 48)
Variable A: Width = Amount of notes
Variable B: Helpcounter to create the 'timebase'
Variable C: Tempo
Variable D: Note Offset
Variable E: Helpcounter
Variable F: Type of Trigger
So generally, 03 - 06 is a simple timebase and decrements E.
08 Skips always if A hasn't been 'executed / initialized'.
09 Skips until E reaches A and gets reset again on 0A
On 0B Var A is decremented. That repeats and gets faster as A is getting smaller and E reaches it faster until A is 0 and 08 will skip it again.
And VA is also being used to play a note and because it is getting smaller each time it will also play each time a lower note. D is just an offset to the Note you can add to have it in a range you like.
Variable A: Width = Amount of notes
Variable B: Helpcounter to create the 'timebase'
Variable C: Tempo
Variable D: Note Offset
Variable E: Helpcounter
Variable F: Type of Trigger
Code:
00 SKIP 01 = =0=0 > //always skip 1 row
01 VAR # A #025 > //set variable A to 25 (amount of notes)
02 -- //upper part is to allow the start of the bouncing ball only from the XMAP FX command
03 CALC INC VBVB > SETV V B SRC //Increment Variable B (B=B+1)
04 SKIP 02 > VCVB > //SKIP 2 rows if Variable C is bigger than Variable B
05 VAR # B #000 > //Reset Variable B
06 CALC INC VEVE > SETV V E SRC //Increment Variable E (E=E+1)
07 -- //upper part generates a timebase/ tempo defined by variable C
08 SKIP 05 > =1VA > //Skip the next 5 rows if Variable A is 0 (or Var A < 1)
09 SKIP 04 < VEVA > //Skip the next 4 rows is Variable E is smaller then Variable A
0A VAR # E #000 > //Reset Variable E again.
0B CALC DEC VAVA > SETV V A SRC //Decrement Variable A (A=A-1)
0C VAR # F #0E1 > TRIG VAL* TR 1 // Generate a Trigger E1 on Trigger 1
0D CALC ADD VAVD > CV NOTE CV 1 // VA holds a note number, added offset defined by Variable D
//Output the Note on CV 1So generally, 03 - 06 is a simple timebase and decrements E.
08 Skips always if A hasn't been 'executed / initialized'.
09 Skips until E reaches A and gets reset again on 0A
On 0B Var A is decremented. That repeats and gets faster as A is getting smaller and E reaches it faster until A is 0 and 08 will skip it again.
And VA is also being used to play a note and because it is getting smaller each time it will also play each time a lower note. D is just an offset to the Note you can add to have it in a range you like.
PLEASE use the search function if something have been asked or discussed before.
Every (unnessesary) forum support means less time to develop! But of course, i am here to help!
Every (unnessesary) forum support means less time to develop! But of course, i am here to help!

