Changeset 273
- Timestamp:
- Feb 9, 2017, 8:19:28 PM (7 years ago)
- Location:
- EcnlProtoTool/trunk
- Files:
-
- 2 added
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/webapp/webmrbc/App.cs
r270 r273 15 15 public static Terminal Term; 16 16 public static AceEditor CodeEditor; 17 public static TargetBoard TargetBoard; 17 18 public static bool changedAfterTranslating; 18 19 public static bool translating; … … 29 30 Script.Write("Number.isNaN = Number.isNaN || function(any) { return typeof any === 'number' && isNaN(any); }"); 30 31 32 App.TargetBoard = new GrPeach(); 31 33 Collections.ClassWorkspaces = new Collection<IClassWorkspace>(); 32 34 Views.ClassSelectorView = new ClassSelectorView(); -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/GrPeach.cs
r270 r273 5 5 namespace WebMrbc 6 6 { 7 public static class GrPeach7 public class GrPeach : TargetBoard 8 8 { 9 public staticFieldDropdown Pins()9 public override FieldDropdown Pins() 10 10 { 11 11 return new FieldDropdown(new[] { … … 33 33 }); 34 34 } 35 public staticFieldDropdown AnalogPins()35 public override FieldDropdown AnalogPins() 36 36 { 37 37 return new FieldDropdown(new[] { … … 45 45 } 46 46 47 public staticFieldDropdown PwmPins()47 public override FieldDropdown PwmPins() 48 48 { 49 49 return new FieldDropdown(new[] { … … 65 65 } 66 66 67 public staticint PinNameToNum(string name)67 public override int PinNameToNum(string name) 68 68 { 69 69 switch (name) { … … 264 264 } 265 265 266 public staticint PinModeNameToNum(string name)266 public override int PinModeNameToNum(string name) 267 267 { 268 268 switch (name) { … … 273 273 } 274 274 275 public staticint PinValueNameToNum(string name)275 public override int PinValueNameToNum(string name) 276 276 { 277 277 switch (name) { … … 282 282 } 283 283 284 public staticint AnalogRefModeNameToNum(string name)284 public override int AnalogRefModeNameToNum(string name) 285 285 { 286 286 switch (name) { … … 293 293 } 294 294 295 public staticFieldDropdown I2CPorts()295 public override FieldDropdown I2CPorts() 296 296 { 297 297 return new FieldDropdown(new[] { … … 300 300 } 301 301 302 public staticstring I2CPortNameToVariable(string name)302 public override string I2CPortNameToVariable(string name) 303 303 { 304 304 switch (name) { … … 311 311 } 312 312 313 public staticint I2CPortNameToNum(string name)313 public override int I2CPortNameToNum(string name) 314 314 { 315 315 switch (name) { … … 322 322 } 323 323 324 public staticFieldDropdown MemFileHandles()324 public override FieldDropdown MemFileHandles() 325 325 { 326 326 return new FieldDropdown(new[] { … … 330 330 } 331 331 332 public staticint MemFileHandlerNameToNum(string name)332 public override int MemFileHandlerNameToNum(string name) 333 333 { 334 334 switch (name) { … … 339 339 } 340 340 341 internal staticint MemOpenModeNameToNum(string name)341 public override int MemOpenModeNameToNum(string name) 342 342 { 343 343 switch (name) { … … 349 349 } 350 350 351 public staticint MemCpModeNameToNum(string name)351 public override int MemCpModeNameToNum(string name) 352 352 { 353 353 switch (name) { … … 358 358 } 359 359 360 public staticFieldDropdown SdFileHandles()360 public override FieldDropdown SdFileHandles() 361 361 { 362 362 return new FieldDropdown(new[] { … … 366 366 } 367 367 368 public staticint SdFileHandlerNameToNum(string name)368 public override int SdFileHandlerNameToNum(string name) 369 369 { 370 370 switch (name) { … … 375 375 } 376 376 377 public staticint SdOpenModeNameToNum(string name)377 public override int SdOpenModeNameToNum(string name) 378 378 { 379 379 switch (name) { … … 385 385 } 386 386 387 public staticFieldDropdown SerialPorts()387 public override FieldDropdown SerialPorts() 388 388 { 389 389 return new FieldDropdown(new[] { … … 397 397 } 398 398 399 public staticint SerialPortNameToNum(string name)399 public override int SerialPortNameToNum(string name) 400 400 { 401 401 switch (name) { … … 410 410 } 411 411 412 public staticstring SerialPortNameToVariable(string name)412 public override string SerialPortNameToVariable(string name) 413 413 { 414 414 switch (name) { -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/GrSakura.cs
r270 r273 5 5 namespace WebMrbc 6 6 { 7 public static class GrSakura7 public class GrSakura : TargetBoard 8 8 { 9 public staticFieldDropdown Pins()9 public override FieldDropdown Pins() 10 10 { 11 11 return new FieldDropdown(new[] { … … 96 96 }); 97 97 } 98 public staticFieldDropdown AnalogPins()98 public override FieldDropdown AnalogPins() 99 99 { 100 100 return new FieldDropdown(new[] { … … 125 125 } 126 126 127 public staticFieldDropdown PwmPins()127 public override FieldDropdown PwmPins() 128 128 { 129 129 return new FieldDropdown(new[] { … … 141 141 } 142 142 143 public staticint PinNameToNum(string name)143 public override int PinNameToNum(string name) 144 144 { 145 145 switch (name) { … … 230 230 } 231 231 232 public staticint PinModeNameToNum(string name)232 public override int PinModeNameToNum(string name) 233 233 { 234 234 switch (name) { … … 239 239 } 240 240 241 public staticint PinValueNameToNum(string name)241 public override int PinValueNameToNum(string name) 242 242 { 243 243 switch (name) { … … 248 248 } 249 249 250 public staticint AnalogRefModeNameToNum(string name)250 public override int AnalogRefModeNameToNum(string name) 251 251 { 252 252 switch (name) { … … 259 259 } 260 260 261 public staticFieldDropdown I2CPorts()261 public override FieldDropdown I2CPorts() 262 262 { 263 263 return new FieldDropdown(new[] { … … 269 269 } 270 270 271 public staticstring I2CPortNameToVariable(string name)271 public override string I2CPortNameToVariable(string name) 272 272 { 273 273 switch (name) { … … 280 280 } 281 281 282 public staticint I2CPortNameToNum(string name)282 public override int I2CPortNameToNum(string name) 283 283 { 284 284 switch (name) { … … 291 291 } 292 292 293 public staticFieldDropdown MemFileHandles()293 public override FieldDropdown MemFileHandles() 294 294 { 295 295 return new FieldDropdown(new[] { … … 299 299 } 300 300 301 public staticint MemFileHandlerNameToNum(string name)301 public override int MemFileHandlerNameToNum(string name) 302 302 { 303 303 switch (name) { … … 308 308 } 309 309 310 internal staticint MemOpenModeNameToNum(string name)310 public override int MemOpenModeNameToNum(string name) 311 311 { 312 312 switch (name) { … … 318 318 } 319 319 320 public staticint MemCpModeNameToNum(string name)320 public override int MemCpModeNameToNum(string name) 321 321 { 322 322 switch (name) { … … 327 327 } 328 328 329 public staticFieldDropdown SdFileHandles()329 public override FieldDropdown SdFileHandles() 330 330 { 331 331 return new FieldDropdown(new[] { … … 335 335 } 336 336 337 public staticint SdFileHandlerNameToNum(string name)337 public override int SdFileHandlerNameToNum(string name) 338 338 { 339 339 switch (name) { … … 344 344 } 345 345 346 public staticint SdOpenModeNameToNum(string name)346 public override int SdOpenModeNameToNum(string name) 347 347 { 348 348 switch (name) { … … 354 354 } 355 355 356 public staticFieldDropdown SerialPorts()356 public override FieldDropdown SerialPorts() 357 357 { 358 358 return new FieldDropdown(new[] { … … 366 366 } 367 367 368 public staticint SerialPortNameToNum(string name)368 public override int SerialPortNameToNum(string name) 369 369 { 370 370 switch (name) { … … 379 379 } 380 380 381 public staticstring SerialPortNameToVariable(string name)381 public override string SerialPortNameToVariable(string name) 382 382 { 383 383 switch (name) { -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/I2cBlock.cs
r270 r273 18 18 this.appendDummyInput() 19 19 .appendField("I2Cの初期化") 20 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");20 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 21 21 this.setInputsInline(true); 22 22 this.setPreviousStatement(true, null); … … 40 40 this.appendDummyInput() 41 41 .appendField("I2Cへの書き込み") 42 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");42 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 43 43 this.appendValueInput("DEVICEID") 44 44 .setCheck("Number") … … 72 72 this.appendDummyInput() 73 73 .appendField("I2Cからの読み込み") 74 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");74 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 75 75 this.appendValueInput("DEVICEID") 76 76 .setCheck("Number") … … 103 103 this.appendDummyInput() 104 104 .appendField("I2Cの送信開始準備") 105 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");105 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 106 106 this.appendValueInput("DEVICEID") 107 107 .setCheck("Number") … … 129 129 this.appendDummyInput() 130 130 .appendField("I2Cの送信バッファの末尾に数値を追加する") 131 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");131 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 132 132 this.appendValueInput("DATA") 133 133 .setCheck("Number") … … 154 154 this.appendDummyInput() 155 155 .appendField("I2Cの送信シーケンスを発行する") 156 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");156 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 157 157 this.appendDummyInput() 158 158 .appendField("ストップコンディション発生") … … 179 179 this.appendDummyInput() 180 180 .appendField("I2Cへ受信シーケンスを発行する") 181 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");181 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 182 182 this.appendValueInput("ADDRESS") 183 183 .setCheck("Number") … … 206 206 this.appendDummyInput() 207 207 .appendField("I2Cへ受信シーケンスを発行しデータを読み出す") 208 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");208 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 209 209 this.setInputsInline(true); 210 210 this.setOutput(true, "Number"); … … 228 228 this.appendDummyInput() 229 229 .appendField("I2Cの受信バッファ内にあるデータ数を調べる") 230 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");230 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 231 231 this.setInputsInline(true); 232 232 this.setOutput(true, "Number"); … … 250 250 this.appendDummyInput() 251 251 .appendField("I2Cの周波数を変更する") 252 .appendField( GrPeach.I2CPorts(), "I2C_PORT_NO");252 .appendField(App.TargetBoard.I2CPorts(), "I2C_PORT_NO"); 253 253 this.appendValueInput("FREQUENCY") 254 254 .setCheck("Number") … … 269 269 var dropdown_i2c_port_no = block.getFieldValue("I2C_PORT_NO"); 270 270 // $i2c0 = I2c.new(0) 271 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));271 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 272 272 var c = new const_node(this, intern("I2c")); 273 273 var p = new node[] { 274 new int_node(this, GrPeach.I2CPortNameToNum(dropdown_i2c_port_no))274 new int_node(this, App.TargetBoard.I2CPortNameToNum(dropdown_i2c_port_no)) 275 275 }; 276 276 return new asgn_node(this, a, new call_node(this, c, intern("new"), p, null)); … … 284 284 var value_data = valueToCode(block, "DATA"); 285 285 // $i2c0.write(0, 0x00, 0x00) 286 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));286 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 287 287 var p = new node[] { 288 288 value_deviceid, … … 300 300 var value_address_h = valueToCode(block, "ADDRESS_H"); 301 301 // $i2c0.read(0, 0x00, 0x00) 302 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));302 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 303 303 var p = new node[] { 304 304 value_deviceid, … … 316 316 var value_deviceid = valueToCode(block, "DEVICEID"); 317 317 // $i2c0.begin(0) 318 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));318 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 319 319 var p = new node[] { 320 320 value_deviceid, … … 328 328 var value_data = valueToCode(block, "DATA"); 329 329 // $i2c0.lwrite(0x00) 330 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));330 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 331 331 var p = new node[0]; 332 332 if (value_data != null) … … 340 340 var checkbox_stop = block.getFieldValue("STOP"); 341 341 // $i2c0.lwrite(0x00) 342 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));342 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 343 343 var p = new node[0]; 344 344 if (checkbox_stop != null) … … 353 353 var value_count = valueToCode(block, "COUNT"); 354 354 // $i2c0.request(0x00, 1) 355 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));355 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 356 356 var p = new node[] { 357 357 value_address, … … 365 365 var dropdown_i2c_port_no = block.getFieldValue("I2C_PORT_NO"); 366 366 // $i2c0.lread() 367 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));367 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 368 368 var p = new node[0]; 369 369 return new call_node(this, a, intern("lread"), p, null); … … 374 374 var dropdown_i2c_port_no = block.getFieldValue("I2C_PORT_NO"); 375 375 // $i2c0.available() 376 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));376 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 377 377 var p = new node[0]; 378 378 return new call_node(this, a, intern("available"), p, null); … … 384 384 var value_frequency = valueToCode(block, "FREQUENCY"); 385 385 // $i2c0.frequency(0) 386 var a = new gvar_node(this, intern( GrPeach.I2CPortNameToVariable(dropdown_i2c_port_no)));386 var a = new gvar_node(this, intern(App.TargetBoard.I2CPortNameToVariable(dropdown_i2c_port_no))); 387 387 var p = new node[] { 388 388 value_frequency -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/KernelBlock.cs
r270 r273 42 42 this.appendDummyInput() 43 43 .appendField("PINのモード設定") 44 .appendField( GrPeach.Pins(), "PIN_NO");44 .appendField(App.TargetBoard.Pins(), "PIN_NO"); 45 45 this.appendDummyInput() 46 46 .appendField("モード") … … 71 71 this.appendDummyInput() 72 72 .appendField("デジタルライト") 73 .appendField( GrPeach.Pins(), "PIN_NO");73 .appendField(App.TargetBoard.Pins(), "PIN_NO"); 74 74 this.appendDummyInput() 75 75 .appendField("値") … … 100 100 this.appendDummyInput() 101 101 .appendField("デジタルリード") 102 .appendField( GrPeach.Pins(), "PIN_NO");102 .appendField(App.TargetBoard.Pins(), "PIN_NO"); 103 103 this.setInputsInline(true); 104 104 this.setOutput(true, "Boolean"); … … 122 122 this.appendDummyInput() 123 123 .appendField("アナログリード") 124 .appendField( GrPeach.AnalogPins(), "PIN_NO");124 .appendField(App.TargetBoard.AnalogPins(), "PIN_NO"); 125 125 this.setInputsInline(true); 126 126 this.setOutput(true, "Number"); … … 144 144 this.appendDummyInput() 145 145 .appendField("PWM出力") 146 .appendField( GrPeach.PwmPins(), "PIN_NO");146 .appendField(App.TargetBoard.PwmPins(), "PIN_NO"); 147 147 this.appendValueInput("PWM_OUT") 148 148 .setCheck("Number") … … 432 432 this.appendDummyInput() 433 433 .appendField("トーン出力") 434 .appendField( GrPeach.PwmPins(), "PIN_NO");434 .appendField(App.TargetBoard.PwmPins(), "PIN_NO"); 435 435 this.appendValueInput("FREQUENCY") 436 436 .setCheck("Number") … … 481 481 this.appendDummyInput() 482 482 .appendField("トーン出力停止") 483 .appendField( GrPeach.PwmPins(), "PIN_NO");483 .appendField(App.TargetBoard.PwmPins(), "PIN_NO"); 484 484 this.setInputsInline(true); 485 485 this.setPreviousStatement(true, null); … … 555 555 var dropdown_pin_mode = block.getFieldValue("PIN_MODE"); 556 556 var p = new node[] { 557 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),558 new int_node(this, GrPeach.PinModeNameToNum(dropdown_pin_mode))557 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 558 new int_node(this, App.TargetBoard.PinModeNameToNum(dropdown_pin_mode)) 559 559 }; 560 560 return new fcall_node(this, intern("pinMode"), p, null); … … 566 566 var dropdown_pin_value = block.getFieldValue("PIN_VALUE"); 567 567 var p = new node[] { 568 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),569 new int_node(this, GrPeach.PinValueNameToNum(dropdown_pin_value ))568 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 569 new int_node(this, App.TargetBoard.PinValueNameToNum(dropdown_pin_value )) 570 570 }; 571 571 return new fcall_node(this, intern("digitalWrite"), p, null); … … 576 576 var dropdown_pin_no = block.getFieldValue("PIN_NO"); 577 577 var p = new node[] { 578 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),578 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 579 579 }; 580 580 return new fcall_node(this, intern("digitalRead"), p, null); … … 585 585 var dropdown_pin_no = block.getFieldValue("PIN_NO"); 586 586 var p = new node[] { 587 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),587 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 588 588 }; 589 589 return new fcall_node(this, intern("analogRead"), p, null); … … 595 595 var value_pwm_out = valueToCode(block, "PWM_OUT"); 596 596 var p = new node[] { 597 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),597 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 598 598 value_pwm_out 599 599 }; … … 611 611 var dropdown_analog_reference_mode = block.getFieldValue("ANALOG_REFERENCE_MODE"); 612 612 var p = new node[] { 613 new int_node(this, GrPeach.AnalogRefModeNameToNum(dropdown_analog_reference_mode))613 new int_node(this, App.TargetBoard.AnalogRefModeNameToNum(dropdown_analog_reference_mode)) 614 614 }; 615 615 return new fcall_node(this, intern("analogReference"), p, null); … … 693 693 var value_duration = valueToCode(block, "DURATION"); 694 694 var p = new node[] { 695 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),695 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 696 696 value_frequency, 697 697 value_duration … … 710 710 var dropdown_pin_no = block.getFieldValue("PIN_NO"); 711 711 var p = new node[] { 712 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),712 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 713 713 }; 714 714 return new fcall_node(this, intern("noTone"), p, null); -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/MemFileBlock.cs
r270 r273 18 18 this.appendDummyInput() 19 19 .appendField("ファイルをオープンします") 20 .appendField( GrPeach.MemFileHandles(), "MEM_FILE_NO");20 .appendField(App.TargetBoard.MemFileHandles(), "MEM_FILE_NO"); 21 21 this.appendValueInput("FILENAME") 22 22 .setCheck("String") … … 51 51 this.appendDummyInput() 52 52 .appendField("ファイルをクローズします") 53 .appendField( GrPeach.MemFileHandles(), "MEM_FILE_NO");53 .appendField(App.TargetBoard.MemFileHandles(), "MEM_FILE_NO"); 54 54 this.setInputsInline(true); 55 55 this.setPreviousStatement(true, null); … … 73 73 this.appendDummyInput() 74 74 .appendField("ファイルから1バイト読み込みます") 75 .appendField( GrPeach.MemFileHandles(), "MEM_FILE_NO");75 .appendField(App.TargetBoard.MemFileHandles(), "MEM_FILE_NO"); 76 76 this.setInputsInline(true); 77 77 this.setOutput(true, "Number"); … … 94 94 this.appendDummyInput() 95 95 .appendField("ファイルにバイナリデータを書き込みます") 96 .appendField( GrPeach.MemFileHandles(), "MEM_FILE_NO");96 .appendField(App.TargetBoard.MemFileHandles(), "MEM_FILE_NO"); 97 97 this.appendValueInput("DATA") 98 98 .setCheck("String") … … 121 121 this.appendDummyInput() 122 122 .appendField("ファイルの読み出し位置を移動する") 123 .appendField( GrPeach.MemFileHandles(), "MEM_FILE_NO");123 .appendField(App.TargetBoard.MemFileHandles(), "MEM_FILE_NO"); 124 124 this.appendValueInput("POSITION") 125 125 .setCheck("Number") … … 198 198 var c = new const_node(this, intern("MemFile")); 199 199 var p = new node[] { 200 new int_node(this, GrPeach.MemFileHandlerNameToNum(dropdown_mem_file_no)),200 new int_node(this, App.TargetBoard.MemFileHandlerNameToNum(dropdown_mem_file_no)), 201 201 value_filename, 202 new int_node(this, GrPeach.MemOpenModeNameToNum(dropdown_eep_open_mode))202 new int_node(this, App.TargetBoard.MemOpenModeNameToNum(dropdown_eep_open_mode)) 203 203 }; 204 204 return new call_node(this, c, intern("open"), p, null); … … 210 210 var c = new const_node(this, intern("MemFile")); 211 211 var p = new node[] { 212 new int_node(this, GrPeach.MemFileHandlerNameToNum(dropdown_mem_file_no)),212 new int_node(this, App.TargetBoard.MemFileHandlerNameToNum(dropdown_mem_file_no)), 213 213 }; 214 214 return new call_node(this, c, intern("close"), p, null); … … 220 220 var c = new const_node(this, intern("MemFile")); 221 221 var p = new node[] { 222 new int_node(this, GrPeach.MemFileHandlerNameToNum(dropdown_mem_file_no)),222 new int_node(this, App.TargetBoard.MemFileHandlerNameToNum(dropdown_mem_file_no)), 223 223 }; 224 224 return new call_node(this, c, intern("read"), p, null); … … 232 232 var c = new const_node(this, intern("MemFile")); 233 233 var p = new node[] { 234 new int_node(this, GrPeach.MemFileHandlerNameToNum(dropdown_mem_file_no)),234 new int_node(this, App.TargetBoard.MemFileHandlerNameToNum(dropdown_mem_file_no)), 235 235 value_data, 236 236 value_length, … … 245 245 var c = new const_node(this, intern("MemFile")); 246 246 var p = new node[] { 247 new int_node(this, GrPeach.MemFileHandlerNameToNum(dropdown_mem_file_no)),247 new int_node(this, App.TargetBoard.MemFileHandlerNameToNum(dropdown_mem_file_no)), 248 248 value_position, 249 249 }; … … 260 260 value_dst_filename, 261 261 value_dst_filename, 262 new int_node(this, GrPeach.MemCpModeNameToNum(dropdown_eep_cp_mode))262 new int_node(this, App.TargetBoard.MemCpModeNameToNum(dropdown_eep_cp_mode)) 263 263 }; 264 264 return new call_node(this, c, intern("cp"), p, null); -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/SdBlock.cs
r270 r273 137 137 this.appendDummyInput() 138 138 .appendField("ファイルをオープンします") 139 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");139 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 140 140 this.appendValueInput("FILENAME") 141 141 .setCheck("String") … … 169 169 this.appendDummyInput() 170 170 .appendField("ファイルをクローズします") 171 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");171 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 172 172 this.setInputsInline(true); 173 173 this.setOutput(true, "Boolean"); … … 191 191 this.appendDummyInput() 192 192 .appendField("ファイルから1バイト読み込みます") 193 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");193 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 194 194 this.setInputsInline(true); 195 195 this.setOutput(true, "Number"); … … 213 213 this.appendDummyInput() 214 214 .appendField("ファイルの読み出し位置を移動する") 215 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");215 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 216 216 this.appendValueInput("POSITION") 217 217 .setCheck("Number") … … 238 238 this.appendDummyInput() 239 239 .appendField("ファイルにバイナリデータを書き込む") 240 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");240 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 241 241 this.appendValueInput("DATA") 242 242 .setCheck("String") … … 266 266 this.appendDummyInput() 267 267 .appendField("ファイルの書き込みをフラッシュします") 268 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");268 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 269 269 this.setPreviousStatement(true, null); 270 270 this.setNextStatement(true, null); … … 288 288 this.appendDummyInput() 289 289 .appendField("ファイルのサイズを取得します") 290 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");290 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 291 291 this.setOutput(true, "Number"); 292 292 this.setColour(160); … … 308 308 this.appendDummyInput() 309 309 .appendField("ファイルのseek位置を取得します") 310 .appendField( GrPeach.SdFileHandles(), "SD_FILE_NO");310 .appendField(App.TargetBoard.SdFileHandles(), "SD_FILE_NO"); 311 311 this.setOutput(true, "Number"); 312 312 this.setColour(160); … … 377 377 var c = new const_node(this, intern("SD")); 378 378 var p = new node[] { 379 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),379 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 380 380 value_filename, 381 new int_node(this, GrPeach.SdOpenModeNameToNum(dropdown_sd_open_mode)),381 new int_node(this, App.TargetBoard.SdOpenModeNameToNum(dropdown_sd_open_mode)), 382 382 }; 383 383 return new call_node(this, c, intern("open"), p, null); … … 389 389 var c = new const_node(this, intern("SD")); 390 390 var p = new node[] { 391 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),391 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 392 392 }; 393 393 return new call_node(this, c, intern("close"), p, null); … … 399 399 var c = new const_node(this, intern("SD")); 400 400 var p = new node[] { 401 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),401 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 402 402 }; 403 403 return new call_node(this, c, intern("read"), p, null); … … 410 410 var c = new const_node(this, intern("SD")); 411 411 var p = new node[] { 412 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),412 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 413 413 value_position, 414 414 }; … … 423 423 var c = new const_node(this, intern("SD")); 424 424 var p = new node[] { 425 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),425 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 426 426 value_data, 427 427 value_length, … … 435 435 var c = new const_node(this, intern("SD")); 436 436 var p = new node[] { 437 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),437 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 438 438 }; 439 439 return new call_node(this, c, intern("flush"), p, null); … … 445 445 var c = new const_node(this, intern("SD")); 446 446 var p = new node[] { 447 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),447 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 448 448 }; 449 449 return new call_node(this, c, intern("size"), p, null); … … 455 455 var c = new const_node(this, intern("SD")); 456 456 var p = new node[] { 457 new int_node(this, GrPeach.SdFileHandlerNameToNum(dropdown_sd_file_no)),457 new int_node(this, App.TargetBoard.SdFileHandlerNameToNum(dropdown_sd_file_no)), 458 458 }; 459 459 return new call_node(this, c, intern("position"), p, null); -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/SerialBlock.cs
r270 r273 53 53 this.appendDummyInput() 54 54 .appendField("シリアル通信を初期化します") 55 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");55 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 56 56 this.appendValueInput("BPS") 57 57 .setCheck("Number") … … 78 78 this.appendDummyInput() 79 79 .appendField("ボーレートを設定します") 80 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");80 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 81 81 this.appendValueInput("BPS") 82 82 .setCheck("Number") … … 104 104 this.appendDummyInput() 105 105 .appendField("シリアルに出力します") 106 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");106 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 107 107 this.appendValueInput("STR") 108 108 .setCheck("String") … … 130 130 this.appendDummyInput() 131 131 .appendField("シリアルに\\r\\n付きで出力します") 132 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");132 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 133 133 this.appendValueInput("STR") 134 134 .setCheck("String") … … 156 156 this.appendDummyInput() 157 157 .appendField("シリアルデータがあるかどうか調べます") 158 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");158 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 159 159 this.setInputsInline(true); 160 160 this.setOutput(true, "Number"); … … 178 178 this.appendDummyInput() 179 179 .appendField("シリアルからデータを取得します") 180 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");180 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 181 181 this.setInputsInline(true); 182 182 this.setOutput(true, "Array"); … … 199 199 this.appendDummyInput() 200 200 .appendField("シリアルにデータを出力します") 201 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");201 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 202 202 this.appendValueInput("DATA") 203 203 .setCheck("String") … … 227 227 this.appendDummyInput() 228 228 .appendField("シリアルデータをフラッシュします") 229 .appendField( GrPeach.SerialPorts(), "SERIAL_PORT_NO");229 .appendField(App.TargetBoard.SerialPorts(), "SERIAL_PORT_NO"); 230 230 this.setInputsInline(true); 231 231 this.setPreviousStatement(true, null); … … 249 249 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 250 250 var value_bps = valueToCode(block, "BPS"); 251 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));251 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 252 252 var c = new const_node(this, intern("Serial")); 253 253 var p = new node[] { 254 new int_node(this, GrPeach.SerialPortNameToNum(dropdown_serial_port_no)),254 new int_node(this, App.TargetBoard.SerialPortNameToNum(dropdown_serial_port_no)), 255 255 value_bps 256 256 }; … … 262 262 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 263 263 var value_bps = valueToCode(block, "BPS"); 264 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));264 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 265 265 var p = new node[] { 266 266 value_bps … … 273 273 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 274 274 var value_str = valueToCode(block, "STR"); 275 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));275 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 276 276 var p = new node[] { 277 277 value_str … … 284 284 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 285 285 var value_str = valueToCode(block, "STR"); 286 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));286 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 287 287 var p = new node[] { 288 288 value_str … … 294 294 { 295 295 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 296 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));296 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 297 297 var p = new node[0]; 298 298 return new call_node(this, a, intern("available"), p, null); … … 302 302 { 303 303 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 304 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));304 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 305 305 var p = new node[0]; 306 306 return new call_node(this, a, intern("read"), p, null); … … 312 312 var value_data = valueToCode(block, "DATA"); 313 313 var value_length = valueToCode(block, "LENGTH"); 314 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));314 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 315 315 var p = new node[] { 316 316 value_data, … … 323 323 { 324 324 var dropdown_serial_port_no = block.getFieldValue("SERIAL_PORT_NO"); 325 var a = new gvar_node(this, intern( GrPeach.SerialPortNameToVariable(dropdown_serial_port_no)));325 var a = new gvar_node(this, intern(App.TargetBoard.SerialPortNameToVariable(dropdown_serial_port_no))); 326 326 var p = new node[0]; 327 327 return new call_node(this, a, intern("flash"), p, null); -
EcnlProtoTool/trunk/webapp/webmrbc/Arduino/ServoBlock.cs
r270 r273 21 21 this.appendDummyInput() 22 22 .appendField("割り当てるピン番号") 23 .appendField( GrPeach.PwmPins(), "PIN_NO")23 .appendField(App.TargetBoard.PwmPins(), "PIN_NO") 24 24 .appendField("Min") 25 25 .appendField(new FieldTextInput("default"), "MIN") … … 224 224 var p = new node[] { 225 225 new int_node(this, number_ch == null ? 0 : Script.ParseInt(number_ch, 10)), 226 new int_node(this, GrPeach.PinNameToNum(dropdown_pin_no)),226 new int_node(this, App.TargetBoard.PinNameToNum(dropdown_pin_no)), 227 227 new int_node(this, text_min == null ? 0 : Script.ParseInt(text_min, 10)), 228 228 new int_node(this, text_max == null ? 0 : Script.ParseInt(text_max, 10)), -
EcnlProtoTool/trunk/webapp/webmrbc/MainMenuView.cs
r270 r273 321 321 } 322 322 323 public void onInformationOpen() 324 { 325 jQuery.Ajax(new AjaxOptions() { 326 Url = "/information.json", 327 DataType = "json", 328 Success = (data, textStatus, request) => { 329 var items = (dynamic[])data; 330 331 var listview = jQuery.Select("#software-list"); 332 listview.Html(""); 333 334 foreach (var item in items) { 335 string title = item.title; 336 string version = item.version; 337 string link = item.link; 338 string note = item.note; 339 340 var a = new jQuery("<a>").Attr("class", "list-group-item"); 341 a.Append(new jQuery("<h4>").Attr("class", "list-group-item-heading").Text(title)); 342 if (String.IsNullOrEmpty(link)) { 343 a.Attr("href", "#"); 344 } 345 else { 346 a.Attr("href", link); 347 a.Attr("target", "_blank"); 348 } 349 a.Append(new jQuery("<p>").Attr("class", "list-group-item-text").Text("Version " + version)); 350 if (!String.IsNullOrEmpty(note)) 351 a.Append(new jQuery("<p>").Attr("class", "list-group-item-text").Text(note)); 352 listview.Append(a); 353 } 354 355 var el = jQuery.Select("#information-modal"); 356 el.Modal(ModalOperation.Show); 357 }, 358 Error = (request, textStatus, error) => { 359 }, 360 }); 361 } 362 363 public void onInformationClose() 364 { 365 var el = jQuery.Select("#information-modal"); 366 el.Modal(ModalOperation.Hide); 367 } 368 323 369 private static void SelectBlockTab() 324 370 { -
EcnlProtoTool/trunk/webapp/webmrbc/copy.bat
r270 r273 42 42 copy /Y favicon.ico ..\..\httpd-fs\favicon.ico 43 43 copy /Y img\banner.svg ..\..\httpd-fs\img\banner.svg 44 copy /Y img\core-s.svg ..\..\httpd-fs\img\core-s.svg 44 45 copy /Y img\no_image.png ..\..\httpd-fs\img\no_image.png 45 46 copy /Y index.min.html ..\..\httpd-fs\index.html 47 copy /Y information.json ..\..\httpd-fs\information.json 46 48 copy /Y js\FileSaver.min.js ..\..\httpd-fs\js\FileSaver.min.js 47 49 copy /Y js\blockly_compressed.js ..\..\httpd-fs\js\blockly_compressed.js -
EcnlProtoTool/trunk/webapp/webmrbc/css/webmrbc.css
r270 r273 26 26 #main-menu .container { 27 27 width: 100%; 28 padding-right: 0px; 29 } 30 31 #main-menu #file-from { 32 padding-right: 0px; 28 33 } 29 34 -
EcnlProtoTool/trunk/webapp/webmrbc/index.html
r270 r273 5 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 6 <meta name="viewport" content="width=device-width, initial-scale=1"> 7 <title>TOPPERS/ECNL for mruby Prototyp e Generator</title>7 <title>TOPPERS/ECNL for mruby Prototyping Tool</title> 8 8 <link rel="stylesheet" href="bootstrap/css/bootstrap.css" /> 9 9 <link rel="stylesheet" href="bootstrap/css/bootstrap-theme.css" /> … … 136 136 <i class="glyphicon glyphicon-send"></i> 137 137 実行 138 </a> 139 <a class="btn btn-link" id="information-button" onclick="WebMrbc.Views.MainMenuView.onInformationOpen()"> 140 <i class="glyphicon glyphicon-info-sign"></i> 138 141 </a> 139 142 </form> … … 311 314 <div class="modal-body"> 312 315 <div id="message-text">実行ファイルを転送しています。</div> 316 </div> 317 <div class="modal-footer" style="text-align: right;"> 318 <button id="message-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onMessageClose()">OK</button> 319 </div> 320 </div> 321 </div> 322 </div> 323 324 <div id="information-modal" class="modal fade"> 325 <div class="modal-dialog"> 326 <div class="modal-content"> 327 <div class="modal-body"> 328 <div class="panel panel-default"> 329 <div class="panel-heading"> 330 ソフトウェア情報 331 </div> 332 <div id="software-list" class="list-group"> 333 </div> 334 </div> 313 335 <div style="text-align: right;"> 314 <button id=" message-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onMessageClose()">OK</button>336 <button id="information-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onInformationClose()">OK</button> 315 337 </div> 338 </div> 339 <div class="modal-footer" style="text-align: right;"> 340 <a href="http://www.core-s.co.jp" target="_blank" style="text-align: center"> 341 <p class="list-group-item-text"><img src="img/core-s.svg">コアーズ株式会社</p> 342 </a> 316 343 </div> 317 344 </div> -
EcnlProtoTool/trunk/webapp/webmrbc/index.min.html
r270 r273 5 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 6 <meta name="viewport" content="width=device-width, initial-scale=1"> 7 <title>TOPPERS/ECNL for mruby Prototyp e Generator</title>7 <title>TOPPERS/ECNL for mruby Prototyping Tool</title> 8 8 <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" /> 9 9 <link rel="stylesheet" href="bootstrap/css/bootstrap-theme.min.css" /> … … 134 134 <i class="glyphicon glyphicon-send"></i> 135 135 実行 136 </a> 137 <a class="btn btn-link" id="information-button" onclick="WebMrbc.Views.MainMenuView.onInformationOpen()"> 138 <i class="glyphicon glyphicon-info-sign"></i> 136 139 </a> 137 140 </form> … … 309 312 <div class="modal-body"> 310 313 <div id="message-text">実行ファイルを転送しています。</div> 314 </div> 315 <div class="modal-footer" style="text-align: right;"> 316 <button id="message-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onMessageClose()">OK</button> 317 </div> 318 </div> 319 </div> 320 </div> 321 322 <div id="information-modal" class="modal fade"> 323 <div class="modal-dialog"> 324 <div class="modal-content"> 325 <div class="modal-body"> 326 <div class="panel panel-default"> 327 <div class="panel-heading"> 328 ソフトウェア情報 329 </div> 330 <div id="software-list" class="list-group"> 331 </div> 332 </div> 311 333 <div style="text-align: right;"> 312 <button id=" message-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onMessageClose()">OK</button>334 <button id="information-button" class="btn btn-default" hidden onclick="WebMrbc.Views.MainMenuView.onInformationClose()">OK</button> 313 335 </div> 336 </div> 337 <div class="modal-footer" style="text-align: right;"> 338 <a href="http://www.core-s.co.jp" target="_blank" style="text-align: center"> 339 <p class="list-group-item-text"><img src="img/core-s.svg">コアーズ株式会社</p> 340 </a> 314 341 </div> 315 342 </div> -
EcnlProtoTool/trunk/webapp/webmrbc/webmrbc.csproj
r270 r273 77 77 <Content Include="ecnl_toolbox.xml" /> 78 78 <Content Include="img\banner.svg" /> 79 <Content Include="img\core-s.svg" /> 79 80 <Content Include="img\no_image.png" /> 80 81 <Content Include="js\blockly.js" /> … … 95 96 <Content Include="bootstrap\fonts\glyphicons-halflings-regular.woff2" /> 96 97 <Content Include="echonet_objects.json" /> 98 <Content Include="information.json" /> 97 99 <None Include="Web.Debug.config"> 98 100 <DependentUpon>Web.config</DependentUpon> … … 114 116 <Compile Include="App.cs" /> 115 117 <Compile Include="Arduino\GrPeach.cs" /> 118 <Compile Include="Arduino\GrSakura.cs" /> 116 119 <Compile Include="Arduino\I2cBlock.cs" /> 117 120 <Compile Include="Arduino\KernelBlock.cs" /> … … 122 125 <Compile Include="Arduino\ServoBlock.cs" /> 123 126 <Compile Include="Arduino\SystemBlock.cs" /> 127 <Compile Include="Arduino\TargetBoard.cs" /> 124 128 <Compile Include="Block.cs" /> 125 129 <Compile Include="Blockly.cs" />
Note:
See TracChangeset
for help on using the changeset viewer.