Jump to content

Pavel

Administrators
  • Posts

    1,471
  • Joined

  • Last visited

Posts posted by Pavel

  1. A new version of SourceBoost 7.30 is ready and available to download from http://www.sourceboost.com What's new:

     

    1. Improved compiler speed. Now it is about 3x faster.
    2. Added IP library that implements the following protocols: ARP, ICMP (ping only), IP, UDP, DHCP (client) and simplified UDP sockets.
    3. General improvements of BoostWizard
    4. Added support for board files into BoostWizard
    5. Added support for binary semaphores into Novo
    6. Added UDP demo project (requires Novo libraries from goodies.exe)
    7. Added support for 16F1459 and 16LF1708
    8. Fixed code generation for left shift of byte by 16
    9. Fixed error when result of complex expression that used left shift wasn't promoted to 32 bits
    10. Added detailed description of long promotion into compiler help

     

    Regards,

    Pavel

     

  2. Log in as administrator, start preg and register again. It's important to be logged in as administrator as just running preg as administrator may not be enough.

     

    If this fails start command prompt (as administrator), navigate to your SourceBoost installation directory and start compiler followed by the 'register' command line argument like:

     

    boostc_pic16.exe register

     

    This will open a registration dialog to enter your license details.

     

    Re-compile all your source files after you enter your license information. If you don't linker may think that obj files were compiled with unregistered compiler copy and will complain.

     

    Regards,

    Pavel

  3. You need to used the floating point library built with the same compiler version that you use (in your case 6.97). Normally it's the library included into SourceBoost installation that you use. From your post it sounds that this might not be the case.

     

    Tip: try to add linker command line argument -v. This will trigger more detailed linker output which might tell more details about this problem.

     

    Regards,

    Pavel

  4. We have beta IP stack almost ready. Currently it includes IP, ARP, ICMP, DHCP and UDP and offers posix like socket API to send and receive data. TCP is not there yet but we plan to add it sometime soon. The code is based on the development board PIC-MAXI-WEB from https://www.olimex.com/Products/PIC/Development/PIC-MAXI-WEB and is designed to work with all PIC18 targets that support hardware ethernet.

     

    We need to know if there is enough interest for this code to release is soon as beta or if people prefer to wait and get a more stable release.

     

    Regards,

    Pavel

     

  5. I installed 7.22 and received the following error:

     

    Building...

    "C:\Program Files (x86)\SourceBoost\boostc_pic18.exe" music.c -t PIC18F452 -idx 1 -pp localhost:5584 -obj Debug -d _DEBUG

     

    error: unsupported toolchain

    error: remote build failed

    BoostC Optimizing C Compiler Version 7.22 (for PIC18 architecture)

    http://www.sourceboost.com

    Copyright© 2004-2014 Pavel Baranov

    Copyright© 2004-2014 David Hobday

     

    Single user Lite License (Unregistered) for 0 node(s)

    Limitations: PIC18 max code size:8192 bytes, max RAM banks:2, Non commercial use only

     

    music.c

     

    BoostBuild Client Version 7.21

    http://www.sourceboost.com

    Copyright© 2010-2014 Pavel Baranov

    Copyright© 2010-2014 David Hobday

     

    connecting to server

    connection established

    requesting server info

    server info received

    done

     

    failure

    error: failed

    Done

     

     

    Not only did it not work, it is now unregistered.... again. Is there not an EASY way to gt this thing to work?

     

    That's because when you installed 7.22 it overwrote the BoostBuild patch reverting back to one that you had originally and that was broken. You need to install SourceBoost 7.22 and than install BoostBuild patch from the link in the previous post http://www.sourceboo...ostbuild722.exe

     

    You have never responded if you have checked your antivirus.It could be the cause of the compilation speed issues you have.

     

    Regards,

    Pavel

  6. It apparently connects, but I am getting the following output:

     

    Building...

    "C:\Program Files (x86)\SourceBoost\boostc++_pic18.exe" 18F452.cpp -t PIC18F452 -idx 1 -pp localhost:5584 -obj Debug -d _DEBUG

     

    error: unsupported toolchain

     

    error: remote build failed

    BoostC++ Optimizing C++ Compiler Version 7.21 (for PIC18 architecture)

     

     

     

    You need to use SourceBoost 7.22

     

    Regards,

    Pavel

  7. The BoostBuild system in 7.22 is broken again :( (Sorry about this.) We will prepare a patch for you today or tomorrow and let you know via this thread or PM.

     

    BTW did you check if that's your antivirus who slows down the compilation?

     

    Regards,

    Pavel

  8. I know this is an old topic, but I just bought a new laptop for mobile compiling of the sourceboost programs. The laptop is an Intel Core i7 2nd Gen. 2670QM, 8GB ram. This thin is faster than my desktop. My program that I just compiled on the DESKTOP took all of 23 seconds. On the laptop it too 307 seconds.

     

    You guys out there are alot smarter than me, so can anyone tell me how in the world to speed this thing up? This is unbearably slow. The program is only 1.5k for crying out loud. There MUST be some kind of solution to this.

     

    Any ideas?

     

    The compiler start up time consists of two major parts: executable decompression and code parsing. The compiler executable is stored in a compressed format and every time it is launched it is decompressed. The second time hungry component is code parser that was built on a technology that was the best at the time the compiler development was started but as it turned out isn't the fastest.

     

    Things that will speed up the compilation in the order of importance are bigger computer RAM, faster CPU and faster HD. For example code that takes 5sec to compile on my i7/8G/SSD desktop takes about 30sec under virtual machine that runs on the same desktop.

     

    Another option that will speeds up compilation considerably when compiling multiple source files is to start compiler once with all source files passed in compiler command line rather than starting compiler for every source sile separatly (or use one big file for the source code rathet than many smaller files). And lastly if using SourceBoost sbmake.exe utility (that is used by SourceBoost IDE when the build command is issued, by Mplab X but not by MPLAB) use multiple build threads (default is 1).

     

    Compiler is slow, linker is fast. Build your stable code into a library and add this library into your project.

     

    Check if your anti virus slows compiler start up. The delay introduced by anti virus may be considerable.

     

    If you have a fast desktop and slow laptop it may be worth to try the SourceBoost BoostBuild server. Enable server service on the desktop and use the -pp copliler option when compiling on the laptop (for more information see the Remote Build System chapter in the SourceBoost user manual).

     

    Regards,

    Pavel

     

    PS: There seems to be something wrong with the remote build system in the 7.21 release. We are looking into this and fix will be available soon.

  9. #include <system.h> //don't include BoostCPic18.h or BoostCPic18.h
    #include <string.h> //under MPLAB or MPLAB X add 'libc.pic18.lib' to your project
    
    //Target PIC18F67K22 configuration word (please add)
    
    //Set clock frequency (modify to suit your board)
    #pragma CLOCK_FREQ 4000000
    
    int  x@0x100;
    
    void interrupt( void )
    {
    }
    
    void interrupt_low( void )
    {
    }
    
    void main( void )
    {
    	char string[] = "My test";
    	x = strlen(string);
    	
    	//Endless loop
    	while( 1 ) ;
    }
    
    

    When you say compiler shows error or is not recognised by the compiler do you really mean compiler or it's MPLAB who shows the errors? If that's MPLAB it doesn't necessarily mean that the code is wrong, just that MPLAB doesn't know how to parse it.

     

    Regards,

    Pavel

  10. SourceBoost 7.21 release candidate is availabel to download from http://www.sourceboost.com/CommonDownload.html This release fixes all major known issues, adds support for couple new targets (16F24K50/25K50/45K50 please add them to the BoostCPic18.h system header if you want to use these targets), support for arrays inside linear address range for PIC16 with extended instruction set and adds the 'reset layout' IDE command.

    There will be another release sometimes soon as this release candidate has an unresolved yet issues around dynamic memory allocation functionality for PIC16 with extended instruction set that we still investigate. Apart from that everything else seems to work fine. All our regression tests have passed so please try this rc and let us know if you find any problems.

     

    Regards,

    Pavel

  11. Before entering the license key please make sure you are logged in as administrator.

     

     

    Having installed 7.20, it is impossible in the radio-box of preg.exe to choose "SourceBoost IDE".

    By 'impossible' do yuo mean that the name and key fields become grayed out. That's how it is supposed to work. Just press the OK button and this will show another form to enter your IDE license name and key.

     

    It is however possible to choose "BoostC compiler" but after typing in my own key this results in: "Your SourceBoost IDE license is not valid for this SourceBoost IDE version". Or: "Invalid name or key (not registered)"

    SourceBoost IDE and BoostC compilers use different license keys. An IDE licens ekey will not work with the compiler and vice versa.

     

    Pavel advised me to try the above mentioned "Default Lite Key" ("0D7D-A279-54...") but that doesn't work either, perhaps because I don't have a Lite Version but instead the Full Version.

    SourceBoost IDE executable is exactly the same on the Farnel CD or downloaded from SourceBoost web site (given they have the same release number) and lite key will work with any of them. If preg doesn't work for you try to register from command line. To do this open command prompt, navigate to your SourceBoost installation directory and launch ide.exe follofed by the 'register' command line argument like:

     

    ide register

     

    This will launch an 'Enter key' dialog where you can enter your IDE license details.

     

    Regards,

    Pavel

  12. It does change the code execution quite a bit:

     

    The current code structure always executes the do something else part, whether if(something) evaluates to true or not..

    No it's not (or we are looking at different code). If the if(something) part evaluates to true it executes the return statement and never gets to the do something else part:

     

    unsigned char i2c_WRITE(unsigned char i2c_data)
    {
         ...
        if (T_MODE & i2c_HW)   //<<<<<<<< if this evaluates to true
        {
            ...
            return (0); // successful exit       //<<<<< this code exits the function and 
                                                 //<<<<< code further down is not executed
        }
     
        // here for i2c software driver
        l_wcol = 0; // clear write collision flag 
        i2c_SSPBUF = i2c_data;
        ...
    }

     

     

    Regards,

    Pavel

×
×
  • Create New...