Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About Havier

  • Rank
  1. I think 'static' should be used only inside functions to tell the compiler not to use that memory space in other functions, e.g. the data is preserved between 2 calls of that function.
  2. I have found another efficiency issue, but I didn't want to open a new topic. It is the following: unsigned long u, v; v=u>>16; this generates 136 lines of assembly code, mostly RRF (of course) - a lot of code space, a lot of time, this could be solved by moving some bytes, however.
  3. thanks for fixing it
  4. Yes, it seems to me that you did not read my comment in the file ISABUS8.H. Increase the value of 'PktMax' in that file, for ex. to 60, and try to compile. You should get the error message.
  5. Havier

    Bit Bug

    OK, I see. I had expected the same behaviour as in "if (length&2) {}".
  6. Havier

    Bit Bug

    BoostC 6.30 gives wrong result: odd=(length&2); 0084 3002 MOVLW 0x02 0085 0570 ANDWF chksum_00000_arg_length, W 0086 00FC MOVWF CompTempVar65 0087 10EB BCF chksum_00000_1_odd,1 0088 187C BTFSC CompTempVar65,0 0089 14EB BSF chksum_00000_1_odd,1 i.e. odd=least significant bit of (length&2) But, according to ansi c, odd should be 0, if (length&2)==0 1, if any other value (1-255)
  7. I've downloaded the newest ver 6.30 of your SouceBoost, i tried to build my program. Compiling was ok, but the linker threw an error: no remainig RAM block big enough for: and a lot of variable names. Same code was translated, before that, with ver 6.25 successfully.
  • Create New...