Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by fransp

  1. Update: I did manage to get a hex file, although I did not check whether it would run. Here how I worked around it. Use another assembler, MPASM, I did it through changing the Toolsuite to C2C But before doing that: Add goto ' s for each label within the asm{} Insert dummy arguments for the HIGH() and LOW() Run in BoostC the compile and link. Open the .asm Cut and past the label, that's where the goto where for to get the label from, other wise BoostC will not make one in the asm when not referenced. Add the HIGH and LOW to the label. Remove the goto... swith the toolsuite to C2C run Assemble You are done. Despite the failed warning: for a path name being too long MAPASM produced a .lst and .hex I am still in for any other 'solution', but for now my project is still on the road. With best regards. Frans.
  2. That is not a bug. Enclose the statements in { and } after if and else when you have more than 1 (one) With best regards, Frans.
  3. Hi All, BoostC. How do I get the HIGH and LOW of an asm { label: } inside the asm itself. Like: asm{ Tentr: movlw HIGH(Tstart) ...... ....... Tstart: .... } The assembler sees the HIGH as an identifier. If I peek at other assembled code I see the above HIGH() construct. I must be doing something wrong here, but what? Thanks. With best regards, Frans.
  4. Hi All I come from other languages and switched to C recently. Who can me guide to a good tutorial about the use of the #include of .h and .c files. Let me be clear, I do not want how to use them, like you must put is there and there and this and that, because that does not work for me, I want to know why I am using them only then I can understand what to put in it. Despite a course on C, the in and outs of #include, .h etc, did not became any clearer to me. So up to now all my project code is in one file. I tried a lot with the ' add file to project' of BoostC, but that did not ring a bell to bell either. Any suggestions, except quitting, other job, other language etc, are appriciated. With best regards, Frans.
  5. This is already there Settings -> Comment selection. This is a sample macro included into the installation. Regards, Pavel <{POST_SNAPBACK}> Hi Pavel, Oeps, now I have to do...reading the manual again!:-) With best regards, Frans
  6. Hi Dave, Pavel, New Feature: the code editor. Commenting out the whole statement/subroutine, not just the line the marker is on. or... Commenting out selection. My preference is the order given. Note: when is is already done, give me punishment :-) With best regards, Frans.
  7. Hi Pavel, Thank you. All is working. My apologies for the trouble I have generated. So I am afrais to ask! I still have an idea of knocking 1 instruction of this same var complement, but will test it first and let you know anyway. Can't resist. Thanks again for the wonderfull SourceBoost IDE and BoostC. With best regards. Frans.
  8. Hi all, It must be me, I am still learning C. So... But... when I do this: volatile bit pspmode@TRISE.PSPMODE ; and look in the workspace/browse I see the PSPMODE appearing as a variable. When I double click it I am transported to the place I type it, so it must be mine alone. Some one any clue? With best regards, Frans.
  9. No one doesn't need to uninstall previous version before installing a new one. Which project do you try to compile? Can you zip the whole project directory and send to support@picant.com. Regards, Pavel <{POST_SNAPBACK}> Hi Pavel, It has been sent. Frans.
  10. Do you have this file on your computer? Regards, Pavel <{POST_SNAPBACK}> Hi Pavel, On the stated location ther exist a file system.h. Yes I forgot to tell you how I installed the new 5.9.6 It was straight over the previous on, so without unistalling 5.9.5. Do I have to uninstall any previous versions? With best regards. Frans.
  11. Hi Dave,Pavel, I got the last new release 5.9.6 freshly downloaded. But.... Build does give a FATALl: Don't know how to make: C:\Program Files\Sourceboost\include/system.h I still can do a compile and link and program, seperately without any FATAL: message. With best regards. Frans.
  12. fransp

    Not Realy A Bug

    Hi Pavel. Thanks for the quick repy. But there is something important thing left out. The double bittest and skip method does not work on a variable which is source and destination So you have to treat LED1 = !LED1 differently form LED1=!LED2 Because if source and destination are the same then halfway the code you are changing the source you are not still finished with. With best regards. Frans.
  13. fransp


    Hi, Pavel,Dave, What about a Todo markup, and a extra tab in the workspace. This idea is found in Python. The markup can be looking like // Todo: In the tab in the workspace all the lines with the markup are summarized. One can think of adding an urgency marker like: ! The marker would simply count the number of !. So: // Todo: Try to get a Todo: remarks!!!!!!!! This will be visible in the workspace tab as Line Urgency Entry 20 8 Try to get a Todo: remarks I hope this is clear enough and that you will find it usefull enough to implement. You do not have to do it exactly as described, use any method you feel fit. With best regards. Frans.
  14. Hello Dave, Problem solved. Thanks. Frans.
  15. Hi All, Which number s in the delay_ ( ) can I expect to be valid. I tested delay_ms(250) to be 250 ms, delay_s(2) to be 2 seconds. But ... delay_ms(750) does not produce 750 ms. Do I something wrong here? Yes I used this : #pragma CLOCK_FREQ 20000000 #pragma DATA _CONFIG, _PWRTE_OFF & _BODEN_OFF & _WDT_OFF & _LVP_ON & _CPD_OFF & _DEBUG_OFF & _HS_OSC & _CP_OFF Thanks, Frans.
  16. Hi Pavel,Dave. Compiler BoostC. Just coming from another language and am still fighting the C barrier. So if it is not done 'right' so please forgive me. My oppinion: Knowing why and how a compiler works allows you to write better code. That is why I did the following test. volatile bit LED1; volatile bit LED2; LED1 = LED1; LED1 = LED2; LED1 = !LED1; LED1 = !LED2; Frist two assignments are compiling to a double bittest and skip. Ok, that is what I would do in asm. The first assigment should have been optimized out? For the third you cannot use this double bittest and skip, because you make changes to what you have to test. So an intermediar is ok. But in essence this intermediar is not needed in the fourth assignment. Here you can use the bittest and skip with set and clear interchanged. Am I overlooking something. Do I have to post this kind of remarks: in another section? never again? Wiht best regards, Frans.
  17. Why do you need the LVP to be enabled if you're using a bootloader? I thought the BL only needs the code not to be protected... Am I completely wrong? It's crystal clear! Thanks a lot for your explanation. I'll tie down RB3 with a 10K resistor to avoid any further issue. Kind regards <{POST_SNAPBACK}> Hi azoto, You are right I do not know for sure you need the LV-programming together with a bootloader. The thing I know is that the LV-programming comes defaulted from the factory on the f877. You can only switch it off, but you need HV-programming to get it back on, so the datasheet says. With best regads, Frans.
  18. The update checking only provides checking for the complete SourceBoost package. The minor patch updates are not included in this. The update path needs to be unzipped into the installation directory (the default being "C:\Program File\SourceBoost" ). Regards Dave <{POST_SNAPBACK}> Hi Dave, Thank you for the answers and SourceBoost. All issues cleared. With best regards, Frans.
  19. Hi azoto, The two methods are totally different. Changing the pin direction is done wit a running PIC. If the LV-programming function is enabled, and that is what you want with a bootloader, the PIC will sense the RB3 pin on start-up/reset, if this pin is sensed as '1' the PIC will switch to programming mode. So if it happens that RB3 is '1' during startup the PIC will go into programming until RB3 becomes '0, on which normal operation will start, unless RB3 interferes again before the PIC has reached the direction change instruction. Leaving an input pin open will bias the pin to the digital 0/1 threshold, so any disturbance picked up by the pin wil swith the state of the pin input detector. So tying RB3 with a resistor to ground ensures that RB3 is '0' during startup/rest. The value should not be too low and too high, I normally use 10K, this value is high enough so it will not load the output of RB3 or another source when RB3 is used as a digital pin. Hope its clear enough. With best regards, Frans.
  20. Yes this would be nice but this feature will require maybe 10 times more code to make wizard do this. Regards, Pavel <{POST_SNAPBACK}> That you for thinking about it. put it waydown on the list. With best regards, Frans.
  21. Hi All, I have used the project wizard to start a new project. It let me fill in al ot of parameters. The wizard generates code for me, great. Would it not be nice to have the wizard being able to edit this too? Let say, when the wizard is rerun on an exsiting project the initialization code is read back and you can use the wizard to change it. With best regards, Frans.
  22. Hi, All I am pretty new on SourceBoost, and what I have seen is grate stuff. There is one thing I want to have cleared out. When I fire up SourceBoost I get the message that a new version of BoostC did came out, 2.2.3. But when I ask SourceBoost to check for newer versions it says I have the latest allready. When I compile something wiht BoostC it says ver 2.2 I have downloaded the update, but how do I install it, there seems to be only .exe in the zip, none of them appears to me to be the installer. With best regards, Frans.
  23. Hi Cart, I have read the whole thread and maybe the answer is in there, but.... On my first Bootloader experiment I had similar problems and was thinking about the bootloader code too. The PIC ran sometimes when I hit the reset button. Later I found that I could stop and start the PIC by placing my finger on the PIC. Finger o, PIC stopped. Finger away, PIC ran. So no bootloader problem. The remedy: You need a pull down resistor on pin RB3. RB3 is the PGM command pin in LV-programming mode. If you leave the pin floating, little is needed to push and pull the PIC in and out of programming mode. A 1(one) is PGM, a 0 (zero) is run. The f877 comes default from the factory in LV-programming. With best regards. Frans.
  • Create New...