RS08
Fixed point types and sine wave generation
C6808 | MPC | RS08We've found that the variety of data types offered by the compiler is
of paramount importance to the ease and effectiveness of embedded
programming. Having lots of data types makes implementing your
programming solution easier. It also removes a big source of error:
the hand-optimization needed to encode data in assembly programs.
Starting in 2007 we're offering a large variety of fixed point data
types in new releases of our compilers. Fixed point data types handle
fractional values ("Fractional" types) and occasionally types with
Li-ion Battery Charger
C6808 | MPC | MPC | RS08This reference design demonstrates the new thread-based programming style that we created to complement the RS08, but it's used on an HC08.
printf for embedded
Submitted by Kirk Zurell on Thu, 2009-09-24 20:25. C | C6808 | debugging | eTPU | eTPU_C | eTPU_C | RS08There's only so much debugging information an LED or LCD display can report. What's worse, embedding debugging code in the executable can provoke misuse, while stripping it out can cause heisenbugs.
Your C compiler can help manage debugging information for you in a way that doesn't interfere with your product. Here's how:
Our view on RS08
Submitted by Walter Banks on Tue, 2009-03-17 16:25. C6808 | RS08I just read Jack's editorial on Embedded.com on the RS08 processor. This is a fun little processor.
We did some work on the instruction set design on this processor, and wrote a C compiler for the RS08. This is a remarkable little processor that, in the end, outperformed many people's expectations (including mine).
Jack Ganssle on RS08
Submitted by Kirk Zurell on Mon, 2009-03-16 13:44. C6808 | RS08Jack Ganssle's latest column in embedded.com reminds us that there is still life in 8-bit architectures.
He mentions the Freescale RS08, which is supported by our C6808 Code Development System.
UPDATE: Jack cites an article on Circuit Cellar by Tom Cantrell, who also talks about RS08.
C for RS08 is here
C6808 | RS08RS08 support is now shipping in C6808. Contact sales@bytecraft.com for more information or to place an order.
RS08 has no Negative bit in its condition codes. Can you do signed math operations?
Submitted by Kirk Zurell on Tue, 2007-11-20 22:02. C6808 | RS08Yes.
RS08 has no stack: how can you perform nested function calls?
Submitted by Kirk Zurell on Tue, 2007-11-20 22:01. C6808 | RS08C6808 creates a stack through program code: it preserves the Shadow PC (SPC) in a local variable and restores it prior to returning.
As an optimization, it eliminates this code whenever possible. When a function calls no subordinate functions, or when the call to a subordinate function happens at specific points in program flow, the compiler eliminates the saved PC and the memory location it would require.
This approach uses no extra memory compared to a hardware stack.
Do I really need C to program RS08?
Submitted by Kirk Zurell on Tue, 2007-11-20 22:00. C6808 | RS08There's no reason not to use C to program even the smallest computers. C compilers improve on assemblers by:
- Allowing the developer to work in the problem space (choosing the symbolic operations), not the solution space (choosing the machine instructions).
- Calculating opportunities for optimization with both the algorithm and target hardware in mind.
When is a branch not a branch?
Submitted by Kirk Zurell on Tue, 2007-09-25 19:45. C6808 | RS08 | tipsI recently got an interesting code sequence out of the compiler.


eTPU_C:
C6808: