├── .gitignore ├── README ├── README-dist ├── app ├── lib │ ├── RXTXcomm.jar │ ├── antlr.jar │ ├── apple.jar │ ├── ecj.jar │ ├── jna.jar │ └── oro.jar └── src │ ├── antlr │ ├── ExtendedCommonASTWithHiddenTokens.java │ ├── TokenStreamCopyingHiddenTokenFilter.java │ └── java │ │ ├── java.g │ │ ├── java.g.java15 │ │ └── java.tree.g │ └── processing │ └── app │ ├── Base.java │ ├── Commander.java.disabled │ ├── Editor.java │ ├── EditorConsole.java │ ├── EditorHeader.java │ ├── EditorLineStatus.java │ ├── EditorListener.java │ ├── EditorStatus.java │ ├── EditorToolbar.java │ ├── FindReplace.java │ ├── Platform.java │ ├── Preferences.java │ ├── PresentMode.java │ ├── Serial.java │ ├── SerialException.java │ ├── SerialMonitor.java │ ├── Sketch.java │ ├── SketchCode.java │ ├── Theme.java │ ├── UpdateCheck.java │ ├── WebServer.java │ ├── debug │ ├── ArmCompiler.java │ ├── AvrdudeUploader.java │ ├── Compiler.java │ ├── DFUUploader.java │ ├── EventThread.java │ ├── MessageConsumer.java │ ├── MessageSiphon.java │ ├── MessageStream.java │ ├── Runner.java │ ├── RunnerException.java │ ├── RunnerListener.java │ ├── Sizer.java │ ├── StreamRedirectThread.java │ ├── Target.java │ └── Uploader.java │ ├── linux │ └── Platform.java │ ├── macosx │ ├── Platform.java │ └── ThinkDifferent.java │ ├── preproc │ └── PdePreprocessor.java │ ├── syntax │ ├── CTokenMarker.java │ ├── DefaultInputHandler.java │ ├── InputHandler.java │ ├── JEditTextArea.java │ ├── KeywordMap.java │ ├── PdeKeywords.java │ ├── PdeTextAreaDefaults.java │ ├── SyntaxDocument.java │ ├── SyntaxStyle.java │ ├── SyntaxUtilities.java │ ├── TextAreaDefaults.java │ ├── TextAreaPainter.java │ ├── TextUtilities.java │ ├── Token.java │ ├── TokenMarker.java │ └── readme.txt │ ├── tools │ ├── Archiver.java │ ├── AutoFormat.java │ ├── ColorSelector.java │ ├── CreateFont.java │ ├── DiscourseFormat.java │ ├── FixEncoding.java │ ├── Tool.java │ └── format │ │ ├── src │ │ └── AutoFormat.java │ │ └── tool │ │ ├── jalopy.jar │ │ └── log4j.jar │ └── windows │ ├── Advapi32.java │ ├── Options.java │ ├── Platform.java │ ├── Registry.java │ ├── WINBASE.java │ ├── WINERROR.java │ ├── WINNT.java │ └── WINREG.java ├── build ├── cmd │ ├── dist.sh │ └── dist │ │ └── processing ├── javadoc │ ├── make.sh │ ├── stylesheet.css │ └── upload.sh ├── linux │ ├── dist.sh │ ├── dist │ │ ├── 45-maple.rules │ │ ├── NOTE │ │ ├── install-udev-rules.sh │ │ ├── lib │ │ │ ├── RXTXcomm.jar.i386 │ │ │ ├── RXTXcomm.jar.x86_64 │ │ │ ├── librxtxSerial.so.i386 │ │ │ └── librxtxSerial.so.x86_64 │ │ ├── maple-ide │ │ └── tools │ │ │ └── dfu-util │ ├── make.sh │ └── run.sh ├── macosx │ ├── dist.sh │ ├── dist │ │ ├── DS_Store │ │ ├── MapleIDE.app │ │ │ └── Contents │ │ │ │ ├── Info.plist │ │ │ │ ├── MacOS │ │ │ │ └── JavaApplicationStub │ │ │ │ ├── PkgInfo │ │ │ │ └── Resources │ │ │ │ ├── Java │ │ │ │ ├── libquaqua.jnilib │ │ │ │ ├── libquaqua64.jnilib │ │ │ │ ├── librxtxSerial.jnilib │ │ │ │ └── quaqua.jar │ │ │ │ ├── pde.icns │ │ │ │ └── processing.icns │ │ ├── background.png │ │ ├── template.dmg.gz │ │ └── tools │ │ │ ├── dfu-util │ │ │ └── libusb-0.1.4.dylib │ ├── make.sh │ ├── mkdmg │ └── run.sh ├── shared │ ├── examples │ │ ├── Analog │ │ │ ├── AnalogInOutSerial │ │ │ │ └── AnalogInOutSerial.pde │ │ │ ├── AnalogInSerial │ │ │ │ └── AnalogInSerial.pde │ │ │ ├── AnalogInput │ │ │ │ └── AnalogInput.pde │ │ │ ├── Calibration │ │ │ │ └── Calibration.pde │ │ │ ├── Fading │ │ │ │ └── Fading.pde │ │ │ └── Smoothing │ │ │ │ └── Smoothing.pde │ │ ├── Communication │ │ │ ├── ASCIITable │ │ │ │ └── ASCIITable.pde │ │ │ ├── Dimmer │ │ │ │ └── Dimmer.pde │ │ │ ├── Graph │ │ │ │ └── Graph.pde │ │ │ ├── MIDI │ │ │ │ └── Midi.pde │ │ │ ├── PhysicalPixel │ │ │ │ └── PhysicalPixel.pde │ │ │ ├── SerialCallResponse │ │ │ │ └── SerialCallResponse.pde │ │ │ ├── SerialCallResponseASCII │ │ │ │ └── SerialCallResponseASCII.pde │ │ │ ├── SerialPassthrough │ │ │ │ └── SerialPassthrough.pde │ │ │ └── VirtualColorMixer │ │ │ │ └── VirtualColorMixer.pde │ │ ├── Control │ │ │ ├── Arrays │ │ │ │ └── Arrays.pde │ │ │ ├── ForLoopIteration │ │ │ │ └── ForLoopIteration.pde │ │ │ ├── IfStatementConditional │ │ │ │ └── IfStatementConditional.pde │ │ │ ├── WhileStatementConditional │ │ │ │ └── WhileStatementConditional.pde │ │ │ ├── switchCase │ │ │ │ └── switchCase.pde │ │ │ └── switchCase2 │ │ │ │ └── switchCase2.pde │ │ ├── Digital │ │ │ ├── Blink │ │ │ │ └── Blink.pde │ │ │ ├── BlinkWithoutDelay │ │ │ │ └── BlinkWithoutDelay.pde │ │ │ ├── Button │ │ │ │ └── Button.pde │ │ │ ├── Debounce │ │ │ │ └── Debounce.pde │ │ │ └── StateChangeDetection │ │ │ │ └── StateChangeDetection.pde │ │ ├── Display │ │ │ ├── RowColumnScanning │ │ │ │ └── RowColumnScanning.pde │ │ │ └── barGraph │ │ │ │ └── barGraph.pde │ │ ├── Maple │ │ │ ├── CrudeVGA │ │ │ │ └── CrudeVGA.pde │ │ │ ├── InteractiveTest │ │ │ │ └── InteractiveTest.pde │ │ │ ├── QASlave │ │ │ │ └── QASlave.pde │ │ │ ├── StressSerialUSB │ │ │ │ └── StressSerialUSB.pde │ │ │ └── TimerInterrupts │ │ │ │ └── TimerInterrupts.pde │ │ ├── Sensors │ │ │ └── Knock │ │ │ │ └── Knock.pde │ │ └── Stubs │ │ │ ├── AnalogReadPWMWrite │ │ │ └── AnalogReadPWMWrite.pde │ │ │ ├── AnalogReadSerial │ │ │ └── AnalogReadSerial.pde │ │ │ ├── BareMinumum │ │ │ └── BareMinumum.pde │ │ │ ├── DigitalReadSerial │ │ │ └── DigitalReadSerial.pde │ │ │ ├── DigitalReadWrite │ │ │ └── DigitalReadWrite.pde │ │ │ └── HelloWorld │ │ │ └── HelloWorld.pde │ ├── gen-version-string │ ├── lib │ │ ├── .gitignore │ │ ├── about.jpg │ │ ├── keywords.txt │ │ ├── preferences.txt │ │ └── theme │ │ │ ├── buttons.gif │ │ │ ├── resize.gif │ │ │ ├── tab-sel-left.gif │ │ │ ├── tab-sel-menu.gif │ │ │ ├── tab-sel-mid.gif │ │ │ ├── tab-sel-right.gif │ │ │ ├── tab-unsel-left.gif │ │ │ ├── tab-unsel-menu.gif │ │ │ ├── tab-unsel-mid.gif │ │ │ ├── tab-unsel-right.gif │ │ │ └── theme.txt │ ├── reference │ │ └── .gitignore │ └── tools │ │ ├── Mangler │ │ ├── make.sh │ │ └── src │ │ │ └── Mangler.java │ │ └── howto.txt └── windows │ ├── .gitignore │ ├── dist.sh │ ├── dist │ ├── cygiconv-2.dll │ ├── cygwin1.dll │ ├── dfu-util.exe │ ├── drivers │ │ └── mapleDrv │ │ │ ├── dfu │ │ │ ├── libusb0.dll │ │ │ ├── libusb0.sys │ │ │ ├── libusb0_x64.dll │ │ │ ├── libusb0_x64.sys │ │ │ ├── maple.cat │ │ │ ├── maple.inf │ │ │ └── maple_x64.cat │ │ │ └── serial │ │ │ ├── maple_serial.inf │ │ │ ├── msports.dll │ │ │ ├── serenum.sys │ │ │ └── usbser.sys │ ├── libusb0.dll │ ├── rxtxSerial.dll │ └── tools │ │ └── dfu-util.exe │ ├── launcher │ ├── about.bmp │ ├── application.ico │ ├── config.xml │ └── launch4j │ │ ├── LICENSE.txt │ │ ├── bin │ │ ├── COPYING │ │ ├── ld.exe │ │ └── windres.exe │ │ ├── build.xml │ │ ├── demo │ │ ├── ConsoleApp │ │ │ ├── ConsoleApp.exe │ │ │ ├── ConsoleApp.jar │ │ │ ├── build.bat │ │ │ ├── build.xml │ │ │ ├── l4j │ │ │ │ └── ConsoleApp.ico │ │ │ ├── lib │ │ │ │ └── readme.txt │ │ │ ├── readme.txt │ │ │ └── src │ │ │ │ └── net │ │ │ │ └── sf │ │ │ │ └── launch4j │ │ │ │ └── example │ │ │ │ └── ConsoleApp.java │ │ ├── LICENSE.txt │ │ ├── SimpleApp │ │ │ ├── SimpleApp.exe │ │ │ ├── SimpleApp.jar │ │ │ ├── build.bat │ │ │ ├── build.xml │ │ │ ├── l4j │ │ │ │ ├── SimpleApp.ico │ │ │ │ ├── SimpleApp.xml │ │ │ │ └── splash.bmp │ │ │ ├── lib │ │ │ │ └── readme.txt │ │ │ ├── readme.txt │ │ │ └── src │ │ │ │ └── net │ │ │ │ └── sf │ │ │ │ └── launch4j │ │ │ │ └── example │ │ │ │ └── SimpleApp.java │ │ └── readme.txt │ │ ├── head │ │ ├── LICENSE.txt │ │ ├── guihead.o │ │ └── head.o │ │ ├── head_src │ │ ├── LICENSE.txt │ │ ├── consolehead │ │ │ ├── Makefile.win │ │ │ ├── consolehead.c │ │ │ └── consolehead.dev │ │ ├── guihead │ │ │ ├── Makefile.win │ │ │ ├── guihead.c │ │ │ ├── guihead.dev │ │ │ └── guihead.h │ │ ├── head.c │ │ ├── head.h │ │ └── resource.h │ │ ├── launch4j.exe │ │ ├── launch4j.jar │ │ ├── launch4j.jfpr │ │ ├── launch4jc.exe │ │ ├── lib │ │ ├── JGoodies.Forms.LICENSE.txt │ │ ├── JGoodies.Looks.LICENSE.txt │ │ ├── Nuvola.Icon.Theme.LICENSE.txt │ │ ├── XStream.LICENSE.txt │ │ ├── commons-beanutils.jar │ │ ├── commons-logging.jar │ │ ├── commons.LICENSE.txt │ │ ├── forms.jar │ │ ├── formsrt.jar │ │ ├── foxtrot.LICENSE.txt │ │ ├── foxtrot.jar │ │ ├── looks.jar │ │ └── xstream.jar │ │ ├── manifest │ │ ├── uac.exe.manifest │ │ └── xp-themes.exe.manifest │ │ ├── src │ │ ├── images │ │ │ ├── asterix-o.gif │ │ │ ├── asterix.gif │ │ │ ├── build.png │ │ │ ├── button_ok.png │ │ │ ├── cancel16.png │ │ │ ├── down16.png │ │ │ ├── edit_add16.png │ │ │ ├── info.png │ │ │ ├── new.png │ │ │ ├── new16.png │ │ │ ├── ok16.png │ │ │ ├── open.png │ │ │ ├── open16.png │ │ │ ├── run.png │ │ │ ├── save.png │ │ │ └── up16.png │ │ ├── launch4j.properties │ │ └── net │ │ │ └── sf │ │ │ └── launch4j │ │ │ ├── Builder.java │ │ │ ├── BuilderException.java │ │ │ ├── ExecException.java │ │ │ ├── FileChooserFilter.java │ │ │ ├── Log.java │ │ │ ├── Main.java │ │ │ ├── Messages.java │ │ │ ├── OptionParser.java │ │ │ ├── RcBuilder.java │ │ │ ├── Util.java │ │ │ ├── ant │ │ │ ├── AntClassPath.java │ │ │ ├── AntConfig.java │ │ │ ├── AntJre.java │ │ │ ├── Launch4jTask.java │ │ │ ├── Messages.java │ │ │ ├── StringWrapper.java │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ │ ├── binding │ │ │ ├── Binding.java │ │ │ ├── BindingException.java │ │ │ ├── Bindings.java │ │ │ ├── IValidatable.java │ │ │ ├── InvariantViolationException.java │ │ │ ├── JComboBoxBinding.java │ │ │ ├── JListBinding.java │ │ │ ├── JRadioButtonBinding.java │ │ │ ├── JTextAreaBinding.java │ │ │ ├── JTextComponentBinding.java │ │ │ ├── JToggleButtonBinding.java │ │ │ ├── Messages.java │ │ │ ├── OptComponentBinding.java │ │ │ ├── OptJTextAreaBinding.java │ │ │ ├── Validator.java │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ │ ├── config │ │ │ ├── ClassPath.java │ │ │ ├── Config.java │ │ │ ├── ConfigPersister.java │ │ │ ├── ConfigPersisterException.java │ │ │ ├── Jre.java │ │ │ ├── LdDefaults.java │ │ │ ├── Messages.java │ │ │ ├── Msg.java │ │ │ ├── SingleInstance.java │ │ │ ├── Splash.java │ │ │ ├── VersionInfo.java │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ │ ├── form │ │ │ ├── BasicForm.java │ │ │ ├── BasicForm.jfrm │ │ │ ├── ClassPathForm.java │ │ │ ├── ClassPathForm.jfrm │ │ │ ├── ConfigForm.java │ │ │ ├── ConfigForm.jfrm │ │ │ ├── EnvironmentVarsForm.java │ │ │ ├── EnvironmentVarsForm.jfrm │ │ │ ├── HeaderForm.java │ │ │ ├── HeaderForm.jfrm │ │ │ ├── JreForm.java │ │ │ ├── JreForm.jfrm │ │ │ ├── Messages.java │ │ │ ├── MessagesForm.java │ │ │ ├── MessagesForm.jfrm │ │ │ ├── SingleInstanceForm.java │ │ │ ├── SingleInstanceForm.jfrm │ │ │ ├── SplashForm.java │ │ │ ├── SplashForm.jfrm │ │ │ ├── VersionInfoForm.java │ │ │ ├── VersionInfoForm.jfrm │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ │ ├── formimpl │ │ │ ├── AbstractAcceptListener.java │ │ │ ├── BasicFormImpl.java │ │ │ ├── BrowseActionListener.java │ │ │ ├── ClassPathFormImpl.java │ │ │ ├── ConfigFormImpl.java │ │ │ ├── EnvironmentVarsFormImpl.java │ │ │ ├── FileChooser.java │ │ │ ├── GlassPane.java │ │ │ ├── HeaderFormImpl.java │ │ │ ├── JreFormImpl.java │ │ │ ├── MainFrame.java │ │ │ ├── Messages.java │ │ │ ├── MessagesFormImpl.java │ │ │ ├── SingleInstanceFormImpl.java │ │ │ ├── SplashFormImpl.java │ │ │ ├── VersionInfoFormImpl.java │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ │ ├── messages.properties │ │ │ └── messages_es.properties │ │ ├── w32api │ │ ├── MinGW.LICENSE.txt │ │ ├── crt2.o │ │ ├── libadvapi32.a │ │ ├── libgcc.a │ │ ├── libkernel32.a │ │ ├── libmingw32.a │ │ ├── libmsvcrt.a │ │ ├── libshell32.a │ │ └── libuser32.a │ │ └── web │ │ ├── bullet.gif │ │ ├── changelog.html │ │ ├── docs.html │ │ ├── index.html │ │ ├── launch4j-use.gif │ │ ├── launch4j.gif │ │ ├── links.html │ │ └── style.css │ ├── make.sh │ ├── run.sh │ └── srun.sh ├── core ├── api.txt ├── done.txt ├── license.txt ├── make.sh ├── preproc.pl ├── preproc │ ├── build.xml │ ├── demo │ │ ├── PApplet.java │ │ ├── PGraphics.java │ │ └── PImage.java │ ├── preproc.jar │ └── src │ │ └── processing │ │ └── build │ │ └── PAppletMethods.java ├── src │ └── processing │ │ ├── core │ │ ├── PApplet.java │ │ ├── PConstants.java │ │ ├── PFont.java │ │ ├── PGraphics.java │ │ ├── PGraphics2D.java │ │ ├── PGraphics3D.java │ │ ├── PGraphicsJava2D.java │ │ ├── PImage.java │ │ ├── PLine.java │ │ ├── PMatrix.java │ │ ├── PMatrix2D.java │ │ ├── PMatrix3D.java │ │ ├── PPolygon.java │ │ ├── PShape.java │ │ ├── PShapeSVG.java │ │ ├── PSmoothTriangle.java │ │ ├── PStyle.java │ │ ├── PTriangle.java │ │ └── PVector.java │ │ └── xml │ │ ├── CDATAReader.java │ │ ├── ContentReader.java │ │ ├── PIReader.java │ │ ├── StdXMLBuilder.java │ │ ├── StdXMLParser.java │ │ ├── StdXMLReader.java │ │ ├── XMLAttribute.java │ │ ├── XMLElement.java │ │ ├── XMLEntityResolver.java │ │ ├── XMLException.java │ │ ├── XMLParseException.java │ │ ├── XMLUtil.java │ │ ├── XMLValidationException.java │ │ ├── XMLValidator.java │ │ └── XMLWriter.java └── todo.txt ├── hardware └── leaflabs │ ├── boards.txt │ ├── bootloaders │ └── maple │ │ ├── Makefile │ │ ├── TAGS │ │ ├── flash │ │ ├── debug.cfg │ │ ├── flash.cfg │ │ ├── openocd.cfg │ │ └── stm32.cfg │ │ ├── main.c │ │ ├── maple_dfu.c │ │ ├── maple_dfu.h │ │ ├── maple_lib.c │ │ ├── maple_lib.h │ │ ├── maple_regs.h │ │ ├── maple_usb.c │ │ ├── maple_usb.h │ │ ├── maple_usb_desc.c │ │ ├── maple_usb_desc.h │ │ ├── stm32_lib │ │ ├── c_only_md.ld │ │ ├── c_only_md_RAM.ld │ │ ├── c_only_startup.s │ │ ├── c_only_startup_user.s │ │ ├── cortexm3_macro.h │ │ ├── cortexm3_macro.s │ │ └── stm32f10x_type.h │ │ ├── todo │ │ └── usb_lib │ │ ├── usb_conf.h │ │ ├── usb_core.c │ │ ├── usb_core.h │ │ ├── usb_def.h │ │ ├── usb_init.c │ │ ├── usb_init.h │ │ ├── usb_int.c │ │ ├── usb_int.h │ │ ├── usb_lib.h │ │ ├── usb_mem.c │ │ ├── usb_mem.h │ │ ├── usb_regs.c │ │ ├── usb_regs.h │ │ └── usb_type.h │ ├── cores │ └── maple │ │ └── .gitignore │ └── programmers.txt ├── libraries ├── .gitignore └── README ├── license.txt ├── todo.txt └── version.txt /.gitignore: -------------------------------------------------------------------------------- 1 | .svn 2 | avr_tools.zip 3 | jre.tgz 4 | jre.zip 5 | reference.zip 6 | template.dmg.gz 7 | tools-universal.zip 8 | libmaple-version.txt 9 | ./build/windows/avr_tools.zip 10 | ./build/linux/jre.tgz 11 | ./build/windows/jre.zip 12 | ./build/shared/reference.zip 13 | ./build/macosx/template.dmg.gz 14 | ./build/macosx/dist/tools-universal.zip 15 | *.class 16 | build/linux/arm-2009q3-68-arm-none-eabi-toolchain-linux32.tar.gz 17 | build/linux/arm-2010q1-188-arm-none-eabi-toolchain-linux32.tar.gz 18 | build/linux/dist/tools/arm/ 19 | build/linux/maple-ide-* 20 | build/linux/work/ 21 | build/macosx/arm-2010q1-188-arm-none-eabi-toolchain-macosx32.tar.gz 22 | build/macosx/dist/tools/arm/ 23 | build/macosx/work/ 24 | build/windows/dist/java/ 25 | build/windows/dist/tools/arm/ 26 | build/windows/sun-java6-jre-win32.tar.gz 27 | *~ 28 | *.pyc 29 | -------------------------------------------------------------------------------- /app/lib/RXTXcomm.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/RXTXcomm.jar -------------------------------------------------------------------------------- /app/lib/antlr.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/antlr.jar -------------------------------------------------------------------------------- /app/lib/apple.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/apple.jar -------------------------------------------------------------------------------- /app/lib/ecj.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/ecj.jar -------------------------------------------------------------------------------- /app/lib/jna.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/jna.jar -------------------------------------------------------------------------------- /app/lib/oro.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/lib/oro.jar -------------------------------------------------------------------------------- /app/src/processing/app/SerialException.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Copyright (c) 2007 David A. Mellis 5 | 6 | This program is free software; you can redistribute it and/or modify 7 | it under the terms of the GNU General Public License as published by 8 | the Free Software Foundation; either version 2 of the License, or 9 | (at your option) any later version. 10 | 11 | This program is distributed in the hope that it will be useful, 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | GNU General Public License for more details. 15 | 16 | You should have received a copy of the GNU General Public License 17 | along with this program; if not, write to the Free Software Foundation, 18 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 19 | */ 20 | 21 | package processing.app; 22 | 23 | public class SerialException extends Exception { 24 | public SerialException() { 25 | super(); 26 | } 27 | 28 | public SerialException(String message) { 29 | super(message); 30 | } 31 | 32 | public SerialException(String message, Throwable cause) { 33 | super(message, cause); 34 | } 35 | 36 | public SerialException(Throwable cause) { 37 | super(cause); 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /app/src/processing/app/debug/MessageConsumer.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Part of the Processing project - http://processing.org 5 | 6 | Copyright (c) 2004-06 Ben Fry and Casey Reas 7 | Copyright (c) 2001-04 Massachusetts Institute of Technology 8 | 9 | This program is free software; you can redistribute it and/or modify 10 | it under the terms of the GNU General Public License as published by 11 | the Free Software Foundation; either version 2 of the License, or 12 | (at your option) any later version. 13 | 14 | This program is distributed in the hope that it will be useful, 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | GNU General Public License for more details. 18 | 19 | You should have received a copy of the GNU General Public License 20 | along with this program; if not, write to the Free Software Foundation, 21 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 22 | */ 23 | 24 | package processing.app.debug; 25 | 26 | 27 | /** 28 | * Interface for dealing with parser/compiler output. 29 | *

30 | * Different instances of MessageStream need to do different things with 31 | * messages. In particular, a stream instance used for parsing output from 32 | * the compiler compiler has to interpret its messages differently than one 33 | * parsing output from the runtime. 34 | *

35 | * Classes which consume messages and do something with them 36 | * should implement this interface. 37 | */ 38 | public interface MessageConsumer { 39 | 40 | public void message(String s); 41 | 42 | } 43 | -------------------------------------------------------------------------------- /app/src/processing/app/debug/MessageStream.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Part of the Processing project - http://processing.org 5 | 6 | Copyright (c) 2004-08 Ben Fry and Casey Reas 7 | Copyright (c) 2001-04 Massachusetts Institute of Technology 8 | 9 | This program is free software; you can redistribute it and/or modify 10 | it under the terms of the GNU General Public License as published by 11 | the Free Software Foundation; either version 2 of the License, or 12 | (at your option) any later version. 13 | 14 | This program is distributed in the hope that it will be useful, 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | GNU General Public License for more details. 18 | 19 | You should have received a copy of the GNU General Public License 20 | along with this program; if not, write to the Free Software Foundation, 21 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 22 | */ 23 | 24 | package processing.app.debug; 25 | 26 | import java.io.*; 27 | 28 | 29 | /** 30 | * OutputStream to handle stdout/stderr messages. 31 | *

32 | * This is used by Editor, System.err is set to 33 | * new PrintStream(new MessageStream()). 34 | * It's also used by Compiler. 35 | */ 36 | class MessageStream extends OutputStream { 37 | 38 | MessageConsumer messageConsumer; 39 | 40 | public MessageStream(MessageConsumer messageConsumer) { 41 | this.messageConsumer = messageConsumer; 42 | } 43 | 44 | public void close() { } 45 | 46 | public void flush() { } 47 | 48 | public void write(byte b[]) { 49 | // this never seems to get called 50 | System.out.println("leech1: " + new String(b)); 51 | } 52 | 53 | public void write(byte b[], int offset, int length) { 54 | //System.out.println("leech2: " + new String(b)); 55 | this.messageConsumer.message(new String(b, offset, length)); 56 | } 57 | 58 | public void write(int b) { 59 | // this never seems to get called 60 | System.out.println("leech3: '" + ((char)b) + "'"); 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /app/src/processing/app/debug/RunnerListener.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Part of the Processing project - http://processing.org 5 | 6 | Copyright (c) 2008 Ben Fry and Casey Reas 7 | 8 | This program is free software; you can redistribute it and/or modify 9 | it under the terms of the GNU General Public License as published by 10 | the Free Software Foundation; either version 2 of the License, or 11 | (at your option) any later version. 12 | 13 | This program is distributed in the hope that it will be useful, 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | GNU General Public License for more details. 17 | 18 | You should have received a copy of the GNU General Public License 19 | along with this program; if not, write to the Free Software Foundation, 20 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 21 | */ 22 | 23 | package processing.app.debug; 24 | 25 | 26 | public interface RunnerListener { 27 | 28 | public void statusError(String message); 29 | 30 | public void statusError(Exception exception); 31 | } -------------------------------------------------------------------------------- /app/src/processing/app/syntax/readme.txt: -------------------------------------------------------------------------------- 1 | OLDSYNTAX PACKAGE README 2 | 3 | I am placing the jEdit 2.2.1 syntax highlighting package in the public 4 | domain. This means it can be integrated into commercial programs, etc. 5 | 6 | This package requires at least Java 1.1 and Swing 1.1. Syntax 7 | highlighting for the following file types is supported: 8 | 9 | - C++, C 10 | - CORBA IDL 11 | - Eiffel 12 | - HTML 13 | - Java 14 | - Java properties 15 | - JavaScript 16 | - MS-DOS INI 17 | - MS-DOS batch files 18 | - Makefile 19 | - PHP 20 | - Perl 21 | - Python 22 | - TeX 23 | - Transact-SQL 24 | - Unix patch/diff 25 | - Unix shell script 26 | - XML 27 | 28 | This package is undocumented; read the source (start by taking a look at 29 | JEditTextArea.java) to find out how to use it; it's really simple. Feel 30 | free to e-mail questions, queries, etc. to me, but keep in mind that 31 | this code is very old and I no longer maintain it. So if you find a bug, 32 | don't bother me about it; fix it yourself. 33 | 34 | * Copyright 35 | 36 | The jEdit 2.2.1 syntax highlighting package contains code that is 37 | Copyright 1998-1999 Slava Pestov, Artur Biesiadowski, Clancy Malcolm, 38 | Jonathan Revusky, Juha Lindfors and Mike Dillon. 39 | 40 | You may use and modify this package for any purpose. Redistribution is 41 | permitted, in both source and binary form, provided that this notice 42 | remains intact in all source distributions of this package. 43 | 44 | -- Slava Pestov 45 | 25 September 2000 46 | 47 | -------------------------------------------------------------------------------- /app/src/processing/app/tools/Tool.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Tool - interface implementation for the Processing tools menu 5 | Part of the Processing project - http://processing.org 6 | 7 | Copyright (c) 2008 Ben Fry and Casey Reas 8 | 9 | This program is free software; you can redistribute it and/or modify 10 | it under the terms of the GNU General Public License as published by 11 | the Free Software Foundation; either version 2 of the License, or 12 | (at your option) any later version. 13 | 14 | This program is distributed in the hope that it will be useful, 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | GNU General Public License for more details. 18 | 19 | You should have received a copy of the GNU General Public License 20 | along with this program; if not, write to the Free Software Foundation, 21 | Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 22 | */ 23 | 24 | package processing.app.tools; 25 | 26 | import processing.app.Editor; 27 | 28 | 29 | /** 30 | * Interface for items to be shown in the Tools menu. 31 | */ 32 | public interface Tool extends Runnable { 33 | 34 | public void init(Editor editor); 35 | 36 | public void run(); 37 | 38 | // Not doing shortcuts for now, no way to resolve between tools. 39 | // Also would need additional modifiers for shift and alt. 40 | //public char getShortcutKey(); 41 | 42 | public String getMenuTitle(); 43 | } 44 | 45 | -------------------------------------------------------------------------------- /app/src/processing/app/tools/format/tool/jalopy.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/src/processing/app/tools/format/tool/jalopy.jar -------------------------------------------------------------------------------- /app/src/processing/app/tools/format/tool/log4j.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/app/src/processing/app/tools/format/tool/log4j.jar -------------------------------------------------------------------------------- /app/src/processing/app/windows/Options.java: -------------------------------------------------------------------------------- 1 | /* 2 | * Options.java 3 | * 4 | * Created on 8. August 2007, 17:07 5 | * 6 | * To change this template, choose Tools | Template Manager 7 | * and open the template in the editor. 8 | */ 9 | 10 | package processing.app.windows; 11 | 12 | import static com.sun.jna.Library.*; 13 | import com.sun.jna.win32.*; 14 | import java.util.*; 15 | 16 | /** 17 | * 18 | * @author TB 19 | */ 20 | public interface Options { 21 | Map UNICODE_OPTIONS = new HashMap() { 22 | { 23 | put(OPTION_TYPE_MAPPER, W32APITypeMapper.UNICODE); 24 | put(OPTION_FUNCTION_MAPPER, W32APIFunctionMapper.UNICODE); 25 | } 26 | }; 27 | } 28 | -------------------------------------------------------------------------------- /app/src/processing/app/windows/WINBASE.java: -------------------------------------------------------------------------------- 1 | /* 2 | * WINBASE.java 3 | * 4 | * Created on 5. September 2007, 11:24 5 | * 6 | * To change this template, choose Tools | Template Manager 7 | * and open the template in the editor. 8 | */ 9 | 10 | package processing.app.windows; 11 | 12 | import com.sun.jna.Pointer; 13 | import com.sun.jna.Structure; 14 | 15 | /** 16 | * 17 | * @author TB 18 | */ 19 | public interface WINBASE { 20 | /* 21 | typedef struct _SECURITY_ATTRIBUTES { 22 | DWORD nLength; 23 | LPVOID lpSecurityDescriptor; 24 | BOOL bInheritHandle; 25 | } SECURITY_ATTRIBUTES, 26 | *PSECURITY_ATTRIBUTES, 27 | *LPSECURITY_ATTRIBUTES;*/ 28 | public static class SECURITY_ATTRIBUTES extends Structure { 29 | public int nLength; 30 | public Pointer lpSecurityDescriptor; 31 | public boolean bInheritHandle; 32 | } 33 | 34 | /* 35 | typedef struct _FILETIME { 36 | DWORD dwLowDateTime; 37 | DWORD dwHighDateTime; 38 | } FILETIME, *PFILETIME, *LPFILETIME;*/ 39 | public static class FILETIME extends Structure { 40 | public int dwLowDateTime; 41 | public int dwHighDateTime; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /app/src/processing/app/windows/WINERROR.java: -------------------------------------------------------------------------------- 1 | /* 2 | * WINERROR.java 3 | * 4 | * Created on 7. August 2007, 08:09 5 | * 6 | * To change this template, choose Tools | Template Manager 7 | * and open the template in the editor. 8 | */ 9 | 10 | package processing.app.windows; 11 | 12 | 13 | /** 14 | * 15 | * @author TB 16 | */ 17 | public interface WINERROR { 18 | public final static int ERROR_SUCCESS = 0; 19 | public final static int NO_ERROR = 0; 20 | public final static int ERROR_FILE_NOT_FOUND = 2; 21 | public final static int ERROR_MORE_DATA = 234; 22 | } 23 | -------------------------------------------------------------------------------- /app/src/processing/app/windows/WINREG.java: -------------------------------------------------------------------------------- 1 | /* 2 | * WINREG.java 3 | * 4 | * Created on 17. August 2007, 14:32 5 | * 6 | * To change this template, choose Tools | Template Manager 7 | * and open the template in the editor. 8 | */ 9 | 10 | package processing.app.windows; 11 | 12 | /** 13 | * 14 | * @author TB 15 | */ 16 | public interface WINREG { 17 | public final static int HKEY_CLASSES_ROOT = 0x80000000; 18 | public final static int HKEY_CURRENT_USER = 0x80000001; 19 | public final static int HKEY_LOCAL_MACHINE = 0x80000002; 20 | public final static int HKEY_USERS = 0x80000003; 21 | } 22 | -------------------------------------------------------------------------------- /build/cmd/dist.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # only needed for core.jar and pde.jar, hmm 4 | ARCH=`uname` 5 | if [ $ARCH == "Darwin" ] 6 | then 7 | BUILD=../macosx 8 | elif [ $ARCH == "Cygwin" ] 9 | then 10 | BUILD=../windows 11 | else 12 | BUILD=../linux 13 | fi 14 | 15 | REVISION=`../gen-version-string` 16 | echo Creating command-line distribution for revision $REVISION... 17 | 18 | # remove any old boogers 19 | rm -rf processing 20 | rm -rf processing-* 21 | 22 | mkdir processing 23 | cp -r ../shared/lib processing/ 24 | cp -r ../shared/libraries processing/ 25 | cp ../../app/lib/antlr.jar processing/lib/ 26 | cp ../../app/lib/ecj.jar processing/lib/ 27 | cp ../../app/lib/jna.jar processing/lib/ 28 | cp ../shared/revisions.txt processing/ 29 | 30 | # add the libraries folder with source 31 | cp -r ../../net processing/libraries/ 32 | cp -r ../../opengl processing/libraries/ 33 | cp -r ../../serial processing/libraries/ 34 | cp -r ../../pdf processing/libraries/ 35 | cp -r ../../dxf processing/libraries/ 36 | cp -r ../../xml processing/libraries/ 37 | cp -r ../../candy processing/libraries/ 38 | cp -r ../../video processing/libraries/ 39 | 40 | # grab pde.jar and export from the working dir 41 | cp $BUILD/work/lib/pde.jar processing/lib/ 42 | cp $BUILD/work/lib/core.jar processing/lib/ 43 | 44 | # get platform-specific goodies from the dist dir 45 | install -m 755 dist/processing processing/processing 46 | 47 | # remove boogers 48 | find processing -name "*~" -exec rm -f {} ';' 49 | find processing -name ".DS_Store" -exec rm -f {} ';' 50 | find processing -name "._*" -exec rm -f {} ';' 51 | find processing -name "Thumbs.db" -exec rm -f {} ';' 52 | 53 | # clean out the cvs entries 54 | find processing -name "CVS" -exec rm -rf {} ';' 2> /dev/null 55 | find processing -name ".cvsignore" -exec rm -rf {} ';' 56 | find processing -name ".svn" -exec rm -rf {} 2> /dev/null ';' 57 | 58 | # zip it all up for release 59 | echo Creating tarball and finishing... 60 | P5=processing-cmd-$REVISION 61 | mv processing $P5 62 | 63 | zip -rq $P5.zip $P5 64 | #tar cfz $P5.tgz $P5 65 | # nah, keep the new directory around 66 | #rm -rf $P5 67 | 68 | #echo Done. 69 | -------------------------------------------------------------------------------- /build/cmd/dist/processing: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | APPDIR="$(dirname -- "${0}")" 4 | 5 | # includes java/* in case a Java install is available 6 | for LIB in \ 7 | java/lib/rt.jar \ 8 | java/lib/tools.jar \ 9 | lib/*.jar \ 10 | ; 11 | do 12 | CLASSPATH="${CLASSPATH}:${APPDIR}/${LIB}" 13 | done 14 | export CLASSPATH 15 | 16 | export PATH="${APPDIR}/java/bin:${PATH}" 17 | 18 | java processing.app.Commander $@ 19 | -------------------------------------------------------------------------------- /build/javadoc/make.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | javadoc -public -notimestamp -d core \ 4 | ../../core/src/processing/core/*.java \ 5 | ../../core/src/processing/xml/*.java 6 | 7 | # These have to be done in a certain order... Most classes need to know about 8 | # core, and SVG needs to have the XML library opened earler. I'm probably not 9 | # setting this up right, so if anyone knows how to do it without specifying 10 | # all the directories like this, please let us know. 11 | javadoc -public -notimestamp -d everything \ 12 | -classpath ../../app/lib/antlr.jar:../../app/lib/jna.jar:../../serial/library/RXTXcomm.jar:../../opengl/library/jogl.jar:../../pdf/library/itext.jar:../../app/lib/ecj.jar \ 13 | ../../core/src/processing/core/*.java \ 14 | ../../core/src/processing/xml/*.java \ 15 | ../../app/src/antlr/*.java \ 16 | ../../app/src/antlr/java/*.java \ 17 | ../../app/src/processing/app/*.java \ 18 | ../../app/src/processing/app/debug/*.java \ 19 | ../../app/src/processing/app/linux/*.java \ 20 | ../../app/src/processing/app/macosx/*.java \ 21 | ../../app/src/processing/app/preproc/*.java \ 22 | ../../app/src/processing/app/syntax/*.java \ 23 | ../../app/src/processing/app/tools/*.java \ 24 | ../../app/src/processing/app/windows/*.java \ 25 | ../../dxf/src/processing/dxf/*.java \ 26 | ../../net/src/processing/net/*.java \ 27 | ../../opengl/src/processing/opengl/*.java \ 28 | ../../pdf/src/processing/pdf/*.java \ 29 | ../../serial/src/processing/serial/*.java \ 30 | ../../video/src/processing/video/*.java 31 | 32 | cp stylesheet.css core/ 33 | cp stylesheet.css everything/ 34 | -------------------------------------------------------------------------------- /build/javadoc/upload.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | rsync -avz --delete core/ fry@processing.org:dev/reference/core/javadoc/ 4 | rsync -avz --delete everything/ fry@processing.org:dev/reference/everything/javadoc/ -------------------------------------------------------------------------------- /build/linux/dist/45-maple.rules: -------------------------------------------------------------------------------- 1 | ATTRS{idProduct}=="1001", ATTRS{idVendor}=="0110", MODE="664", GROUP="plugdev" 2 | ATTRS{idProduct}=="1002", ATTRS{idVendor}=="0110", MODE="664", GROUP="plugdev" 3 | ATTRS{idProduct}=="0003", ATTRS{idVendor}=="1eaf", MODE="664", GROUP="plugdev" SYMLINK+="maple" 4 | ATTRS{idProduct}=="0004", ATTRS{idVendor}=="1eaf", MODE="664", GROUP="plugdev" SYMLINK+="maple" 5 | 6 | -------------------------------------------------------------------------------- /build/linux/dist/NOTE: -------------------------------------------------------------------------------- 1 | WHERE MY TOOLS AT? 2 | ----------------------------------------------------------------------------- 3 | The contents of lib/ and tools/ have been spun out of the repository into a 4 | seperate zip file, which should be fetched and extracted automatically when 5 | the make.sh script is run. 6 | 7 | -------------------------------------------------------------------------------- /build/linux/dist/install-udev-rules.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | if sudo [ -w /etc/udev/rules.d ]; then 4 | echo "Copying Maple-specific udev rules..." 5 | sudo cp -v tools/45-maple.rules /etc/udev/rules.d/45-maple.rules 6 | sudo chown root:root /etc/udev/rules.d/45-maple.rules 7 | sudo chmod 644 /etc/udev/rules.d/45-maple.rules 8 | else 9 | echo "Couldn't copy to /etc/udev/rules.d/; you probably have to run this script as root? Or your distribution of Linux doesn't include udev; try running the IDE itself as root." 10 | fi 11 | -------------------------------------------------------------------------------- /build/linux/dist/lib/RXTXcomm.jar.i386: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/linux/dist/lib/RXTXcomm.jar.i386 -------------------------------------------------------------------------------- /build/linux/dist/lib/RXTXcomm.jar.x86_64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/linux/dist/lib/RXTXcomm.jar.x86_64 -------------------------------------------------------------------------------- /build/linux/dist/lib/librxtxSerial.so.i386: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/linux/dist/lib/librxtxSerial.so.i386 -------------------------------------------------------------------------------- /build/linux/dist/lib/librxtxSerial.so.x86_64: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/linux/dist/lib/librxtxSerial.so.x86_64 -------------------------------------------------------------------------------- /build/linux/dist/maple-ide: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | APPDIR="$(dirname -- "${0}")" 4 | 5 | cd $APPDIR 6 | 7 | for LIB in \ 8 | java/lib/rt.jar \ 9 | java/lib/tools.jar \ 10 | lib/*.jar \ 11 | ; 12 | do 13 | CLASSPATH="${CLASSPATH}:${APPDIR}/${LIB}" 14 | done 15 | export CLASSPATH 16 | 17 | LD_LIBRARY_PATH=`pwd`/lib:${LD_LIBRARY_PATH} 18 | export LD_LIBRARY_PATH 19 | 20 | export PATH="${APPDIR}/java/bin:${PATH}" 21 | 22 | java -Dswing.defaultlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel processing.app.Base 23 | -------------------------------------------------------------------------------- /build/linux/dist/tools/dfu-util: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/linux/dist/tools/dfu-util -------------------------------------------------------------------------------- /build/linux/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | cd work && ./maple-ide && cd .. 4 | -------------------------------------------------------------------------------- /build/macosx/dist.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | REVISION=`../shared/gen-version-string` 4 | 5 | RELEASE=$REVISION 6 | echo Creating Arduino distribution for revision $REVISION... 7 | 8 | echo Removing old work directory, etc. 9 | 10 | # remove any unfinished builds or old builds 11 | rm -rf arduino 12 | rm -rf arduino-* 13 | rm -rf Arduino* 14 | rm -rf work 15 | 16 | echo Rerunning make.sh... 17 | ./make.sh 18 | 19 | echo Finished with make.sh. Packaging release. 20 | 21 | # write the release version number into the output directory 22 | echo $REVISION > work/MapleIDE.app/Contents/Resources/Java/lib/build-version.txt 23 | 24 | echo Cleaning file boogers... 25 | 26 | # remove boogers 27 | find work -name "*~" -exec rm -f {} ';' 28 | # need to leave ds store stuff cuz one of those is important 29 | #find processing -name ".DS_Store" -exec rm -f {} ';' 30 | find work -name "._*" -exec rm -f {} ';' 31 | find work -name "Thumbs.db" -exec rm -f {} ';' 32 | 33 | 34 | # the following was adopted from the makefile by Remko Troncon: 35 | # http://el-tramo.be/guides/fancy-dmg 36 | 37 | echo Creating disk image... 38 | 39 | SOURCE_DIR="work" 40 | SOURCE_FILES="MapleIDE.app" 41 | OUTPUT_DMG="maple-ide-$RELEASE-macosx-10_6" 42 | WORK_DMG="working.dmg" 43 | WORK_DIR="working_dir" 44 | 45 | gzip -cd dist/template.dmg.gz > "$WORK_DMG" 46 | mkdir -p "$WORK_DIR" 47 | hdiutil attach "$WORK_DMG" -noautoopen -quiet -mountpoint "$WORK_DIR" 48 | for i in "$SOURCE_FILES"; do 49 | rm -rf "$WORK_DIR/$i" 50 | ditto -rsrc "$SOURCE_DIR/$i" "$WORK_DIR/$i" 51 | done 52 | WC_DEV=`hdiutil info | grep "$WORK_DIR" | awk '{print $1}'` && hdiutil detach $WC_DEV -quiet -force 53 | hdiutil convert "$WORK_DMG" -quiet -format UDZO -imagekey zlib-level=9 -o "$OUTPUT_DMG" 54 | rm -rf "$WORK_DIR" 55 | rm -f "$WORK_DMG" 56 | 57 | # for later, if we need to resize, etc 58 | #hdiutil resize -size 200mb -growonly -imageonly working.dmg 59 | 60 | echo Done. 61 | -------------------------------------------------------------------------------- /build/macosx/dist/DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/DS_Store -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/MacOS/JavaApplicationStub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/MacOS/JavaApplicationStub -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/PkgInfo: -------------------------------------------------------------------------------- 1 | APPLPde1 -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/Java/libquaqua.jnilib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/Java/libquaqua.jnilib -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/Java/libquaqua64.jnilib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/Java/libquaqua64.jnilib -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/Java/librxtxSerial.jnilib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/Java/librxtxSerial.jnilib -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/Java/quaqua.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/Java/quaqua.jar -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/pde.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/pde.icns -------------------------------------------------------------------------------- /build/macosx/dist/MapleIDE.app/Contents/Resources/processing.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/MapleIDE.app/Contents/Resources/processing.icns -------------------------------------------------------------------------------- /build/macosx/dist/background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/background.png -------------------------------------------------------------------------------- /build/macosx/dist/template.dmg.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/template.dmg.gz -------------------------------------------------------------------------------- /build/macosx/dist/tools/dfu-util: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/tools/dfu-util -------------------------------------------------------------------------------- /build/macosx/dist/tools/libusb-0.1.4.dylib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/macosx/dist/tools/libusb-0.1.4.dylib -------------------------------------------------------------------------------- /build/macosx/mkdmg: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # 4 | FOLDER="$1" 5 | if [ -z "$FOLDER" ]; then 6 | echo 7 | echo "usage: $0 " 8 | echo 9 | exit 1 10 | fi 11 | 12 | if [ ! -d "$FOLDER" ]; then 13 | echo $FOLDER does not exist 14 | exit 2 15 | fi 16 | 17 | SIZE=`du -s "$FOLDER" | awk '{ print $1 }'` 18 | # allow space for partition map and directory structure 19 | SIZE=`echo 1024 + $SIZE \* 1.1 / 1 | bc` 20 | NAME=`basename "$FOLDER"` 21 | FILE=$NAME.dmg 22 | TMP=${TMP:-/tmp} 23 | 24 | if [ $SIZE -lt 9216 ]; then 25 | SIZE=9216 26 | fi 27 | 28 | if [ -e "$FILE" ] ; then 29 | echo $FILE already exists! 30 | exit 3 31 | fi 32 | 33 | TMPFILE=$TMP/$$.dmg 34 | 35 | echo Creating $TMPFILE from $FOLDER, $SIZE sectors... 36 | hdiutil create $TMPFILE -sectors $SIZE -ov 37 | if [ $? -ne 0 ] ; then 38 | rm -f $TMPFILE 39 | exit 4 40 | fi 41 | echo 42 | 43 | DEVICES=`hdid -nomount $TMPFILE` 44 | DEVMASTER=`echo $DEVICES| awk '{ print $1 }'` 45 | 46 | # Different results on 10.4 vs 10.5. Yay! [fry] 47 | #echo "devices as follows" 48 | #echo $DEVICES 49 | DARWINVERSION=`uname -r` 50 | if [ $DARWINVERSION = "9.5.0" ] ; then 51 | DEVHFS=`echo $DEVICES| awk '{ print $3 }'` 52 | else 53 | if [ $DARWINVERSION = "8.11.1" ] ; then 54 | DEVHFS=`echo $DEVICES| awk '{ print $5 }'` 55 | else 56 | echo "This version of OS X not recognized." 57 | exit; 58 | fi 59 | fi 60 | 61 | echo Creating HFS partition $NAME on $TMPFILE at $DEVHFS 62 | newfs_hfs -v "$NAME" $DEVHFS 63 | if [ $? -ne 0 ] ; then 64 | rm -f $TMPFILE 65 | exit 5 66 | fi 67 | hdiutil eject $DEVMASTER 68 | if [ $? -ne 0 ] ; then 69 | rm -f $TMPFILE 70 | exit 6 71 | fi 72 | DEVICES=`hdid $TMPFILE` 73 | if [ $? -ne 0 ] ; then 74 | rm -f $TMPFILE 75 | exit 7 76 | fi 77 | 78 | # These two lines removed when doing the 10.4 and 10.5 split above. 79 | # They seem to be duplicates, so just rely on the earlier logic. [fry] 80 | #DEVMASTER=`echo $DEVICES| awk '{ print $1 }'` 81 | #DEVHFS=`echo $DEVICES| awk '{ print $5 }'` 82 | echo Copying $FOLDER to /Volumes/$NAME on $DEVMASTER 83 | #sudo ditto -rsrcFork "$FOLDER" "/Volumes/$NAME" 84 | ditto -rsrcFork "$FOLDER" "/Volumes/$NAME" 85 | if [ $? -ne 0 ]; then 86 | hdiutil eject $DEVMASTER 87 | rm -f $TMPFILE 88 | exit 8 89 | fi 90 | 91 | hdiutil eject $DEVMASTER 92 | if [ $? -ne 0 ]; then 93 | #rm -f $TMPFILE 94 | exit 9 95 | fi 96 | 97 | echo "Compressing $NAME to $FILE" 98 | #hdiutil convert $TMPFILE -format UDZO -o "$FILE" 99 | hdiutil convert $TMPFILE -format UDZO -imagekey zlib-level=9 -o "$FILE" 100 | if [ $? -ne 0 ]; then 101 | rm -f "$FILE" $TMPFILE 102 | exit 10 103 | fi 104 | 105 | rm -f $TMPFILE 106 | 107 | # end -------------------------------------------------------------------------------- /build/macosx/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # is qt java already included tho? 4 | #CLASSPATH=/System/Library/Java/Extensions/QTJava.zip:lib:lib/build:lib/pde.jar:lib/core.jar:lib/antlr.jar:lib/oro.jar:lib/registry.jar 5 | 6 | #export CLASSPATH 7 | 8 | #cd work && /System/Library/Frameworks/JavaVM.framework/Versions/1.4.2/Commands/java -Dapple.laf.useScreenMenuBar=true -Dapple.awt.showGrowBox=false processing.app.Base 9 | #cd work && java -Dapple.laf.useScreenMenuBar=true -Dapple.awt.showGrowBox=false processing.app.Base 10 | 11 | # starting with work on release 0120, run directly from the .app 12 | cd work && ./MapleIDE.app/Contents/MacOS/JavaApplicationStub 13 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/AnalogInOutSerial/AnalogInOutSerial.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Analog input, analog output, serial output 3 | 4 | Reads an analog input pin, maps the result to a range from 0 to 5 | 65535 and uses the result to set the pulse width modulation (PWM) of 6 | an output pin. Also prints the results to the serial monitor. 7 | 8 | (You may need to change the pin numbers analogInPin and analogOutPin 9 | if you're not using a Maple). 10 | 11 | The circuit: 12 | * Potentiometer connected to analog pin 15. 13 | Center pin of the potentiometer goes to the analog pin. 14 | Side pins of the potentiometer go to +3.3V and ground. 15 | * LED connected from digital pin 9 to ground 16 | 17 | created 29 Dec. 2008 18 | by Tom Igoe 19 | 20 | ported to Maple 21 | by LeafLabs 22 | */ 23 | 24 | // These constants won't change. They're used to give names 25 | // to the pins used: 26 | 27 | const int analogInPin = 15; // Analog input pin that the potentiometer 28 | // is attached to 29 | 30 | const int pwmOutPin = 9; // PWM pin that the LED is attached to 31 | 32 | // These variables will change: 33 | int sensorValue = 0; // value read from the pot 34 | int outputValue = 0; // value output to the PWM 35 | 36 | void setup() { 37 | // Configure the ADC pin 38 | pinMode(analogInPin, INPUT_ANALOG); 39 | // Configure LED pin 40 | pinMode(pwmOutPin, PWM); 41 | } 42 | 43 | void loop() { 44 | // read the analog in value: 45 | sensorValue = analogRead(analogInPin); 46 | // map it to the range of the analog out: 47 | outputValue = map(sensorValue, 0, 4095, 0, 65535); 48 | // change the analog out value: 49 | pwmWrite(pwmOutPin, outputValue); 50 | 51 | // print the results to the serial monitor: 52 | SerialUSB.print("sensor = " ); 53 | SerialUSB.print(sensorValue); 54 | SerialUSB.print("\t output = "); 55 | SerialUSB.println(outputValue); 56 | } 57 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/AnalogInSerial/AnalogInSerial.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Analog input, serial output 3 | 4 | Reads an analog input pin, prints the results to the serial monitor. 5 | 6 | The circuit: 7 | 8 | * Potentiometer connected to analog pin 15. 9 | * Center pin of the potentiometer goes to the analog pin. 10 | * Side pins of the potentiometer go to +3.3V (VCC) and ground 11 | 12 | created over and over again 13 | by Tom Igoe and everyone who's ever used Arduino 14 | 15 | Ported to Maple 27 May, 2010 by Bryan Newbold 16 | */ 17 | 18 | // Analog input pin. You may need to change this number if your board 19 | // can't do analog input on pin 15. 20 | const int analogInputPin = 15; 21 | 22 | void setup() { 23 | // Declare analogInputPin as INPUT_ANALOG: 24 | pinMode(analogInputPin, INPUT_ANALOG); 25 | } 26 | 27 | void loop() { 28 | // Read the analog input into a variable: 29 | int analogValue = analogRead(analogInputPin); 30 | 31 | // print the result: 32 | SerialUSB.println(analogValue); 33 | } 34 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/AnalogInput/AnalogInput.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Analog Input 3 | 4 | Demonstrates analog input by reading an analog sensor on analog pin 5 | 0 and turning on and off the Maple's built-in light emitting diode 6 | (LED). The amount of time the LED will be on and off depends on the 7 | value obtained by analogRead(). 8 | 9 | Created by David Cuartielles 10 | Modified 16 Jun 2009 11 | By Tom Igoe 12 | 13 | http://leaflabs.com/docs/adc.html 14 | 15 | Ported to Maple 27 May 2010 16 | by Bryan Newbold 17 | */ 18 | 19 | int sensorPin = 0; // Select the input pin for the potentiometer 20 | int sensorValue = 0; // Variable to store the value coming from the sensor 21 | 22 | void setup() { 23 | // Declare the sensorPin as INPUT_ANALOG: 24 | pinMode(sensorPin, INPUT_ANALOG); 25 | // Declare the LED's pin as an OUTPUT. (BOARD_LED_PIN is a built-in 26 | // constant which is the pin number of the built-in LED. On the 27 | // Maple, it is 13.) 28 | pinMode(BOARD_LED_PIN, OUTPUT); 29 | } 30 | 31 | void loop() { 32 | // Read the value from the sensor: 33 | sensorValue = analogRead(sensorPin); 34 | // Turn the LED pin on: 35 | digitalWrite(BOARD_LED_PIN, HIGH); 36 | // Stop the program for milliseconds: 37 | delay(sensorValue); 38 | // Turn the LED pin off: 39 | digitalWrite(BOARD_LED_PIN, LOW); 40 | // Stop the program for for milliseconds: 41 | delay(sensorValue); 42 | } 43 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/Calibration/Calibration.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Calibration 3 | 4 | Demonstrates one techinque for calibrating sensor input. The sensor 5 | readings during the first five seconds of the sketch execution 6 | define the minimum and maximum of expected values attached to the 7 | sensor pin. 8 | 9 | The sensor minumum and maximum initial values may seem backwards. 10 | Initially, you set the minimum high and listen for anything lower, 11 | saving it as the new minumum. Likewise, you set the maximum low and 12 | listen for anything higher as the new maximum. 13 | 14 | The circuit: 15 | * Analog sensor (potentiometer will do) attached to analog input 15 16 | 17 | created 29 Oct 2008 18 | By David A Mellis 19 | Modified 17 Jun 2009 20 | By Tom Igoe 21 | 22 | http://arduino.cc/en/Tutorial/Calibration 23 | 24 | Ported to Maple 27 May 2010 25 | by Bryan Newbold 26 | */ 27 | 28 | // Constant (won't change): 29 | const int sensorPin = 15; // pin that the sensor is attached to 30 | 31 | // Variables: 32 | int sensorMin = 1023; // minimum sensor value 33 | int sensorMax = 0; // maximum sensor value 34 | int sensorValue = 0; // the sensor value 35 | 36 | void setup() { 37 | // Declare the sensorPin as INPUT_ANALOG: 38 | pinMode(sensorPin, INPUT_ANALOG); 39 | 40 | // Turn on the built-in LED to signal the start of the calibration 41 | // period: 42 | pinMode(BOARD_LED_PIN, OUTPUT); 43 | digitalWrite(BOARD_LED_PIN, HIGH); 44 | 45 | // Calibrate during the first five seconds: 46 | while (millis() < 5000) { 47 | sensorValue = analogRead(sensorPin); 48 | 49 | // Record the maximum sensor value: 50 | if (sensorValue > sensorMax) { 51 | sensorMax = sensorValue; 52 | } 53 | 54 | // Record the minimum sensor value: 55 | if (sensorValue < sensorMin) { 56 | sensorMin = sensorValue; 57 | } 58 | } 59 | 60 | // Signal the end of the calibration period: 61 | digitalWrite(BOARD_LED_PIN, LOW); 62 | } 63 | 64 | void loop() { 65 | // Read the sensor: 66 | sensorValue = analogRead(sensorPin); 67 | 68 | // Apply the calibration to the sensor reading: 69 | sensorValue = map(sensorValue, sensorMin, sensorMax, 0, 65535); 70 | 71 | // In case the sensor value is outside the range seen during calibration: 72 | sensorValue = constrain(sensorValue, 0, 65535); 73 | 74 | // Fade the LED using the calibrated value: 75 | pwmWrite(BOARD_LED_PIN, sensorValue); 76 | } 77 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/Fading/Fading.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Fading 3 | 4 | This example shows how to fade an LED using the pwmWrite() function. 5 | 6 | Created 1 Nov 2008 7 | By David A. Mellis 8 | Modified 17 June 2009 9 | By Tom Igoe 10 | 11 | Modified by LeafLabs for Maple 12 | 13 | http://arduino.cc/en/Tutorial/Fading 14 | 15 | For differences between Maple's pwmWrite() and Arduino's analogWrite(): 16 | http://leaflabs.com/docs/lang/api/analogwrite.html#arduino-compatibility 17 | */ 18 | 19 | int ledPin = 9; // Connect an LED to digital pin 9, or any other 20 | // PWM-capable pin 21 | 22 | void setup() { 23 | pinMode(ledPin, PWM); // setup the pin as PWM 24 | } 25 | 26 | void loop() { 27 | // Fade in from min to max in increments of 1280 points: 28 | for (int fadeValue = 0; fadeValue <= 65535; fadeValue += 1280) { 29 | // Sets the value (range from 0 to 65535): 30 | pwmWrite(ledPin, fadeValue); 31 | // Wait for 30 milliseconds to see the dimming effect: 32 | delay(30); 33 | } 34 | 35 | // Fade out from max to min in increments of 1280 points: 36 | for (int fadeValue = 65535 ; fadeValue >= 0; fadeValue -= 1280) { 37 | // Sets the value (range from 0 to 1280): 38 | pwmWrite(ledPin, fadeValue); 39 | // Wait for 30 milliseconds to see the dimming effect: 40 | delay(30); 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /build/shared/examples/Analog/Smoothing/Smoothing.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Smoothing 3 | 4 | Reads repeatedly from an analog input, calculating a running average 5 | and printing it to the computer. Keeps ten readings in an array and 6 | continually averages them. 7 | 8 | The circuit: 9 | * Analog sensor (potentiometer will do) attached to pin 15 10 | 11 | Created 22 April 2007 12 | By David A. Mellis 13 | 14 | http://www.arduino.cc/en/Tutorial/Smoothing 15 | 16 | Ported to Maple 27 May 2010 17 | by Bryan Newbold 18 | */ 19 | 20 | // Define the number of samples to keep track of. The higher the number, 21 | // the more the readings will be smoothed, but the slower the output will 22 | // respond to the input. Using a constant rather than a normal variable lets 23 | // use this value to determine the size of the readings array. 24 | const int numReadings = 10; 25 | 26 | int readings[numReadings]; // the readings from the analog input 27 | int index = 0; // the index of the current reading 28 | int total = 0; // the running total 29 | int average = 0; // the average 30 | 31 | int inputPin = 15; // analog input pin 32 | 33 | void setup() { 34 | // Declare the input pin as INPUT_ANALOG: 35 | pinMode(inputPin, INPUT_ANALOG); 36 | 37 | // Initialize all the readings to 0: 38 | for (int thisReading = 0; thisReading < numReadings; thisReading++) { 39 | readings[thisReading] = 0; 40 | } 41 | } 42 | 43 | void loop() { 44 | // Subtract the last reading: 45 | total = total - readings[index]; 46 | // Read from the sensor: 47 | readings[index] = analogRead(inputPin); 48 | // Add the reading to the total: 49 | total = total + readings[index]; 50 | // Advance to the next position in the array: 51 | index = index + 1; 52 | 53 | // If we're at the end of the array... 54 | if (index >= numReadings) { 55 | // ...wrap around to the beginning: 56 | index = 0; 57 | } 58 | 59 | // Calculate the average: 60 | average = total / numReadings; 61 | // Send it to the computer (as ASCII digits) 62 | SerialUSB.println(average, DEC); 63 | } 64 | -------------------------------------------------------------------------------- /build/shared/examples/Communication/ASCIITable/ASCIITable.pde: -------------------------------------------------------------------------------- 1 | /* 2 | ASCII table 3 | 4 | Connect to the Maple SerialUSB using the Serial Monitor, then press 5 | any key and hit enter. 6 | 7 | Prints out byte values in all possible formats: 8 | * as raw binary values 9 | * as ASCII-encoded decimal, hex, octal, and binary values 10 | 11 | For more on ASCII, see: 12 | http://www.asciitable.com 13 | http://en.wikipedia.org/wiki/ASCII 14 | 15 | No external hardware needed. 16 | 17 | created 2006 18 | by Nicholas Zambetti 19 | modified 18 Jan 2009 20 | by Tom Igoe 21 | 22 | 23 | 24 | Ported to the Maple 27 May 2010 25 | by Bryan Newbold 26 | */ 27 | 28 | void setup() { 29 | // Wait for the user to press a key 30 | while (!SerialUSB.available()) 31 | continue; 32 | 33 | // Prints title with ending line break 34 | SerialUSB.println("ASCII Table ~ Character Map"); 35 | } 36 | 37 | // First visible ASCII character: '!' is number 33: 38 | int thisByte = 33; 39 | // You can also write ASCII characters in single quotes. 40 | // for example. '!' is the same as 33, so you could also use this: 41 | //int thisByte = '!'; 42 | 43 | void loop() { 44 | // Prints value unaltered, i.e. the raw binary version of the 45 | // byte. The serial monitor interprets all bytes as 46 | // ASCII, so 33, the first number, will show up as '!' 47 | SerialUSB.print(thisByte, BYTE); 48 | 49 | SerialUSB.print(", dec: "); 50 | // Prints value as string as an ASCII-encoded decimal (base 10). 51 | // Decimal is the default format for SerialUSB.print() and 52 | // SerialUSB.println(), so no modifier is needed: 53 | SerialUSB.print(thisByte); 54 | // But you can declare the modifier for decimal if you want to. 55 | // This also works if you uncomment it: 56 | // SerialUSB.print(thisByte, DEC); 57 | 58 | SerialUSB.print(", hex: "); 59 | // Prints value as string in hexadecimal (base 16): 60 | SerialUSB.print(thisByte, HEX); 61 | 62 | SerialUSB.print(", oct: "); 63 | // Prints value as string in octal (base 8); 64 | SerialUSB.print(thisByte, OCT); 65 | 66 | SerialUSB.print(", bin: "); 67 | // Prints value as string in binary (base 2); also prints ending 68 | // line break: 69 | SerialUSB.println(thisByte, BIN); 70 | 71 | // If printed last visible character '~' or 126, stop: 72 | if (thisByte == 126) { // You could also use if (thisByte == '~') { 73 | // This loops forever and does nothing 74 | while (true) { 75 | continue; 76 | } 77 | } 78 | // Go on to the next character 79 | thisByte++; 80 | } 81 | -------------------------------------------------------------------------------- /build/shared/examples/Communication/Dimmer/Dimmer.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Dimmer 3 | 4 | Demonstrates sending data from the computer to the Maple, in this 5 | case to control the brightness of an LED. The data is sent in 6 | individual bytes, each of which ranges from 0 to 255. Maple reads 7 | these bytes and uses them to set the brightness of the LED. 8 | 9 | The circuit: 10 | LED connected to pin 9. 11 | Serial connection to Processing, Max/MSP, or another serial application. 12 | 13 | created 2006 14 | by David A. Mellis 15 | modified 14 Apr 2009 16 | by Tom Igoe and Scott Fitzgerald 17 | 18 | http://www.arduino.cc/en/Tutorial/Dimmer 19 | http://leaflabs.com/docs/lang/api/pwmwrite.html 20 | 21 | Ported to the Maple 28 May 2010 22 | */ 23 | 24 | int ledPin = 9; 25 | 26 | void setup() { 27 | // Declare ledPin in PWM mode: 28 | pinMode(ledPin, PWM); 29 | } 30 | 31 | void loop() { 32 | int brightness; 33 | 34 | // Check if data has been sent from the computer: 35 | if (SerialUSB.available()) { 36 | // Read the most recent byte (which will be from 0 to 255), then 37 | // convert it to be between 0 and 65,535, which are the minimum 38 | // and maximum values usable for PWM: 39 | brightness = map(SerialUSB.read(), 0, 255, 0, 65535); 40 | // Set the brightness of the LED: 41 | pwmWrite(ledPin, brightness); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /build/shared/examples/Communication/MIDI/Midi.pde: -------------------------------------------------------------------------------- 1 | /* 2 | MIDI note player 3 | 4 | This sketch shows how to use Serial1 (pins 7 and 8) to send MIDI 5 | note data. If this circuit is connected to a MIDI synth, it will 6 | play the notes F#-0 (0x1E) to F#-5 (0x5A) in sequence. 7 | 8 | 9 | The circuit: 10 | * Pin 7 connected to MIDI jack pin 5 11 | * MIDI jack pin 2 connected to ground 12 | * MIDI jack pin 4 connected to +5V through 220-ohm resistor 13 | Attach a MIDI cable to the jack, then to a MIDI synth, and play music. 14 | 15 | created 13 Jun 2006 16 | modified 2 Jul 2009 17 | by Tom Igoe 18 | 19 | http://www.arduino.cc/en/Tutorial/MIDI 20 | 21 | Ported to the Maple 27 May 2010 22 | by Bryan Newbold 23 | */ 24 | 25 | void setup() { 26 | // Set MIDI baud rate: 27 | Serial1.begin(31250); 28 | } 29 | 30 | void loop() { 31 | // Play notes from F#-0 (0x1E) to F#-5 (0x5A): 32 | for (int note = 0x1E; note < 0x5A; note++) { 33 | // Note on channel 1 (0x90), some note value (note), middle 34 | // velocity (0x45): 35 | noteOn(0x90, note, 0x45); 36 | delay(100); 37 | // Note on channel 1 (0x90), some note value (note), silent 38 | // velocity (0x00): 39 | noteOn(0x90, note, 0x00); 40 | delay(100); 41 | } 42 | } 43 | 44 | // Plays a MIDI note. Doesn't check to see that cmd is greater than 45 | // 127, or that data values are less than 127: 46 | void noteOn(int cmd, int pitch, int velocity) { 47 | Serial1.print(cmd, BYTE); 48 | Serial1.print(pitch, BYTE); 49 | Serial1.print(velocity, BYTE); 50 | } 51 | 52 | -------------------------------------------------------------------------------- /build/shared/examples/Communication/SerialPassthrough/SerialPassthrough.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Multiple serial test 3 | 4 | Receives from Serial1, sends to SerialUSB. 5 | 6 | The circuit: 7 | * Maple connected over SerialUSB 8 | * Serial device (e.g. an Xbee radio, another Maple) 9 | 10 | created 30 Dec. 2008 11 | by Tom Igoe 12 | 13 | Ported to the Maple 27 May 2010 14 | by Bryan Newbold 15 | */ 16 | 17 | int inByte; // Byte read from Serial1 18 | 19 | void setup() { 20 | // Initialize Serial1 21 | Serial1.begin(9600); 22 | } 23 | 24 | void loop() { 25 | // Read from Serial1, send over USB: 26 | if (Serial1.available()) { 27 | inByte = Serial1.read(); 28 | SerialUSB.print(inByte, BYTE); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /build/shared/examples/Control/Arrays/Arrays.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Arrays 3 | 4 | Demonstrates the use of an array to hold pin numbers in order to 5 | iterate over the pins in a sequence. Lights multiple LEDs in 6 | sequence, then in reverse. 7 | 8 | Unlike the for loop tutorial, where the pins have to be 9 | contiguous, here the pins can be in any random order. 10 | 11 | The circuit: 12 | * LEDs from pins 2 through 7 to ground, through resistors 13 | 14 | created 2006 15 | by David A. Mellis 16 | modified 5 Jul 2009 17 | by Tom Igoe 18 | modifed for Maple 19 | by LeafLabs 20 | 21 | http://leaflabs.com/docs/lang/cpp/array.html 22 | */ 23 | 24 | int delayTime = 100; // The higher the number, the slower the timing. 25 | int ledPins[] = { 26 | 2, 7, 4, 6, 5, 3 }; // An array of pin numbers to which LEDs are attached 27 | int pinCount = 6; // The number of pins (i.e. the length of the array) 28 | 29 | void setup() { 30 | int thisPin; 31 | // The array elements are numbered from 0 to (pinCount - 1). 32 | // Use a for loop to initialize each pin as an output: 33 | for (int thisPin = 0; thisPin < pinCount; thisPin++) { 34 | pinMode(ledPins[thisPin], OUTPUT); 35 | } 36 | } 37 | 38 | void loop() { 39 | // Loop from the lowest pin to the highest: 40 | for (int thisPin = 0; thisPin < pinCount; thisPin++) { 41 | // Turn the pin on: 42 | digitalWrite(ledPins[thisPin], HIGH); 43 | delay(delayTime); 44 | // Turn the pin off: 45 | digitalWrite(ledPins[thisPin], LOW); 46 | } 47 | 48 | // Loop from the highest pin to the lowest: 49 | for (int thisPin = pinCount - 1; thisPin >= 0; thisPin--) { 50 | // Turn the pin on: 51 | digitalWrite(ledPins[thisPin], HIGH); 52 | delay(delayTime); 53 | // Turn the pin off: 54 | digitalWrite(ledPins[thisPin], LOW); 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /build/shared/examples/Control/ForLoopIteration/ForLoopIteration.pde: -------------------------------------------------------------------------------- 1 | /* 2 | for loop iteration 3 | 4 | Demonstrates the use of a for() loop. 5 | Lights multiple LEDs in sequence, then in reverse. 6 | 7 | The circuit: 8 | * LEDs from pins 2 through 7 to ground, through resistors 9 | 10 | created 2006 11 | by David A. Mellis 12 | modified 5 Jul 2009 13 | by Tom Igoe 14 | 15 | http://leaflabs.com/docs/lang/cpp/for.html 16 | 17 | Modified for Maple 18 | by LeafLabs 19 | */ 20 | 21 | int delayTime = 100; // The higher the number, the slower the timing. 22 | 23 | void setup() { 24 | // Use a for loop to initialize each pin as an output: 25 | for (int thisPin = 2; thisPin <= 7; thisPin++) { 26 | pinMode(thisPin, OUTPUT); 27 | } 28 | } 29 | 30 | void loop() { 31 | // Loop from the lowest pin to the highest: 32 | for (int thisPin = 2; thisPin <= 7; thisPin++) { 33 | // Turn the pin on: 34 | digitalWrite(thisPin, HIGH); 35 | delay(delayTime); 36 | // Turn the pin off: 37 | digitalWrite(thisPin, LOW); 38 | } 39 | 40 | // Loop from the highest pin to the lowest: 41 | for (int thisPin = 7; thisPin >= 2; thisPin--) { 42 | // Turn the pin on: 43 | digitalWrite(thisPin, HIGH); 44 | delay(delayTime); 45 | // Turn the pin off: 46 | digitalWrite(thisPin, LOW); 47 | } 48 | } 49 | -------------------------------------------------------------------------------- /build/shared/examples/Control/IfStatementConditional/IfStatementConditional.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Conditionals - If statement 3 | 4 | This example demonstrates the use of if() statements. It reads the 5 | state of a potentiometer (an analog input) and turns on an LED only 6 | if the LED goes above a certain threshold level. It prints the 7 | analog value regardless of the level. 8 | 9 | The circuit: 10 | * Potentiometer connected to pin 15. 11 | Center pin of the potentiometer goes to the Maple pin. 12 | Side pins of the potentiometer go to +3.3V and ground 13 | 14 | created 17 Jan 2009 15 | by Tom Igoe 16 | 17 | Ported to the Maple 27 May 2010 18 | by Bryan Newbold 19 | 20 | http://leaflabs.com/docs/lang/cpp/if.html 21 | */ 22 | 23 | // These constants won't change: 24 | 25 | const int analogPin = 15; // Pin that the sensor is attached to 26 | 27 | const int threshold = 400; // A random threshold level that's in 28 | // the range of the analog input 29 | 30 | void setup() { 31 | // Initialize the built-in LED pin as an output: 32 | pinMode(BOARD_LED_PIN, OUTPUT); 33 | 34 | // Initialize the potentiometer pin as an analog input: 35 | pinMode(analogPin, INPUT_ANALOG); 36 | } 37 | 38 | void loop() { 39 | // Read the value of the potentiometer: 40 | int analogValue = analogRead(analogPin); 41 | 42 | // If the analog value is high enough, turn on the LED: 43 | if (analogValue > threshold) { 44 | digitalWrite(BOARD_LED_PIN, HIGH); 45 | } 46 | else { 47 | digitalWrite(BOARD_LED_PIN, LOW); 48 | } 49 | 50 | // Print the analog value: 51 | SerialUSB.println(analogValue, DEC); 52 | } 53 | -------------------------------------------------------------------------------- /build/shared/examples/Control/switchCase/switchCase.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Switch statement 3 | 4 | Demonstrates the use of a switch statement. The switch statement 5 | allows you to choose from among a set of discrete values of a 6 | variable. It's like a series of if statements. 7 | 8 | To see this sketch in action, but the board and sensor in a well-lit 9 | room, open the serial monitor, and and move your hand gradually down 10 | over the sensor. 11 | 12 | The circuit: 13 | * photoresistor from analog in 0 to +5V 14 | * 10K resistor from analog in 0 to ground 15 | 16 | created 1 Jul 2009 17 | by Tom Igoe 18 | 19 | Ported to the Maple 27 May 2010 20 | by Bryan Newbold 21 | 22 | http://leaflabs.com/docs/lang/cpp/switchcase.html 23 | */ 24 | 25 | // These constants won't change: 26 | const int sensorMin = 0; // sensor minimum, discovered through experiment 27 | const int sensorMax = 600; // sensor maximum, discovered through experiment 28 | 29 | void setup() { 30 | pinMode(0, INPUT_ANALOG); 31 | } 32 | 33 | void loop() { 34 | // Read the sensor: 35 | int sensorReading = analogRead(0); 36 | // Map the sensor range to a range of four options: 37 | int range = map(sensorReading, sensorMin, sensorMax, 0, 3); 38 | 39 | // Do something different depending on the range value: 40 | switch (range) { 41 | case 0: // your hand is on the sensor 42 | SerialUSB.println("dark"); 43 | break; 44 | case 1: // your hand is close to the sensor 45 | SerialUSB.println("dim"); 46 | break; 47 | case 2: // your hand is a few inches from the sensor 48 | SerialUSB.println("medium"); 49 | break; 50 | case 3: // your hand is nowhere near the sensor 51 | SerialUSB.println("bright"); 52 | break; 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /build/shared/examples/Control/switchCase2/switchCase2.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Switch statement with serial input 3 | 4 | Demonstrates the use of a switch statement. The switch statement 5 | allows you to choose from among a set of discrete values of a 6 | variable. It's like a series of if statements. 7 | 8 | To see this sketch in action, open the Serial monitor and send any 9 | character. The characters a, b, c, d, and e, will turn on LEDs. 10 | Any other character will turn the LEDs off. 11 | 12 | The circuit: 13 | * 5 LEDs attached to pins 2 through 6 through 220-ohm resistors 14 | 15 | created 1 Jul 2009 16 | by Tom Igoe 17 | 18 | Ported to the Maple 27 May 2010 19 | by Bryan Newbold 20 | 21 | http://leaflabs.com/docs/lang/cpp/switchcase.html 22 | */ 23 | 24 | void setup() { 25 | // Initialize the LED pins: 26 | for (int thisPin = 2; thisPin <= 6; thisPin++) { 27 | pinMode(thisPin, OUTPUT); 28 | } 29 | } 30 | 31 | void loop() { 32 | // Read the sensor: 33 | if (SerialUSB.available() > 0) { 34 | int inByte = SerialUSB.read(); 35 | // Do something different depending on the character received. 36 | // The switch statement expects single number values for each 37 | // case; in this example, though, you're using single quotes 38 | // to tell the controller to get the ASCII value for the 39 | // character. For example 'a' = 97, 'b' = 98, and so forth: 40 | switch (inByte) { 41 | case 'a': 42 | digitalWrite(2, HIGH); 43 | break; 44 | case 'b': 45 | digitalWrite(3, HIGH); 46 | break; 47 | case 'c': 48 | digitalWrite(4, HIGH); 49 | break; 50 | case 'd': 51 | digitalWrite(5, HIGH); 52 | break; 53 | case 'e': 54 | digitalWrite(6, HIGH); 55 | break; 56 | default: 57 | // Turn all the LEDs off: 58 | for (int thisPin = 2; thisPin < 7; thisPin++) { 59 | digitalWrite(thisPin, LOW); 60 | } 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /build/shared/examples/Digital/Blink/Blink.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Blink 3 | 4 | Turns on the built-in LED on for one second, then off for one second, 5 | repeatedly. 6 | 7 | Ported to Maple from the Arduino example 27 May 2011 8 | By Marti Bolivar 9 | */ 10 | 11 | void setup() { 12 | // Set up the built-in LED pin as an output: 13 | pinMode(BOARD_LED_PIN, OUTPUT); 14 | } 15 | 16 | void loop() { 17 | toggleLED(); // Turn the LED from off to on, or on to off 18 | delay(1000); // Wait for 1 second (1000 milliseconds) 19 | } 20 | -------------------------------------------------------------------------------- /build/shared/examples/Digital/BlinkWithoutDelay/BlinkWithoutDelay.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Blink without delay 3 | 4 | Turns on and off the built-in light emitting diode (LED), without 5 | using the delay() function. This means that other code can run at 6 | the same time without being interrupted by the LED code. 7 | 8 | created 2005 9 | by David A. Mellis 10 | modified 17 Jun 2009 11 | by Tom Igoe 12 | modified for Maple 27 May 2011 13 | by Marti Bolivar 14 | */ 15 | 16 | // Variables: 17 | int previousMillis = 0; // will store the last time the LED was updated 18 | int interval = 1000; // interval at which to blink (in milliseconds) 19 | 20 | void setup() { 21 | // Set up the built-in LED pin as output: 22 | pinMode(BOARD_LED_PIN, OUTPUT); 23 | } 24 | 25 | void loop() { 26 | // Check to see if it's time to blink the LED; that is, if the 27 | // difference between the current time and last time we blinked 28 | // the LED is bigger than the interval at which we want to blink 29 | // the LED. 30 | if (millis() - previousMillis > interval) { 31 | // Save the last time you blinked the LED 32 | previousMillis = millis(); 33 | 34 | // If the LED is off, turn it on, and vice-versa: 35 | toggleLED(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /build/shared/examples/Digital/Button/Button.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Button 3 | 4 | Turns on and off the built-in LED when the built-in button is 5 | pressed. 6 | 7 | Ported to Maple from the Arduino example 27 May 2011 8 | by Marti Bolivar 9 | */ 10 | 11 | void setup() { 12 | // Initialize the built-in LED pin as an output: 13 | pinMode(BOARD_LED_PIN, OUTPUT); 14 | // Initialize the built-in button (labeled BUT) as an input: 15 | pinMode(BOARD_BUTTON_PIN, INPUT); 16 | } 17 | 18 | void loop() { 19 | // Check if the button is pressed. 20 | if (isButtonPressed()) { 21 | // If so, turn the LED from on to off, or from off to on: 22 | toggleLED(); 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /build/shared/examples/Digital/Debounce/Debounce.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Debounce 3 | 4 | Each time the input pin goes from LOW to HIGH (e.g. because of a push-button 5 | press), the output pin is toggled from LOW to HIGH or HIGH to LOW. There's 6 | a minimum delay between toggles to debounce the circuit (i.e. to ignore 7 | noise). 8 | 9 | created 21 November 2006 10 | by David A. Mellis 11 | modified 3 Jul 2009 12 | by Limor Fried 13 | modified 15 Jul 2010 14 | by Bryan Newbold; thanks adamfeuer! 15 | */ 16 | 17 | // Variables: 18 | int ledState = HIGH; // the current state of the output pin 19 | int buttonState; // the current reading from the input pin 20 | int lastButtonState = LOW; // the previous reading from the input pin 21 | int lastDebounceTime = 0; // the last time the output pin was toggled 22 | int debounceDelay = 50; // the debounce time; increase if the output flickers 23 | 24 | void setup() { 25 | pinMode(BOARD_BUTTON_PIN, INPUT); 26 | pinMode(BOARD_LED_PIN, OUTPUT); 27 | } 28 | 29 | void loop() { 30 | // read the state of the switch into a local variable: 31 | int reading = digitalRead(BOARD_BUTTON_PIN); 32 | 33 | // check to see if you just pressed the button 34 | // (i.e. the input went from LOW to HIGH), and you've waited 35 | // long enough since the last press to ignore any noise: 36 | 37 | // If the switch changed, due to noise or pressing: 38 | if (reading != lastButtonState) { 39 | // reset the debouncing timer 40 | lastDebounceTime = millis(); 41 | } 42 | 43 | if ((millis() - lastDebounceTime) > debounceDelay) { 44 | // whatever the reading is at, it's been there for longer 45 | // than the debounce delay, so take it as the actual current state: 46 | buttonState = reading; 47 | } 48 | 49 | // set the LED using the state of the button: 50 | digitalWrite(BOARD_LED_PIN, buttonState); 51 | 52 | // save the reading. Next time through the loop, 53 | // it'll be the lastButtonState: 54 | lastButtonState = reading; 55 | } 56 | -------------------------------------------------------------------------------- /build/shared/examples/Digital/StateChangeDetection/StateChangeDetection.pde: -------------------------------------------------------------------------------- 1 | /* 2 | State change detection (edge detection) 3 | 4 | Often, you don't need to know the state of a digital input all the 5 | time, but you just need to know when the input changes from one state 6 | to another. For example, you want to know when a button goes from 7 | OFF to ON. This is called state change detection, or edge detection. 8 | 9 | This example shows how to detect when the built-in button changes 10 | from off to on and on to off. 11 | 12 | To use this example, connect to the Maple using the USB serial port. 13 | Then push the button a few times and see what happens. 14 | 15 | created 27 Sep 2005 16 | modified 30 Dec 2009 17 | by Tom Igoe 18 | 19 | Ported to the Maple 27 May 2010 20 | by Bryan Newbold 21 | */ 22 | 23 | // Variables will change: 24 | int buttonPushCounter = 0; // counter for the number of button presses 25 | int buttonState = 0; // current state of the button 26 | int lastButtonState = 0; // previous state of the button 27 | 28 | void setup() { 29 | // initialize the button pin as a input: 30 | pinMode(BOARD_BUTTON_PIN, INPUT); 31 | // initialize the LED as an output: 32 | pinMode(BOARD_LED_PIN, OUTPUT); 33 | } 34 | 35 | void loop() { 36 | // read the pushbutton input pin: 37 | buttonState = digitalRead(BOARD_BUTTON_PIN); 38 | 39 | // compare the buttonState to its previous state 40 | if (buttonState != lastButtonState) { 41 | // if the state has changed, increment the counter 42 | if (buttonState == HIGH) { 43 | // if the current state is HIGH, then the button went from 44 | // off to on: 45 | buttonPushCounter++; 46 | SerialUSB.println("on"); 47 | SerialUSB.print("number of button pushes: "); 48 | SerialUSB.println(buttonPushCounter, DEC); 49 | } 50 | else { 51 | // if the current state is LOW, then the button went from 52 | // on to off: 53 | SerialUSB.println("off"); 54 | } 55 | 56 | // save the current state as the last state, for next time 57 | // through the loop 58 | lastButtonState = buttonState; 59 | } 60 | 61 | // turns on the LED every four button pushes by checking the 62 | // modulo of the button push counter. Modulo (percent sign, %) 63 | // gives you the remainder of the division of two numbers: 64 | if (buttonPushCounter % 4 == 0) { 65 | digitalWrite(BOARD_LED_PIN, HIGH); 66 | } else { 67 | digitalWrite(BOARD_LED_PIN, LOW); 68 | } 69 | } 70 | -------------------------------------------------------------------------------- /build/shared/examples/Display/barGraph/barGraph.pde: -------------------------------------------------------------------------------- 1 | /* 2 | LED bar graph 3 | 4 | Turns on a series of LEDs based on the value of an analog sensor. 5 | This is a simple way to make a bar graph display. Though this graph 6 | uses 10 LEDs, you can use any number by changing the LED count and 7 | the pins in the array. 8 | 9 | This method can be used to control any series of digital outputs 10 | that depends on an analog input. 11 | 12 | The circuit: 13 | * LEDs from pins 2 through 11 to ground 14 | 15 | created 26 Jun 2009 16 | by Tom Igoe 17 | 18 | modified for Maple 19 | by LeafLabs 20 | 21 | http://www.arduino.cc/en/Tutorial/BarGraph 22 | */ 23 | 24 | // these constants won't change: 25 | const int analogPin = 0; // the pin that the potentiometer is attached to 26 | const int ledCount = 10; // the number of LEDs in the bar graph 27 | 28 | int ledPins[] = { 29 | 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }; // an array of pin numbers to which LEDs are attached 30 | 31 | void setup() { 32 | // set up analogPin for analog input: 33 | pinMode(analogPin, INPUT_ANALOG); 34 | // loop over the pin array and set them all to output: 35 | for (int thisLed = 0; thisLed < ledCount; thisLed++) { 36 | pinMode(ledPins[thisLed], OUTPUT); 37 | } 38 | } 39 | 40 | void loop() { 41 | // read the potentiometer: 42 | int sensorReading = analogRead(analogPin); 43 | // map the result to a range from 0 to the number of LEDs: 44 | int ledLevel = map(sensorReading, 0, 4095, 0, ledCount); 45 | 46 | // loop over the LED array: 47 | for (int thisLed = 0; thisLed < ledCount; thisLed++) { 48 | // if the array element's index is less than ledLevel, 49 | // turn the pin for this element on: 50 | if (thisLed < ledLevel) { 51 | digitalWrite(ledPins[thisLed], HIGH); 52 | } 53 | // turn off all pins higher than the ledLevel: 54 | else { 55 | digitalWrite(ledPins[thisLed], LOW); 56 | } 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /build/shared/examples/Maple/QASlave/QASlave.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Slave mode for Quality Assurance test 3 | 4 | Used as follows: 5 | 6 | 1) Connect all non-used pins on the test board to their 7 | corresponding pins on a board running InteractiveTest. 8 | 9 | 2) Connect a serial monitor to the InteractiveTest board and 10 | enter "+" (a plus sign, without the quotes). 11 | 12 | This program pulses each unused pin in order, starting from pin 0. 13 | The InteractiveTest "+" command detects these pulses, and makes 14 | sure that no other pins change state at the same time. 15 | 16 | If you hold the button on the board running this program, the 17 | pulses run slower. 18 | 19 | Useful as a simple test of functionality for GPIO pins. 20 | */ 21 | 22 | #define INTER_TOGGLE_DELAY_NORMAL 5 23 | #define INTER_TOGGLE_DELAY_SLOW 80 24 | 25 | void interToggleDelay(void); 26 | 27 | void setup() { 28 | pinMode(BOARD_LED_PIN, OUTPUT); 29 | pinMode(BOARD_BUTTON_PIN, INPUT); 30 | 31 | // All unused pins start out low. 32 | for (int i = 0; i < BOARD_NR_GPIO_PINS; i++) { 33 | if (boardUsesPin(i)) 34 | continue; 35 | pinMode(i, OUTPUT); 36 | digitalWrite(i, LOW); 37 | } 38 | } 39 | 40 | void loop() { 41 | toggleLED(); 42 | delay(100); 43 | toggleLED(); 44 | 45 | for (int i = 0; i < BOARD_NR_GPIO_PINS; i++) { 46 | if (boardUsesPin(i)) 47 | continue; 48 | 49 | // Bring just this pin high. 50 | digitalWrite(i, HIGH); 51 | // Give the master time to detect if any other pins also went high. 52 | interToggleDelay(); 53 | // Bring this pin back low again; all pins should now be low. 54 | digitalWrite(i, LOW); 55 | // Give the master time to detect if any pins are still high. 56 | interToggleDelay(); 57 | } 58 | } 59 | 60 | void interToggleDelay(void) { 61 | if (digitalRead(BOARD_BUTTON_PIN)) { // don't pay the debouncing time 62 | delay(INTER_TOGGLE_DELAY_SLOW); 63 | } else { 64 | delay(INTER_TOGGLE_DELAY_NORMAL); 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /build/shared/examples/Maple/TimerInterrupts/TimerInterrupts.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Timer Interrupts Example 3 | 4 | Demonstrates usage of the HardwareTimer classes by blinking the LED 5 | 6 | Created 22 April 2010, last updated 8 June 2010 7 | By Bryan Newbold for LeafLabs 8 | This code is released with no strings attached. 9 | 10 | */ 11 | 12 | #define LED_PIN 13 13 | #define BUTTON_PIN 38 14 | #define LED_RATE 500000 // in microseconds; should give 0.5Hz toggles 15 | 16 | void handler_led(void); 17 | void handler_count1(void); 18 | void handler_count2(void); 19 | 20 | int toggle = 0; 21 | 22 | int count1 = 0; 23 | int count2 = 0; 24 | 25 | void setup() 26 | { 27 | // Set up the LED to blink 28 | pinMode(LED_PIN, OUTPUT); 29 | 30 | // Set up BUT for input 31 | pinMode(BUTTON_PIN, INPUT_PULLUP); 32 | 33 | // Setup LED Timer 34 | Timer2.setChannel1Mode(TIMER_OUTPUTCOMPARE); 35 | Timer2.setPeriod(LED_RATE); // in microseconds 36 | Timer2.setCompare1(1); // overflow might be small 37 | Timer2.attachCompare1Interrupt(handler_led); 38 | 39 | // Setup Counting Timers 40 | Timer3.setChannel1Mode(TIMER_OUTPUTCOMPARE); 41 | Timer4.setChannel1Mode(TIMER_OUTPUTCOMPARE); 42 | Timer3.pause(); 43 | Timer4.pause(); 44 | Timer3.setCount(0); 45 | Timer4.setCount(0); 46 | Timer3.setOverflow(30000); 47 | Timer4.setOverflow(30000); 48 | Timer3.setCompare1(1000); // somewhere in the middle 49 | Timer4.setCompare1(1000); 50 | Timer3.attachCompare1Interrupt(handler1); 51 | Timer4.attachCompare1Interrupt(handler2); 52 | Timer3.resume(); 53 | Timer4.resume(); 54 | 55 | } 56 | 57 | void loop() { 58 | 59 | // Display the running counts 60 | SerialUSB.print("Count 1: "); 61 | SerialUSB.print(count1); 62 | SerialUSB.print("\t\tCount 2: "); 63 | SerialUSB.println(count2); 64 | 65 | // Run... while BUT is held, pause Count2 66 | for(int i = 0; i<1000; i++) { 67 | if(digitalRead(BUTTON_PIN)) { 68 | Timer4.pause(); 69 | } else { 70 | Timer4.resume(); 71 | } 72 | delay(1); 73 | } 74 | } 75 | 76 | void handler_led(void) { 77 | toggle ^= 1; 78 | digitalWrite(LED_PIN, toggle); 79 | } 80 | 81 | void handler1(void) { 82 | count1++; 83 | } 84 | void handler2(void) { 85 | count2++; 86 | } 87 | -------------------------------------------------------------------------------- /build/shared/examples/Sensors/Knock/Knock.pde: -------------------------------------------------------------------------------- 1 | /* 2 | Knock Sensor 3 | 4 | This sketch reads a piezo element to detect a knocking sound. It 5 | reads an analog pin and compares the result to a set threshold. If 6 | the result is greater than the threshold, it writes "knock" to the 7 | serial port, and toggles the LED on pin 13. 8 | 9 | The circuit: 10 | * + connection of the piezo attached to analog in 0 11 | * - connection of the piezo attached to ground 12 | * 1-megohm resistor attached from analog in 0 to ground 13 | 14 | http://www.arduino.cc/en/Tutorial/Knock 15 | 16 | created 25 Mar 2007 17 | by David Cuartielles 18 | modified 30 Jun 2009 19 | by Tom Igoe 20 | 21 | Ported to the Maple 22 | by LeafLabs 23 | */ 24 | 25 | // these constants won't change: 26 | const int knockSensor = 0; // the piezo is connected to analog pin 0 27 | const int threshold = 100; // threshold value to decide when the detected sound is a knock or not 28 | 29 | // these variables will change: 30 | int sensorReading = 0; // variable to store the value read from the sensor pin 31 | 32 | void setup() { 33 | // Declare the knockSensor as an analog input: 34 | pinMode(knockSensor, INPUT_ANALOG); 35 | // declare the built-in LED pin as an output: 36 | pinMode(BOARD_LED_PIN, OUTPUT); 37 | } 38 | 39 | void loop() { 40 | // read the sensor and store it in the variable sensorReading: 41 | sensorReading = analogRead(knockSensor); 42 | 43 | // if the sensor reading is greater than the threshold: 44 | if (sensorReading >= threshold) { 45 | // toggle the built-in LED 46 | toggleLED(); 47 | // send the string "Knock!" back to the computer, followed by newline 48 | SerialUSB.println("Knock!"); 49 | } 50 | delay(100); // delay to avoid printing too often 51 | } 52 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/AnalogReadPWMWrite/AnalogReadPWMWrite.pde: -------------------------------------------------------------------------------- 1 | void setup() { 2 | pinMode(2, INPUT_ANALOG); 3 | pinMode(6, PWM); 4 | } 5 | 6 | void loop() { 7 | int sensorValue = analogRead(2); 8 | int ledFadeValue = map(sensorValue, 0, 4095, 0, 65535); 9 | pwmWrite(6, ledFadeValue); 10 | } 11 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/AnalogReadSerial/AnalogReadSerial.pde: -------------------------------------------------------------------------------- 1 | void setup() { 2 | pinMode(0, INPUT_ANALOG); 3 | } 4 | 5 | void loop() { 6 | int sensorValue = analogRead(0); 7 | SerialUSB.println(sensorValue, DEC); 8 | } 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/BareMinumum/BareMinumum.pde: -------------------------------------------------------------------------------- 1 | void setup() { 2 | 3 | } 4 | 5 | void loop() { 6 | 7 | } 8 | 9 | 10 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/DigitalReadSerial/DigitalReadSerial.pde: -------------------------------------------------------------------------------- 1 | void setup() { 2 | pinMode(2, INPUT); 3 | } 4 | 5 | void loop() { 6 | int sensorValue = digitalRead(2); 7 | SerialUSB.println(sensorValue, DEC); 8 | } 9 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/DigitalReadWrite/DigitalReadWrite.pde: -------------------------------------------------------------------------------- 1 | 2 | void setup() { 3 | pinMode(BOARD_LED_PIN, OUTPUT); 4 | } 5 | 6 | void loop() { 7 | int switchValue = digitalRead(2); 8 | digitalWrite(BOARD_LED_PIN, switchValue); 9 | } 10 | -------------------------------------------------------------------------------- /build/shared/examples/Stubs/HelloWorld/HelloWorld.pde: -------------------------------------------------------------------------------- 1 | void setup() { 2 | 3 | } 4 | 5 | void loop() { 6 | SerialUSB.println("Hello World!"); 7 | } 8 | -------------------------------------------------------------------------------- /build/shared/gen-version-string: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # This script determines the IDE's version, and stores that in 4 | # an output file passed as first argument (or stdout). 5 | # 6 | # It proceeds by reading the top-level file version.txt. If this file 7 | # contains the string "custom-build", it generates output based on 8 | # today's date and the current HEAD's SHA1, as well as the contents of 9 | # a top-level file libmaple-version.txt (which must exist in this 10 | # case). Otherwise, the contents of version.txt are used unaltered. 11 | # 12 | # The IDE reads the content file "lib/build-version.txt" at startup, 13 | # and reacts in some appropriate manner, so the build scripts are 14 | # responsible for putting this script's output there. 15 | # 16 | # Not wonderful, but better than hardcoded strings. 17 | 18 | version=`cat ../../version.txt` 19 | 20 | if [ $version == "custom-build" ] 21 | then 22 | version=snapshot-`date "+%Y-%m-%d"`-[git-`git show-ref HEAD | cut -c 1-10`]-[libmaple-`cat ../../libmaple-version.txt`] 23 | fi 24 | 25 | if [ $# -gt 0 ] 26 | then 27 | echo $version > $1 28 | else 29 | echo $version 30 | fi 31 | -------------------------------------------------------------------------------- /build/shared/lib/.gitignore: -------------------------------------------------------------------------------- 1 | # This file contains the version of the IDE; it's generated by 2 | # build/shared/gen-version-string, so it shouldn't get included here. 3 | build-version.txt 4 | -------------------------------------------------------------------------------- /build/shared/lib/about.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/about.jpg -------------------------------------------------------------------------------- /build/shared/lib/theme/buttons.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/buttons.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/resize.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/resize.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-sel-left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-sel-left.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-sel-menu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-sel-menu.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-sel-mid.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-sel-mid.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-sel-right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-sel-right.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-unsel-left.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-unsel-left.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-unsel-menu.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-unsel-menu.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-unsel-mid.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-unsel-mid.gif -------------------------------------------------------------------------------- /build/shared/lib/theme/tab-unsel-right.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/shared/lib/theme/tab-unsel-right.gif -------------------------------------------------------------------------------- /build/shared/reference/.gitignore: -------------------------------------------------------------------------------- 1 | # The contents of this directory are auto-generated 2 | 3 | *.html 4 | *.png 5 | *.css 6 | *.js 7 | _static/* 8 | _images/* 9 | _sources/* 10 | objects.inv 11 | -------------------------------------------------------------------------------- /build/shared/tools/Mangler/make.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # The pde.jar file may be buried inside the .app file on Mac OS X. 4 | PDE=`find ../.. -name pde.jar` 5 | 6 | javac -target 1.5 \ 7 | -cp "../../lib/core.jar:$PDE" \ 8 | -d bin \ 9 | src/Mangler.java 10 | 11 | cd bin && zip -r ../tool/mangler.jar * && cd .. 12 | -------------------------------------------------------------------------------- /build/windows/.gitignore: -------------------------------------------------------------------------------- 1 | arm-2010q1-188-arm-none-eabi-toolchain-win32.tar.gz 2 | launcher/maple-ide.exe 3 | work 4 | -------------------------------------------------------------------------------- /build/windows/dist.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | REVISION=`../shared/gen-version-string` 4 | BUILD_DIR=work 5 | 6 | echo Creating Maple IDE distribution for revision $REVISION 7 | 8 | echo Removing old build directory $BUILD_DIR 9 | rm -rf $BUILD_DIR 10 | 11 | echo Rerunning make.sh... 12 | ./make.sh 13 | 14 | echo Finished with make.sh. Packaging release. 15 | 16 | cp -r ../shared/lib $BUILD_DIR 17 | cp -r ../shared/tools $BUILD_DIR 18 | 19 | cp dist/*.dll $BUILD_DIR 20 | cp -r dist/drivers $BUILD_DIR 21 | 22 | cp -r ../../hardware $BUILD_DIR 23 | cp -r ../../libraries $BUILD_DIR 24 | 25 | # write the release version number into the output directory 26 | echo $REVISION > $BUILD_DIR/lib/build-version.txt 27 | 28 | cp ../../app/lib/antlr.jar $BUILD_DIR/lib/ 29 | cp ../../app/lib/ecj.jar $BUILD_DIR/lib/ 30 | cp ../../app/lib/jna.jar $BUILD_DIR/lib/ 31 | cp ../../app/lib/oro.jar $BUILD_DIR/lib/ 32 | cp ../../app/lib/RXTXcomm.jar $BUILD_DIR/lib/ 33 | 34 | cp ../../README-dist $BUILD_DIR/README.txt 35 | 36 | echo Copying examples... 37 | cp -r ../shared/examples $BUILD_DIR/ 38 | 39 | #echo Extracting reference... 40 | #unzip -q -d arduino/ ../shared/reference.zip 41 | echo Copying reference... 42 | cp -r ../shared/reference $BUILD_DIR/ 43 | 44 | echo Copying binaries... 45 | cp -r dist/tools/arm $BUILD_DIR/hardware/tools/arm 46 | cp dist/dfu-util.exe $BUILD_DIR/hardware/tools/arm/bin 47 | cp dist/dfu-util.exe $BUILD_DIR/ # FIXME: both places? 48 | 49 | # add java (jre) files 50 | cp -r dist/java $BUILD_DIR/java 51 | 52 | # get platform-specific goodies from the dist dir 53 | cp launcher/maple-ide.exe $BUILD_DIR/maple-ide.exe 54 | 55 | echo Converting and renaming and cleaning... 56 | # convert to Windows line endings 57 | # the 2> is because the app is a little chatty 58 | unix2dos $BUILD_DIR/readme.txt 2> /dev/null 59 | unix2dos $BUILD_DIR/lib/preferences.txt 2> /dev/null 60 | unix2dos $BUILD_DIR/lib/keywords.txt 2> /dev/null 61 | 62 | # chmod +x the crew 63 | # cygwin requires this because of unknown weirdness 64 | # it was not formerly this anal retentive 65 | # with the html, it's necessary on windows for launching reference 66 | # from shell/command prompt, which is done internally to view reference 67 | find $BUILD_DIR -name "*.html" -exec chmod +x {} ';' 68 | find $BUILD_DIR -name "*.dll" -exec chmod +x {} ';' 69 | find $BUILD_DIR -name "*.exe" -exec chmod +x {} ';' 70 | find $BUILD_DIR -name "*.html" -exec chmod +x {} ';' 71 | 72 | # zip it all up for release 73 | 74 | echo release is ready to zip. windows line endings means you need to do this by hand. sorry. 75 | 76 | # mv $BUILD_DIR $RELEASE_STRING 77 | # zip -rq $RELEASE_STRING.zip $RELEASE_STRING 78 | 79 | echo Done. 80 | -------------------------------------------------------------------------------- /build/windows/dist/cygiconv-2.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/cygiconv-2.dll -------------------------------------------------------------------------------- /build/windows/dist/cygwin1.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/cygwin1.dll -------------------------------------------------------------------------------- /build/windows/dist/dfu-util.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/dfu-util.exe -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/libusb0.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/dfu/libusb0.dll -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/libusb0.sys: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/dfu/libusb0.sys -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/libusb0_x64.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/dfu/libusb0_x64.dll -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/libusb0_x64.sys: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/dfu/libusb0_x64.sys -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/maple.cat: -------------------------------------------------------------------------------- 1 | This file will contain the digital signature of the files to be installed 2 | on the system. 3 | This file will be provided by Microsoft upon certification of your drivers. 4 | -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/dfu/maple_x64.cat: -------------------------------------------------------------------------------- 1 | This file will contain the digital signature of the files to be installed 2 | on the system. 3 | This file will be provided by Microsoft upon certification of your drivers. 4 | -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/serial/maple_serial.inf: -------------------------------------------------------------------------------- 1 | ; 2 | ; STMicroelectronics Comunication Device Class driver instalation file 3 | ; (C)2006 Copyright STMicroelectronics 4 | ; 5 | 6 | [Version] 7 | Signature="$Windows NT$" 8 | Class=Ports 9 | ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} 10 | Provider=%STM% 11 | LayoutFile=layout.inf 12 | 13 | [Manufacturer] 14 | %MFGNAME%=VirComDevice,NT,NTamd64 15 | 16 | [DestinationDirs] 17 | DefaultDestDir = 12 18 | 19 | [VirComDevice.NT] 20 | %DESCRIPTION%=DriverInstall,USB\VID_1EAF&PID_0004 21 | %DESCRIPTION%=DriverInstall,USB\VID_1EAF&PID_0004 22 | 23 | [VirComDevice.NTamd64] 24 | %DESCRIPTION%=DriverInstall,USB\VID_1EAF&PID_0004 25 | %DESCRIPTION%=DriverInstall,USB\VID_1EAF&PID_0004 26 | 27 | [DriverInstall.NT] 28 | Include=mdmcpq.inf 29 | CopyFiles=FakeModemCopyFileSection 30 | AddReg=DriverInstall.NT.AddReg 31 | 32 | [DriverInstall.NT.AddReg] 33 | HKR,,DevLoader,,*ntkern 34 | HKR,,NTMPDriver,,usbser.sys 35 | HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" 36 | 37 | [DriverInstall.NT.Services] 38 | AddService=usbser, 0x00000002, DriverServiceInst 39 | 40 | [DriverServiceInst] 41 | DisplayName=%SERVICE% 42 | ServiceType=1 43 | StartType=3 44 | ErrorControl=1 45 | ServiceBinary=%12%\usbser.sys 46 | 47 | ;------------------------------------------------------------------------------ 48 | ; String Definitions 49 | ;------------------------------------------------------------------------------ 50 | 51 | 52 | [Strings] 53 | STM = "LeafLabs" 54 | MFGNAME = "LeafLabs" 55 | DESCRIPTION = "Maple R3" 56 | SERVICE = "USB Virtual COM port" 57 | -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/serial/msports.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/serial/msports.dll -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/serial/serenum.sys: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/serial/serenum.sys -------------------------------------------------------------------------------- /build/windows/dist/drivers/mapleDrv/serial/usbser.sys: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/drivers/mapleDrv/serial/usbser.sys -------------------------------------------------------------------------------- /build/windows/dist/libusb0.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/libusb0.dll -------------------------------------------------------------------------------- /build/windows/dist/rxtxSerial.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/rxtxSerial.dll -------------------------------------------------------------------------------- /build/windows/dist/tools/dfu-util.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/dist/tools/dfu-util.exe -------------------------------------------------------------------------------- /build/windows/launcher/about.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/about.bmp -------------------------------------------------------------------------------- /build/windows/launcher/application.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/application.ico -------------------------------------------------------------------------------- /build/windows/launcher/config.xml: -------------------------------------------------------------------------------- 1 | 2 | true 3 | gui 4 | lib 5 | maple-ide.exe 6 | 7 | 8 | . 9 | normal 10 | http://java.sun.com/javase/downloads/ 11 | 12 | false 13 | false 14 | 15 | application.ico 16 | 17 | processing.app.Base 18 | lib/pde.jar 19 | lib/core.jar 20 | lib/jna.jar 21 | lib/ecj.jar 22 | lib/oro.jar 23 | lib/RXTXcomm.jar 24 | 25 | 26 | java 27 | 1.5.0 28 | 29 | preferJre 30 | -Xms128m -Xmx128m 31 | 32 | 33 | about.bmp 34 | true 35 | 60 36 | true 37 | 38 | 39 | An error occurred while starting the application. 40 | This application was configured to use a bundled Java Runtime Environment but the runtime is missing or corrupted. 41 | This application requires at least Java Development Kit 42 | The registry refers to a nonexistent Java Development Kit installation or the runtime is corrupted. 43 | An application instance is already running. 44 | 45 | 46 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Launch4j (http://launch4j.sourceforge.net/) 2 | Cross-platform Java application wrapper for creating Windows native executables. 3 | 4 | Copyright (c) 2004, 2008 Grzegorz Kowal 5 | 6 | All rights reserved. 7 | 8 | Redistribution and use in source and binary forms, with or without modification, 9 | are permitted provided that the following conditions are met: 10 | 11 | * Redistributions of source code must retain the above copyright notice, 12 | this list of conditions and the following disclaimer. 13 | * Redistributions in binary form must reproduce the above copyright notice, 14 | this list of conditions and the following disclaimer in the documentation 15 | and/or other materials provided with the distribution. 16 | * Neither the name of the Launch4j nor the names of its contributors 17 | may be used to endorse or promote products derived from this software without 18 | specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 27 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 28 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 29 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 30 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/bin/ld.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/bin/ld.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/bin/windres.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/bin/windres.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/ConsoleApp.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/ConsoleApp/ConsoleApp.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/ConsoleApp.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/ConsoleApp/ConsoleApp.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | if "%ANT_HOME%"=="" goto noAntHome 3 | if "%JAVA_HOME%"=="" goto noJavaHome 4 | call "%ANT_HOME%\bin\ant.bat" exe 5 | goto end 6 | 7 | :noAntHome 8 | echo ANT_HOME environment variable is not set 9 | goto end 10 | 11 | :noJavaHome 12 | echo JAVA_HOME environment variable is not set 13 | 14 | :end 15 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/l4j/ConsoleApp.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/ConsoleApp/l4j/ConsoleApp.ico -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/lib/readme.txt: -------------------------------------------------------------------------------- 1 | Put your jar libs here and the build script will include them 2 | in the classpath stored inside the jar manifest. 3 | In order to run your application move the output exe file from 4 | the dist directory to the same level as lib. 5 | 6 | SimpleApp.exe 7 | lib/ 8 | lib/xml.jar 9 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/ConsoleApp/readme.txt: -------------------------------------------------------------------------------- 1 | To build the example application set JAVA_HOME and ANT_HOME environment variables. 2 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Launch4j (http://launch4j.sourceforge.net/) 2 | Cross-platform Java application wrapper for creating Windows native executables. 3 | 4 | Copyright (c) 2004, 2007 Grzegorz Kowal 5 | 6 | All rights reserved. 7 | 8 | Redistribution and use in source and binary forms, with or without modification, 9 | are permitted provided that the following conditions are met: 10 | 11 | * Redistributions of source code must retain the above copyright notice, 12 | this list of conditions and the following disclaimer. 13 | * Redistributions in binary form must reproduce the above copyright notice, 14 | this list of conditions and the following disclaimer in the documentation 15 | and/or other materials provided with the distribution. 16 | * Neither the name of the Launch4j nor the names of its contributors 17 | may be used to endorse or promote products derived from this software without 18 | specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 27 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 28 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 29 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 30 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/SimpleApp.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/SimpleApp/SimpleApp.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/SimpleApp.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/SimpleApp/SimpleApp.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/build.bat: -------------------------------------------------------------------------------- 1 | @echo off 2 | if "%ANT_HOME%"=="" goto noAntHome 3 | if "%JAVA_HOME%"=="" goto noJavaHome 4 | call "%ANT_HOME%\bin\ant.bat" exe 5 | goto end 6 | 7 | :noAntHome 8 | echo ANT_HOME environment variable is not set 9 | goto end 10 | 11 | :noJavaHome 12 | echo JAVA_HOME environment variable is not set 13 | 14 | :end 15 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/l4j/SimpleApp.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/SimpleApp/l4j/SimpleApp.ico -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/l4j/SimpleApp.xml: -------------------------------------------------------------------------------- 1 | 2 | gui 3 | ../SimpleApp.jar 4 | ../SimpleApp.exe 5 | SimpleApp 6 | . 7 | true 8 | SimpleApp.ico 9 | 10 | 1.4.0 11 | 12 | 13 | splash.bmp 14 | true 15 | 60 16 | true 17 | 18 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/l4j/splash.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/demo/SimpleApp/l4j/splash.bmp -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/lib/readme.txt: -------------------------------------------------------------------------------- 1 | Put your jar libs here and the build script will include them 2 | in the classpath stored inside the jar manifest. 3 | In order to run your application move the output exe file from 4 | the dist directory to the same level as lib. 5 | 6 | SimpleApp.exe 7 | lib/ 8 | lib/xml.jar 9 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/SimpleApp/readme.txt: -------------------------------------------------------------------------------- 1 | To build the example application set JAVA_HOME and ANT_HOME environment variables. 2 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/demo/readme.txt: -------------------------------------------------------------------------------- 1 | JRE/SDK 1.4.0 or higher must be installed on your system to run this demo. 2 | 3 | try running it with some command line arguments... 4 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2004, 2007 Grzegorz Kowal 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | Except as contained in this notice, the name(s) of the above copyright holders 14 | shall not be used in advertising or otherwise to promote the sale, use or other 15 | dealings in this Software without prior written authorization. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head/guihead.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/head/guihead.o -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head/head.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/head/head.o -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2004, 2008 Grzegorz Kowal 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | Except as contained in this notice, the name(s) of the above copyright holders 14 | shall not be used in advertising or otherwise to promote the sale, use or other 15 | dealings in this Software without prior written authorization. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 23 | THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/consolehead/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: consolehead 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = ../../head/consolehead.o ../../head/head.o $(RES) 9 | LINKOBJ = ../../head/consolehead.o ../../head/head.o $(RES) 10 | LIBS = -L"C:/Dev-Cpp/lib" -n -s 11 | INCS = -I"C:/Dev-Cpp/include" 12 | CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" 13 | BIN = consolehead.exe 14 | CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3 15 | CFLAGS = $(INCS) -fexpensive-optimizations -O3 16 | RM = rm -f 17 | 18 | .PHONY: all all-before all-after clean clean-custom 19 | 20 | all: all-before consolehead.exe all-after 21 | 22 | 23 | clean: clean-custom 24 | ${RM} $(OBJ) $(BIN) 25 | 26 | $(BIN): $(OBJ) 27 | # $(CC) $(LINKOBJ) -o "consolehead.exe" $(LIBS) 28 | 29 | ../../head/consolehead.o: consolehead.c 30 | $(CC) -c consolehead.c -o ../../head/consolehead.o $(CFLAGS) 31 | 32 | ../../head/head.o: ../head.c 33 | $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS) 34 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/consolehead/consolehead.c: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | Except as contained in this notice, the name(s) of the above copyright holders 18 | shall not be used in advertising or otherwise to promote the sale, use or other 19 | dealings in this Software without prior written authorization. 20 | 21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 27 | THE SOFTWARE. 28 | */ 29 | 30 | #include "../resource.h" 31 | #include "../head.h" 32 | 33 | int main(int argc, char* argv[]) 34 | { 35 | setConsoleFlag(); 36 | LPTSTR cmdLine = GetCommandLine(); 37 | if (*cmdLine == '"') { 38 | if (*(cmdLine = strchr(cmdLine + 1, '"') + 1)) { 39 | cmdLine++; 40 | } 41 | } else if ((cmdLine = strchr(cmdLine, ' ')) != NULL) { 42 | cmdLine++; 43 | } else { 44 | cmdLine = ""; 45 | } 46 | int result = prepare(cmdLine); 47 | if (result == ERROR_ALREADY_EXISTS) { 48 | char errMsg[BIG_STR] = {0}; 49 | loadString(INSTANCE_ALREADY_EXISTS_MSG, errMsg); 50 | msgBox(errMsg); 51 | closeLogFile(); 52 | return 2; 53 | } 54 | if (result != TRUE) { 55 | signalError(); 56 | return 1; 57 | } 58 | 59 | result = (int) execute(TRUE); 60 | if (result == -1) { 61 | signalError(); 62 | } else { 63 | return result; 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/consolehead/consolehead.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=consolehead.dev 3 | Name=consolehead 4 | UnitCount=4 5 | Type=1 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-n_@@_ 16 | IsCpp=0 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput=..\..\head 20 | OverrideOutput=0 21 | OverrideOutputName=consolehead.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=0 26 | CustomMakefile=Makefile.win 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000001001000000100 31 | 32 | [Unit1] 33 | FileName=consolehead.c 34 | CompileCpp=0 35 | Folder=consolehead 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd= 41 | 42 | [VersionInfo] 43 | Major=0 44 | Minor=1 45 | Release=1 46 | Build=1 47 | LanguageID=1033 48 | CharsetID=1252 49 | CompanyName= 50 | FileVersion= 51 | FileDescription=Developed using the Dev-C++ IDE 52 | InternalName= 53 | LegalCopyright= 54 | LegalTrademarks= 55 | OriginalFilename= 56 | ProductName= 57 | ProductVersion= 58 | AutoIncBuildNr=0 59 | 60 | [Unit2] 61 | FileName=..\resource.h 62 | CompileCpp=0 63 | Folder=consolehead 64 | Compile=1 65 | Link=1 66 | Priority=1000 67 | OverrideBuildCmd=0 68 | BuildCmd= 69 | 70 | [Unit3] 71 | FileName=..\head.c 72 | CompileCpp=0 73 | Folder=consolehead 74 | Compile=1 75 | Link=1 76 | Priority=1000 77 | OverrideBuildCmd=0 78 | BuildCmd= 79 | 80 | [Unit4] 81 | FileName=..\head.h 82 | CompileCpp=0 83 | Folder=consolehead 84 | Compile=1 85 | Link=1 86 | Priority=1000 87 | OverrideBuildCmd=0 88 | BuildCmd= 89 | 90 | [Unit5] 91 | FileName=..\head.rc 92 | Folder=consolehead 93 | Compile=1 94 | Link=0 95 | Priority=1000 96 | OverrideBuildCmd=0 97 | BuildCmd= 98 | 99 | [Unit6] 100 | FileName=..\resid.h 101 | CompileCpp=0 102 | Folder=consolehead 103 | Compile=1 104 | Link=1 105 | Priority=1000 106 | OverrideBuildCmd=0 107 | BuildCmd= 108 | 109 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/guihead/Makefile.win: -------------------------------------------------------------------------------- 1 | # Project: guihead 2 | # Makefile created by Dev-C++ 4.9.9.2 3 | 4 | CPP = g++.exe 5 | CC = gcc.exe 6 | WINDRES = windres.exe 7 | RES = 8 | OBJ = ../../head/guihead.o ../../head/head.o $(RES) 9 | LINKOBJ = ../../head/guihead.o ../../head/head.o $(RES) 10 | 11 | # removed dev-cpp flags, replacing for cygwin/mingw [fry] 12 | CXXFLAGS = -mwindows -mno-cygwin -O2 -Wall 13 | CFLAGS = -mwindows -mno-cygwin -O2 -Wall 14 | #CFLAGS = -I/cygdrive/c/cygwin/usr/include/mingw 15 | #LIBS = -L"C:/Dev-Cpp/lib" -mwindows -n -s 16 | #INCS = -I"C:/Dev-Cpp/include" 17 | #CXXINCS = -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"C:/Dev-Cpp/include/c++/3.4.2/backward" -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32" -I"C:/Dev-Cpp/include/c++/3.4.2" -I"C:/Dev-Cpp/include" 18 | BIN = guihead.exe 19 | #CXXFLAGS = $(CXXINCS) -fexpensive-optimizations -O3 20 | #CFLAGS = $(INCS) -fexpensive-optimizations -O3 21 | RM = rm -f 22 | 23 | .PHONY: all all-before all-after clean clean-custom 24 | 25 | all: all-before guihead.exe all-after 26 | 27 | 28 | clean: clean-custom 29 | ${RM} $(OBJ) $(BIN) 30 | 31 | $(BIN): $(OBJ) 32 | # $(CC) $(LINKOBJ) -o "guihead.exe" $(LIBS) 33 | 34 | ../../head/guihead.o: guihead.c 35 | $(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS) 36 | 37 | ../../head/head.o: ../head.c 38 | $(CC) -c ../head.c -o ../../head/head.o $(CFLAGS) 39 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/guihead/guihead.dev: -------------------------------------------------------------------------------- 1 | [Project] 2 | FileName=guihead.dev 3 | Name=guihead 4 | UnitCount=5 5 | Type=0 6 | Ver=1 7 | ObjFiles= 8 | Includes= 9 | Libs= 10 | PrivateResource= 11 | ResourceIncludes= 12 | MakeIncludes= 13 | Compiler= 14 | CppCompiler= 15 | Linker=-n_@@_ 16 | IsCpp=0 17 | Icon= 18 | ExeOutput= 19 | ObjectOutput=..\..\head 20 | OverrideOutput=0 21 | OverrideOutputName=guihead.exe 22 | HostApplication= 23 | Folders= 24 | CommandLine= 25 | UseCustomMakefile=1 26 | CustomMakefile=Makefile.win 27 | IncludeVersionInfo=0 28 | SupportXPThemes=0 29 | CompilerSet=0 30 | CompilerSettings=0000000001001000000100 31 | 32 | [Unit1] 33 | FileName=guihead.c 34 | CompileCpp=0 35 | Folder=guihead 36 | Compile=1 37 | Link=1 38 | Priority=1000 39 | OverrideBuildCmd=0 40 | BuildCmd=$(CC) -c guihead.c -o ../../head/guihead.o $(CFLAGS) 41 | 42 | [Unit2] 43 | FileName=guihead.h 44 | CompileCpp=0 45 | Folder=guihead 46 | Compile=1 47 | Link=1 48 | Priority=1000 49 | OverrideBuildCmd=0 50 | BuildCmd= 51 | 52 | [VersionInfo] 53 | Major=0 54 | Minor=1 55 | Release=1 56 | Build=1 57 | LanguageID=1033 58 | CharsetID=1252 59 | CompanyName= 60 | FileVersion= 61 | FileDescription=Developed using the Dev-C++ IDE 62 | InternalName= 63 | LegalCopyright= 64 | LegalTrademarks= 65 | OriginalFilename= 66 | ProductName= 67 | ProductVersion= 68 | AutoIncBuildNr=0 69 | 70 | [Unit4] 71 | FileName=..\head.h 72 | CompileCpp=0 73 | Folder=guihead 74 | Compile=1 75 | Link=1 76 | Priority=1000 77 | OverrideBuildCmd=0 78 | BuildCmd= 79 | 80 | [Unit6] 81 | FileName=..\resid.h 82 | CompileCpp=0 83 | Folder=guihead 84 | Compile=1 85 | Link=1 86 | Priority=1000 87 | OverrideBuildCmd=0 88 | BuildCmd= 89 | 90 | [Unit3] 91 | FileName=..\head.c 92 | CompileCpp=0 93 | Folder=guihead 94 | Compile=1 95 | Link=1 96 | Priority=1000 97 | OverrideBuildCmd=0 98 | BuildCmd= 99 | 100 | [Unit5] 101 | FileName=..\resource.h 102 | CompileCpp=0 103 | Folder=guihead 104 | Compile=1 105 | Link=1 106 | Priority=1000 107 | OverrideBuildCmd=0 108 | BuildCmd= 109 | 110 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/head_src/guihead/guihead.h: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy 8 | of this software and associated documentation files (the "Software"), to deal 9 | in the Software without restriction, including without limitation the rights 10 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 11 | copies of the Software, and to permit persons to whom the Software is 12 | furnished to do so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in 15 | all copies or substantial portions of the Software. 16 | 17 | Except as contained in this notice, the name(s) of the above copyright holders 18 | shall not be used in advertising or otherwise to promote the sale, use or other 19 | dealings in this Software without prior written authorization. 20 | 21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 22 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 23 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 24 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 25 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 26 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 27 | THE SOFTWARE. 28 | */ 29 | 30 | #define ID_TIMER 1 31 | #define DEFAULT_SPLASH_TIMEOUT 60 /* 60 seconds */ 32 | #define MAX_SPLASH_TIMEOUT 60 * 15 /* 15 minutes */ 33 | 34 | HWND getInstanceWindow(); 35 | 36 | BOOL CALLBACK enumwndfn(HWND hwnd, LPARAM lParam); 37 | 38 | VOID CALLBACK TimerProc( 39 | HWND hwnd, // handle of window for timer messages 40 | UINT uMsg, // WM_TIMER message 41 | UINT idEvent, // timer identifier 42 | DWORD dwTime // current system time 43 | ); 44 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/launch4j.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/launch4j.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/launch4j.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/launch4j.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/launch4j.jfpr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/launch4j.jfpr -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/launch4jc.exe: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/launch4jc.exe -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/JGoodies.Forms.LICENSE.txt: -------------------------------------------------------------------------------- 1 | 2 | The BSD License for the JGoodies Forms 3 | ====================================== 4 | 5 | Copyright (c) 2002-2004 JGoodies Karsten Lentzsch. All rights reserved. 6 | 7 | Redistribution and use in source and binary forms, with or without 8 | modification, are permitted provided that the following conditions are met: 9 | 10 | o Redistributions of source code must retain the above copyright notice, 11 | this list of conditions and the following disclaimer. 12 | 13 | o Redistributions in binary form must reproduce the above copyright notice, 14 | this list of conditions and the following disclaimer in the documentation 15 | and/or other materials provided with the distribution. 16 | 17 | o Neither the name of JGoodies Karsten Lentzsch nor the names of 18 | its contributors may be used to endorse or promote products derived 19 | from this software without specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 23 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 24 | PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 28 | OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 29 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 30 | OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 31 | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/JGoodies.Looks.LICENSE.txt: -------------------------------------------------------------------------------- 1 | 2 | The BSD License for the JGoodies Looks 3 | ====================================== 4 | 5 | Copyright (c) 2001-2007 JGoodies Karsten Lentzsch. All rights reserved. 6 | 7 | Redistribution and use in source and binary forms, with or without 8 | modification, are permitted provided that the following conditions are met: 9 | 10 | o Redistributions of source code must retain the above copyright notice, 11 | this list of conditions and the following disclaimer. 12 | 13 | o Redistributions in binary form must reproduce the above copyright notice, 14 | this list of conditions and the following disclaimer in the documentation 15 | and/or other materials provided with the distribution. 16 | 17 | o Neither the name of JGoodies Karsten Lentzsch nor the names of 18 | its contributors may be used to endorse or promote products derived 19 | from this software without specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 22 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 23 | THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 24 | PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 28 | OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 29 | WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 30 | OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 31 | EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/XStream.LICENSE.txt: -------------------------------------------------------------------------------- 1 | (BSD Style License) 2 | 3 | Copyright (c) 2003-2004, Joe Walnes 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | Redistributions of source code must retain the above copyright notice, this list of 10 | conditions and the following disclaimer. Redistributions in binary form must reproduce 11 | the above copyright notice, this list of conditions and the following disclaimer in 12 | the documentation and/or other materials provided with the distribution. 13 | 14 | Neither the name of XStream nor the names of its contributors may be used to endorse 15 | or promote products derived from this software without specific prior written 16 | permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 19 | EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 20 | OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 21 | SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 22 | INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED 23 | TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 24 | BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY 26 | WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 27 | DAMAGE. 28 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/commons-beanutils.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/commons-beanutils.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/commons-logging.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/commons-logging.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/forms.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/forms.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/formsrt.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/formsrt.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/foxtrot.LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2002, Simone Bordet & Marco Cravero 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, are permitted 5 | provided that the following conditions are met: 6 | 7 | - Redistributions of source code must retain the above copyright notice, 8 | this list of conditions and the following disclaimer. 9 | 10 | - Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | - Neither the name of Foxtrot nor the names of the contributors may be used 15 | to endorse or promote products derived from this software without specific prior 16 | written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS 19 | OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY 20 | AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS 21 | BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 23 | OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 25 | THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/foxtrot.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/foxtrot.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/looks.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/looks.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/lib/xstream.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/lib/xstream.jar -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/manifest/uac.exe.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/manifest/xp-themes.exe.manifest: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/asterix-o.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/asterix-o.gif -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/asterix.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/asterix.gif -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/build.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/button_ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/button_ok.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/cancel16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/cancel16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/down16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/down16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/edit_add16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/edit_add16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/info.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/info.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/new.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/new16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/new16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/ok16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/ok16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/open.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/open16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/open16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/run.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/run.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/save.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/save.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/images/up16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/images/up16.png -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/launch4j.properties: -------------------------------------------------------------------------------- 1 | versionNumber=3.0.1.0 2 | version=3.0.1 3 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/BuilderException.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on May 13, 2005 36 | */ 37 | package net.sf.launch4j; 38 | 39 | /** 40 | * @author Copyright (C) 2005 Grzegorz Kowal 41 | */ 42 | public class BuilderException extends Exception { 43 | public BuilderException() {} 44 | 45 | public BuilderException(Throwable t) { 46 | super(t); 47 | } 48 | 49 | public BuilderException(String msg) { 50 | super(msg); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ExecException.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on May 14, 2005 36 | */ 37 | package net.sf.launch4j; 38 | 39 | /** 40 | * @author Copyright (C) 2005 Grzegorz Kowal 41 | */ 42 | public class ExecException extends Exception { 43 | private final int _errLine; 44 | 45 | public ExecException(Throwable t, int errLine) { 46 | super(t); 47 | _errLine = errLine; 48 | } 49 | 50 | public ExecException(Throwable t) { 51 | this(t, -1); 52 | } 53 | 54 | public ExecException(String msg, int errLine) { 55 | super(msg); 56 | _errLine = errLine; 57 | } 58 | 59 | public ExecException(String msg) { 60 | this(msg, -1); 61 | } 62 | 63 | public int getErrLine() { 64 | return _errLine; 65 | } 66 | } 67 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ant/AntClassPath.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on Jul 19, 2006 36 | */ 37 | package net.sf.launch4j.ant; 38 | 39 | import java.util.ArrayList; 40 | import java.util.List; 41 | 42 | import net.sf.launch4j.config.ClassPath; 43 | 44 | /** 45 | * @author Copyright (C) 2006 Grzegorz Kowal 46 | */ 47 | public class AntClassPath extends ClassPath { 48 | private final List wrappedPaths = new ArrayList(); 49 | 50 | public void setCp(String cp){ 51 | wrappedPaths.add(cp); 52 | } 53 | 54 | public void addCp(StringWrapper cp) { 55 | wrappedPaths.add(cp); 56 | } 57 | 58 | public void unwrap() { 59 | setPaths(StringWrapper.unwrap(wrappedPaths)); 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ant/Messages.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | package net.sf.launch4j.ant; 35 | 36 | import java.util.MissingResourceException; 37 | import java.util.ResourceBundle; 38 | 39 | public class Messages { 40 | private static final String BUNDLE_NAME = "net.sf.launch4j.ant.messages"; 41 | 42 | private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle 43 | .getBundle(BUNDLE_NAME); 44 | 45 | private Messages() { 46 | } 47 | 48 | public static String getString(String key) { 49 | try { 50 | return RESOURCE_BUNDLE.getString(key); 51 | } catch (MissingResourceException e) { 52 | return '!' + key + '!'; 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ant/StringWrapper.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on Jul 18, 2006 36 | */ 37 | package net.sf.launch4j.ant; 38 | 39 | import java.util.ArrayList; 40 | import java.util.Iterator; 41 | import java.util.List; 42 | 43 | /** 44 | * @author Copyright (C) 2006 Grzegorz Kowal 45 | */ 46 | public class StringWrapper { 47 | private String text; 48 | 49 | public static List unwrap(List wrappers) { 50 | if (wrappers.isEmpty()) { 51 | return null; 52 | } 53 | List strings = new ArrayList(wrappers.size()); 54 | for (Iterator iter = wrappers.iterator(); iter.hasNext();) { 55 | strings.add(iter.next().toString()); 56 | } 57 | return strings; 58 | } 59 | 60 | public void addText(String text) { 61 | this.text = text; 62 | } 63 | 64 | public String toString() { 65 | return text; 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ant/messages.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Launch4j (http://launch4j.sourceforge.net/) 3 | # Cross-platform Java application wrapper for creating Windows native executables. 4 | # 5 | # Copyright (c) 2004, 2007 Grzegorz Kowal 6 | # 7 | # All rights reserved. 8 | # 9 | # Redistribution and use in source and binary forms, with or without modification, 10 | # are permitted provided that the following conditions are met: 11 | # 12 | # * Redistributions of source code must retain the above copyright notice, 13 | # this list of conditions and the following disclaimer. 14 | # * Redistributions in binary form must reproduce the above copyright notice, 15 | # this list of conditions and the following disclaimer in the documentation 16 | # and/or other materials provided with the distribution. 17 | # * Neither the name of the Launch4j nor the names of its contributors 18 | # may be used to endorse or promote products derived from this software without 19 | # specific prior written permission. 20 | # 21 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | # 33 | 34 | Launch4jTask.specify.config=Specify configFile or config 35 | AntConfig.duplicate.element=Duplicate element 36 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/ant/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/ant/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/binding/BindingException.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on Apr 30, 2005 36 | */ 37 | package net.sf.launch4j.binding; 38 | 39 | /** 40 | * Signals a runtime error, a missing property in a Java Bean for example. 41 | * 42 | * @author Copyright (C) 2005 Grzegorz Kowal 43 | */ 44 | public class BindingException extends RuntimeException { 45 | public BindingException(Throwable t) { 46 | super(t); 47 | } 48 | 49 | public BindingException(String msg) { 50 | super(msg); 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/binding/IValidatable.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on 2004-01-30 36 | */ 37 | package net.sf.launch4j.binding; 38 | 39 | /** 40 | * @author Copyright (C) 2004 Grzegorz Kowal 41 | */ 42 | public interface IValidatable { 43 | public void checkInvariants(); 44 | } 45 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/binding/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/binding/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/config/ConfigPersisterException.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on Apr 22, 2005 36 | */ 37 | package net.sf.launch4j.config; 38 | 39 | /** 40 | * @author Copyright (C) 2005 Grzegorz Kowal 41 | */ 42 | public class ConfigPersisterException extends Exception { 43 | 44 | public ConfigPersisterException(String msg, Throwable t) { 45 | super(msg, t); 46 | } 47 | 48 | public ConfigPersisterException(Throwable t) { 49 | super(t); 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/config/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/config/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/BasicForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/BasicForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/ClassPathForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/ClassPathForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/ConfigForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/ConfigForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/EnvironmentVarsForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/HeaderForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/HeaderForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/JreForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/JreForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/Messages.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | package net.sf.launch4j.form; 35 | 36 | import java.util.MissingResourceException; 37 | import java.util.ResourceBundle; 38 | 39 | class Messages { 40 | private static final String BUNDLE_NAME = "net.sf.launch4j.form.messages"; 41 | 42 | private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle 43 | .getBundle(BUNDLE_NAME); 44 | 45 | private Messages() { 46 | } 47 | 48 | public static String getString(String key) { 49 | try { 50 | return RESOURCE_BUNDLE.getString(key); 51 | } catch (MissingResourceException e) { 52 | return '!' + key + '!'; 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/MessagesForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/MessagesForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/SingleInstanceForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/SplashForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/SplashForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/VersionInfoForm.jfrm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/VersionInfoForm.jfrm -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/form/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/form/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/EnvironmentVarsFormImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /* 35 | * Created on Jun 10, 2006 36 | */ 37 | package net.sf.launch4j.formimpl; 38 | 39 | import net.sf.launch4j.binding.Bindings; 40 | import net.sf.launch4j.form.EnvironmentVarsForm; 41 | 42 | /** 43 | * @author Copyright (C) 2006 Grzegorz Kowal 44 | */ 45 | public class EnvironmentVarsFormImpl extends EnvironmentVarsForm { 46 | 47 | public EnvironmentVarsFormImpl(Bindings bindings) { 48 | bindings.add("variables", _envVarsTextArea); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/GlassPane.java: -------------------------------------------------------------------------------- 1 | package net.sf.launch4j.formimpl; 2 | 3 | import java.awt.AWTEvent; 4 | import java.awt.Component; 5 | import java.awt.Cursor; 6 | import java.awt.Toolkit; 7 | import java.awt.Window; 8 | import java.awt.event.AWTEventListener; 9 | import java.awt.event.KeyAdapter; 10 | import java.awt.event.KeyEvent; 11 | import java.awt.event.MouseAdapter; 12 | 13 | import javax.swing.JComponent; 14 | import javax.swing.SwingUtilities; 15 | 16 | /** 17 | * This is the glass pane class that intercepts screen interactions during 18 | * system busy states. 19 | * 20 | * Based on JavaWorld article by Yexin Chen. 21 | */ 22 | public class GlassPane extends JComponent implements AWTEventListener { 23 | private final Window _window; 24 | 25 | public GlassPane(Window w) { 26 | _window = w; 27 | addMouseListener(new MouseAdapter() {}); 28 | addKeyListener(new KeyAdapter() {}); 29 | setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); 30 | } 31 | 32 | /** 33 | * Receives all key events in the AWT and processes the ones that originated 34 | * from the current window with the glass pane. 35 | * 36 | * @param event 37 | * the AWTEvent that was fired 38 | */ 39 | public void eventDispatched(AWTEvent event) { 40 | Object source = event.getSource(); 41 | if (event instanceof KeyEvent 42 | && source instanceof Component) { 43 | /* 44 | * If the event originated from the window w/glass pane, 45 | * consume the event. 46 | */ 47 | if ((SwingUtilities.windowForComponent((Component) source) == _window)) { 48 | ((KeyEvent) event).consume(); 49 | } 50 | } 51 | } 52 | 53 | /** 54 | * Sets the glass pane as visible or invisible. The mouse cursor will be set 55 | * accordingly. 56 | */ 57 | public void setVisible(boolean visible) { 58 | if (visible) { 59 | // Start receiving all events and consume them if necessary 60 | Toolkit.getDefaultToolkit().addAWTEventListener(this, AWTEvent.KEY_EVENT_MASK); 61 | } else { 62 | // Stop receiving all events 63 | Toolkit.getDefaultToolkit().removeAWTEventListener(this); 64 | } 65 | super.setVisible(visible); 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/Messages.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | package net.sf.launch4j.formimpl; 35 | 36 | import java.util.MissingResourceException; 37 | import java.util.ResourceBundle; 38 | 39 | public class Messages { 40 | private static final String BUNDLE_NAME = "net.sf.launch4j.formimpl.messages"; 41 | 42 | private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle 43 | .getBundle(BUNDLE_NAME); 44 | 45 | private Messages() { 46 | } 47 | 48 | public static String getString(String key) { 49 | try { 50 | return RESOURCE_BUNDLE.getString(key); 51 | } catch (MissingResourceException e) { 52 | return '!' + key + '!'; 53 | } 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/SingleInstanceFormImpl.java: -------------------------------------------------------------------------------- 1 | /* 2 | Launch4j (http://launch4j.sourceforge.net/) 3 | Cross-platform Java application wrapper for creating Windows native executables. 4 | 5 | Copyright (c) 2004, 2007 Grzegorz Kowal 6 | 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | * Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | * Redistributions in binary form must reproduce the above copyright notice, 15 | this list of conditions and the following disclaimer in the documentation 16 | and/or other materials provided with the distribution. 17 | * Neither the name of the Launch4j nor the names of its contributors 18 | may be used to endorse or promote products derived from this software without 19 | specific prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | */ 33 | 34 | /** 35 | * Created on 2007-09-22 36 | */ 37 | package net.sf.launch4j.formimpl; 38 | 39 | import net.sf.launch4j.binding.Bindings; 40 | import net.sf.launch4j.config.SingleInstance; 41 | import net.sf.launch4j.form.SingleInstanceForm; 42 | 43 | /** 44 | * @author Copyright (C) 2007 Grzegorz Kowal 45 | */ 46 | public class SingleInstanceFormImpl extends SingleInstanceForm { 47 | 48 | public SingleInstanceFormImpl(Bindings bindings) { 49 | bindings.addOptComponent("singleInstance", SingleInstance.class, 50 | _singleInstanceCheck) 51 | .add("singleInstance.mutexName", _mutexNameField) 52 | .add("singleInstance.windowTitle", _windowTitleField); 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/formimpl/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/messages.properties: -------------------------------------------------------------------------------- 1 | # 2 | # Launch4j (http://launch4j.sourceforge.net/) 3 | # Cross-platform Java application wrapper for creating Windows native executables. 4 | # 5 | # Copyright (c) 2004, 2007 Grzegorz Kowal 6 | # 7 | # All rights reserved. 8 | # 9 | # Redistribution and use in source and binary forms, with or without modification, 10 | # are permitted provided that the following conditions are met: 11 | # 12 | # * Redistributions of source code must retain the above copyright notice, 13 | # this list of conditions and the following disclaimer. 14 | # * Redistributions in binary form must reproduce the above copyright notice, 15 | # this list of conditions and the following disclaimer in the documentation 16 | # and/or other materials provided with the distribution. 17 | # * Neither the name of the Launch4j nor the names of its contributors 18 | # may be used to endorse or promote products derived from this software without 19 | # specific prior written permission. 20 | # 21 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 22 | # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 23 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 24 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 25 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 26 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 27 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 28 | # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 29 | # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 30 | # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 31 | # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | # 33 | 34 | Main.usage=usage 35 | 36 | Builder.compiling.resources=Compiling resources 37 | Builder.linking=Linking 38 | Builder.wrapping=Wrapping 39 | Builder.success=Successfully created 40 | Builder.generated.resource.file=Generated resource file...\n 41 | Builder.line.has.errors=Line {0} has errors... 42 | 43 | Util.exec.failed=Exec failed 44 | Util.tmpdir=Temporary file directory path (launch4j.tmpdir) cannot contain spaces. 45 | Util.use.double.backslash=Use \\\\ to code Windows paths in fields that don't represent files or paths! 46 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/src/net/sf/launch4j/messages_es.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/src/net/sf/launch4j/messages_es.properties -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/MinGW.LICENSE.txt: -------------------------------------------------------------------------------- 1 | MinGW - Licensing Terms 2 | 3 | Various pieces distributed with MinGW come with its own copyright and license: 4 | 5 | Basic MinGW runtime 6 | MinGW base runtime package is uncopyrighted and placed in the public domain. 7 | This basically means that you can do what you want with the code. 8 | 9 | w32api 10 | You are free to use, modify and copy this package. 11 | No restrictions are imposed on programs or object files compiled with this library. 12 | You may not restrict the the usage of this library. 13 | You may distribute this library as part of another package or as a modified package 14 | if and only if you do not restrict the usage of the portions consisting 15 | of this (optionally modified) library. 16 | If distributed as a modified package then this file must be included. 17 | 18 | This library is distributed in the hope that it will be useful, 19 | but WITHOUT ANY WARRANTY; without even the implied warranty 20 | of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 21 | 22 | MinGW profiling code 23 | MinGW profiling code is distributed under the GNU General Public License. 24 | 25 | The development tools such as GCC, GDB, GNU Make, etc all covered by GNU General Public License. 26 | -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/crt2.o: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/crt2.o -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libadvapi32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libadvapi32.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libgcc.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libgcc.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libkernel32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libkernel32.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libmingw32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libmingw32.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libmsvcrt.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libmsvcrt.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libshell32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libshell32.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/w32api/libuser32.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/w32api/libuser32.a -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/web/bullet.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/web/bullet.gif -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/web/launch4j-use.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/web/launch4j-use.gif -------------------------------------------------------------------------------- /build/windows/launcher/launch4j/web/launch4j.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/build/windows/launcher/launch4j/web/launch4j.gif -------------------------------------------------------------------------------- /build/windows/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | CLASSPATH=lib\\pde.jar\;lib\\core.jar\;lib\\jna.jar\;lib\\ecj.jar\;lib\\antlr.jar\;lib\\oro.jar\;lib\\RXTXcomm.jar\;java\\lib\\tools.jar 4 | export CLASSPATH 5 | 6 | cd work && ./java/bin/java processing.app.Base 7 | -------------------------------------------------------------------------------- /build/windows/srun.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | QT_JAVA_PATH="$WINDIR\\system32\\QTJava.zip" 4 | if test -f "${QT_JAVA_PATH}" 5 | then 6 | echo "Found Quicktime at $QT_JAVA_PATH" 7 | else 8 | QT_JAVA_PATH="$WINDIR\\system\\QTJava.zip" 9 | if test -f "${QT_JAVA_PATH}" 10 | echo "could not find qtjava.zip in either" 11 | echo "${WINDIR}\\system32\\qtjava.zip or" 12 | echo "${WINDIR}\\system\\qtjava.zip" 13 | echo "quicktime for java must be installed before building." 14 | exit 1; 15 | then 16 | echo "Found Quicktime at $QT_JAVA_PATH" 17 | else 18 | fi 19 | fi 20 | 21 | CLASSPATH=\"java\\lib\\rt.jar\;lib\;lib\\build\;lib\\pde.jar\;lib\\kjc.jar\;lib\\antlr.jar\;lib\\oro.jar\;lib\\comm.jar\;lib\\RXTXcomm.jar\;${QT_JAVA_PATH}\" 22 | 23 | export CLASSPATH 24 | 25 | cd work && ./java/bin/java -Djava.compiler=NONE PdeBase 26 | -------------------------------------------------------------------------------- /core/make.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | #javadoc -public -d doc *.java 4 | #javadoc -private -d doc *.java 5 | chmod +x preproc.pl 6 | ./preproc.pl 7 | jikes -d . +D *.java 8 | -------------------------------------------------------------------------------- /core/preproc/build.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /core/preproc/preproc.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/leaflabs/maple-ide/e5511b6f905083732a9aa76024410accdfc1fe28/core/preproc/preproc.jar -------------------------------------------------------------------------------- /core/src/processing/core/PStyle.java: -------------------------------------------------------------------------------- 1 | /* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */ 2 | 3 | /* 4 | Part of the Processing project - http://processing.org 5 | 6 | Copyright (c) 2008 Ben Fry and Casey Reas 7 | 8 | This library is free software; you can redistribute it and/or 9 | modify it under the terms of the GNU Lesser General Public 10 | License as published by the Free Software Foundation; either 11 | version 2.1 of the License, or (at your option) any later version. 12 | 13 | This library is distributed in the hope that it will be useful, 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 | Lesser General Public License for more details. 17 | 18 | You should have received a copy of the GNU Lesser General 19 | Public License along with this library; if not, write to the 20 | Free Software Foundation, Inc., 59 Temple Place, Suite 330, 21 | Boston, MA 02111-1307 USA 22 | */ 23 | 24 | package processing.core; 25 | 26 | 27 | public class PStyle implements PConstants { 28 | public int imageMode; 29 | public int rectMode; 30 | public int ellipseMode; 31 | public int shapeMode; 32 | 33 | public int colorMode; 34 | public float colorModeX; 35 | public float colorModeY; 36 | public float colorModeZ; 37 | public float colorModeA; 38 | 39 | public boolean tint; 40 | public int tintColor; 41 | public boolean fill; 42 | public int fillColor; 43 | public boolean stroke; 44 | public int strokeColor; 45 | public float strokeWeight; 46 | public int strokeCap; 47 | public int strokeJoin; 48 | 49 | // TODO these fellas are inconsistent, and may need to go elsewhere 50 | public float ambientR, ambientG, ambientB; 51 | public float specularR, specularG, specularB; 52 | public float emissiveR, emissiveG, emissiveB; 53 | public float shininess; 54 | 55 | public PFont textFont; 56 | public int textAlign; 57 | public int textAlignY; 58 | public int textMode; 59 | public float textSize; 60 | public float textLeading; 61 | } 62 | -------------------------------------------------------------------------------- /core/src/processing/xml/XMLParseException.java: -------------------------------------------------------------------------------- 1 | /* XMLParseException.java NanoXML/Java 2 | * 3 | * $Revision: 1.3 $ 4 | * $Date: 2002/01/04 21:03:29 $ 5 | * $Name: RELEASE_2_2_1 $ 6 | * 7 | * This file is part of NanoXML 2 for Java. 8 | * Copyright (C) 2000-2002 Marc De Scheemaecker, All Rights Reserved. 9 | * 10 | * This software is provided 'as-is', without any express or implied warranty. 11 | * In no event will the authors be held liable for any damages arising from the 12 | * use of this software. 13 | * 14 | * Permission is granted to anyone to use this software for any purpose, 15 | * including commercial applications, and to alter it and redistribute it 16 | * freely, subject to the following restrictions: 17 | * 18 | * 1. The origin of this software must not be misrepresented; you must not 19 | * claim that you wrote the original software. If you use this software in 20 | * a product, an acknowledgment in the product documentation would be 21 | * appreciated but is not required. 22 | * 23 | * 2. Altered source versions must be plainly marked as such, and must not be 24 | * misrepresented as being the original software. 25 | * 26 | * 3. This notice may not be removed or altered from any source distribution. 27 | */ 28 | 29 | package processing.xml; 30 | 31 | 32 | /** 33 | * An XMLParseException is thrown when the XML passed to the XML parser is not 34 | * well-formed. 35 | * 36 | * @author Marc De Scheemaecker 37 | * @version $Name: RELEASE_2_2_1 $, $Revision: 1.3 $ 38 | */ 39 | public class XMLParseException 40 | extends XMLException 41 | { 42 | 43 | /** 44 | * Creates a new exception. 45 | * 46 | * @param msg the message of the exception. 47 | */ 48 | public XMLParseException(String msg) 49 | { 50 | super(msg); 51 | } 52 | 53 | 54 | /** 55 | * Creates a new exception. 56 | * 57 | * @param systemID the system ID from where the data came 58 | * @param lineNr the line number in the XML data where the exception 59 | * occurred. 60 | * @param msg the message of the exception. 61 | */ 62 | public XMLParseException(String systemID, 63 | int lineNr, 64 | String msg) 65 | { 66 | super(systemID, lineNr, null, msg, true); 67 | } 68 | 69 | } 70 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/flash/debug.cfg: -------------------------------------------------------------------------------- 1 | # script for stm32 2 | 3 | interface ft2232 4 | ft2232_device_desc "Olimex OpenOCD JTAG" 5 | ft2232_layout olimex-jtag 6 | ft2232_vid_pid 0x15ba 0x0003 7 | 8 | if { [info exists CHIPNAME] } { 9 | set _CHIPNAME $CHIPNAME 10 | } else { 11 | set _CHIPNAME stm32 12 | } 13 | 14 | if { [info exists ENDIAN] } { 15 | set _ENDIAN $ENDIAN 16 | } else { 17 | set _ENDIAN little 18 | } 19 | 20 | # jtag speed 21 | jtag_khz 600 22 | 23 | #use combined on interfaces or targets that can't set TRST/SRST separately 24 | reset_config trst_and_srst 25 | 26 | #jtag scan chain 27 | if { [info exists CPUTAPID ] } { 28 | set _CPUTAPID $CPUTAPID 29 | } else { 30 | # See STM Document RM0008 31 | # Section 26.6.3 32 | set _CPUTAPID 0x3ba00477 33 | } 34 | jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID 35 | 36 | if { [info exists BSTAPID ] } { 37 | set _BSTAPID $BSTAPID 38 | } else { 39 | # See STM Document RM0008 40 | # Section 26.6.2 41 | # Medium Density RevA 42 | set _BSTAPID 0x06410041 43 | # Rev B and Rev Z 44 | set _BSTAPID 0x16410041 45 | # High Density Devices, Rev A 46 | #set _BSTAPID 0x06414041 47 | } 48 | jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID 49 | 50 | set _TARGETNAME [format "%s.cpu" $_CHIPNAME] 51 | target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME 52 | 53 | $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 0x5000 -work-area-backup 0 54 | #$_TARGETNAME configure -event halted halt_handle 55 | 56 | #flash bank stm32x 0 0 0 0 0 57 | 58 | 59 | #target create cortex_m3 -endian little 60 | #run_and_halt_time 0 30 61 | 62 | #working_area 0 0x20000000 0x4000 nobackup 63 | 64 | flash bank stm32x 0x08000000 0x00010000 0 0 0 65 | 66 | # For more information about the configuration files, take a look at: 67 | # openocd.texi 68 | 69 | #script flash.script 70 | 71 | proc halt_handle {} { 72 | resume 73 | } 74 | 75 | proc flash_test {} { 76 | puts "Entering DEBUG wait" 77 | sleep 100 78 | # reset run 79 | # sleep 500 80 | } 81 | 82 | init 83 | flash_test 84 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/flash/flash.cfg: -------------------------------------------------------------------------------- 1 | # script for stm32 2 | 3 | interface ft2232 4 | ft2232_device_desc "Olimex OpenOCD JTAG" 5 | ft2232_layout olimex-jtag 6 | ft2232_vid_pid 0x15ba 0x0003 7 | 8 | if { [info exists CHIPNAME] } { 9 | set _CHIPNAME $CHIPNAME 10 | } else { 11 | set _CHIPNAME stm32 12 | } 13 | 14 | if { [info exists ENDIAN] } { 15 | set _ENDIAN $ENDIAN 16 | } else { 17 | set _ENDIAN little 18 | } 19 | 20 | # jtag speed 21 | jtag_khz 600 22 | 23 | #use combined on interfaces or targets that can't set TRST/SRST separately 24 | reset_config trst_and_srst 25 | 26 | #jtag scan chain 27 | if { [info exists CPUTAPID ] } { 28 | set _CPUTAPID $CPUTAPID 29 | } else { 30 | # See STM Document RM0008 31 | # Section 26.6.3 32 | set _CPUTAPID 0x3ba00477 33 | } 34 | jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID 35 | 36 | if { [info exists BSTAPID ] } { 37 | set _BSTAPID $BSTAPID 38 | } else { 39 | # See STM Document RM0008 40 | # Section 26.6.2 41 | # Medium Density RevA 42 | set _BSTAPID 0x06410041 43 | # Rev B and Rev Z 44 | set _BSTAPID 0x16410041 45 | # High Density Devices, Rev A 46 | #set _BSTAPID 0x06414041 47 | } 48 | jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID 49 | 50 | set _TARGETNAME [format "%s.cpu" $_CHIPNAME] 51 | target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME 52 | 53 | $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 0x5000 -work-area-backup 0 54 | #$_TARGETNAME configure -event halted halt_handle 55 | 56 | #flash bank stm32x 0 0 0 0 0 57 | 58 | 59 | #target create cortex_m3 -endian little 60 | #run_and_halt_time 0 30 61 | 62 | #working_area 0 0x20000000 0x4000 nobackup 63 | 64 | flash bank stm32x 0x08000000 0x00010000 0 0 0 65 | 66 | # For more information about the configuration files, take a look at: 67 | # openocd.texi 68 | 69 | #script flash.script 70 | 71 | proc halt_handle {} { 72 | resume 73 | } 74 | 75 | proc flash_test {} { 76 | puts "Trying to flash" 77 | sleep 100 78 | halt 79 | sleep 300 80 | stm32x mass_erase 0 81 | sleep 20 82 | flash write_bank 0 tmpflash.bin 0 83 | sleep 50 84 | # reset run 85 | # sleep 500 86 | reset run 87 | shutdown 88 | } 89 | 90 | init 91 | flash_test 92 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/flash/openocd.cfg: -------------------------------------------------------------------------------- 1 | # script for stm32 2 | 3 | interface ft2232 4 | ft2232_device_desc "Olimex OpenOCD JTAG" 5 | ft2232_layout olimex-jtag 6 | ft2232_vid_pid 0x15ba 0x0003 7 | 8 | if { [info exists CHIPNAME] } { 9 | set _CHIPNAME $CHIPNAME 10 | } else { 11 | set _CHIPNAME stm32 12 | } 13 | 14 | if { [info exists ENDIAN] } { 15 | set _ENDIAN $ENDIAN 16 | } else { 17 | set _ENDIAN little 18 | } 19 | 20 | # jtag speed 21 | jtag_khz 500 22 | 23 | jtag_nsrst_delay 200 24 | jtag_ntrst_delay 200 25 | 26 | #use combined on interfaces or targets that can't set TRST/SRST separately 27 | reset_config trst_and_srst 28 | 29 | #jtag scan chain 30 | if { [info exists CPUTAPID ] } { 31 | set _CPUTAPID $CPUTAPID 32 | } else { 33 | # See STM Document RM0008 34 | # Section 26.6.3 35 | set _CPUTAPID 0x3ba00477 36 | } 37 | 38 | jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID 39 | 40 | if { [info exists BSTAPID ] } { 41 | set _BSTAPID $BSTAPID 42 | } else { 43 | # See STM Document RM0008 44 | # Section 26.6.2 45 | # Medium Density RevA 46 | set _BSTAPID 0x06410041 47 | # Rev B and Rev Z 48 | set _BSTAPID 0x16410041 49 | # High Density Devices, Rev A 50 | #set _BSTAPID 0x06414041 51 | } 52 | 53 | jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID 54 | 55 | set _TARGETNAME [format "%s.cpu" $_CHIPNAME] 56 | target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME 57 | 58 | $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 0x5000 -work-area-backup 0 59 | 60 | flash bank stm32x 0x08000000 0x00010000 0 0 0 61 | 62 | init 63 | 64 | halt 65 | sleep 1000 66 | stm32x unlock 0 67 | flash erase_sector 0 0 0 68 | sleep 1000 69 | flash write_bank 0 tmpflash.bin 0 70 | sleep 3000 71 | reset 72 | sleep 3000 73 | shutdown 74 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/flash/stm32.cfg: -------------------------------------------------------------------------------- 1 | # script for stm32 2 | 3 | interface ft2232 4 | ft2232_device_desc "Olimex OpenOCD JTAG" 5 | ft2232_layout olimex-jtag 6 | ft2232_vid_pid 0x15ba 0x0003 7 | 8 | if { [info exists CHIPNAME] } { 9 | set _CHIPNAME $CHIPNAME 10 | } else { 11 | set _CHIPNAME stm32 12 | } 13 | 14 | if { [info exists ENDIAN] } { 15 | set _ENDIAN $ENDIAN 16 | } else { 17 | set _ENDIAN little 18 | } 19 | 20 | # jtag speed 21 | jtag_khz 500 22 | 23 | jtag_nsrst_delay 100 24 | jtag_ntrst_delay 100 25 | 26 | #use combined on interfaces or targets that can't set TRST/SRST separately 27 | reset_config trst_and_srst 28 | 29 | #jtag scan chain 30 | if { [info exists CPUTAPID ] } { 31 | set _CPUTAPID $CPUTAPID 32 | } else { 33 | # See STM Document RM0008 34 | # Section 26.6.3 35 | set _CPUTAPID 0x3ba00477 36 | } 37 | jtag newtap $_CHIPNAME cpu -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_CPUTAPID 38 | 39 | if { [info exists BSTAPID ] } { 40 | set _BSTAPID $BSTAPID 41 | } else { 42 | # See STM Document RM0008 43 | # Section 26.6.2 44 | # Medium Density RevA 45 | set _BSTAPID 0x06410041 46 | # Rev B and Rev Z 47 | set _BSTAPID 0x16410041 48 | # High Density Devices, Rev A 49 | #set _BSTAPID 0x06414041 50 | } 51 | jtag newtap $_CHIPNAME bs -irlen 5 -ircapture 0x1 -irmask 0x1 -expected-id $_BSTAPID 52 | 53 | set _TARGETNAME [format "%s.cpu" $_CHIPNAME] 54 | target create $_TARGETNAME cortex_m3 -endian $_ENDIAN -chain-position $_TARGETNAME 55 | 56 | $_TARGETNAME configure -work-area-virt 0 -work-area-phys 0x20000000 -work-area-size 16384 -work-area-backup 0 57 | 58 | #flash bank stm32x 0 0 0 0 0 59 | 60 | 61 | target create cortex_m3 -endian little 62 | #run_and_halt_time 0 30 63 | 64 | #working_area 0 0x20000000 0x4000 nobackup 65 | 66 | #flash bank stm32x 0x08000000 0x00010000 0 0 0 67 | reset 68 | sleep 3000 69 | shutdown 70 | # For more information about the configuration files, take a look at: 71 | # openocd.texi 72 | 73 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/main.c: -------------------------------------------------------------------------------- 1 | #include "maple_lib.h" 2 | 3 | /* overflow the weak definition in c_only_startup.c */ 4 | void USB_LP_CAN1_RX0_IRQHandler(void) { 5 | usbISTR(); 6 | } 7 | 8 | void NMI_Handler(void) { 9 | while (1) { 10 | strobePin(GPIOA,5,50,0x40000); 11 | strobePin(GPIOA,5,1,0xF0000); 12 | } 13 | } 14 | 15 | void HardFault_Handler(void) { 16 | while (1) { 17 | strobePin(GPIOA,5,50,0x40000); 18 | strobePin(GPIOA,5,2,0xF0000); 19 | } 20 | } 21 | 22 | void MemManage_Handler(void) { 23 | while (1) { 24 | strobePin(GPIOA,5,50,0x40000); 25 | strobePin(GPIOA,5,3,0xF0000); 26 | } 27 | } 28 | 29 | void BusFault_Handler(void) { 30 | while (1) { 31 | strobePin(GPIOA,5,50,0x40000); 32 | strobePin(GPIOA,5,4,0xF0000); 33 | } 34 | } 35 | 36 | void UsageFault_Handler(void) { 37 | while (1) { 38 | strobePin(GPIOA,5,50,0x40000); 39 | strobePin(GPIOA,5,5,0xF0000); 40 | } 41 | } 42 | 43 | int main (void) { 44 | systemReset(); 45 | setupCLK(); 46 | setupLED(); 47 | setupUSB(); 48 | 49 | strobePin (GPIOA,5,5,0x50000); /* start indicator */ 50 | 51 | if (checkUserCode(USER_CODE_RAM)) { 52 | jumpToUser(USER_CODE_RAM); 53 | } 54 | 55 | while (1) { 56 | /* hack to perform the dfu write operation AFTER weve responded 57 | to the host on the bus */ 58 | if (copyLock) { 59 | dfuCopyBufferToExec(); 60 | copyLock = FALSE; 61 | dfuAppStatus.bwPollTimeout0 = 0x00; 62 | dfuAppStatus.bState = dfuDNLOAD_SYNC; 63 | } 64 | } 65 | 66 | } 67 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/maple_lib.h: -------------------------------------------------------------------------------- 1 | #ifndef __MAPLE_LIB_H 2 | #define __MAPLE_LIB_H 3 | 4 | /* ST Libs (stripped) */ 5 | #include "stm32f10x_type.h" /* defines simple types (u32, vu16, etc) */ 6 | #include "cortexm3_macro.h" /* provides asm instruction macros */ 7 | #include "usb_lib.h" 8 | 9 | /* Local Includes */ 10 | #include "maple_usb.h" 11 | #include "maple_dfu.h" 12 | #include "maple_regs.h" 13 | 14 | 15 | /* any global setting macros */ 16 | #define F_SUSPEND_ENABLED 1 17 | #define USER_CODE_RAM ((u32)0x20000C00) 18 | #define USER_CODE_FLASH ((u32)0x08005000) 19 | 20 | /* exposed library structs */ 21 | typedef struct { 22 | vu32 ISER[2]; 23 | u32 RESERVED0[30]; 24 | vu32 ICER[2]; 25 | u32 RSERVED1[30]; 26 | vu32 ISPR[2]; 27 | u32 RESERVED2[30]; 28 | vu32 ICPR[2]; 29 | u32 RESERVED3[30]; 30 | vu32 IABR[2]; 31 | u32 RESERVED4[62]; 32 | vu32 IPR[15]; 33 | } NVIC_TypeDef; 34 | 35 | typedef struct { 36 | u8 NVIC_IRQChannel; 37 | u8 NVIC_IRQChannelPreemptionPriority; 38 | u8 NVIC_IRQChannelSubPriority; 39 | bool NVIC_IRQChannelCmd; /* TRUE for enable */ 40 | } NVIC_InitTypeDef; 41 | 42 | typedef struct { 43 | vuc32 CPUID; 44 | vu32 ICSR; 45 | vu32 VTOR; 46 | vu32 AIRCR; 47 | vu32 SCR; 48 | vu32 CCR; 49 | vu32 SHPR[3]; 50 | vu32 SHCSR; 51 | vu32 CFSR; 52 | vu32 HFSR; 53 | vu32 DFSR; 54 | vu32 MMFAR; 55 | vu32 BFAR; 56 | vu32 AFSR; 57 | } SCB_TypeDef; 58 | 59 | void setPin (u32 bank, u8 pin); 60 | void resetPin (u32 bank, u8 pin); 61 | void strobePin (u32 bank, u8 pin, u8 count, u32 rate); 62 | void strobeCode (u32 bank, u8 pin, u8 val); 63 | 64 | void systemHardReset(void); 65 | void systemReset (void); 66 | void setupCLK (void); 67 | void setupUSB (void); 68 | void setupLED (void); 69 | void setupFLASH (void); 70 | void setupTimer (void); 71 | bool checkUserCode (u32 usrAddr); 72 | void jumpToUser (u32 usrAddr); 73 | 74 | bool flashWriteWord (u32 addr, u32 word); 75 | bool flashErasePage (u32 addr); 76 | void flashLock (void); 77 | 78 | void nvicInit(NVIC_InitTypeDef*); 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | #endif 87 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/maple_usb_desc.h: -------------------------------------------------------------------------------- 1 | #ifndef __MAPLE_USB_DESC_H 2 | #define __MAPLE_USB_DESC_H 3 | 4 | #include "maple_usb.h" 5 | 6 | extern ONE_DESCRIPTOR usbDeviceDescriptor; 7 | extern ONE_DESCRIPTOR usbConfigDescriptor; 8 | extern ONE_DESCRIPTOR usbStringDescriptor[6]; 9 | extern ONE_DESCRIPTOR usbFunctionalDescriptor; 10 | 11 | #endif 12 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/stm32_lib/cortexm3_macro.h: -------------------------------------------------------------------------------- 1 | /******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** 2 | * File Name : cortexm3_macro.h 3 | * Author : MCD Application Team 4 | * Version : V2.0.3 5 | * Date : 09/22/2008 6 | * Description : Header file for cortexm3_macro.s. 7 | ******************************************************************************** 8 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 9 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. 10 | * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, 11 | * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE 12 | * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING 13 | * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 14 | *******************************************************************************/ 15 | 16 | /* Define to prevent recursive inclusion -------------------------------------*/ 17 | #ifndef __CORTEXM3_MACRO_H 18 | #define __CORTEXM3_MACRO_H 19 | 20 | /* Includes ------------------------------------------------------------------*/ 21 | #include "stm32f10x_type.h" 22 | 23 | /* Exported types ------------------------------------------------------------*/ 24 | /* Exported constants --------------------------------------------------------*/ 25 | /* Exported macro ------------------------------------------------------------*/ 26 | /* Exported functions ------------------------------------------------------- */ 27 | void __WFI(void); 28 | void __WFE(void); 29 | void __SEV(void); 30 | void __ISB(void); 31 | void __DSB(void); 32 | void __DMB(void); 33 | void __SVC(void); 34 | u32 __MRS_CONTROL(void); 35 | void __MSR_CONTROL(u32 Control); 36 | u32 __MRS_PSP(void); 37 | void __MSR_PSP(u32 TopOfProcessStack); 38 | u32 __MRS_MSP(void); 39 | void __MSR_MSP(u32 TopOfMainStack); 40 | void __RESETPRIMASK(void); 41 | void __SETPRIMASK(void); 42 | u32 __READ_PRIMASK(void); 43 | void __RESETFAULTMASK(void); 44 | void __SETFAULTMASK(void); 45 | u32 __READ_FAULTMASK(void); 46 | void __BASEPRICONFIG(u32 NewPriority); 47 | u32 __GetBASEPRI(void); 48 | u16 __REV_HalfWord(u16 Data); 49 | u32 __REV_Word(u32 Data); 50 | 51 | #endif /* __CORTEXM3_MACRO_H */ 52 | 53 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 54 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/usb_lib/usb_int.h: -------------------------------------------------------------------------------- 1 | /******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** 2 | * File Name : usb_int.h 3 | * Author : MCD Application Team 4 | * Version : V2.2.1 5 | * Date : 09/22/2008 6 | * Description : Endpoint CTR (Low and High) interrupt's service routines 7 | * prototypes 8 | ******************************************************************************** 9 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 10 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. 11 | * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, 12 | * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE 13 | * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING 14 | * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 15 | *******************************************************************************/ 16 | 17 | /* Define to prevent recursive inclusion -------------------------------------*/ 18 | #ifndef __USB_INT_H 19 | #define __USB_INT_H 20 | 21 | /* Includes ------------------------------------------------------------------*/ 22 | /* Exported types ------------------------------------------------------------*/ 23 | /* Exported constants --------------------------------------------------------*/ 24 | /* Exported macro ------------------------------------------------------------*/ 25 | /* Exported functions ------------------------------------------------------- */ 26 | void CTR_LP(void); 27 | void CTR_HP(void); 28 | 29 | /* External variables --------------------------------------------------------*/ 30 | 31 | #endif /* __USB_INT_H */ 32 | 33 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 34 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/usb_lib/usb_lib.h: -------------------------------------------------------------------------------- 1 | /******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** 2 | * File Name : usb_lib.h 3 | * Author : MCD Application Team 4 | * Version : V2.2.1 5 | * Date : 09/22/2008 6 | * Description : USB library include files 7 | ******************************************************************************** 8 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 9 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. 10 | * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, 11 | * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE 12 | * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING 13 | * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 14 | *******************************************************************************/ 15 | 16 | /* Define to prevent recursive inclusion -------------------------------------*/ 17 | #ifndef __USB_LIB_H 18 | #define __USB_LIB_H 19 | 20 | /* Includes ------------------------------------------------------------------*/ 21 | #include "usb_type.h" 22 | #include "usb_regs.h" 23 | #include "usb_def.h" 24 | #include "usb_core.h" 25 | #include "usb_init.h" 26 | #include "usb_mem.h" 27 | #include "usb_int.h" 28 | 29 | /* Exported types ------------------------------------------------------------*/ 30 | /* Exported constants --------------------------------------------------------*/ 31 | /* Exported macro ------------------------------------------------------------*/ 32 | /* Exported functions ------------------------------------------------------- */ 33 | /* External variables --------------------------------------------------------*/ 34 | 35 | #endif /* __USB_LIB_H */ 36 | 37 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 38 | -------------------------------------------------------------------------------- /hardware/leaflabs/bootloaders/maple/usb_lib/usb_mem.h: -------------------------------------------------------------------------------- 1 | /******************** (C) COPYRIGHT 2008 STMicroelectronics ******************** 2 | * File Name : usb_mem.h 3 | * Author : MCD Application Team 4 | * Version : V2.2.1 5 | * Date : 09/22/2008 6 | * Description : Utility prototypes functions for memory/PMA transfers 7 | ******************************************************************************** 8 | * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS 9 | * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME. 10 | * AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, 11 | * INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE 12 | * CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING 13 | * INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. 14 | *******************************************************************************/ 15 | 16 | /* Define to prevent recursive inclusion -------------------------------------*/ 17 | #ifndef __USB_MEM_H 18 | #define __USB_MEM_H 19 | 20 | /* Includes ------------------------------------------------------------------*/ 21 | /* Exported types ------------------------------------------------------------*/ 22 | /* Exported constants --------------------------------------------------------*/ 23 | /* Exported macro ------------------------------------------------------------*/ 24 | /* Exported functions ------------------------------------------------------- */ 25 | void UserToPMABufferCopy(u8 *pbUsrBuf, u16 wPMABufAddr, u16 wNBytes); 26 | void PMAToUserBufferCopy(u8 *pbUsrBuf, u16 wPMABufAddr, u16 wNBytes); 27 | 28 | /* External variables --------------------------------------------------------*/ 29 | 30 | #endif /*__USB_MEM_H*/ 31 | 32 | /******************* (C) COPYRIGHT 2008 STMicroelectronics *****END OF FILE****/ 33 | -------------------------------------------------------------------------------- /hardware/leaflabs/cores/maple/.gitignore: -------------------------------------------------------------------------------- 1 | # This is the directory which contains the flattened libmaple source 2 | # tree. Ignore these source files. 3 | 4 | *.h 5 | *.c 6 | *.cpp 7 | *.ld 8 | *.a 9 | *.cxx 10 | *.S 11 | *.inc 12 | LICENSE 13 | -------------------------------------------------------------------------------- /hardware/leaflabs/programmers.txt: -------------------------------------------------------------------------------- 1 | # we don't actually have any programmers implemented... 2 | -------------------------------------------------------------------------------- /libraries/.gitignore: -------------------------------------------------------------------------------- 1 | */ 2 | -------------------------------------------------------------------------------- /libraries/README: -------------------------------------------------------------------------------- 1 | This directory contains the stable libraries that are shipped with the 2 | Maple IDE. 3 | 4 | DO NOT DEVELOP LIBRARIES HERE! DO IT IN A LIBMAPLE BRANCH, THEN COPY 5 | THE FINAL VERSION AT IDE RELEASE TIME. 6 | 7 | In the past, we did our library development in the IDE repo. However, 8 | that blocks people who don't use the IDE from convenient access to the 9 | extra libraries. 10 | 11 | To resolve this issue, all library development now takes place on 12 | libmaple branches. Final versions are added to this repository as IDE 13 | releases happen. 14 | -------------------------------------------------------------------------------- /version.txt: -------------------------------------------------------------------------------- 1 | custom-build 2 | 3 | --------------------------------------------------------------------------------