summaryrefslogtreecommitdiffstats
path: root/src/data
diff options
context:
space:
mode:
Diffstat (limited to 'src/data')
-rw-r--r--src/data/Makefile.am17
-rw-r--r--src/data/app_data/Makefile.am9
-rw-r--r--src/data/app_data/hexeditorpartui.rc21
-rw-r--r--src/data/app_data/hi16-app-piklab.pngbin0 -> 220 bytes
-rw-r--r--src/data/app_data/hi32-app-piklab.pngbin0 -> 861 bytes
-rw-r--r--src/data/app_data/hi32-mime-piklab_project.pngbin0 -> 861 bytes
-rw-r--r--src/data/app_data/hi64-app-piklab.pngbin0 -> 9976 bytes
-rw-r--r--src/data/app_data/piklab.desktop13
-rw-r--r--src/data/app_data/piklabui.rc203
-rw-r--r--src/data/app_data/x-piklab.desktop8
-rw-r--r--src/data/coff-c-pic.xml127
-rw-r--r--src/data/hi16-action-piklab_addcurrentfile.pngbin0 -> 748 bytes
-rw-r--r--src/data/hi16-action-piklab_addfile.pngbin0 -> 657 bytes
-rw-r--r--src/data/hi16-action-piklab_blankcheck.pngbin0 -> 499 bytes
-rw-r--r--src/data/hi16-action-piklab_burnchip.pngbin0 -> 844 bytes
-rw-r--r--src/data/hi16-action-piklab_chip.pngbin0 -> 796 bytes
-rw-r--r--src/data/hi16-action-piklab_closeproject.pngbin0 -> 715 bytes
-rw-r--r--src/data/hi16-action-piklab_compile.pngbin0 -> 832 bytes
-rw-r--r--src/data/hi16-action-piklab_createproject.pngbin0 -> 722 bytes
-rw-r--r--src/data/hi16-action-piklab_decompile.pngbin0 -> 854 bytes
-rw-r--r--src/data/hi16-action-piklab_editproject.pngbin0 -> 515 bytes
-rw-r--r--src/data/hi16-action-piklab_erasechip.pngbin0 -> 808 bytes
-rw-r--r--src/data/hi16-action-piklab_find_next.pngbin0 -> 254 bytes
-rw-r--r--src/data/hi16-action-piklab_find_previous.pngbin0 -> 286 bytes
-rw-r--r--src/data/hi16-action-piklab_openproject.pngbin0 -> 554 bytes
-rw-r--r--src/data/hi16-action-piklab_readchip.pngbin0 -> 884 bytes
-rw-r--r--src/data/hi16-action-piklab_verifychip.pngbin0 -> 821 bytes
-rw-r--r--src/data/hi22-action-piklab_addcurrentfile.pngbin0 -> 753 bytes
-rw-r--r--src/data/hi22-action-piklab_addfile.pngbin0 -> 613 bytes
-rw-r--r--src/data/hi22-action-piklab_blankcheck.pngbin0 -> 621 bytes
-rw-r--r--src/data/hi22-action-piklab_breakpoint_active.pngbin0 -> 1329 bytes
-rw-r--r--src/data/hi22-action-piklab_breakpoint_disabled.pngbin0 -> 1117 bytes
-rw-r--r--src/data/hi22-action-piklab_breakpoint_invalid.pngbin0 -> 1003 bytes
-rw-r--r--src/data/hi22-action-piklab_breakpoint_reached.pngbin0 -> 1190 bytes
-rw-r--r--src/data/hi22-action-piklab_burnchip.pngbin0 -> 1047 bytes
-rw-r--r--src/data/hi22-action-piklab_chip.pngbin0 -> 1058 bytes
-rw-r--r--src/data/hi22-action-piklab_closeproject.pngbin0 -> 1049 bytes
-rw-r--r--src/data/hi22-action-piklab_compile.pngbin0 -> 871 bytes
-rw-r--r--src/data/hi22-action-piklab_createproject.pngbin0 -> 689 bytes
-rw-r--r--src/data/hi22-action-piklab_debug_step.pngbin0 -> 236 bytes
-rw-r--r--src/data/hi22-action-piklab_debug_stepin.pngbin0 -> 181 bytes
-rw-r--r--src/data/hi22-action-piklab_debug_stepout.pngbin0 -> 203 bytes
-rw-r--r--src/data/hi22-action-piklab_debug_stepover.pngbin0 -> 186 bytes
-rw-r--r--src/data/hi22-action-piklab_debughalt.pngbin0 -> 1190 bytes
-rw-r--r--src/data/hi22-action-piklab_decompile.pngbin0 -> 884 bytes
-rw-r--r--src/data/hi22-action-piklab_editproject.pngbin0 -> 446 bytes
-rw-r--r--src/data/hi22-action-piklab_erasechip.pngbin0 -> 1060 bytes
-rw-r--r--src/data/hi22-action-piklab_find_next.pngbin0 -> 402 bytes
-rw-r--r--src/data/hi22-action-piklab_find_previous.pngbin0 -> 416 bytes
-rw-r--r--src/data/hi22-action-piklab_openproject.pngbin0 -> 728 bytes
-rw-r--r--src/data/hi22-action-piklab_power.pngbin0 -> 1315 bytes
-rw-r--r--src/data/hi22-action-piklab_program_counter.pngbin0 -> 1278 bytes
-rw-r--r--src/data/hi22-action-piklab_program_counter_disabled.pngbin0 -> 733 bytes
-rw-r--r--src/data/hi22-action-piklab_readchip.pngbin0 -> 1063 bytes
-rw-r--r--src/data/hi22-action-piklab_restart.pngbin0 -> 1419 bytes
-rw-r--r--src/data/hi22-action-piklab_run.pngbin0 -> 1262 bytes
-rw-r--r--src/data/hi22-action-piklab_stop.pngbin0 -> 1121 bytes
-rw-r--r--src/data/hi22-action-piklab_verifychip.pngbin0 -> 1055 bytes
-rw-r--r--src/data/hi32-action-piklab_config_assembler.pngbin0 -> 2258 bytes
-rw-r--r--src/data/hi32-action-piklab_config_disassembler.pngbin0 -> 2346 bytes
-rw-r--r--src/data/hi32-action-piklab_config_programmer.pngbin0 -> 861 bytes
-rw-r--r--src/data/jal-pic.xml104
-rw-r--r--src/data/likeback/Makefile.am2
-rw-r--r--src/data/likeback/cr16-action-likeback_dislike.pngbin0 -> 824 bytes
-rw-r--r--src/data/likeback/cr16-action-likeback_like.pngbin0 -> 846 bytes
-rw-r--r--src/data/likeback/hi16-action-likeback_bug.pngbin0 -> 1106 bytes
-rw-r--r--src/data/syntax_xml_generator.cpp231
-rw-r--r--src/data/xpms/csourcefile.xpm24
-rw-r--r--src/data/xpms/includefile.xpm25
-rw-r--r--src/data/xpms/objectfile.xpm24
-rw-r--r--src/data/xpms/project.xpm29
-rw-r--r--src/data/xpms/sourcefile.xpm24
72 files changed, 861 insertions, 0 deletions
diff --git a/src/data/Makefile.am b/src/data/Makefile.am
new file mode 100644
index 0000000..e900930
--- /dev/null
+++ b/src/data/Makefile.am
@@ -0,0 +1,17 @@
+INCLUDES = $(all_includes)
+SUBDIRS = app_data likeback
+
+piklabdir = $(kde_datadir)/piklab/icons
+piklab_ICON = AUTO
+
+syntaxkatedir = $(kde_datadir)/katepart/syntax
+syntaxkate_DATA = asm-pic.xml coff-pic.xml jal-pic.xml coff-c-pic.xml
+
+noinst_PROGRAMS = syntax_xml_generator
+syntax_xml_generator_SOURCES = syntax_xml_generator.cpp
+syntax_xml_generator_LDADD = $(LIB_QT)
+syntax_xml_generator_LDFLAGS = $(all_libraries)
+
+asm-pic.xml coff-pic.xml: syntax_xml_generator
+ ./syntax_xml_generator
+CLEANFILES = asm-pic.xml coff-pic.xml
diff --git a/src/data/app_data/Makefile.am b/src/data/app_data/Makefile.am
new file mode 100644
index 0000000..61959e6
--- /dev/null
+++ b/src/data/app_data/Makefile.am
@@ -0,0 +1,9 @@
+xdg_apps_DATA = piklab.desktop
+
+rcdir = $(kde_datadir)/piklab
+rc_DATA = piklabui.rc hexeditorpartui.rc
+
+KDE_ICON = AUTO
+
+mimedir = $(kde_mimedir)/application
+mime_DATA = x-piklab.desktop
diff --git a/src/data/app_data/hexeditorpartui.rc b/src/data/app_data/hexeditorpartui.rc
new file mode 100644
index 0000000..5471b03
--- /dev/null
+++ b/src/data/app_data/hexeditorpartui.rc
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
+<kpartgui name="HexEditorPart" version="1">
+
+<MenuBar>
+ <Menu name="file" noMerge="1"><text>&amp;File</text>
+ <Action name="file_save" group="save_merge" />
+ <Action name="file_save_as" group="save_merge" />
+ <Action name="file_reload" group="revert_merge" />
+ </Menu>
+
+ <Menu name="tools" noMerge="1"><text>&amp;Tools</text>
+ <Action name="tools_toggle_write_lock" group="tools_operations" />
+ </Menu>
+</MenuBar>
+
+<ToolBar name="mainToolBar" noMerge="1"><text>Main Toolbar</text>
+ <Action name="file_save" group="file_operations" />
+ <Action name="file_save_as" group="file_operations" />
+</ToolBar>
+</kpartgui>
diff --git a/src/data/app_data/hi16-app-piklab.png b/src/data/app_data/hi16-app-piklab.png
new file mode 100644
index 0000000..05baea4
--- /dev/null
+++ b/src/data/app_data/hi16-app-piklab.png
Binary files differ
diff --git a/src/data/app_data/hi32-app-piklab.png b/src/data/app_data/hi32-app-piklab.png
new file mode 100644
index 0000000..586e094
--- /dev/null
+++ b/src/data/app_data/hi32-app-piklab.png
Binary files differ
diff --git a/src/data/app_data/hi32-mime-piklab_project.png b/src/data/app_data/hi32-mime-piklab_project.png
new file mode 100644
index 0000000..586e094
--- /dev/null
+++ b/src/data/app_data/hi32-mime-piklab_project.png
Binary files differ
diff --git a/src/data/app_data/hi64-app-piklab.png b/src/data/app_data/hi64-app-piklab.png
new file mode 100644
index 0000000..7b1bf37
--- /dev/null
+++ b/src/data/app_data/hi64-app-piklab.png
Binary files differ
diff --git a/src/data/app_data/piklab.desktop b/src/data/app_data/piklab.desktop
new file mode 100644
index 0000000..e2f8145
--- /dev/null
+++ b/src/data/app_data/piklab.desktop
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Type=Application
+Exec=piklab %U
+Icon=piklab.png
+X-DocPath=piklab/index.html
+Categories=Qt;KDE;Development;IDE;Electronics;
+Comment=Integrated development environment for applications based on PIC microcontrollers.
+Comment[fr]=Environnement de développement intégré pour applications utilisant des microcontroleurs PIC.
+Comment[es]=Entorno integrado de desarrollo de aplicaciones basadas en microcontroladores PIC.
+Terminal=false
+Name=Piklab
+GenericName=IDE
+MimeType=text/x-hex;application/x-piklab
diff --git a/src/data/app_data/piklabui.rc b/src/data/app_data/piklabui.rc
new file mode 100644
index 0000000..b6c4845
--- /dev/null
+++ b/src/data/app_data/piklabui.rc
@@ -0,0 +1,203 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
+<kpartgui name="piklab" version="45">
+
+<MenuBar>
+ <Menu name="file" noMerge="1"><text>&amp;File</text>
+ <Action name="file_new"/>
+ <Action name="file_new_hex"/>
+ <DefineGroup name="new_merge"/>
+ <Separator/>
+ <Action name="file_open"/>
+ <Action name="file_open_recent"/>
+ <DefineGroup name="open_merge"/>
+ <Separator/>
+ <DefineGroup name="save_merge"/>
+ <Action name="file_save_all"/>
+ <Separator/>
+ <Action name="file_revert_all"/>
+ <DefineGroup name="revert_merge"/>
+ <Separator/>
+ <DefineGroup name="print_merge"/>
+ <Merge/>
+ <Action name="file_close"/>
+ <Action name="file_close_all"/>
+ <Action name="file_closeother"/>
+ <DefineGroup name="close_merge"/>
+ <Separator/>
+ <Action name="file_quit"/>
+ </Menu>
+ <Menu name="edit"><text>&amp;Edit</text>
+ <DefineGroup name="edit_undo_merge"/>
+ <Separator/>
+ <DefineGroup name="edit_paste_merge"/>
+ <Separator/>
+ <DefineGroup name="edit_select_merge"/>
+ <Separator/>
+ <DefineGroup name="edit_find_merge"/>
+ <DefineGroup name="kdev_edit_find_merge"/>
+ <Separator/>
+ <DefineGroup name="edit_astyle"/>
+ <Separator/>
+ <Merge/>
+ </Menu>
+ <Menu name="view"><text>&amp;View</text>
+ <Action name="view_split_view" />
+ <Action name="view_remove_view" />
+ <DefineGroup name="history_operations"/>
+ <Action name="history_back"/>
+ <Action name="history_forward"/>
+ <Action name="file_switchto"/>
+ <Action name="raise_editor"/>
+ <Separator/>
+ <DefineGroup name="error_operations"/>
+ <Separator/>
+ <Action name="view_tool_views" />
+ <Action name="view_switch_source"/>
+ <Action name="show_disassembly_location"/>
+ <Merge/>
+ <Separator/>
+ <DefineGroup name="view_operations"/>
+ </Menu>
+ <Merge/>
+ <Menu name="project"><text>&amp;Project</text>
+ <Action name="project_new" />
+ <Action name="project_open" />
+ <Action name="project_open_recent" />
+ <Separator/>
+ <Action name="project_options" />
+ <Separator/>
+ <Action name="project_add_source_file" />
+ <Action name="project_add_object_file" />
+ <Action name="project_add_current_file" />
+ <Separator/>
+ <Action name="project_close" />
+ </Menu>
+ <Menu name="build"><text>Bu&amp;ild</text>
+ <Action name="build_compile_file" />
+ <Action name="build_build_project" />
+ <Action name="build_clean" />
+ <Separator/>
+ <Action name="build_stop" />
+ </Menu>
+ <Menu name="prog"><text>Pr&amp;ogrammer</text>
+ <Action name="prog_connect" />
+ <Action name="prog_power" />
+ <Action name="prog_disconnect" />
+ <Separator />
+ <Action name="prog_program" />
+ <Action name="prog_verify" />
+ <Action name="prog_read" />
+ <Action name="prog_erase" />
+ <Action name="prog_blank_check" />
+ <Separator />
+ <Action name="prog_run" />
+ <Action name="prog_stop" />
+ <Action name="prog_restart" />
+ <Separator />
+ <Action name="prog_advanced" />
+ <Action name="prog_settings" />
+ </Menu>
+ <Menu name="debug"><text>&amp;Debugger</text>
+ <Action name="debug_start" />
+ <Action name="debug_run" />
+ <Action name="debug_next" />
+ <Action name="debug_step_in" />
+ <Action name="debug_step_out" />
+ <Action name="debug_halt" />
+ <Action name="debug_stop" />
+ <Action name="debug_reset" />
+ <Separator />
+ <action name="debug_show_pc" />
+ <action name="debug_clear_breakpoints" />
+ <Separator />
+ <Action name="debug_settings" />
+ </Menu>
+ <Menu name="tools"><text>&amp;Tools</text>
+ <Action name="tools_pikloops" />
+ <Action name="tools_kfind" />
+ <Action name="tools_device_information" />
+ <Action name="tools_config_generator" />
+ <DefineGroup name="tools_project_operations"/>
+ <Separator/>
+ <DefineGroup name="tools_operations"/>
+ <Separator/>
+ <DefineGroup name="tools_file_operations"/>
+ <Separator/>
+ <DefineGroup name="tools_language_operations"/>
+ <Merge/>
+ </Menu>
+ <Menu name="settings"><text>&amp;Settings</text>
+ <Action name="options_configure_toolchains" append="configure_merge" />
+ </Menu>
+ <Menu name="help" noMerge="1"><text>&amp;Help</text>
+ <Action name="help_contents"/>
+ <Action name="help_whats_this"/>
+ <Separator/>
+ <Action name="help_report_bug_piklab"/>
+ <Separator/>
+ <MergeLocal name="about_merge"/>
+ <Action name="help_about_app"/>
+ <Action name="help_about_kde"/>
+ </Menu>
+</MenuBar>
+
+<ToolBar name="projectToolBar" hidden="true"><text>Project Toolbar</text>
+ <Action name="project_new" />
+ <Action name="project_open_source" />
+ <Separator />
+ <Action name="project_options" />
+ <Action name="project_close" />
+ <Separator />
+ <Action name="project_add_current_file" />
+</ToolBar>
+
+<ToolBar name="buildToolBar"><text>Build Toolbar</text>
+ <Action name="build_build_project" />
+ <Action name="build_clean" />
+ <Action name="build_stop" />
+</ToolBar>
+
+<ToolBar name="progToolBar"><text>Programmer Toolbar</text>
+ <Action name="prog_connect" />
+ <Action name="prog_power" />
+ <Action name="prog_disconnect" />
+ <Separator />
+ <Action name="prog_program" />
+ <Action name="prog_verify" />
+ <Action name="prog_read" />
+ <Action name="prog_erase" />
+ <Action name="prog_blank_check" />
+ <Separator />
+ <Action name="prog_run" />
+ <Action name="prog_stop" />
+ <Action name="prog_restart" />
+</ToolBar>
+
+<ToolBar name="debugToolBar"><text>Debugger Toolbar</text>
+ <Action name="debug_start" />
+ <Action name="debug_run" />
+ <Action name="debug_next" />
+ <Action name="debug_step_in" />
+ <Action name="debug_step_out" />
+ <Action name="debug_halt" />
+ <Action name="debug_stop" />
+ <Action name="debug_reset" />
+</ToolBar>
+
+<Menu name="ktexteditor_popup">
+ <Action name="enable_breakpoint" />
+ <Action name="toggle_breakpoint" />
+ <Action name="clear_breakpoints" />
+ <Separator />
+ <Action name="show_disassembly_location" />
+ <Separator />
+</Menu>
+
+<Menu name="breakpoint_context_menu">
+ <Action name="enable_breakpoint" />
+ <Action name="toggle_breakpoint" />
+ <Action name="clear_breakpoints" />
+</Menu>
+
+</kpartgui>
diff --git a/src/data/app_data/x-piklab.desktop b/src/data/app_data/x-piklab.desktop
new file mode 100644
index 0000000..de7e510
--- /dev/null
+++ b/src/data/app_data/x-piklab.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Piklab
+Comment=Piklab Project File
+Comment[es]=Archivo de proyecto de Piklab
+Icon=piklab_project
+Type=MimeType
+MimeType=application/x-piklab
+Patterns=*.piklab;
diff --git a/src/data/coff-c-pic.xml b/src/data/coff-c-pic.xml
new file mode 100644
index 0000000..2090c02
--- /dev/null
+++ b/src/data/coff-c-pic.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<!-- modification of the C highlighting from the KDE distribution for single line disassembly listing -->
+<language name="XCoffDissC" version="1.0" kateversion="2.4" section="Sources" extensions="*.c;*.C;*.h" mimetype="text/x-csrc;text/x-c++src;text/x-chdr">
+ <highlighting>
+ <list name="keywords">
+ <item> break </item>
+ <item> case </item>
+ <item> continue </item>
+ <item> default </item>
+ <item> do </item>
+ <item> else </item>
+ <item> enum </item>
+ <item> extern </item>
+ <item> for </item>
+ <item> goto </item>
+ <item> if </item>
+ <item> return </item>
+ <item> sizeof </item>
+ <item> struct </item>
+ <item> switch </item>
+ <item> typedef </item>
+ <item> union </item>
+ <item> while </item>
+ </list>
+ <list name="types">
+ <item> auto </item>
+ <item> char </item>
+ <item> const </item>
+ <item> double </item>
+ <item> float </item>
+ <item> int </item>
+ <item> long </item>
+ <item> register </item>
+ <item> short </item>
+ <item> signed </item>
+ <item> static </item>
+ <item> unsigned </item>
+ <item> void </item>
+ <item> volatile </item>
+ </list>
+ <contexts>
+ <context attribute="Normal Text" lineEndContext="#stay" name="Normal">
+ <DetectSpaces />
+ <DetectChar attribute="Preprocessor" context="Preprocessor" char="#" firstNonSpace="true" />
+ <keyword attribute="Keyword" context="#stay" String="keywords"/>
+ <keyword attribute="Data Type" context="#stay" String="types"/>
+ <DetectIdentifier />
+ <DetectChar attribute="Symbol" context="#stay" char="{" />
+ <DetectChar attribute="Symbol" context="#stay" char="}" />
+ <Float attribute="Float" context="#stay">
+ <AnyChar String="fF" attribute="Float" context="#stay"/>
+ </Float>
+ <HlCOct attribute="Octal" context="#stay"/>
+ <HlCHex attribute="Hex" context="#stay"/>
+ <Int attribute="Decimal" context="#stay" >
+ <StringDetect attribute="Decimal" context="#stay" String="ULL" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="LUL" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="LLU" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="UL" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="LU" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="LL" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="U" insensitive="TRUE"/>
+ <StringDetect attribute="Decimal" context="#stay" String="L" insensitive="TRUE"/>
+ </Int>
+ <HlCChar attribute="Char" context="#stay"/>
+ <DetectChar attribute="String" context="String" char="&quot;"/>
+ <Detect2Chars attribute="Comment" context="comment" char="/" char1="*" />
+ <RegExpr attribute="Preprocessor" context="Outscoped" String="#\s*if\s+0" firstNonSpace="true" />
+ <AnyChar attribute="Symbol" context="#stay" String=":!%&amp;()+,-/.*&lt;=&gt;?[]|~^&#59;"/>
+ </context>
+ <context attribute="String" lineEndContext="#pop" name="String">
+ <LineContinue attribute="String" context="#stay"/>
+ <HlCStringChar attribute="String Char" context="#stay"/>
+ <DetectChar attribute="String" context="#pop" char="&quot;"/>
+ </context>
+ <context attribute="Comment" lineEndContext="#pop" name="comment">
+ <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" />
+ <IncludeRules context="##Alerts" />
+ </context>
+ <context attribute="Preprocessor" lineEndContext="#pop" name="Preprocessor">
+ <LineContinue attribute="Preprocessor" context="#stay"/>
+ <RegExpr attribute="Preprocessor" context="Define" String="define.*((?=\\))"/>
+ <RegExpr attribute="Preprocessor" context="#stay" String="define.*"/>
+ <RangeDetect attribute="Prep. Lib" context="#stay" char="&quot;" char1="&quot;"/>
+ <RangeDetect attribute="Prep. Lib" context="#stay" char="&lt;" char1="&gt;"/>
+ <Detect2Chars attribute="Comment" context="comment" char="/" char1="*" />
+ </context>
+ <context attribute="Preprocessor" lineEndContext="#pop" name="Define">
+ <LineContinue attribute="Preprocessor" context="#stay"/>
+ </context>
+ <context attribute="Comment" lineEndContext="#pop" name="Outscoped" >
+ <Detect2Chars attribute="Comment" context="comment" char="/" char1="*" />
+ <IncludeRules context="##Alerts" />
+ <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" firstNonSpace="true" />
+ <RegExpr attribute="Preprocessor" context="#pop" String="#\s*(endif|else|elif)" firstNonSpace="true" />
+ </context>
+ <context attribute="Comment" lineEndContext="#pop" name="Outscoped intern">
+ <Detect2Chars attribute="Comment" context="comment" char="/" char1="*" />
+ <RegExpr attribute="Comment" context="Outscoped intern" String="#\s*if" firstNonSpace="true" />
+ <RegExpr attribute="Comment" context="#pop" String="#\s*endif" firstNonSpace="true" />
+ </context>
+ </contexts>
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal"/>
+ <itemData name="Keyword" defStyleNum="dsKeyword"/>
+ <itemData name="Data Type" defStyleNum="dsDataType"/>
+ <itemData name="Decimal" defStyleNum="dsDecVal"/>
+ <itemData name="Octal" defStyleNum="dsBaseN"/>
+ <itemData name="Hex" defStyleNum="dsBaseN"/>
+ <itemData name="Float" defStyleNum="dsFloat"/>
+ <itemData name="Char" defStyleNum="dsChar"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="String Char" defStyleNum="dsChar"/>
+ <itemData name="Comment" defStyleNum="dsComment"/>
+ <itemData name="Symbol" defStyleNum="dsNormal"/>
+ <itemData name="Preprocessor" defStyleNum="dsOthers"/>
+ <itemData name="Prep. Lib" defStyleNum="dsOthers"/>
+ </itemDatas>
+ </highlighting>
+ <general>
+ <comments>
+ <comment name="multiLine" start="/*" end="*/" />
+ </comments>
+ <keywords casesensitive="1" />
+ </general>
+</language>
diff --git a/src/data/hi16-action-piklab_addcurrentfile.png b/src/data/hi16-action-piklab_addcurrentfile.png
new file mode 100644
index 0000000..608c532
--- /dev/null
+++ b/src/data/hi16-action-piklab_addcurrentfile.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_addfile.png b/src/data/hi16-action-piklab_addfile.png
new file mode 100644
index 0000000..1a3cfa0
--- /dev/null
+++ b/src/data/hi16-action-piklab_addfile.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_blankcheck.png b/src/data/hi16-action-piklab_blankcheck.png
new file mode 100644
index 0000000..c71d4a5
--- /dev/null
+++ b/src/data/hi16-action-piklab_blankcheck.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_burnchip.png b/src/data/hi16-action-piklab_burnchip.png
new file mode 100644
index 0000000..7ddef9e
--- /dev/null
+++ b/src/data/hi16-action-piklab_burnchip.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_chip.png b/src/data/hi16-action-piklab_chip.png
new file mode 100644
index 0000000..f0e3437
--- /dev/null
+++ b/src/data/hi16-action-piklab_chip.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_closeproject.png b/src/data/hi16-action-piklab_closeproject.png
new file mode 100644
index 0000000..bdfd82c
--- /dev/null
+++ b/src/data/hi16-action-piklab_closeproject.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_compile.png b/src/data/hi16-action-piklab_compile.png
new file mode 100644
index 0000000..5a5360e
--- /dev/null
+++ b/src/data/hi16-action-piklab_compile.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_createproject.png b/src/data/hi16-action-piklab_createproject.png
new file mode 100644
index 0000000..5de505e
--- /dev/null
+++ b/src/data/hi16-action-piklab_createproject.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_decompile.png b/src/data/hi16-action-piklab_decompile.png
new file mode 100644
index 0000000..3490d6f
--- /dev/null
+++ b/src/data/hi16-action-piklab_decompile.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_editproject.png b/src/data/hi16-action-piklab_editproject.png
new file mode 100644
index 0000000..e8c3d55
--- /dev/null
+++ b/src/data/hi16-action-piklab_editproject.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_erasechip.png b/src/data/hi16-action-piklab_erasechip.png
new file mode 100644
index 0000000..36077b0
--- /dev/null
+++ b/src/data/hi16-action-piklab_erasechip.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_find_next.png b/src/data/hi16-action-piklab_find_next.png
new file mode 100644
index 0000000..3eaab85
--- /dev/null
+++ b/src/data/hi16-action-piklab_find_next.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_find_previous.png b/src/data/hi16-action-piklab_find_previous.png
new file mode 100644
index 0000000..29db6e6
--- /dev/null
+++ b/src/data/hi16-action-piklab_find_previous.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_openproject.png b/src/data/hi16-action-piklab_openproject.png
new file mode 100644
index 0000000..2da627b
--- /dev/null
+++ b/src/data/hi16-action-piklab_openproject.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_readchip.png b/src/data/hi16-action-piklab_readchip.png
new file mode 100644
index 0000000..b60277e
--- /dev/null
+++ b/src/data/hi16-action-piklab_readchip.png
Binary files differ
diff --git a/src/data/hi16-action-piklab_verifychip.png b/src/data/hi16-action-piklab_verifychip.png
new file mode 100644
index 0000000..023f3b7
--- /dev/null
+++ b/src/data/hi16-action-piklab_verifychip.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_addcurrentfile.png b/src/data/hi22-action-piklab_addcurrentfile.png
new file mode 100644
index 0000000..4b27037
--- /dev/null
+++ b/src/data/hi22-action-piklab_addcurrentfile.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_addfile.png b/src/data/hi22-action-piklab_addfile.png
new file mode 100644
index 0000000..f911d65
--- /dev/null
+++ b/src/data/hi22-action-piklab_addfile.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_blankcheck.png b/src/data/hi22-action-piklab_blankcheck.png
new file mode 100644
index 0000000..4c93c85
--- /dev/null
+++ b/src/data/hi22-action-piklab_blankcheck.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_breakpoint_active.png b/src/data/hi22-action-piklab_breakpoint_active.png
new file mode 100644
index 0000000..35caf7c
--- /dev/null
+++ b/src/data/hi22-action-piklab_breakpoint_active.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_breakpoint_disabled.png b/src/data/hi22-action-piklab_breakpoint_disabled.png
new file mode 100644
index 0000000..c61f4c5
--- /dev/null
+++ b/src/data/hi22-action-piklab_breakpoint_disabled.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_breakpoint_invalid.png b/src/data/hi22-action-piklab_breakpoint_invalid.png
new file mode 100644
index 0000000..7c624cc
--- /dev/null
+++ b/src/data/hi22-action-piklab_breakpoint_invalid.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_breakpoint_reached.png b/src/data/hi22-action-piklab_breakpoint_reached.png
new file mode 100644
index 0000000..55255af
--- /dev/null
+++ b/src/data/hi22-action-piklab_breakpoint_reached.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_burnchip.png b/src/data/hi22-action-piklab_burnchip.png
new file mode 100644
index 0000000..8590c71
--- /dev/null
+++ b/src/data/hi22-action-piklab_burnchip.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_chip.png b/src/data/hi22-action-piklab_chip.png
new file mode 100644
index 0000000..0966442
--- /dev/null
+++ b/src/data/hi22-action-piklab_chip.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_closeproject.png b/src/data/hi22-action-piklab_closeproject.png
new file mode 100644
index 0000000..4983783
--- /dev/null
+++ b/src/data/hi22-action-piklab_closeproject.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_compile.png b/src/data/hi22-action-piklab_compile.png
new file mode 100644
index 0000000..7fa7489
--- /dev/null
+++ b/src/data/hi22-action-piklab_compile.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_createproject.png b/src/data/hi22-action-piklab_createproject.png
new file mode 100644
index 0000000..a8b16dc
--- /dev/null
+++ b/src/data/hi22-action-piklab_createproject.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_debug_step.png b/src/data/hi22-action-piklab_debug_step.png
new file mode 100644
index 0000000..3b7204c
--- /dev/null
+++ b/src/data/hi22-action-piklab_debug_step.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_debug_stepin.png b/src/data/hi22-action-piklab_debug_stepin.png
new file mode 100644
index 0000000..6a09a4c
--- /dev/null
+++ b/src/data/hi22-action-piklab_debug_stepin.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_debug_stepout.png b/src/data/hi22-action-piklab_debug_stepout.png
new file mode 100644
index 0000000..405f9a9
--- /dev/null
+++ b/src/data/hi22-action-piklab_debug_stepout.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_debug_stepover.png b/src/data/hi22-action-piklab_debug_stepover.png
new file mode 100644
index 0000000..cb512cb
--- /dev/null
+++ b/src/data/hi22-action-piklab_debug_stepover.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_debughalt.png b/src/data/hi22-action-piklab_debughalt.png
new file mode 100644
index 0000000..69dfb9e
--- /dev/null
+++ b/src/data/hi22-action-piklab_debughalt.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_decompile.png b/src/data/hi22-action-piklab_decompile.png
new file mode 100644
index 0000000..71eeff8
--- /dev/null
+++ b/src/data/hi22-action-piklab_decompile.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_editproject.png b/src/data/hi22-action-piklab_editproject.png
new file mode 100644
index 0000000..259c08e
--- /dev/null
+++ b/src/data/hi22-action-piklab_editproject.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_erasechip.png b/src/data/hi22-action-piklab_erasechip.png
new file mode 100644
index 0000000..a13f057
--- /dev/null
+++ b/src/data/hi22-action-piklab_erasechip.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_find_next.png b/src/data/hi22-action-piklab_find_next.png
new file mode 100644
index 0000000..c047271
--- /dev/null
+++ b/src/data/hi22-action-piklab_find_next.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_find_previous.png b/src/data/hi22-action-piklab_find_previous.png
new file mode 100644
index 0000000..99cea7c
--- /dev/null
+++ b/src/data/hi22-action-piklab_find_previous.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_openproject.png b/src/data/hi22-action-piklab_openproject.png
new file mode 100644
index 0000000..2d97fd1
--- /dev/null
+++ b/src/data/hi22-action-piklab_openproject.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_power.png b/src/data/hi22-action-piklab_power.png
new file mode 100644
index 0000000..b479583
--- /dev/null
+++ b/src/data/hi22-action-piklab_power.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_program_counter.png b/src/data/hi22-action-piklab_program_counter.png
new file mode 100644
index 0000000..529281a
--- /dev/null
+++ b/src/data/hi22-action-piklab_program_counter.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_program_counter_disabled.png b/src/data/hi22-action-piklab_program_counter_disabled.png
new file mode 100644
index 0000000..617c4ae
--- /dev/null
+++ b/src/data/hi22-action-piklab_program_counter_disabled.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_readchip.png b/src/data/hi22-action-piklab_readchip.png
new file mode 100644
index 0000000..1df48d0
--- /dev/null
+++ b/src/data/hi22-action-piklab_readchip.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_restart.png b/src/data/hi22-action-piklab_restart.png
new file mode 100644
index 0000000..a8dad33
--- /dev/null
+++ b/src/data/hi22-action-piklab_restart.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_run.png b/src/data/hi22-action-piklab_run.png
new file mode 100644
index 0000000..fc861fb
--- /dev/null
+++ b/src/data/hi22-action-piklab_run.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_stop.png b/src/data/hi22-action-piklab_stop.png
new file mode 100644
index 0000000..c2b68f7
--- /dev/null
+++ b/src/data/hi22-action-piklab_stop.png
Binary files differ
diff --git a/src/data/hi22-action-piklab_verifychip.png b/src/data/hi22-action-piklab_verifychip.png
new file mode 100644
index 0000000..dbd11fa
--- /dev/null
+++ b/src/data/hi22-action-piklab_verifychip.png
Binary files differ
diff --git a/src/data/hi32-action-piklab_config_assembler.png b/src/data/hi32-action-piklab_config_assembler.png
new file mode 100644
index 0000000..198b8d8
--- /dev/null
+++ b/src/data/hi32-action-piklab_config_assembler.png
Binary files differ
diff --git a/src/data/hi32-action-piklab_config_disassembler.png b/src/data/hi32-action-piklab_config_disassembler.png
new file mode 100644
index 0000000..6107b62
--- /dev/null
+++ b/src/data/hi32-action-piklab_config_disassembler.png
Binary files differ
diff --git a/src/data/hi32-action-piklab_config_programmer.png b/src/data/hi32-action-piklab_config_programmer.png
new file mode 100644
index 0000000..586e094
--- /dev/null
+++ b/src/data/hi32-action-piklab_config_programmer.png
Binary files differ
diff --git a/src/data/jal-pic.xml b/src/data/jal-pic.xml
new file mode 100644
index 0000000..272d957
--- /dev/null
+++ b/src/data/jal-pic.xml
@@ -0,0 +1,104 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE language SYSTEM "language.dtd">
+<language name="XPicJal" version="0.1" kateversion="2.0" section="Sources"
+ extensions="*.jal" mimetype="text/x-PicJal">
+
+ <highlighting>
+
+ <list name="directives">
+ <item> function </item>
+ <item> procedure </item>
+ <item> var </item>
+ <item> at </item>
+ <item> const </item>
+ <item> volatile </item>
+ <item> return </item>
+ <item> asm </item>
+ <item> assembler </item>
+ </list>
+
+ <list name="conditionnal">
+ <item> if </item>
+ <item> then </item>
+ <item> else </item>
+ <item> elsif </item>
+ <item> forever </item>
+ <item> end </item>
+ <item> while </item>
+ <item> loop </item>
+ <item> for </item>
+ </list>
+
+ <list name="instructions">
+ <item> bit </item>
+ <item> byte </item>
+ </list>
+
+ <contexts>
+
+ <context name="normal" attribute="Normal Text" lineEndContext="#stay">
+ <RegExpr attribute="Proprocessor" context="#stay" String="include.*"/>
+ <RegExpr attribute="Preprocessor" context="#stay" String="pragma.*"/>
+ <keyword attribute="Directives" context="#stay" String="directives"/>
+ <keyword attribute="Instructions" context="#stay" String="instructions"/>
+ <keyword attribute="SFRS" context="#stay" String="sfrs"/>
+ <keyword attribute="Conditionnal" context="#stay" String="conditionnal"/>
+ <HlCHex attribute="Based Numbers" context="#stay"/>
+ <RegExpr attribute="Based Numbers" context="#stay" String="(0x_[0-9A-F]+)" insensitive="TRUE" />
+ <RegExpr attribute="Based Numbers" context="#stay" String="(0b_[_0-1]+)" insensitive="TRUE" />
+ <Int attribute="Non Based Numbers" context="#stay" />
+ <HlCChar attribute="Char" context="#stay"/>
+ <DetectChar attribute="String" context="string" char="&quot;"/>
+ <DetectChar attribute="Comment" context="comment" char="--" />
+ <RegExpr attribute="Symbol" context="#stay" String="[-/*%+=&gt;&lt;&amp;|^!~]"/>
+ <RegExpr attribute="Symbol" context="#stay" String="(on|off|high|low|false|true)"/>
+ </context>
+
+ <context name="string" attribute="String" lineEndContext="#pop">
+ <LineContinue attribute="String" context="#stay"/>
+ <HlCStringChar attribute="Char" context="#stay"/>
+ <DetectChar attribute="String" context="#pop" char="&quot;"/>
+ </context>
+
+ <context name="comment" attribute="Comment" lineEndContext="#pop">
+ <RegExpr attribute="Instructions" context="#stay"
+ String="(FIXME|TODO|fixme|todo|INPUT|OUTPUT|PARAMETERS|AUTHOR|EMAIL)" />
+ <RegExpr attribute="ModuleMarks" context="#stay" beginRegion="moduleASM"
+ String="(&lt;[+]+[A-Za-z_#]+[A-Za-z0-9_#.]*&gt;)" />
+ <RegExpr attribute="ModuleMarks" context="#stay" endRegion="moduleASM"
+ String="(&lt;[-]+&gt;)" />
+ <RegExpr attribute="ModuleMarks" context="#stay"
+ String="(&lt;[=]+[- 0-9]+&gt;)" />
+ <RegExpr attribute="ModuleMarks" context="#stay"
+ String="(&lt;[?]+[A-Za-z_#]+[A-Za-z0-9_#]*&gt;)" />
+ </context>
+
+ </contexts>
+
+ <itemDatas>
+ <itemData name="Normal Text" defStyleNum="dsNormal"/>
+ <itemData name="Directives" defStyleNum="dsOthers"/>
+ <itemData name="Preprocessor" defStyleNum="dsNormal" color="#00FF00" selColor="#00FF00" bold="0" italic="0"/>
+ <itemData name="Conditionnal" defStyleNum="dsNormal" color="#D819D8" selColor="#D819D8" bold="0" italic="0"/>
+ <itemData name="Instructions" defStyleNum="dsNormal" color="#0060FF" selColor="#8293CE" bold="1" italic="0"/>
+ <itemData name="SFRS" defStyleNum="dsNormal" color="#2A8A19" selcolor="#000000" bold="1" italic="0"/>
+ <itemData name="ModuleMarks" defStyleNum="dsNormal" color="#FF20FF" selColor="#8293CE" bold="1" italic="0"/>
+ <itemData name="Non Based Numbers" defStyleNum="dsBaseN"/>
+ <itemData name="Char" defStyleNum="dsChar"/>
+ <itemData name="String" defStyleNum="dsString"/>
+ <itemData name="Comment" defStyleNum="dsNormal" color="#FF3118" selColor="#FF3118" bold="0" italic="1" />
+ <itemData name="Symbol" defStyleNum="dsNormal" color="#FF0000" selColor="#083194" bold="0" italic="0" />
+ <itemData name="Prep. Lib" defStyleNum="dsOthers"/>
+ <itemData name="Based Numbers" defStyleNum="dsBaseN" />
+ </itemDatas>
+
+ </highlighting>
+
+ <general>
+ <comments>
+ <comment name="singleLine" start="--" />
+ </comments>
+ <keywords casesensitive="1" />
+ </general>
+
+</language>
diff --git a/src/data/likeback/Makefile.am b/src/data/likeback/Makefile.am
new file mode 100644
index 0000000..1b17603
--- /dev/null
+++ b/src/data/likeback/Makefile.am
@@ -0,0 +1,2 @@
+piklabdir = $(kde_datadir)/piklab/icons
+piklab_ICON = AUTO \ No newline at end of file
diff --git a/src/data/likeback/cr16-action-likeback_dislike.png b/src/data/likeback/cr16-action-likeback_dislike.png
new file mode 100644
index 0000000..4f0f8ee
--- /dev/null
+++ b/src/data/likeback/cr16-action-likeback_dislike.png
Binary files differ
diff --git a/src/data/likeback/cr16-action-likeback_like.png b/src/data/likeback/cr16-action-likeback_like.png
new file mode 100644
index 0000000..bf6941d
--- /dev/null
+++ b/src/data/likeback/cr16-action-likeback_like.png
Binary files differ
diff --git a/src/data/likeback/hi16-action-likeback_bug.png b/src/data/likeback/hi16-action-likeback_bug.png
new file mode 100644
index 0000000..4d7f5a6
--- /dev/null
+++ b/src/data/likeback/hi16-action-likeback_bug.png
Binary files differ
diff --git a/src/data/syntax_xml_generator.cpp b/src/data/syntax_xml_generator.cpp
new file mode 100644
index 0000000..9f3553e
--- /dev/null
+++ b/src/data/syntax_xml_generator.cpp
@@ -0,0 +1,231 @@
+/***************************************************************************
+ * Copyright (C) 2006 Nicolas Hadacek <hadacek@kde.org> *
+ * *
+ * This program is free software; you can redistribute it and/or modify *
+ * it under the terms of the GNU General Public License as published by *
+ * the Free Software Foundation; either version 2 of the License, or *
+ * (at your option) any later version. *
+ ***************************************************************************/
+
+// this program generate xml files for kate highlighting
+// the original syntax file was created by Alain Gibaud
+
+#include <qfile.h>
+#include <qtextstream.h>
+
+const char * const DIRECTIVES[] = {
+"__badram", "__config", "__idlocs", "__maxram",
+"bankisel", "banksel", "cblock", "code", "cblock", "constant", "da", "data", "db",
+"de", "dt", "dw", "endm", "endc", "endw", "equ", "error", "errorlevel", "extern",
+"exitm", "expand", "fill", "global", "idata", "list", "local", "macro", "messg",
+"noexpand", "nolist", "org", "page", "processor", "pagesel", "radix", "res", "set",
+"space", "subtitle", "title", "udata", "udata_acs", "udata_ovr", "udata_shr",
+"variable", "end", 0
+};
+const char * const CONDITIONNALS[] = {
+"if", "else", "ifdef", "ifndef", "endif", "while", "include", "endw", "{", "}", 0
+};
+const char * const GPASM_MACROS[] = {
+"addcf", "b", "bc", "bz", "bnc", "bnz", "clrc", "clrz", "setc", "setz", "movfw",
+"negf", "skpc", "skpz", "skpnc", "skpnz", "subcf", "tstf", 0
+};
+const char * const CPIK_MACROS[] = {
+"IBZ", "IBNZ", "IBRA", "ICALL", 0
+};
+const char * const SFRS[] = { // #### should be extracted from dev files...
+"TOSU", "TOSH", "TOSL", "STKPTR", "PCLATU", "PCLATH", "PCL", "TBLPTRU", "TBLPTRH",
+"TBLPTRL", "TABLAT", "PRODH", "PRODL", "INTCON", "INTCON2", "INTCON3", "INDF0",
+"POSTINC0", "POSTDEC0", "PREINC0", "PLUSW0", "FSR0H", "FSR0L", "WREG", "INDF1",
+"POSTINC1", "POSTDEC1", "PREINC1", "PLUSW1", "FSR1H", "FSR1L", "BSR", "INDF2",
+"POSTINC2", "POSTDEC2", "PREINC2", "PLUSW2", "FSR2H", "FSR2L", "STATUS", "TMR0H",
+"TMR0L", "T0CON", "OSCCON", "LVDCON", "WDTCON", "RCON", "TMR1H", "TMR1L","T1CON",
+"TMR2", "PR2", "T2CON", "SSPBUF", "SSPADD", "SSPSTAT", "SSPCON1", "SSPCON2", "ADRESH",
+"ADRESL", "ADCON0", "ADCON1", "ADCON2", "CCPR1H", "CCPR1L", "CCP1CON", "CCPR2H",
+"CCPR2L", "CCP2CON", "PWM1CON", "ECCPAS", "CVRCON", "CMCON", "TMR3H", "TMR3L",
+"T3CON", "SPBRG", "RCREG", "TXREG", "TXSTA", "RCSTA", "EEADR", "EEDATA", "EECON2",
+"EECON1", "IPR2", "PIR2", "PIE2", "IPR1", "PIR1", "PIE1", "OSCTUNE", "TRISE",
+"TRISD", "TRISC", "TRISB", "TRISA", "LATE", "LATD", "LATC", "LATB", "LATA",
+"PORTE", "PORTD", "PORTC", "PORTB", "PORTA", "TMR0", "TMR1", "OPTION_REG", 0
+};
+const char * const INSTRUCTIONS[] = {
+"addlw", "addwf", "addwfc", "andlw", "andwf", "bcf", "bc", "bn", "bnc", "bnn", "bnov",
+"bnz", "bz", "bov", "bra", "bsf", "btfsc", "btg", "btfss", "call", "clrf", "clrw",
+"clrwdt", "comf", "cpfseq", "cpfsgt", "cpfslt", "daw", "decf", "decfsz", "dcfsnz",
+"goto", "incf", "incfsz", "infsnz", "iorlw", "iorwf", "lfsr", "movf", "movff",
+"movlb", "movlw", "movwf", "mullw", "mulwf", "negf", "nop", "option", "pop", "push",
+"rcall", "reset", "retfie", "retlw", "rlcf", "rlncf", "rrcf", "rrncf", "return", "rlf",
+"rrf", "setf", "sleep", "sublw", "subfwb", "subwf", "subwfb", "swapf", "tstfsz",
+"tris", "tblrd", "tblwt", "xorlw", "xorwf", 0
+};
+
+QTextStream *initFile(QFile &file)
+{
+ if ( !file.open(IO_WriteOnly) ) qFatal("Cannot create \"%s\".", file.name().latin1());
+ QTextStream *s = new QTextStream(&file);
+ (*s) << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" << endl;
+ (*s) << "<!DOCTYPE language SYSTEM \"language.dtd\">" << endl;
+ (*s) << "<!--This file is generated. Do not edit.-->" << endl;
+ return s;
+}
+
+void addList(QTextStream &s, const QString &name, const char * const *items, bool upper)
+{
+ s << " <list name=\"" << name << "\">" << endl;
+ for (uint i=0; items[i]; i++) {
+ s << " <item>" << items[i] << "</item>";
+ if (upper) s << "<item>" << QString(items[i]).upper() << "</item>";
+ s << endl;
+ };
+ s <<" </list>" << endl;
+}
+
+void addCommon(QTextStream &s)
+{
+ addList(s, "instructions", INSTRUCTIONS, true);
+ s << endl;
+ s << " <itemDatas>" << endl;
+ s << " <itemData name=\"Normal Text\" defStyleNum=\"dsNormal\"/>" << endl;
+ s << " <itemData name=\"Directives\" defStyleNum=\"dsOthers\"/>" << endl;
+ s << " <itemData name=\"Preprocessor\" defStyleNum=\"dsNormal\" color=\"#D819D8\" selColor=\"#D819D8\" bold=\"0\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"Instructions\" defStyleNum=\"dsNormal\" color=\"#0060FF\" selColor=\"#8293CE\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"CPIK-macros\" defStyleNum=\"dsNormal\" color=\"#0045B3\" selcolor=\"#8293CE\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"SFRS\" defStyleNum=\"dsNormal\" color=\"#2A8A19\" selcolor=\"#000000\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"ModuleMarks\" defStyleNum=\"dsNormal\" color=\"#FF20FF\" selColor=\"#8293CE\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"Non Based Numbers\" defStyleNum=\"dsBaseN\"/>" << endl;
+ s << " <itemData name=\"Char\" defStyleNum=\"dsChar\"/>" << endl;
+ s << " <itemData name=\"String\" defStyleNum=\"dsString\"/>" << endl;
+ s << " <itemData name=\"Comment\" defStyleNum=\"dsNormal\" color=\"#FF3118\" selColor=\"#FF3118\" bold=\"0\" italic=\"1\" />" << endl;
+ s << " <itemData name=\"Symbol\" defStyleNum=\"dsNormal\" color=\"#FF0000\" selColor=\"#083194\" bold=\"0\" italic=\"0\" />" << endl;
+ s << " <itemData name=\"Prep. Lib\" defStyleNum=\"dsOthers\"/>" << endl;
+ s << " <itemData name=\"Based Numbers\" defStyleNum=\"dsBaseN\" />" << endl;
+ s << " <itemData name=\"GPASM-macros\" defStyleNum=\"dsNormal\" color=\"#000000\" selcolor=\"#000000\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " <itemData name=\"Destination\" defStyleNum=\"dsNormal\" color=\"#000000\" selcolor=\"#000000\" bold=\"1\" italic=\"0\"/>" << endl;
+ s << " </itemDatas>" << endl;
+ s << endl;
+ s << " <contexts>" << endl;
+ s << " <context name=\"normal\" attribute=\"Normal Text\" lineEndContext=\"#stay\">" << endl;
+}
+
+void addAsmContexts(QTextStream &s)
+{
+ s << " <keyword attribute=\"Directives\" context=\"#stay\" String=\"directives\"/>" << endl;
+ s << " <keyword attribute=\"Instructions\" context=\"#stay\" String=\"instructions\"/>" << endl;
+ s << " <keyword attribute=\"CPIK-macros\" context=\"#stay\" String=\"cpik_macro\"/>" << endl;
+ s << " <keyword attribute=\"SFRS\" context=\"#stay\" String=\"sfrs\"/>" << endl;
+ s << " <keyword attribute=\"Preprocessor\" context=\"#stay\" String=\"conditionnal\"/>" << endl;
+ s << " <keyword attribute=\"GPASM-macros\" context=\"#stay\" String=\"gpasm_macro\"/>" << endl;
+ s << endl;
+ s << " <HlCHex attribute=\"Based Numbers\" context=\"#stay\"/>" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"[0-9A-F]+H($|\\s)\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"[0-9]+D($|\\s)\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"[0-7]+O($|\\s)\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"[0-1]+B($|\\s)\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Non Based Numbers\" context=\"#stay\" String=\"\\.[0-9]+($|\\s)\" />" << endl;
+ s << " <RegExpr attribute=\"Non Based Numbers\" context=\"#stay\" String=\"[0-9]+($|\\s)\" />" << endl;
+ s << endl;
+ s << " <RegExpr attribute=\"Char\" context=\"#stay\" String=\"A'[^']+'\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"B'[01]+'\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"H'[0-9A-F]+'\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"O'[0-7]+'\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Non Based Numbers\" context=\"#stay\" String=\"D'[0-9]+'\" insensitive=\"TRUE\" />" << endl;
+ s << endl;
+ s << " <DetectChar attribute=\"Destination\" context=\"#stay\" char=\"$\" />" << endl;
+ s << " <RegExpr attribute=\"Normal Text\" context=\"#stay\" String=\"[A-Za-z_.$][A-Za-z0-9_.$]*\" />" << endl;
+ s << " <HlCChar attribute=\"Char\" context=\"#stay\" />" << endl;
+ s << " <DetectChar attribute=\"String\" context=\"string\" char=\"&quot;\" />" << endl;
+ s << " <DetectChar attribute=\"Comment\" context=\"comment\" char=\";\" />" << endl;
+ s << " <AnyChar attribute=\"Symbol\" context=\"#stay\" String=\"[-/*%+=&gt;&lt;&amp;|^!~]\" />" << endl;
+ s << " <RegExpr attribute=\"Symbol\" context=\"#stay\" String=\"(HIGH|LOW)\" />" << endl;
+ s << " <RegExpr attribute=\"Destination\" context=\"#stay\" String=\",\\s*[fw]\" insensitive=\"TRUE\" />" << endl;
+ s << " <RegExpr attribute=\"Preprocessor\" context=\"preprocessor\" String=\"(#include|#define|#undefine|#v)\" />" << endl;
+ s << " </context>" << endl;
+ s << " <context name=\"preprocessor\" attribute=\"Preprocessor\" lineEndContext=\"#pop\">" << endl;
+ s << " <DetectChar attribute=\"Comment\" context=\"comment\" char=\";\"/>" << endl;
+ s << " </context>" << endl;
+ s << " <context name=\"string\" attribute=\"String\" lineEndContext=\"#pop\">" << endl;
+ s << " <LineContinue attribute=\"String\" context=\"#stay\"/>" << endl;
+ s << " <HlCStringChar attribute=\"Char\" context=\"#stay\"/>" << endl;
+ s << " <DetectChar attribute=\"String\" context=\"#pop\" char=\"&quot;\"/>" << endl;
+ s << " </context>" << endl;
+ s << " <context name=\"comment\" attribute=\"Comment\" lineEndContext=\"#pop\">" << endl;
+ s << " <RegExpr attribute=\"Instructions\" context=\"#stay\"" << endl;
+ s << " String=\"(FIXME|TODO|fixme|todo|INPUT|OUTPUT|PARAMETERS|AUTHOR|EMAIL)\" />" << endl;
+ s << " <RegExpr attribute=\"ModuleMarks\" context=\"#stay\" beginRegion=\"moduleASM\"" << endl;
+ s << " String=\"(&lt;[+]+[A-Za-z_#]+[A-Za-z0-9_#.]*&gt;)\" />" << endl;
+ s << " <RegExpr attribute=\"ModuleMarks\" context=\"#stay\" endRegion=\"moduleASM\"" << endl;
+ s << " String=\"(&lt;[-]+&gt;)\" />" << endl;
+ s << " <RegExpr attribute=\"ModuleMarks\" context=\"#stay\"" << endl;
+ s << " String=\"(&lt;[=]+[- 0-9]+&gt;)\" />" << endl;
+ s << " <RegExpr attribute=\"ModuleMarks\" context=\"#stay\"" << endl;
+ s << " String=\"(&lt;[?]+[A-Za-z_#]+[A-Za-z0-9_#]*&gt;)\" />" << endl;
+ s << " </context>" << endl;
+}
+
+void endFile(QTextStream &s)
+{
+ s << " </contexts>" << endl;
+ s << "</highlighting>" << endl;
+ s << endl;
+ s << "<general>" << endl;
+ s << " <comments>" << endl;
+ s << " <comment name=\"singleLine\" start=\";\" />" << endl;
+ s << " </comments>" << endl;
+ s << " <keywords casesensitive=\"1\" />" << endl;
+ s << "</general>" << endl;
+ s << endl;
+ s << "</language>" << endl;
+}
+
+int main(int, char **)
+{
+ QFile afile("asm-pic.xml");
+ QTextStream *s = initFile(afile);
+ (*s) << "<language name=\"XPicAsm\" version=\"1.5\" kateversion=\"2.0\" section=\"Sources\"" << endl;
+ (*s) << " extensions=\"*.src;*.SRC;*.asm;*.ASM;*.slb;*.SLB;*.pic;*.PIC;*.inc;*.INC;*.pic12;*.pic14;*.PIC12;*.PIC14;*.pic16;*.PIC16\"" << endl;
+ (*s) << " mimetype=\"text/x-PicSrc;text/x-PicHdr\">" << endl;
+ (*s) << endl;
+ (*s) << "<highlighting>" << endl;
+ addList(*s, "directives", DIRECTIVES, true);
+ addList(*s, "conditionnal", CONDITIONNALS, false);
+ addList(*s, "gpasm_macro", GPASM_MACROS, false);
+ addList(*s, "cpik_macro", CPIK_MACROS, false);
+ addList(*s, "sfrs", SFRS, false);
+ addCommon(*s);
+ addAsmContexts(*s);
+ endFile(*s);
+
+ QFile cfile("coff-pic.xml");
+ s = initFile(cfile);
+ (*s) << "<language name=\"XCoffDisasm\" version=\"1.2\" kateversion=\"2.0\" section=\"Sources\">" << endl;
+ (*s) << endl;
+ (*s) << "<highlighting>" << endl;
+ addCommon(*s);
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"cfile\" String=\"^\\-\\-\\-\\s.+\\.(c|h)\\s\\-+\"/>" << endl;
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"asmfile\" String=\"^\\-\\-\\-\\s.+\\s\\-+\"/>" << endl;
+ (*s) << " </context>" << endl;
+ (*s) << " <context name=\"asmfile\" attribute=\"Normal Text\">" << endl;
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"asmline\" String=\"\\d+\\s*:\"/>" << endl;
+ (*s) << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"\\s0\\s\" />" << endl;
+ (*s) << " <RegExpr attribute=\"Normal Text\" context=\"#stay\" String=\"^[0-9A-F]+\" />" << endl;
+ (*s) << " <keyword attribute=\"Instructions\" context=\"#stay\" String=\"instructions\"/>" << endl;
+ (*s) << " <HlCHex attribute=\"Based Numbers\" context=\"#stay\"/>" << endl;
+ (*s) << " <RegExpr attribute=\"Destination\" context=\"#stay\" String=\",\\s*[fw]\" insensitive=\"TRUE\" />" << endl;
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"#pop\" String=\"^\\-\\-\\-\\s.+\\-\" lookAhead=\"true\"/>" << endl;
+ (*s) << " </context>" << endl;
+ (*s) << " <context name=\"asmline\" attribute=\"Normal Text\" lineEndContext=\"#pop\">" << endl;
+ (*s) << " <IncludeRules context=\"##XPicAsm\" includeAttrib=\"true\" />" << endl;
+ (*s) << " </context>" << endl;
+ (*s) << " <context name=\"cfile\" attribute=\"Normal Text\">" << endl;
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"cline\" String=\"\\d+\\s*:\"/>" << endl;
+ (*s) << " <RegExpr attribute=\"Based Numbers\" context=\"#stay\" String=\"\\s0\\s\" />" << endl;
+ (*s) << " <RegExpr attribute=\"Normal Text\" context=\"#stay\" String=\"^[0-9A-F]+\" />" << endl;
+ (*s) << " <keyword attribute=\"Instructions\" context=\"#stay\" String=\"instructions\"/>" << endl;
+ (*s) << " <HlCHex attribute=\"Based Numbers\" context=\"#stay\"/>" << endl;
+ (*s) << " <RegExpr attribute=\"Destination\" context=\"#stay\" String=\",\\s*[fw]\" insensitive=\"TRUE\" />" << endl;
+ (*s) << " <RegExpr attribute=\"Preprocessor\" context=\"#pop\" String=\"^\\-\\-\\-\\s.+\\-\" lookAhead=\"true\"/>" << endl;
+ (*s) << " </context>" << endl;
+ (*s) << " <context name=\"cline\" attribute=\"Normal Text\" lineEndContext=\"#pop\">" << endl;
+ (*s) << " <IncludeRules context=\"##XCoffDissC\" includeAttrib=\"true\" />" << endl;
+ (*s) << " </context>" << endl;
+ endFile(*s);
+}
diff --git a/src/data/xpms/csourcefile.xpm b/src/data/xpms/csourcefile.xpm
new file mode 100644
index 0000000..93fdf98
--- /dev/null
+++ b/src/data/xpms/csourcefile.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static const char * csourcefile_xpm[] = {
+"16 16 5 1",
+" c None",
+". c #000000",
+"+ c #2CF416",
+"@ c #498942",
+"# c #56CC49",
+" ",
+" .. ",
+" .++.. ",
+" .+++++. ",
+" .+++++@. ",
+" .. .##++@@. ",
+" .++..###@@@. ",
+" .+++++.##@@. ",
+" .+++++@..#@. ",
+" .##++@@. .. ",
+" .###@@@. ",
+" .###@@. ",
+" ..#@. ",
+" .. ",
+" ",
+" "};
diff --git a/src/data/xpms/includefile.xpm b/src/data/xpms/includefile.xpm
new file mode 100644
index 0000000..9ac9cbc
--- /dev/null
+++ b/src/data/xpms/includefile.xpm
@@ -0,0 +1,25 @@
+/* XPM */
+static const char *includefile_xpm[]={
+"16 16 6 1",
+". c None",
+"# c #000000",
+"b c #e0bc38",
+"c c #f0dc5c",
+"a c #fcfc80",
+"d c #ff0000",
+"................",
+"..........##....",
+".........#aa##..",
+"........#aaaaa#.",
+".......#aaaaab#.",
+"....##.#ccaabb#.",
+"...#aa##cccbbb#.",
+"..#aaaaa#ccbb#..",
+".#aaaaab##cb#...",
+".#ccaabb#.##....",
+".#cccbbb#.......",
+".#cccbb#...ddd..",
+"..##cb#...ddddd.",
+"....##....ddddd.",
+"..........ddddd.",
+"...........ddd.."};
diff --git a/src/data/xpms/objectfile.xpm b/src/data/xpms/objectfile.xpm
new file mode 100644
index 0000000..5bef5d2
--- /dev/null
+++ b/src/data/xpms/objectfile.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static const char * objectfile_xpm[] = {
+"16 16 5 1",
+" c None",
+". c #000000",
+"+ c #ECDEEF",
+"@ c #985EA5",
+"# c #DCBEE2",
+" ",
+" .. ",
+" .++.. ",
+" .+++++. ",
+" .+++++@. ",
+" .. .##++@@. ",
+" .++..###@@@. ",
+" .+++++.##@@. ",
+" .+++++@..#@. ",
+" .##++@@. .. ",
+" .###@@@. ",
+" .###@@. ",
+" ..#@. ",
+" .. ",
+" ",
+" "};
diff --git a/src/data/xpms/project.xpm b/src/data/xpms/project.xpm
new file mode 100644
index 0000000..28a6397
--- /dev/null
+++ b/src/data/xpms/project.xpm
@@ -0,0 +1,29 @@
+/* XPM */
+static const char * project_xpm[] = {
+"16 16 10 1",
+" c None",
+". c #000000",
+"+ c #A4E8FC",
+"@ c #24D0FC",
+"# c #001CD0",
+"$ c #0080E8",
+"% c #C0FFFF",
+"& c #00FFFF",
+"* c #008080",
+"= c #00C0C0",
+" .. ",
+" .++.. ",
+" .+++@@. ",
+" .@@@@@#... ",
+" .$$@@##.%%.. ",
+" .$$$##.%%%&&. ",
+" .$$$#.&&&&&*. ",
+" ...#.==&&**. ",
+" .++..===***. ",
+" .+++@@.==**. ",
+" .@@@@@#..=*. ",
+" .$$@@##. .. ",
+" .$$$###. ",
+" .$$$##. ",
+" ..$#. ",
+" .. "};
diff --git a/src/data/xpms/sourcefile.xpm b/src/data/xpms/sourcefile.xpm
new file mode 100644
index 0000000..3cb6c6a
--- /dev/null
+++ b/src/data/xpms/sourcefile.xpm
@@ -0,0 +1,24 @@
+/* XPM */
+static const char * sourcefile_xpm[] = {
+"16 16 5 1",
+" c None",
+". c #000000",
+"+ c #FCFC80",
+"@ c #E0BC38",
+"# c #F0DC5C",
+" ",
+" .. ",
+" .++.. ",
+" .+++++. ",
+" .+++++@. ",
+" .. .##++@@. ",
+" .++..###@@@. ",
+" .+++++.##@@. ",
+" .+++++@..#@. ",
+" .##++@@. .. ",
+" .###@@@. ",
+" .###@@. ",
+" ..#@. ",
+" .. ",
+" ",
+" "};