315 lines
9.3 KiB
Plaintext
315 lines
9.3 KiB
Plaintext
import console;
|
|
|
|
press_signal = {0,0};
|
|
press_baseline = {0,0};
|
|
press_signal_data = {0,0};
|
|
press_baseline_data = {0,0};
|
|
|
|
lkey_signal = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
|
|
rkey_signal = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
|
|
lkey_baseline = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
|
|
rkey_baseline = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
|
|
|
|
lkey_signal_data = {};
|
|
rkey_signal_data = {};
|
|
lkey_baseline_data = {};
|
|
rkey_baseline_data = {};
|
|
|
|
for(i=1;16;1){
|
|
lkey_signal_data[i] = {};
|
|
rkey_signal_data[i] = {};
|
|
lkey_baseline_data[i] = {};
|
|
rkey_baseline_data[i] = {};
|
|
}
|
|
|
|
|
|
keyL1 = 0;
|
|
keyL2 = 0;
|
|
keyL3 = 0;
|
|
keyLup = 0;
|
|
keyLdown = 0;
|
|
keyLleft = 0;
|
|
keyLright = 0;
|
|
keyLok = 0;
|
|
|
|
sldLlr = 0;
|
|
sldLud = 0;
|
|
|
|
keyR1 = 0;
|
|
keyR2 = 0;
|
|
keyR3 = 0;
|
|
keyRup = 0;
|
|
keyRdown = 0;
|
|
keyRleft = 0;
|
|
keyRright = 0;
|
|
keyRok = 0;
|
|
|
|
sldRvol = 0;
|
|
sldRud = 0;
|
|
sldRlr = 0;
|
|
|
|
plx = 0;
|
|
ply = 0;
|
|
pls = 0;
|
|
prx = 0;
|
|
pry = 0;
|
|
prs = 0;
|
|
getbitdata = function(byte,startbit,len){
|
|
return ((byte>>startbit) & ((1<<len) - 1));
|
|
}
|
|
|
|
import win.timer;
|
|
MsgProTable = {0x300,0x305,0x307,0x309,
|
|
0x400,0x401,0x402,0x403,0x404,0x405,0x406,0x407,0x408,
|
|
0x410,0x411,0x412,0x413,0x414,0x415,0x416,0x417,0x418};
|
|
MsgProTimer = win.timer(,100);
|
|
MsgProTimer.onTimer = function(){
|
|
for(k,v in MsgProTable){
|
|
var ret = CT_GetRxMsg(v);
|
|
if(ret != null){
|
|
MsgPro(v,ret);
|
|
}
|
|
}
|
|
}
|
|
|
|
MsgPro = function(id,data){
|
|
if(data == null){
|
|
return ;
|
|
}
|
|
select(id) {
|
|
case 0x309 {
|
|
prx = data[3];
|
|
pry = data[4];
|
|
prs = getbitdata(data[1],4,2);
|
|
|
|
}
|
|
case 0x300 {
|
|
plx = data[4];
|
|
ply = data[5];
|
|
pls = getbitdata(data[2],4,2);
|
|
|
|
|
|
}
|
|
case 0x305 {
|
|
keyLdown = getbitdata(data[1],1,2);
|
|
keyLok = getbitdata(data[1],4,2);
|
|
keyLup = getbitdata(data[2],0,2);
|
|
keyLright = getbitdata(data[2],3,2);
|
|
keyLleft = getbitdata(data[2],6,2);
|
|
|
|
keyL1 = getbitdata(data[3],4,2);
|
|
keyL2 = getbitdata(data[1],6,2);
|
|
keyL3 = getbitdata(data[6],6,2);
|
|
|
|
sldLlr = getbitdata(data[5],1,3);
|
|
sldLud = getbitdata(data[8],5,3);
|
|
}
|
|
case 0x307 {
|
|
keyRleft = getbitdata(data[1],0,2);
|
|
keyRdown = getbitdata(data[1],3,2);
|
|
keyRok = getbitdata(data[1],6,2);
|
|
keyRup = getbitdata(data[2],3,2);
|
|
keyRright = getbitdata(data[2],6,2);
|
|
|
|
|
|
keyR1 = getbitdata(data[4],6,2);
|
|
keyR2 = getbitdata(data[3],2,2);
|
|
keyR3 = getbitdata(data[3],0,2);
|
|
|
|
sldRlr = getbitdata(data[5],5,3);
|
|
sldRud = getbitdata(data[5],1,3);
|
|
sldRvol = getbitdata(data[4],2,3);
|
|
}
|
|
case 0x400 {
|
|
press_baseline_data[1] = data[1] + ((data[2]&0x0f)<<8);
|
|
press_signal_data[1] = data[3] + ((data[4]&0x0f)<<8);
|
|
press_baseline[1]=press_baseline_data[1];
|
|
press_signal[1]=press_signal_data[1];
|
|
|
|
}
|
|
case 0x401 {
|
|
//console.log(1);
|
|
lkey_baseline_data[1] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[1] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[2] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[2] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[1]=lkey_baseline_data[1];
|
|
lkey_signal[1]=lkey_signal_data[1];
|
|
lkey_baseline[2]=lkey_baseline_data[2];
|
|
lkey_signal[2]=lkey_signal_data[2];
|
|
}
|
|
case 0x402 {
|
|
lkey_baseline_data[3] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[3] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[4] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[4] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[3]=lkey_baseline_data[3];
|
|
lkey_signal[3]=lkey_signal_data[3];
|
|
lkey_baseline[4]=lkey_baseline_data[4];
|
|
lkey_signal[4]=lkey_signal_data[4];
|
|
}
|
|
case 0x403 {
|
|
lkey_baseline_data[5] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[5] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[6] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[6] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[5]=lkey_baseline_data[5];
|
|
lkey_signal[5]=lkey_signal_data[5];
|
|
lkey_baseline[6]=lkey_baseline_data[6];
|
|
lkey_signal[6]=lkey_signal_data[6];
|
|
}
|
|
case 0x404 {
|
|
lkey_baseline_data[7] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[7] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[8] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[8] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[7]=lkey_baseline_data[7];
|
|
lkey_signal[7]=lkey_signal_data[7];
|
|
lkey_baseline[8]=lkey_baseline_data[8];
|
|
lkey_signal[8]=lkey_signal_data[8];
|
|
}
|
|
case 0x405 {
|
|
lkey_baseline_data[9] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[9] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[10] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[10] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[9]=lkey_baseline_data[9];
|
|
lkey_signal[9]=lkey_signal_data[9];
|
|
lkey_baseline[10]=lkey_baseline_data[10];
|
|
lkey_signal[10]=lkey_signal_data[10];
|
|
}
|
|
case 0x406 {
|
|
lkey_baseline_data[11] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[11] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[12] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[12] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[11]=lkey_baseline_data[11];
|
|
lkey_signal[11]=lkey_signal_data[11];
|
|
lkey_baseline[12]=lkey_baseline_data[12];
|
|
lkey_signal[12]=lkey_signal_data[12];
|
|
}
|
|
case 0x407 {
|
|
lkey_baseline_data[13] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[13] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[14] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[14] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[13]=lkey_baseline_data[13];
|
|
lkey_signal[13]=lkey_signal_data[13];
|
|
lkey_baseline[14]=lkey_baseline_data[14];
|
|
lkey_signal[14]=lkey_signal_data[14];
|
|
}
|
|
case 0x408 {
|
|
lkey_baseline_data[15] = data[1] + ((data[2]&0x0f)<<8);
|
|
lkey_signal_data[15] = data[3] + ((data[4]&0x0f)<<8);
|
|
lkey_baseline_data[16] = data[5] + ((data[6]&0x0f)<<8);
|
|
lkey_signal_data[16] = data[7] + ((data[8]&0x0f)<<8);
|
|
lkey_baseline[15]=lkey_baseline_data[15];
|
|
lkey_signal[15]=lkey_signal_data[15];
|
|
lkey_baseline[16]=lkey_baseline_data[16];
|
|
lkey_signal[16]=lkey_signal_data[16];
|
|
}
|
|
case 0x410 {
|
|
press_baseline_data[2] = data[1] + ((data[2]&0x0f)<<8);
|
|
press_signal_data[2] = data[3] + ((data[4]&0x0f)<<8);
|
|
press_baseline[2]=press_baseline_data[2];
|
|
press_signal[2]=press_signal_data[2];
|
|
}
|
|
case 0x411 {
|
|
rkey_baseline_data[1] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_signal_data[1] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_baseline_data[2] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[2] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[1]=rkey_baseline_data[1];
|
|
rkey_signal[1]=rkey_signal_data[1];
|
|
rkey_baseline[2]=rkey_baseline_data[2];
|
|
rkey_signal[2]=rkey_signal_data[2];
|
|
}
|
|
case 0x412 {
|
|
rkey_baseline_data[3] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[4] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[3] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[4] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[3]=rkey_baseline_data[3];
|
|
rkey_signal[3]=rkey_signal_data[3];
|
|
rkey_baseline[4]=rkey_baseline_data[4];
|
|
rkey_signal[4]=rkey_signal_data[4];
|
|
}
|
|
case 0x413 {
|
|
rkey_baseline_data[5] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[6] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[5] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[6] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[5]=rkey_baseline_data[5];
|
|
rkey_signal[5]=rkey_signal_data[5];
|
|
rkey_baseline[6]=rkey_baseline_data[6];
|
|
rkey_signal[6]=rkey_signal_data[6];
|
|
}
|
|
case 0x414 {
|
|
rkey_baseline_data[7] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[8] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[7] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[8] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[7]=rkey_baseline_data[7];
|
|
rkey_signal[7]=rkey_signal_data[7];
|
|
rkey_baseline[8]=rkey_baseline_data[8];
|
|
rkey_signal[8]=rkey_signal_data[8];
|
|
}
|
|
case 0x415 {
|
|
rkey_baseline_data[9] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[10] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[9] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[10] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[9]=rkey_baseline_data[9];
|
|
rkey_signal[9]=rkey_signal_data[9];
|
|
rkey_baseline[10]=rkey_baseline_data[10];
|
|
rkey_signal[10]=rkey_signal_data[10];
|
|
}
|
|
case 0x416 {
|
|
rkey_baseline_data[11] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[12] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[11] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[12] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[11]=rkey_baseline_data[11];
|
|
rkey_signal[11]=rkey_signal_data[11];
|
|
rkey_baseline[12]=rkey_baseline_data[12];
|
|
rkey_signal[12]=rkey_signal_data[12];
|
|
}
|
|
case 0x417 {
|
|
rkey_baseline_data[13] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[14] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[13] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[14] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[13]=rkey_baseline_data[13];
|
|
rkey_signal[13]=rkey_signal_data[13];
|
|
rkey_baseline[14]=rkey_baseline_data[14];
|
|
rkey_signal[14]=rkey_signal_data[14];
|
|
}
|
|
case 0x418 {
|
|
rkey_baseline_data[15] = data[1] + ((data[2]&0x0f)<<8);
|
|
rkey_baseline_data[16] = data[3] + ((data[4]&0x0f)<<8);
|
|
rkey_signal_data[15] = data[5] + ((data[6]&0x0f)<<8);
|
|
rkey_signal_data[16] = data[7] + ((data[8]&0x0f)<<8);
|
|
rkey_baseline[15]=rkey_baseline_data[15];
|
|
rkey_signal[15]=rkey_signal_data[15];
|
|
rkey_baseline[16]=rkey_baseline_data[16];
|
|
rkey_signal[16]=rkey_signal_data[16];
|
|
}
|
|
else {
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|