|
|
View previous topic :: View next topic |
Author |
Message |
olivercox
Joined: 12 Dec 2005 Posts: 2
|
Ugly awkward UI and support during the last year |
Posted: Sun Jan 07, 2007 12:17 pm |
|
|
I've been leaving the new "improved" [sic] interface hoping that it might improve - no such luck!
I've also just renewed my maintenance agreement but am beginning to wonder what I'm paying for!
CCS has been such a wonderful compiler for so many years it is really sad to see what is happening yet again with a new version.
Please please please CCS stick to what you're good at, put your effort into making the compilers work well and forget the IDE. Just make the old IDE work with the new compilers properly for those that want to use your IDE, and leave the rest to use the MPLAB IDE (which is improving all the time anyway). |
|
|
MikeW
Joined: 15 Sep 2003 Posts: 184 Location: Warrington UK
|
|
Posted: Sun Jan 07, 2007 2:52 pm |
|
|
I am also getting very fed up with CCS
I need to work with a PIC16F886.
the V3 wont work with it, the V4 020 is still poor.
i am close to giving up, the Mikroelektronic is becoming more interesting ...
I rennewed my maintainence agreement just to get 886 compiler, thus far, it aint worth it |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Mon Jan 08, 2007 4:09 am |
|
|
MikeW wrote: | i am close to giving up, the Mikroelektronic is becoming more interesting... |
A quick Google turns up www.sourceboost.com which is I assume what you are thinking of using instead. I had not seen this compiler before but it looks quite interesting.
This is a sad state of affairs really. CCS has a nice compiler (forget the new IDE) with a good range of drivers and examples but people are really going to think twice when they purchase version 4 only to find out that it is should still really be in Beta. Once people find an alternative that works for them, they are unlikely to return to CCS.
I also use SDCC (which apparently now has quite good support for PICs) for 8051 parts and notice that there has been some discussion recently on porting projects that were previously compiled using CCS because the level of support (from other community members) is better and leads to rapid bug fixes. I have posted three bugs to CCS since the start of December and I have had no feedback on any of them - they have not yet even been assigned a priority! |
|
|
ckielstra
Joined: 18 Mar 2004 Posts: 3680 Location: The Netherlands
|
|
Posted: Mon Jan 08, 2007 4:41 am |
|
|
MikeW wrote: | I need to work with a PIC16F886.
the V3 wont work with it, the V4 020 is still poor. | If you have the PCWH compiler you can use chipedit.exe to add the new device. See http://www.ccsinfo.com/forum/viewtopic.php?p=74466 for a step-by-step procedure.
Without PCWH you could ask CCS to send you an updated devices.dat file for v3. |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Thu Jan 18, 2007 1:35 am |
|
|
New version out today 4.021 however it still has issues (see link) |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
RE: V4 |
Posted: Thu Jan 18, 2007 9:04 am |
|
|
Hi,
Is Microchip's version better than CCS ???
thanks
arunb |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
Re: RE: V4 |
Posted: Thu Jan 18, 2007 9:26 am |
|
|
arunb wrote: | Is Microchip's version better than CCS ??? |
This should help you decide: CCS C vs Microchip C18 |
|
|
arunb
Joined: 08 Sep 2003 Posts: 492 Location: India
|
RE: |
Posted: Sat Jan 20, 2007 11:19 am |
|
|
Hi,
I have read the link, I think the PCH version should be OK for most of my projects, but after reading thiese posts I am having doubts, are the other versions (apart from 4) any better ??
thanks
arunb |
|
|
Ttelmah Guest
|
|
Posted: Sun Jan 21, 2007 9:46 am |
|
|
Yes.
Basically, 3.249, 99% works. It has some faults (for instance, the support for the 'J' chips), and lacks some of the new features (though some are present, and generally work better than in the V4 releases so far. Most users here writting code that they want to actually work, are using this version.
The core problem is that CCS, have an attitude to 'new releases', that should be a capital offence (possibly downgradeable to just skinning alive...). They appear to have so real setup to beta test anything. What they put up as 'new releases', are at best 'betas'. At the start of V4, they launched what they claimed was a 'beta test' program, but versions offered were poor alpha releases, and the product was marketted, before even 1/4 of the bugs were fixed. Currrently the V4 releases are starting to work for older code, but as yet few of the 'new features' produce good results. Even worse, support for V3, was dropped months before the launch of V4, and the known bugs, though often only minor, remain unfixed.
I'd suspect the core problem is actually bad documentation, and a poor idea of program structure. I actually wonder if anyone at CCS, has even heard of a compiler 'T' diagram....
Best Wishes |
|
|
anauta
Joined: 15 Jan 2007 Posts: 10 Location: EU
|
Version 4.022 errors |
Posted: Mon Jan 22, 2007 4:51 am |
|
|
Hi,
After some trouble with 4.021 (verification errors) I just tried the latest 4.022.
No flash verification errors anymore
However, it fails to write to EEPROM properly (strage or no write at all).
PIC4520, Windows XP SP2, PCWH 4.022.
Just went back to 4.020, no errors, so I am happy...
Greetings,
Auke Nauta |
|
|
anauta
Joined: 15 Jan 2007 Posts: 10 Location: EU
|
Version 4.023 errors |
Posted: Wed Jan 24, 2007 5:20 am |
|
|
Hi,
Latest versions will not correctly write float's to eeprom:
Version 4.020 is OK.
Anyone else has the same experience?
Greetings,
Auke Nauta
Code:
------
float read_eeprom_float(int adr){
int *k,i;
float f;
for (i=0;i<4;i++){
k=&f+i;
*k=read_eeprom(adr+i);
}
return f;
}
void write_eeprom_float(int adr, float f){
int *k,i;
if (read_eeprom_float(adr)==f) return; // no change, exit
for (i=0;i<4;i++){
k=&f+i;
write_eeprom(adr+i,*k);
}
} |
|
|
Ttelmah Guest
|
|
Posted: Wed Jan 24, 2007 11:21 am |
|
|
Your code would not work on any compiler other than CCS, so it might well be worth trying 'proper' C syntax, to see if V4, is actually behaving _properly_ at last wth regards to pointers!...
The 'point' is that when you increment a pointer in C, it is _meant_ to move to the next object of the type 'pointed to'. To move through the bytes, then requires you to cast the pointer to a 'byte', 'int8', or 'char' pointer, before the increment. So:
Code: |
void write_eeprom_float(int adr, float f) {
int8 *k,i;
if (read_eeprom_float(adr)==f) return; // no change, exit
k=(int *)&f;
for (i=0;i<4;i++) {
write_eeprom(adr+i,*(k++));
}
}
|
See if this works (and the same change on the oher routine).
If so, then V4, is doing something 'right'...
Best Wishes |
|
|
anauta
Joined: 15 Jan 2007 Posts: 10 Location: EU
|
|
Posted: Thu Jan 25, 2007 3:48 am |
|
|
Thanks ttelmah,
Yes, the code works.
Apparently CCS changed this behaviour from version 4.021.
Greetings,
Auke |
|
|
Ttelmah Guest
|
|
Posted: Thu Jan 25, 2007 8:43 am |
|
|
Very interesting.
Many moons ago, CCS switched to the 'proper' syntax, on one version of V3. It caused so many things to stop working (a lot of their 'demos', use their own incorrect syntax), that they quietly changed back a couple of versions latter. This is why, whenever I post code using pointers, I always explicitly force them to address an 'int', and do the arithmetic myself, since this way it'll work whichever way the compiler behaves.
Now, if CCS are getting this completely 'right' now, the behaviour should switch back, if you select 'CCS3' for the compiler syntax. If so, then this part of the new compiler really is orking just as it should.
Best Wishes |
|
|
Darren Rook
Joined: 06 Sep 2003 Posts: 287 Location: Milwaukee, WI
|
|
Posted: Thu Jan 25, 2007 12:53 pm |
|
|
Ttelmah wrote: | Very interesting.
Many moons ago, CCS switched to the 'proper' syntax, on one version of V3. It caused so many things to stop working (a lot of their 'demos', use their own incorrect syntax), that they quietly changed back a couple of versions latter. This is why, whenever I post code using pointers, I always explicitly force them to address an 'int', and do the arithmetic myself, since this way it'll work whichever way the compiler behaves.
Now, if CCS are getting this completely 'right' now, the behaviour should switch back, if you select 'CCS3' for the compiler syntax. If so, then this part of the new compiler really is orking just as it should. |
I don't think CCS ever went back to the 'wrong' way. I have been writing code the 'correct' way for several years. _________________ I came, I saw, I compiled. |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|