neige d'aout

knowledge, art, and other stuff

User Tools

Site Tools


code61

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
code61 [2026/03/14 21:13] Yukicode61 [2026/03/14 21:33] (current) Yuki
Line 40: Line 40:
 <option value="1">HUI</option> <option value="1">HUI</option>
 </select></html>| </select></html>|
-|Key Octave|<html><input id="option6" type="number" min="-3" max="3" step="1" /></html>+|Key Octave|<html><input id="option5" type="number" min="-3" max="3" step="1" /></html>
-|Key Transpose|<html><input id="option7" type="number" min="-12" max="12" step="1" /></html>+|Key Transpose|<html><input id="option6" type="number" min="-12" max="12" step="1" /></html>
-|Key Curve|<html><select id="option8"> +|Key Curve|<html><select id="option7"> 
-<option value="6">C1</option> +<option value="0">C1</option> 
-<option value="3">C2</option> +<option value="1">C2</option> 
-<option value="4">C3</option> +<option value="2">C3</option> 
-<option value="5">C4</option> +<option value="3">C4</option> 
-<option value="0">F1</option> +<option value="4">F1</option> 
-<option value="1">F2</option> +<option value="5">F2</option> 
-<option value="2">F3</option>+<option value="6">F3</option>
 </select></html>| </select></html>|
-|Pad Octave|<html><input id="option9" type="number" min="-5" max="5" step="1" /></html>+|Pad Octave|<html><input id="option8" type="number" min="-5" max="5" step="1" /></html>
-|Pad Transpose|<html><input id="option10" type="number" min="-12" max="12" step="1" /></html>+|Pad Transpose|<html><input id="option9" type="number" min="-12" max="12" step="1" /></html>
-|Pad Curve|<html><select id="option11">+|Pad Curve|<html><select id="option10"> 
 +<option value="0">C1</option> 
 +<option value="1">C2</option> 
 +<option value="2">C3</option> 
 +<option value="3">C4</option> 
 +<option value="4">F1</option> 
 +<option value="5">F2</option> 
 +<option value="6">F3</option> 
 +<option value="7">S2</option> 
 +<option value="8">S3</option> 
 +<option value="9">S4</option> 
 +</select></html>
 +|Encoder Curve|<html><select id="option11"
 +<option value="0">Off</option>
 <option value="1">C1</option> <option value="1">C1</option>
 <option value="2">C2</option> <option value="2">C2</option>
 <option value="3">C3</option> <option value="3">C3</option>
-<option value="4">C4</option> 
-<option value="5">F1</option> 
-<option value="6">F2</option> 
-<option value="7">F3</option> 
-<option value="8">S2</option> 
-<option value="9">S3</option> 
-<option value="10">S4</option> 
-</select></html>| 
-|Encoder Curve|<html><select id="option5"> 
-<option value="0">Off</option> 
-<option value="6">C1</option> 
-<option value="3">C2</option> 
-<option value="4">C3</option> 
 </select></html>| </select></html>|
 |Program|<html><input id="option13" type="number" min="0" max="127" step="1" /></html>| |Program|<html><input id="option13" type="number" min="0" max="127" step="1" /></html>|
Line 131: Line 131:
       var address = e.dataBytes[6]*128+e.dataBytes[7];       var address = e.dataBytes[6]*128+e.dataBytes[7];
       var value = e.dataBytes[8]*128+e.dataBytes[9];       var value = e.dataBytes[8]*128+e.dataBytes[9];
 +      if(address == 5 || address == 8) value -= 5;
 +      if(address == 6 || address == 9) value -= 12;
       document.querySelector("#option"+address).value = value;       document.querySelector("#option"+address).value = value;
       console.log([address, value])       console.log([address, value])
Line 145: Line 147:
     var lsb = id % 128;     var lsb = id % 128;
     getOutput().sendSysex([0,1,5], [0x7f, 0x31, 0x06, 0x6b, 0, 2, msb, lsb]);     getOutput().sendSysex([0,1,5], [0x7f, 0x31, 0x06, 0x6b, 0, 2, msb, lsb]);
 +  }
 +  function sendSetting(id, value) {
 +    var amsb = id / 128 % 128;
 +    var alsb = id % 128;
 +    var vmsb = value / 128 % 128;
 +    var vlsb = value % 128;
 +    getOutput().sendSysex([0,1,5], [0x7f, 0x31, 0x06, 0x6a, 0, 4, amsb, alsb, vmsb, vlsb]);
   }   }
   function getSettings() {   function getSettings() {
     [0,4,5,6,7,8,9,10,11,12,13,14,15,16].forEach(x=>getSetting(x));     [0,4,5,6,7,8,9,10,11,12,13,14,15,16].forEach(x=>getSetting(x));
 +  }
 +  function setSettings() {
 +    [0,4,5,6,7,8,9,10,11,12,13,14,15,16].forEach(address=>{
 +      var value = document.querySelector("#option"+address).value;
 +      if(address == 5 || address == 8) value += 5;
 +      if(address == 6 || address == 9) value += 12;
 +      sendSetting(address, value)
 +    });
   }   }
 </script> </script>
 </html> </html>
code61.1773537208.txt.gz · Last modified: by Yuki