SourceBoost IDE (Integrated Development Environment) is a low cost development environment for Microchip Inc. PIC and Ubicom Inc. SX processors. SourceBoost IDE includes a modern editor, a project manager, C, C++, and Pascal cross-compilers, a Project wizard, an assembler level debugger, a clock accurate simulator, and a number of virtual devices.
SourceBoost IDE was designed to be easy to work with. It usually takes only a few minutes from SourceBoost IDE installation to the point where compiled code runs on a target. Just remember that SourceBoost IDE works with projects and all source files you want to compile need to be included into a project. An easy way to start is to open one of the example projects included into SourceBoost installation.
Follow these steps to open and build an example project:
that will open the Options dialog, then go to the Tools page and verify that
the paths and command line options to the external tools are correct (See also
Building a Project - Assemble):
At this point the current project should have been built and the target processor programmed. It's now ready to test!
SourceBoost IDE has a number of different windows dedicated to perform some specific functions. All of these windows may be docked inside the main SourceBoost IDE window, or freely float at any part of the screen.
The SourceBoost IDE may work in two modes:
The windows that can be displayed and the layout of the windows is different for these modes. For example the Register and Stack windows are not visible in Edit mode, but can be displayed in Debug mode.
In many windows right-click menus can be used. Remember, right-click menus are your friends. Often they offer features not available from the main menu. |
Create a new document file. The created file will have no syntax coloring until it's been saved. | |
Open an existing document file. | |
Save the active document file. | |
Save all modified document files. | |
Cut selection. | |
Copy selection. | |
Paste content of the clipboard. | |
Print the active document. | |
Show/hide the Workspace window. | |
Show/hide the Output window. | |
Build the current project. This command starts the actions defined in the Build dialog. | |
Compile the current project. | |
Assemble the current project using the external assembler. If the external assembler is not specified this button is grayed out. | |
Start an external programmer. If the external programmer is not specified this button is grayed out. | |
Start an external simulator. If the external simulator is not specified this button is grayed out. | |
Display SourceBoost IDE About dialog. | |
Start built-in debugger. SourceBoost IDE enters the Debug mode. | |
Toggle a breakpoint on the line under cursor. Breakpoints can be set only in assembly files. |
By default the tool bar is docked on the top part of the main window. However it may be docked on the bottom, left and right part, or float outside of the main window. |
The IDE has a workspace window that can display either the Project files (that is the files a project is composed of), or a browser showing the various symbols used inside the Project files .
Switch between the file view or the browser view by using the tabs at the bottom of the window. |
Use right click menu to open, delete, or add new files to a project. |
Files inside the Output folder are the output files generated
during compilation or assembly.
By default these are the files in the
project directory that have the same name as the project, but with
file extensions .asm, .lst and .hex. |
It's a good idea to use
symbolic names. The symbolic names will be substituted
with real values that depend on your project's settings:
|
SourceBoost IDE has a built-in browser that automatically builds a
database of symbols used in the current project. This data base gets updated every time a project is loaded or a file inside the project is changed. |
Double click on any symbol inside the browse window to open or activate a file where this symbol is defined. |
The Output window contains three pages:
The Build page is used to display various messages produced by SourceBoost IDE.
The Find page displays the results of the Find In Files command.
The Terminal page allows data to be transmitted to, and received from, a serial port.
This page displays compilation and assembly output, error and warning messages, and other information of interest to the user.
Double click on a compile error or warning to open or activate the relevant location in a source file. |
Use F4 to switch between error and warning messages. |
This page lists all files that are the result of the Find In Files command.
Double click on an item in this list to open or activate the relevant file. |
This is a serial port terminal. This page displays data received from a serial port, and allows data to be sent to a serial port.
The Terminal page can be used to communicate with a bootloader. |
If you use debug print in your target code it's convenient to use the Terminal page to display these debug strings. |
The register window shows registers for the current target. Based
on their functionality, the registers are partitioned into groups. This window functions only in debug mode and shows values of the target registers. The format of each value may be
changed using the right click menu. By default a register value is
displayed in black, but if it has changed since the last stop the
value becomes blue. To change the value click on it, enter a new one
and press Enter or click anywhere. |
To change the format of all registers keep the Ctrl key pressed when selecting the format from the right click menu. |
To change how the registers are partitioned, edit the relevant .TDF file that is inside the config sub-directory in the directory where SourceBoost IDE is installed. |
The watch window functions only in debug
mode and is used to display values of various symbols from the
debugged code. To add a new watch use the right click menu and select the Add... item. This will open the Quick Watch dialog where a new symbol to watch is specified. Similarly an already existing watch can be edited by selecting the Edit... item from the right click menu. A watch inside this dialog can be either entered or selected from the drop down list. |
To change the format of all watches, keep the Ctrl key pressed when selecting the format from the right click menu. |
To add a register watch use a dollar sign in front of the register name. To add a watch on a register number use a dollar sign in front of the decimal register address. |
The stack window functions only in Debug mode and displays the content of the target hardware stack. |
Double click on an item in the list to open or or activate the relevant location in a source file. |
The memory window functions only in debug
mode and displays the register map of the current target. By default, register values are displayed in black, but if some have changed since the last stop their backgrounds become cyan. If a value was changed by the user its background becomes green. To edit the value of a register click on it, enter a new value, and press Enter or click anywhere. To add a watch to a register use the right click menu. A set watchpoint is indicated by a small red dot in the left top corner of a register value. Registers unimplemented for the current target have gray backgrounds. |
The eeprom window functions only in debug
mode and displays the eeprom map of the current target. By default eeprom values are displayed in black, but if some have changed since the last stop their backgrounds become cyan. If a value was changed by the user its background becomes green. To edit an eeprom value click on it, enter a new value, and press Enter or click anywhere. |
The code window displays the project listing file (if it exists). In debug mode the execution line is displayed in this window as well as the relevant source window. In debug mode when the code window is active all step commands are done on assembly level. |
For toolsuites that generate call tree and code/memory usage data the code window will add
tabs to display this information:
Assembly mixed with sources. | |
Program call tree. | |
Code and memory usage by functions. |
The profile window functions only in debug mode and displays, in graphical and numerical form, the number of times every assembler label was hit during execution. |
Double click on an item in the list to open or activate the relevant location in a source file. |
Hold down the Ctrl key while dragging a window to prevent it from docking. Try it! |
Status Bar displays various IDE status information such as current line and column, typing mode (insert or overwrite), number of clock cycles passed since the last reset, etc.
Edit mode is the default state of the SourceBoost IDE. SourceBoost IDE starts in the Edit mode. In this mode you can create or open projects, edit and compile code, start external tools, etc.
SourceBoost IDE works with projects. A project is a collection of source files, rules how these files should be compiled, and other information. Even if you need to build only one file, you first have to create a project that will contain this file. Fortunately SourceBoost IDE supports several easy and fast ways to create new projects.
The Quick project creation is used when a project contains only one source file. In this mode just a single source file is selected and a project that has the same name as this source file is created and opened inside SourceBoost IDE. Such a project gets created for the last selected target.
This is a conventional way to create a new project. After selecting the
directory where the new project should be created and the project name, an
empty project is created.
To add files to this project use the Add
file(s)... menu item in the Project menu or the right click menu of the
Workspace window.
In this mode a new project is created from a template selected in the Project Wizard. The created project is ready to be compiled and run on a target. Note: The project wizard is different depending on the toolsuite selected.
An existing project can be edited by adding or removing files from it.
.C, .CPP, .H or .LIB files may be added to a project. Other file types, as for example readme.txt, are also appropriate. |
By default during start up IDE loads the last open project from the previous session. This can be disabled by creating a registry record in HKCU\Software\SourceBoostIDE\IDE\Project or HKLM\Software\SourceBoostIDE\IDE\Project with the name 'Load Last Project' and value 0. To enable loading of the last project at IDE startup just delete this registry record or set its value to 1. |
By default the open project dialog starts in the directory of the current open project. To overwrite the default open project directory create a registry record in HKCU\Software\SourceBoostIDE\IDE\Project or HKLM\Software\SourceBoostIDE\IDE\Project with the name 'Default Project Dir' and the string value that will point to the directory you want to use inside the open project dialog. |
The editor has been designed to make code editing as easy as possible. It features customized coloring schemes, indentation lines, hot keys, drag and drop, virtually unlimited undo/redo, autocomplete, function prototype call tips, etc.
To add some boiler plate text to each new file created from IDE create a directory called 'boiler.plates' inside the SourceBoost installation directory and than create a file with the name of your current toolsuite inside this new directory with the boiler plate text you want to insert into newly created files. |
An open document file is colored based on its extension. Files with .C, .CPP and .H extensions are colored by the SourceBoost IDE as C files. Files with .ASM, .S and .LST extensions are colored as assembly files. All other files are uncolored. The current syntax coloring scheme, font, and some other editor parameters can be changed from the Editor settings dialog ( locate under main menu Setting Editor...).
|
Code editing becomes much more productive when using editor hot keys (combinations of keys that initiate various editor commands). SourceBoost IDE supports most of the standard, as well as some unique, editor hot keys. Some of them are listed below:
Ctrl+Ins | Copy |
Shift+Ins | Paste |
Tab | Shifts current line or selection n symbols right |
Shift+Tab | Shifts current line or selection n symbols left |
Ctrl+F | Opens Find dialog |
Ctrl+H | Opens Replace dialog |
Ctrl+G | Opens Goto line dialog |
Ctrl+Z | Undo |
Ctrl+Y | Redo |
Ctrl+Space | Autocomplete |
Ctrl+Shift+L | Remove line under cursor |
Ctrl+Shift+R | Record a macro |
Ctrl+Shift+P | Play the last recorded macro |
Ctrl+] | Move caret to the matching brace |
Ctrl+Shift+G | Move caret to the last change position |
Ctrl+Mouse Wheel | Change font size in the active window |
F3 | Find next |
Shift+F3 | Find previous |
Autocompletion is an editor mode which displays a list of possible symbols
for a partially typed symbol.
To activate the autocompletion mode press
Ctrl+Space. SourceBoost IDE will then scan its symbol browse database and display a
list of symbols that match a partially typed symbol.
If a function with an existing prototype in a header file is being edited, a tooltip will show this function prototype with the current parameter highlighted :
Make sure that header files are added to the project. |
If there is a file name under the cursor, the right click menu will show an item to open this file in the editor.
This may be handy when opening a file from an #include directive. |
When the caret is positioned right before a brace, this brace pair gets highlighted. Pressing Ctrl+] moves the caret to the matching brace.
If one of the source/header file pairs is edited, the right click menu will show the item Swap source/header to open this file pair.
To quickly navigate between different parts of a big file bookmarks can be used. Press Ctrl+F2 to set a bookmark on the current line. To jump to the next bookmark press F2, and to jump to the previous bookmark press Shift+F2.
The Folding command collapses portions of the code to improve overall readability. The picture shows the rc232.c sample code with all functions except printf collapsed. Folding can be enabled or disabled in the Editor Settings dialog.
Clicking on the folding margin with Ctrl and Shift keys pressed expands or collapses all folding points. |
Folding works only in high level language sources like C, C++ or Pascal. It will not work in assembler or text files. |
The right click menu of the source window contains many useful items that make your life easier:
Beside the standard operations like Copy and Paste, this menu allows:
If right click menu is called when the Ctrl button is pressed, the menu will display functions (for C or C++ file) and labels (for ASM file). |
SourceBoost IDE can work with different toolchains. The BoostC
C compiler, BoostC++ C++ compiler and BoostBasic Basic compiler compile code directly into a .HEX file and don't need any external tools.
The C2C-plus or C2C++ compilers compile C or C++ code into assembly language, and the P2C-plus
compiler compiles Pascal code into assembly language. Then this assembly language file needs
to be assembled into data (usually this is a .HEX file) that can be programmed into a target.
Because SourceBoost IDE doesn't include an assembler, an external one is required. Starting
from version 5.3, SourceBoost IDE also supports
PICC Lite compiler from
HI-TECH Software.
For the PIC target, recommended assemblers are MPASM that is a part of MPLAB from Microchip and GPASM that is a part of GPUTILS.
SourceBoost IDE does not include a device programming application either. There is no
recommended programmer software since almost all those available on the market can be used.
The only requirement for the external programming application is the ability to open an input
file passed from a command line parameter. A similar requirement exists for
an external simulator.
Don't confuse an external simulator with the SourceBoost IDE's built-in debugger and simulator. |
Build performs multiple operations from one action. This allows the compile, assemble, program, and simulate commands to be executed sequentially from one click of the build button. Only the operations checked in the Build dialog will be performed.
Staring from the version 5.2.2, SourceBoost IDE uses make to build a project. When the user issues a build command, SourceBoost IDE creates a makefile that contains rules enabled in the Build dialog, and then calls make. Make then compares the time stamp of the input and output files for each rule, and calls an action associated with a rule only if input files are newer than output files. Thus if a project was already compiled and its sources weren't changed, the build command will not compile it again.
Sometimes it's useful to rebuild the whole project even if some project files don't need to be processed. To force a full project build use the hot keys Ctrl+F7 or Ctrl+build command. |
The Simulate option
here will invoke an external simulator, not the SourceBoost IDE debugger and
simulator. The SourceBoost IDE debugger and simulator are invoked by pressing the debug button on the tool bar. |
Starting from SourceBoost IDE version 6.86 it's possible to execute custom scripts before build is started and after a successful build. When build command is issued SourceBoost IDE looks in the project directory for a file called prebuild.bat and if found executes it. At the end of a successful build SourceBoost IDE looks in the project directory for a file called postbuild.bat and if found executes it. It's up to a developer to create and manage those files. |
Compilation converts C or C++ code into an assembly file. The structure of
the generated assembly code depends on the compile and optimization options.
The default options will work for virtually any project, but sometimes it may
be useful to change the settings based on the project needs:
This command starts an external assembler using a command line specified in the Options dialog.
The C2C-plus, C2C++, and P2C-plus language toolsuites need
an external assembler to convert the assembly file that these compilers generate
into a hex file suitable to upload to a target. The most commonly used external
Assembler is MPLAB's MPASM. Assuming it is installed in the default location,
the command line options required for that assembler are:
C:\PROGRA~1\MPLAB\MPASMWIN.EXE /aINHX8M /p%target% /rHEX /w2 /q |
Don't forget to add double quotes
around the assembler executable if the path to this executable contains spaces. For
example: "C:\Program Files\MPLAB.6.30\MCHIP_Tools\MPASMwin.EXE" /aINHX8M /p%target% /rHEX /w2 /q |
This command invokes an external programmer application using a command line specified in the Options dialog.
The exact programmer command line
depends on the programmer software you use. Here are some sample
command lines:
JDM programmer: pp06 programmer: IC-Prog programmer: sxtips or sxdev programmer: PBrenner 3.2u programmer: Quasar Electronics All Flash USB programmer: Picall programmer: You may need to change the path to the programmer software. Don't forget to add double quotes around the programmer executable if the name or path to this executable contains spaces! |
This command starts an external simulator application using a command line specified in the Options dialog. The simulate command is not in any way related to the internal ide simulator that is used when code is being debugged.
SourceBoost IDE features document printing accessible from the File menu:
A printed document can have user-defined header and footer, and fully customized margins:
SourceBoost IDE has a built-in source and assembler level debugger and clock-accurate simulator. Stepping depends on the active toolsuite. The BoostC, BoostC++ and BoostBasic toolsuites support source level debugging. The PICC Lite toolsuite also supports source level stepping. The C2C-plus, C2C++, and P2C-plus toolsuites support assembly level stepping only.
A debug session is started by pressing the Debug button - See Tool Bar. This command starts the built-in debugger and simulator, loads the project .HEX file, resets the target, and loads the Debug mode window layout.
A debug session can also be started and stopped using hot keys:
F5 | Start debug session and execute the program |
F10 or F11 or F12 | Start debug session but don't execute the program. |
Shift+F5 | Stop execution and exit debug session |
A debug session can be started only if the current project has been compiled and assembled. |
The execution line shows the position, in both source and code windows, that corresponds to the current PC (program counter). It is highlighted green:
The Debug bar is shown when SourceBoost IDE is in Debug mode. The buttons on the Debug bar are mapped to various debug commands:
Step Over | The Step Over commands executes the current instruction. If the current instruction is a call instruction, the debugger doesn't step into this call but waits until the execution returns from this call. | ||
Step Into | The Step Into commands executes the current instruction. | ||
Step Out | The Step Out command executes instructions until a return from a call instruction gets executed. | ||
Step Back | The Step Back command returns the target to the state when it was
stopped the previous time.
|
||
Run | The Run command continues execution. | ||
Stop | The Stop command stops execution. This command is active only when the target is running. | ||
Reset | The Reset command resets the target. | ||
Profile | The Profile command activates target profiling.
|
||
Snapshot | The Snapshot command updates the Register, Memory, Stack and Watch windows. This command is active only in debug mode. |
Debug hot keys make debugging more efficient. Some of these hot keys duplicate the functionality of the buttons on the Debug Bar and some are unique:
F5 | Continue code execution |
Ctrl+F5 | Run code to the cursor (or the first breakpoint) |
Shift+F5 | Exit debug mode |
F10 | Step Over |
Ctrl+F10 | Step Over on assembly level |
F11 | Step Into |
Ctrl+F11 | Step Into on assembly level |
Shift+F11 | Step Out |
F12 | Step Back |
A breakpoint can be added at any line of an .asm file that contains an
assembly language instruction.
Move the cursor to the line where a breakpoint is required, and press the
breakpoint button on the tool bar or press the F9 key.
Use the View menu or press Ctrl+B to open the Breakpoints dialog to see a list of existing breakpoints:
Double click on a breakpoint in the breakpoint list to jump to the line in the source file where this breakpoint is set. |
A watchpoint allows the execution of the program to be halted when a register changes in value. Watchpoints for registers can be set through either the Register window or the Memory window.
To quickly check the value of a symbol hold the mouse pointer over this symbol for more than 1.5 seconds. The symbol value will be shown in a tooltip near this symbol:
SourceBoost IDE features an extendable plugin system where each plugin emulates a physical device connected to the target. The standard SourceBoost IDE installation includes the following plugins:
Single LED | |
Block of 8 LEDs | |
Single button | |
Block of 8 buttons | |
7 segment and 12 segment Display with decoding | |
Speed Tester plugin to measure code execution speed | |
Digital Volt Meter Signal generator Logic Analyzer I2C EEprom Stop Watch LCD Display Analog Voltage Source |
Part of SourceBoost IDE Extra plugins package ( http://www.sourceboost.com/Products/Products.html) |
Every plugin is connected to a target port, and when the target is running each plugin changes its state based on the changes of the port it is connected to. The port value can also be changed by a plugin (for example the button plugin changes the value of the pin it is connected to).
To change the port a plugin is connected to, or plugin settings (i.e. colours), use the plugin right click menu that will display a plugin Configuration dialog:
Some plugins depend on the simulation clock rate that can be changed in the Clock Rate dialog accessible from the Settings Clock Rate... menu:
For more information and descriptions of additional plugins, refer to the Plugin System help file.
The latest SourceBoost IDE PIC16 and PIC18 simulators now support simulation of the following special registers and hardware functions of PIC microcontrollers:
Instruction Core - Including:
Interrupt Control - Including:
EEPROM - Full implementation, including:
A/D converter - only PIC16F877A and compatible types, ie PIC16C925, PIC16C926, PIC16F818, PIC16F819, PIC16F870, PIC16F871, PIC16F872, PIC16F873, PIC16F873A, PIC16F874, PIC16F874A, PIC16F876, PIC16F876A, PIC16F877, PIC16F877A. Other devices with A/D Convertor are not supported.
A/D Convertor Features:
Timer1 - 16 bit timer/counter, including:
Timer2 - 8 bit timer/counter, including:
CCP1 and CCP2 - Capture and Compare 1 and 2, including:
PortA - General purpose I/O port. Full I/O port implementation including:
PortB - General purpose I/O port. Full I/O port implementation including:
PortC - General purpose I/O port. Full I/O port implementation including:
PortD - General purpose I/O port. Full I/O port implementation
PortE - General purpose I/O port. Full I/O port implementation
PortF - General purpose I/O port. Full I/O port implementation
PortG - General purpose I/O port. Full I/O port implementation
Simulator Limitations
Instruction Core - Including:
Interrupt Control - Including:
Timer0 - timer/counter, including:
PortA - General purpose I/O port. Full I/O port implementation including:
PortB - General purpose I/O port. Full I/O port implementation including:
PortC - General purpose I/O port. Full I/O port implementation
PortD - General purpose I/O port. Full I/O port implementation
PortE - General purpose I/O port. Full I/O port implementation
PortF - General purpose I/O port. Full I/O port implementation
PortG - General purpose I/O port. Full I/O port implementation
Simulator Limitations
SourceBoost IDE was designed to be independent from the toolsuites it uses as much as possible. Each such toolsuite consists of a DLL with a well defined API. Though this API is not publicly available, we are open for cooperation should you decide to integrate your toolsuite into SourceBoost IDE.
In the SourceBoost IDE package the ide, debugger, and simulator are logically and physically separated and communicate with each other through well defined APIs. Such separation makes the whole system extremely flexible for future extensions. For example, adding ICD support to SourceBoost IDE will only require replacing the simulator DLL with another DLL that implements simulator API from one side and talks to ICD hardware from another; the ide and debugger would be unchanged. Another example is the integration of the gnu toolchain (gcc, gdb, etc.) into SourceBoost IDE. This will require replacing the debugger DLL with a DLL that talks to gdb and writing a toolsuite DLL that will manage the gcc compiler. Though these APIs are not publicly available, we are open for cooperation should you decide to integrate your tools into SourceBoost IDE.
The SourceBoost IDE installation includes a sample project for PICC Lite compiler. The project is located in the Samples\Picc.Lite sub-directory in the directory where SourceBoost IDE is installed (the default SourceBoost IDE installation directory is C:\Program Files\Picant). Go to the ProjectOpen... menu:
and navigate to the directory where SourceBoost IDE is installed and then to its Samples\Picc.Lite sub-directory:
. When the project is open verify that the PICC Lite toolsuite is selected. Go to the SettingsToolsuite... menu:
and select the Picc Lite Toolsuite:
Then make sure that IDE knows where to look for the PICC Lite compiler. Go to SettingsOptions... menu:
select the Tools page in the Picc Lite compiler options dialog and enter the full path to the PICC Lite compiler in the Compiler field:
That's it. Now you are ready to edit, build, and debug your project.
SourceBoost IDE, C2C-plus, C2C++ and P2C-plus compilers are distributed as shareware products with a trial period (usually 15 days) to try these applications. After the trial period expires only one target will remain supported. To unlock other targets a compiler license must be obtained.
Limited versions of the BoostC, BoostC++ and BoostBasic compilers can be used for non commercial purposes without any license. To remove limitations and to be able to use them in commercial projects relevant license must be obtained.
To order a license visit http://www.sourceboost.com or send an e-mail to support@sourceboost.com. After your payment is recieved an e-mail will be sent to you with a key and description how to unlock the product.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
THE AUTHOR RESERVES THE RIGHT TO REJECT ANY LICENSE (REGISTRATION) REQUEST WITHOUT EXPLAINING THE REASONS WHY SUCH REQUEST HAS BEEN REJECTED. IN CASE YOUR LICENSE (REGISTRATION) REQUEST GETS REJECTED YOU MUST STOP USING THE SourceBoost IDE, BoostC, BoostC++, BoostBasic, C2C-plus, C2C++ and P2C-plus COMPILERS AND REMOVE THE WHOLE SourceBoost IDE INSTALLATION FROM YOUR COMPUTER.