Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/24/07 12:48
Modified:
  03/24/07 13:07

Read: times


 
#135769 - questions, misunderstandings, answers
Responding to: ???'s previous message
My question to Erik is how Vanilla is his style? Several postings relate to self-modifying or non-standard coding.
I have posted "in the olden days when computers were slow i did some self-modifying code, that would be AGES ago. As to 'vanila' I choose assembler if 'vanilla' C will not do. Tweeking 'optimum' C is usually a lost cause.

I suspect that we all get some satisfaction in writing the fastest or smallest hand-crafted assembler.
I have not done so for 'satisfaction' since long ago, I do it at times out of necessity.

However you need to avoid these habits for portability.
In my opinion, the only way to achieve ANY 'portability' in embedded is to have "plain vanilla" in module group a and "device specific" in module group b. That way group a is portable and group b is a rewrite.

If one or two functions do need the performance then I isolate them completely in separate source files.
see above

The AVR runs at a higher speed than most 8051s. In my experience compiled C code will execute fast enough without tweaking.
That may be your case, what I have to port is running on a 100MHz one-clocker. Fortunately the AVR sign is much smaller and amber only. This gives some 'wiggle room' so, maybe, some of what has required assembler for the large color signs can be done in C for this smallish amber sign. Thus the code I have to port (I just hired the original designer of the AVR sign as a consutant to do the basic porting and he would not know how to spell 'assembler') but I'll have to specify the 'rules' refine and maintain myself.

Erik

PS *optimum C is still 'plain vanilla' what I mean by optimum is things like being aware that a 'switch' in Keil C is a sloven process and use 'if', 'if else' instead.

List of 66 messages in thread
TopicAuthorDate
Keil \\\'51 and AVR            01/01/70 00:00      
   AVR?            01/01/70 00:00      
      AVR            01/01/70 00:00      
      you got me, Atmel AVR            01/01/70 00:00      
   The standard compiler for the avr is avr-gcc            01/01/70 00:00      
      OH NO            01/01/70 00:00      
         Well, at least you do have the opportunity            01/01/70 00:00      
            I'll tell my boss that the project will get delaye            01/01/70 00:00      
               On the other hand            01/01/70 00:00      
                  part of the reason for this post            01/01/70 00:00      
         Do not use            01/01/70 00:00      
            michael some questions            01/01/70 00:00      
               partial answer            01/01/70 00:00      
                  actually            01/01/70 00:00      
               IAR...            01/01/70 00:00      
      used avr-gcc in the year 2000 and            01/01/70 00:00      
   Time to eat your words!            01/01/70 00:00      
      not really            01/01/70 00:00      
   you can save a lot of time if you create            01/01/70 00:00      
      very helpful, thanks            01/01/70 00:00      
   yes and if you can describe in more            01/01/70 00:00      
      ok, here we go            01/01/70 00:00      
         RESTATE PURPOSE of thread            01/01/70 00:00      
            What bugs???            01/01/70 00:00      
            I suggest Imagecraft C compiler            01/01/70 00:00      
               Ive found that gcc produces fast code and its free            01/01/70 00:00      
                  Worthless statistics            01/01/70 00:00      
                     the issue here is            01/01/70 00:00      
                        if I understand it right...            01/01/70 00:00      
                           Not so strange?            01/01/70 00:00      
                              this is slightly different            01/01/70 00:00      
               GCC - over-strict ANSI?            01/01/70 00:00      
            CodeVision AVR            01/01/70 00:00      
               CodeVision - no Linker?            01/01/70 00:00      
                  No linker            01/01/70 00:00      
                     pray tell            01/01/70 00:00      
                        IAR            01/01/70 00:00      
                           sounds par for the course            01/01/70 00:00      
                     No linker with CodeVision AVR            01/01/70 00:00      
                        Both '51 and AVR at the same time?            01/01/70 00:00      
                           yes and no            01/01/70 00:00      
                           8051 to AVR migration            01/01/70 00:00      
                              questions, misunderstandings, answers            01/01/70 00:00      
                                 so you have the solution?            01/01/70 00:00      
                                    it's IAR            01/01/70 00:00      
                                       Just for the AVR...            01/01/70 00:00      
                                          I do not know, I did not ask            01/01/70 00:00      
                                             some snippets on AVRs...            01/01/70 00:00      
                                                interesting, evidently they have taken upon themse            01/01/70 00:00      
                                                   your link was broken            01/01/70 00:00      
                                                      But what about 1 instead of I?            01/01/70 00:00      
                                                         this is not about mistypes, it is about missing            01/01/70 00:00      
                                                            apparently, Atmel admits it...            01/01/70 00:00      
                                                               so where is the 51freaks equivalent            01/01/70 00:00      
                                                                  the "confirmation" is apparently...            01/01/70 00:00      
                                                               you just have to accept eric doesnt like atmel            01/01/70 00:00      
                                                   or            01/01/70 00:00      
               bit variables on WINAVR            01/01/70 00:00      
                  using avrstudio and gcc generated .coff files            01/01/70 00:00      
   well, the whole story seems to be not            01/01/70 00:00      
      My experience            01/01/70 00:00      
   just a few words            01/01/70 00:00      
      SiLabs non-American?            01/01/70 00:00      
         not the chip, the board            01/01/70 00:00      
   WINAVR experience            01/01/70 00:00      
      WinAVR <=> GCC            01/01/70 00:00      

Back to Subject List