End; 5: Begin End; 6: Begin End; 7: Begin End; 8: Begin End; 9: Begin End; 10: Begin End; 11: Begin End; End;//END CASE END END; END;
//PROCESS PROCEDURE PROCESS(); BEGIN
if flag = 1 then BEGIN flag:=0; MIDIOut.Length(2); MIDIOut.asMidi(0,MIDINotex1); MIDIOut.asMidi(1,MIDINotex2); END else MIDIOut.Length(0);
END;
Statistics: Posted by oli_lab — 08 Dec 2023, 01:49
]]>2023-12-05T17:58:53+02:002023-12-05T17:58:53+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45099#p45099i could change the script accordingly and it seems to work, but it looks a little hacky....
Statistics: Posted by oli_lab — 29 Nov 2023, 01:21
]]>2023-11-27T15:13:30+02:002023-11-27T15:13:30+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45087#p45087Unfortunately putting the things in the callback procedure doesn't help, the MIDI-Out commands just keep on sending, my midi-interface transmit-led keeps on blinking like wild while all the MIDI-Note from a state are sent repeatedly. Thats really wired, its like that a buffer holding the MIDI-Notes is not cleared after sending. The states-input changes not fast, it's connected to a increment button and a counter. When i put a pass-change module on the midi-out-port of the script is works, so that the notes are only sent one time, but this would be a really ugly kludge, and i would like to know how to solve this error in the script.
]]>2023-11-26T16:41:24+02:002023-11-26T16:41:24+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45085#p45085Statistics: Posted by oli_lab — 26 Nov 2023, 15:41
]]>
2023-11-23T15:01:27+02:002023-11-23T15:01:27+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45077#p45077Somehow i don't get how to send MIDI...
how does the MIDIOut TParameters works, whats the meaning of the first parameter (index)?
procedure TParameter.asMidi(index : integer; val : TMIDI); // set the value of a MIDI parameter at the index
i made a simple script, it works somehow, what is really puzzleing is that there is permanently sending the MIDI of the state, not only one time when the state is changing? The wire from the MIDIOut-Port to the MIDI-device has permanent traffic...
many thanks for any help!
styro
//GLOBAL VARIABLES AND TPARAMETER DECLARATIONS var StateInput : TParameter;
var LastInput : TParameter;
var MIDIOut : TParameter;
var MIDINotex : TMidi;
var countdown : Integer;
var testmode : Integer;
//PROCESS PROCEDURE PROCESS(); BEGIN testmode := testmode +1; if LastInput <> StateInput.asInteger then BEGIN LastInput:=StateInput.asInteger; Trace('MIDITest input has changed State:' + inttostr(LastInput) ); Trace(testmode); CASE LastInput OF 0: Begin MIDINotex.msg := 128; MIDINotex.data1 := 0; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 1; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex);
End; 1: Begin MIDINotex.msg := 144; MIDINotex.data1 := 0; MIDINotex.data2 := 127; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 144; MIDINotex.data1 := 1; MIDINotex.data2 := 127; MIDIOut.asMidi(1,MIDINotex); End; 2: Begin MIDINotex.msg := 144; MIDINotex.data1 := 4; MIDINotex.data2 := 127; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 144; MIDINotex.data1 := 5; MIDINotex.data2 := 127; MIDIOut.asMidi(1,MIDINotex); End; 3: Begin MIDINotex.msg := 128; MIDINotex.data1 := 0; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 1; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex); End; 4: Begin MIDINotex.msg := 128; MIDINotex.data1 := 4; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 5; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex); End; 5: Begin End; 6: Begin End; 7: Begin End; 8: Begin End; 9: Begin End; 10: Begin End; 11: Begin End; End;//END MAIN CASE END END;
End; 5: Begin End; 6: Begin End; 7: Begin End; 8: Begin End; 9: Begin End; 10: Begin End; 11: Begin End; End;//END CASE END END; END;
//PROCESS PROCEDURE PROCESS(); BEGIN
if flag = 1 then BEGIN flag:=0; MIDIOut.Length(2); MIDIOut.asMidi(0,MIDINotex1); MIDIOut.asMidi(1,MIDINotex2); END else MIDIOut.Length(0);
END;
Statistics: Posted by oli_lab — 08 Dec 2023, 01:49
]]>2023-12-05T17:58:53+02:002023-12-05T17:58:53+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45099#p45099i could change the script accordingly and it seems to work, but it looks a little hacky....
Statistics: Posted by oli_lab — 29 Nov 2023, 01:21
]]>2023-11-27T15:13:30+02:002023-11-27T15:13:30+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45087#p45087Unfortunately putting the things in the callback procedure doesn't help, the MIDI-Out commands just keep on sending, my midi-interface transmit-led keeps on blinking like wild while all the MIDI-Note from a state are sent repeatedly. Thats really wired, its like that a buffer holding the MIDI-Notes is not cleared after sending. The states-input changes not fast, it's connected to a increment button and a counter. When i put a pass-change module on the midi-out-port of the script is works, so that the notes are only sent one time, but this would be a really ugly kludge, and i would like to know how to solve this error in the script.
]]>2023-11-26T16:41:24+02:002023-11-26T16:41:24+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45085#p45085Statistics: Posted by oli_lab — 26 Nov 2023, 15:41
]]>2023-11-23T15:01:27+02:002023-11-23T15:01:27+02:00https://brainmodular.com/forums/viewtopic.php?t=7196&p=45077#p45077Somehow i don't get how to send MIDI...
how does the MIDIOut TParameters works, whats the meaning of the first parameter (index)?
procedure TParameter.asMidi(index : integer; val : TMIDI); // set the value of a MIDI parameter at the index
i made a simple script, it works somehow, what is really puzzleing is that there is permanently sending the MIDI of the state, not only one time when the state is changing? The wire from the MIDIOut-Port to the MIDI-device has permanent traffic...
many thanks for any help!
styro
//GLOBAL VARIABLES AND TPARAMETER DECLARATIONS var StateInput : TParameter;
var LastInput : TParameter;
var MIDIOut : TParameter;
var MIDINotex : TMidi;
var countdown : Integer;
var testmode : Integer;
//PROCESS PROCEDURE PROCESS(); BEGIN testmode := testmode +1; if LastInput <> StateInput.asInteger then BEGIN LastInput:=StateInput.asInteger; Trace('MIDITest input has changed State:' + inttostr(LastInput) ); Trace(testmode); CASE LastInput OF 0: Begin MIDINotex.msg := 128; MIDINotex.data1 := 0; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 1; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex);
End; 1: Begin MIDINotex.msg := 144; MIDINotex.data1 := 0; MIDINotex.data2 := 127; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 144; MIDINotex.data1 := 1; MIDINotex.data2 := 127; MIDIOut.asMidi(1,MIDINotex); End; 2: Begin MIDINotex.msg := 144; MIDINotex.data1 := 4; MIDINotex.data2 := 127; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 144; MIDINotex.data1 := 5; MIDINotex.data2 := 127; MIDIOut.asMidi(1,MIDINotex); End; 3: Begin MIDINotex.msg := 128; MIDINotex.data1 := 0; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 1; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex); End; 4: Begin MIDINotex.msg := 128; MIDINotex.data1 := 4; MIDINotex.data2 := 0; MIDIOut.asMidi(0,MIDINotex); MIDINotex.msg := 128; MIDINotex.data1 := 5; MIDINotex.data2 := 0; MIDIOut.asMidi(1,MIDINotex); End; 5: Begin End; 6: Begin End; 7: Begin End; 8: Begin End; 9: Begin End; 10: Begin End; 11: Begin End; End;//END MAIN CASE END END;