EmbeddedRelated.com
Forums
Memfault Beyond the Launch

Softools on Rabbit 4000 (RCM4300)

Started by "mdiaz.tello" September 10, 2008
I have been working with the Rabbit 4000 and dynamic C for a couple of
weeks now and I have found it to be a bit too quirky and unreliable
for my tastes. I just found out about the Softools compiler for the
Rabbit today and downloaded it to try out, but I am unsure how to get
a program up and running. I was wondering if I am having so much
difficulty because I am using a Rabbit 4000 processor? Is it possible
to use Softools to compile to a Rabbit 4000 processor board despite
the fact that it only says it supports Rabbit 2000 and 3000
processors? I have looked in several places including the help files,
and google and a book I found on amazon, but I haven't found any
tutorials on how to get started, so if anyone would be willing to
point me towards some good reference material I would be very grateful.

Thanks!

-MDiaz-Tello
mdiaz.tello wrote:
> I have been working with the Rabbit 4000 and dynamic C for a couple of
> weeks now and I have found it to be a bit too quirky and unreliable
> for my tastes. I just found out about the Softools compiler for the
> Rabbit today and downloaded it to try out, but I am unsure how to get
> a program up and running. I was wondering if I am having so much
> difficulty because I am using a Rabbit 4000 processor? Is it possible
> to use Softools to compile to a Rabbit 4000 processor board despite
> the fact that it only says it supports Rabbit 2000 and 3000
> processors? I have looked in several places including the help files,
> and google and a book I found on amazon, but I haven't found any
> tutorials on how to get started, so if anyone would be willing to
> point me towards some good reference material I would be very grateful.
>
>

The RCM4200 is supported. The 4300 uses an odd boot sequence that is
undocumented (there is no main flash.)
--
------
| Scott G. Henion| s...@shdesigns.org |
| Consultant | Stone Mountain, GA |
| SHDesigns http://www.shdesigns.org |
------
Rabbit libs: http://www.shdesigns.org/rabbit/
today's fortune
Euch ist bekannt, was wir beduerfen;
Wir wollen stark Getraenke schluerfen.
-- Goethe, "Faust"
That is a shame. I do appreciate the prompt response I got, though.
Thanks!

Softools was the first 3rd party compiler for Rabbit that I found
after a bit of searching; does anyone know if there are other viable
alternatives to Dynamic C that have Rabbit 4000 (RCM4300) support?

Thank you.

-MDiaz-Tello
I don't believe there is another compiler for the Rabbit.

What specifically was it about Dynamic C that made it
unusable for you? I've only used DC 10.xx on a few
sample programs, so I don't have much experience with
it. All my work as been with with the R3000 and below.

----- Original Message ----
From: mdiaz.tello
To: r...
Sent: Thursday, September 11, 2008 6:24:37 AM
Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
That is a shame. I do appreciate the prompt response I got, though.
Thanks!

Softools was the first 3rd party compiler for Rabbit that I found
after a bit of searching; does anyone know if there are other viable
alternatives to Dynamic C that have Rabbit 4000 (RCM4300) support?

Thank you.

-MDiaz-Tello
Dynamic C just feels underdeveloped compared to other IDEs that I have
used for other embedded microprocessors such as CodeWarrior. After
using Dynamic C for about a week and a half, I was beginning to wonder
if the version of the software that came with the RCM4300 development
kit was some sort of stripped down version to get you to buy a more
complete version of the compiler. The company I am working for would
be fine with purchasing a more complete version of Dynamic C if this
is the case. The other thing is that Dynamic C is rather quirky and is
not standard C. Of course, if we can't find a viable ANSI C compiler
for our board, we will just have to use Dynamic C.

-MDiaz-Tello

--- In r..., Steve Trigero wrote:
>
> I don't believe there is another compiler for the Rabbit.
>
> What specifically was it about Dynamic C that made it
> unusable for you? I've only used DC 10.xx on a few
> sample programs, so I don't have much experience with
> it. All my work as been with with the R3000 and below.
>
> ----- Original Message ----
> From: mdiaz.tello
> To: r...
> Sent: Thursday, September 11, 2008 6:24:37 AM
> Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
> That is a shame. I do appreciate the prompt response I got, though.
> Thanks!
>
> Softools was the first 3rd party compiler for Rabbit that I found
> after a bit of searching; does anyone know if there are other viable
> alternatives to Dynamic C that have Rabbit 4000 (RCM4300) support?
>
> Thank you.
>
> -MDiaz-Tello
>

As for the IDE, I would agree. I don't do any work with the IDE, I use a
separate programming editor. The DC IDE is just too clumsy to be
productive with. I only open it to compile and download.

Sadly, there isn't a more complete version of DC. It would be nice
if they could make their compiler, and maybe even the debugger,
a plugin for existing programming editors, such as SlickEdit or
CodeWrite. That way they wouldn't have to write their own editor
(are you listening Z-World?), yet the user would have a world-class
IDE to work with in one package.

As for the compiler itself, you're right, it's not ANSI, in that it doesn't
use a linker, and you can't just compile one file by itself. It has, what
appears to me to be a crazy methodology of using "BEGIN HEADER/
END HEADER" tags for everything. We can throw darts at it all day,
but it is what it is. It's not the worst thing I ever had to use. Just annoying.

While others can give you more details about the Softools IDE, from
what I've read, it is full ANSI, faster, and produces much more efficient
code. I don't know how their editor is.

The downside to Softools, so far, is that it seems to take them a long time
to add new Rabbit features to their compiler as they come out. That they
now support the Rabbit 4200 was news to me. That must be very recent,
because they have not supported any R4000 products until now. They
also don't support some of the DC libraries. I'm sure they will in time.
Maybe they can give you a development time-line if that's important for
you.

Steve

----- Original Message ----
From: mdiaz.tello
To: r...
Sent: Thursday, September 11, 2008 9:48:16 AM
Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
Dynamic C just feels underdeveloped compared to other IDEs that I have
used for other embedded microprocessors such as CodeWarrior. After
using Dynamic C for about a week and a half, I was beginning to wonder
if the version of the software that came with the RCM4300 development
kit was some sort of stripped down version to get you to buy a more
complete version of the compiler. The company I am working for would
be fine with purchasing a more complete version of Dynamic C if this
is the case. The other thing is that Dynamic C is rather quirky and is
not standard C. Of course, if we can't find a viable ANSI C compiler
for our board, we will just have to use Dynamic C.

-MDiaz-Tello

--- In rabbit-semi@ yahoogroups. com, Steve Trigero wrote:
>
> I don't believe there is another compiler for the Rabbit.
>
> What specifically was it about Dynamic C that made it
> unusable for you? I've only used DC 10.xx on a few
> sample programs, so I don't have much experience with
> it. All my work as been with with the R3000 and below.
>
> ----- Original Message ----
> From: mdiaz.tello
> To: rabbit-semi@ yahoogroups. com
> Sent: Thursday, September 11, 2008 6:24:37 AM
> Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
> That is a shame. I do appreciate the prompt response I got, though.
> Thanks!
>
> Softools was the first 3rd party compiler for Rabbit that I found
> after a bit of searching; does anyone know if there are other viable
> alternatives to Dynamic C that have Rabbit 4000 (RCM4300) support?
>
> Thank you.
>
> -MDiaz-Tello
>
Yeah, I actually sent an email to the address they have on their site
asking about support for Rabbit 4000 processors, but I haven't gotten
a response back from Softools yet. When I do, i'll be sure to make a
post here for the benefit of others. As to the Softools editor, i
didn't use it very long, but from the short time that i did, it seemed
OK, not great, but OK. The feature that i saw that I really liked is
that it supports using an external editor, so I was able to make it
use Vim as my source code editor, which is really nice. The only
downside to using an external editor is that you can't set breakpoints
and debug with it, you will have to ask the IDE to open its native
editor when you are in debug mode, but this is an acceptable
compromise I suppose.

-MDiaz-Tello
--- In r..., Steve Trigero wrote:
>
> As for the IDE, I would agree. I don't do any work with the IDE, I
use a
> separate programming editor. The DC IDE is just too clumsy to be
> productive with. I only open it to compile and download.
>
> Sadly, there isn't a more complete version of DC. It would be nice
> if they could make their compiler, and maybe even the debugger,
> a plugin for existing programming editors, such as SlickEdit or
> CodeWrite. That way they wouldn't have to write their own editor
> (are you listening Z-World?), yet the user would have a world-class
> IDE to work with in one package.
>
> As for the compiler itself, you're right, it's not ANSI, in that it
doesn't
> use a linker, and you can't just compile one file by itself. It has,
what
> appears to me to be a crazy methodology of using "BEGIN HEADER/
> END HEADER" tags for everything. We can throw darts at it all day,
> but it is what it is. It's not the worst thing I ever had to use.
Just annoying.
>
> While others can give you more details about the Softools IDE, from
> what I've read, it is full ANSI, faster, and produces much more
efficient
> code. I don't know how their editor is.
>
> The downside to Softools, so far, is that it seems to take them a
long time
> to add new Rabbit features to their compiler as they come out. That they
> now support the Rabbit 4200 was news to me. That must be very recent,
> because they have not supported any R4000 products until now. They
> also don't support some of the DC libraries. I'm sure they will in time.
> Maybe they can give you a development time-line if that's important for
> you.
>
> Steve
>
> ----- Original Message ----
> From: mdiaz.tello
> To: r...
> Sent: Thursday, September 11, 2008 9:48:16 AM
> Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
> Dynamic C just feels underdeveloped compared to other IDEs that I have
> used for other embedded microprocessors such as CodeWarrior. After
> using Dynamic C for about a week and a half, I was beginning to wonder
> if the version of the software that came with the RCM4300 development
> kit was some sort of stripped down version to get you to buy a more
> complete version of the compiler. The company I am working for would
> be fine with purchasing a more complete version of Dynamic C if this
> is the case. The other thing is that Dynamic C is rather quirky and is
> not standard C. Of course, if we can't find a viable ANSI C compiler
> for our board, we will just have to use Dynamic C.
>
> -MDiaz-Tello
>
> --- In rabbit-semi@ yahoogroups. com, Steve Trigero
...> wrote:
> >
> > I don't believe there is another compiler for the Rabbit.
> >
> > What specifically was it about Dynamic C that made it
> > unusable for you? I've only used DC 10.xx on a few
> > sample programs, so I don't have much experience with
> > it. All my work as been with with the R3000 and below.
> >
> >
> >
> > ----- Original Message ----
> > From: mdiaz.tello
> > To: rabbit-semi@ yahoogroups. com
> > Sent: Thursday, September 11, 2008 6:24:37 AM
> > Subject: [rabbit-semi] Re: Softools on Rabbit 4000 (RCM4300)
> >
> >
> > That is a shame. I do appreciate the prompt response I got, though.
> > Thanks!
> >
> > Softools was the first 3rd party compiler for Rabbit that I found
> > after a bit of searching; does anyone know if there are other viable
> > alternatives to Dynamic C that have Rabbit 4000 (RCM4300) support?
> >
> > Thank you.
> >
> > -MDiaz-Tello
>
Steve Trigero wrote:
>
> While others can give you more details about the Softools IDE, from
> what I've read, it is full ANSI, faster, and produces much more
> efficient
> code. I don't know how their editor is.

And it supports far pointers even back to the R3000, has for years. No
need for all that xmem2root() calls. So you get the far support on all
the modules, not just the 4k modules.

The editor is good. The debugger is far better as it doe snot have the
data size limitations. It also does not use the RST 28's that slow the
code down by 10-20%. Code runs full speed under the debugger.

>
> The downside to Softools, so far, is that it seems to take them a long
> time
> to add new Rabbit features to their compiler as they come out. That they
> now support the Rabbit 4200 was news to me. That must be very recent,
> because they have not supported any R4000 products until now. They
> also don't support some of the DC libraries. I'm sure they will in time.
> Maybe they can give you a development time-line if that's important for
> you.
>

Adding new 3k modules is trivial, usually just adding the ID to the net
init code.

The 4k is a royal pain. The documentation is sparse and contains wrong
information. The 16-bit RAM support has bugs that even the workarounds
provided by ZW do not work. That has made supporting them near
impossible without proper documentation.

ST runs the 4200 in 3k mode. The code is still considerably faster than
DC as it is an optimizing compiler while DC does no optimization.

Most libs are supported.

We don't have a timeline for support for the other 4k modules, we are
looking at it.
--
------
| Scott G. Henion| s...@shdesigns.org |
| Consultant | Stone Mountain, GA |
| SHDesigns http://www.shdesigns.org |
------
Rabbit libs: http://www.shdesigns.org/rabbit/
today's fortune
It is wrong always, everywhere and for everyone to believe anything upon
insufficient evidence.
- W. K. Clifford, British philosopher, circa 1876
I certainly understand that it is difficult to support hardware that
has little to no documentation (and having wrong documentation is even
worse than none). Case in point being the poor open source guys trying
to reverse engineer proper graphics drivers. It is incredibly slow
going for them, so I understand if there is no support for RCM4xxx in
the near term. Thanks for all the help so far!

-MDiaz-Tello

--- In r..., Scott Henion wrote:
>
> Steve Trigero wrote:
> >
> > While others can give you more details about the Softools IDE, from
> > what I've read, it is full ANSI, faster, and produces much more
> > efficient
> > code. I don't know how their editor is.
>
> And it supports far pointers even back to the R3000, has for years. No
> need for all that xmem2root() calls. So you get the far support on all
> the modules, not just the 4k modules.
>
> The editor is good. The debugger is far better as it doe snot have the
> data size limitations. It also does not use the RST 28's that slow the
> code down by 10-20%. Code runs full speed under the debugger.
>
> >
> > The downside to Softools, so far, is that it seems to take them a
long
> > time
> > to add new Rabbit features to their compiler as they come out.
That they
> > now support the Rabbit 4200 was news to me. That must be very recent,
> > because they have not supported any R4000 products until now. They
> > also don't support some of the DC libraries. I'm sure they will in
time.
> > Maybe they can give you a development time-line if that's
important for
> > you.
> > Adding new 3k modules is trivial, usually just adding the ID to the net
> init code.
>
> The 4k is a royal pain. The documentation is sparse and contains wrong
> information. The 16-bit RAM support has bugs that even the workarounds
> provided by ZW do not work. That has made supporting them near
> impossible without proper documentation.
>
> ST runs the 4200 in 3k mode. The code is still considerably faster than
> DC as it is an optimizing compiler while DC does no optimization.
>
> Most libs are supported.
>
> We don't have a timeline for support for the other 4k modules, we are
> looking at it.
> --
> ------
> | Scott G. Henion| shenion@... |
> | Consultant | Stone Mountain, GA |
> | SHDesigns http://www.shdesigns.org |
> ------
> Rabbit libs: http://www.shdesigns.org/rabbit/
> today's fortune
> It is wrong always, everywhere and for everyone to believe anything upon
> insufficient evidence.
> - W. K. Clifford, British philosopher, circa 1876
>

I was wondering if there is anyone here who has actually programmed
with softools on the RCM4200? I appreciate that people know it will
work with the 4200, but i'd like to know how well it works. At work we
looked into the differences between the 4300 and 4200 and there don't
seem to be many, so we may end up switching to the 4200 for softools
if it turns out it works well enough. I appreciate the feed back you
guys have been giving me.

-MDiaz-Tello

--- In r..., "mdiaz.tello" wrote:
>
> I certainly understand that it is difficult to support hardware that
> has little to no documentation (and having wrong documentation is even
> worse than none). Case in point being the poor open source guys trying
> to reverse engineer proper graphics drivers. It is incredibly slow
> going for them, so I understand if there is no support for RCM4xxx in
> the near term. Thanks for all the help so far!
>
> -MDiaz-Tello
>
> --- In r..., Scott Henion wrote:
> >
> > Steve Trigero wrote:
> > >
> > > While others can give you more details about the Softools IDE, from
> > > what I've read, it is full ANSI, faster, and produces much more
> > > efficient
> > > code. I don't know how their editor is.
> >
> > And it supports far pointers even back to the R3000, has for
years. No
> > need for all that xmem2root() calls. So you get the far support on
all
> > the modules, not just the 4k modules.
> >
> > The editor is good. The debugger is far better as it doe snot have
the
> > data size limitations. It also does not use the RST 28's that slow
the
> > code down by 10-20%. Code runs full speed under the debugger.
> >
> > >
> > > The downside to Softools, so far, is that it seems to take them a
> long
> > > time
> > > to add new Rabbit features to their compiler as they come out.
> That they
> > > now support the Rabbit 4200 was news to me. That must be very
recent,
> > > because they have not supported any R4000 products until now. They
> > > also don't support some of the DC libraries. I'm sure they will in
> time.
> > > Maybe they can give you a development time-line if that's
> important for
> > > you.
> > >
> >
> > Adding new 3k modules is trivial, usually just adding the ID to
the net
> > init code.
> >
> > The 4k is a royal pain. The documentation is sparse and contains
wrong
> > information. The 16-bit RAM support has bugs that even the
workarounds
> > provided by ZW do not work. That has made supporting them near
> > impossible without proper documentation.
> >
> > ST runs the 4200 in 3k mode. The code is still considerably faster
than
> > DC as it is an optimizing compiler while DC does no optimization.
> >
> > Most libs are supported.
> >
> > We don't have a timeline for support for the other 4k modules, we are
> > looking at it.
> >
> >
> > --
> > ------
> > | Scott G. Henion| shenion@ |
> > | Consultant | Stone Mountain, GA |
> > | SHDesigns http://www.shdesigns.org |
> > ------
> > Rabbit libs: http://www.shdesigns.org/rabbit/
> > today's fortune
> > It is wrong always, everywhere and for everyone to believe
anything upon
> > insufficient evidence.
> > - W. K. Clifford, British philosopher, circa 1876
>

Memfault Beyond the Launch