Forums

Free Forth for LPC2xxx

Started by Stephen Pelc March 28, 2006
With the rising interest in Forth, we have decided to make a
demo system for Philips LPC2xxx CPUs. I had a couple of hours
spare today, so a first cut is now available. You need 64k
Flash, 16k RAM and a 10, 12, or 14.7 MHz crystal and a terminal
emulator at 115200 baud. The distribution includes multitasking,
floating point and a manual!

http://www.mpeforth.com/arena/lpcforth.zip

Please let me have some feedback, and when it's been tested on
more LPC flavours, I'll put it in the files section.

Stephen
--
Stephen Pelc, s...@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

Yahoo! Groups Links

An Engineer's Guide to the LPC2100 Series

----- Original Message -----
From: "Stephen Pelc"
To: ;
Sent: Tuesday, March 28, 2006 4:31 PM
Subject: [lpc2000] Free Forth for LPC2xxx
> With the rising interest in Forth, we have decided to make a
> demo system for Philips LPC2xxx CPUs. I had a couple of hours
> spare today, so a first cut is now available. You need 64k
> Flash, 16k RAM and a 10, 12, or 14.7 MHz crystal and a terminal
> emulator at 115200 baud. The distribution includes multitasking,
> floating point and a manual!
>
> http://www.mpeforth.com/arena/lpcforth.zip
>
> Please let me have some feedback, and when it's been tested on
> more LPC flavours, I'll put it in the files section.

Thanks, Stephen. I just tried it on an old LPC2104 board of mine and it
worked OK - added a couple of integers and gave the correct answer.

Leon
--
Leon Heller, G1HSM
l...@bulldoghome.com
http://webspace.webring.com/people/jl/leon_heller/

Yahoo! Groups Links
--- In l..., "Stephen Pelc" wrote:
>
> With the rising interest in Forth, we have decided to make a
> demo system for Philips LPC2xxx CPUs. I had a couple of hours
> spare today, so a first cut is now available. You need 64k
> Flash, 16k RAM and a 10, 12, or 14.7 MHz crystal and a terminal
> emulator at 115200 baud. The distribution includes multitasking,
> floating point and a manual!
>
> http://www.mpeforth.com/arena/lpcforth.zip
>
> Please let me have some feedback, and when it's been tested on
> more LPC flavours, I'll put it in the files section.
>
> Stephen
> --
> Stephen Pelc, stephen@...
> MicroProcessor Engineering Ltd - More Real, Less Time
> 133 Hill Lane, Southampton SO15 5AF, England
> tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
> web: http://www.mpeforth.com - free VFX Forth downloads
>

Running on Olimex LPC2106 Prototyping Board
http://www.sparkfun.com/commerce/product_info.php?products_id&9

Next step Olimex LPC2106 Header Board
http://www.sparkfun.com/commerce/product_info.php?products_id&3

Plus a couple of intermediate steps: learn Forth and come up with an
application.

Very interesting...

Richard

Yahoo! Groups Links
--- In l..., "Stephen Pelc" wrote:
>
> With the rising interest in Forth, we have decided to make a
> demo system for Philips LPC2xxx CPUs. I had a couple of hours
> spare today, so a first cut is now available. You need 64k
> Flash, 16k RAM and a 10, 12, or 14.7 MHz crystal and a terminal
> emulator at 115200 baud. The distribution includes multitasking,
> floating point and a manual!
>
> http://www.mpeforth.com/arena/lpcforth.zip
>
> Please let me have some feedback, and when it's been tested on
> more LPC flavours, I'll put it in the files section.
>
> Stephen
> --
> Stephen Pelc, stephen@...
> MicroProcessor Engineering Ltd - More Real, Less Time
> 133 Hill Lane, Southampton SO15 5AF, England
> tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
> web: http://www.mpeforth.com - free VFX Forth downloads
>

Is floating point actually included? The example in section 13.7 of
the manual comes back as undefined:

1.234 FCONSTANT CON1 is undefined
1.234 FCONSTANT CON1
^

Direct evaluation of integers works:
1 2 + . 3 ok

No so with floating point:
1.1 2.2 + . is undefined
1.1 2.2 + .
^

But, then, I have been working with Forth for about 5 minutes...

Richard

^

Yahoo! Groups Links
Hi,
> Is floating point actually included? The example in section
> 13.7 of the manual comes back as undefined:
>
> 1.234 FCONSTANT CON1 is undefined
> 1.234 FCONSTANT CON1
> ^
>
> Direct evaluation of integers works:
> 1 2 + . 3 ok
>
> No so with floating point:
> 1.1 2.2 + . is undefined
> 1.1 2.2 + .
> ^
>
> But, then, I have been working with Forth for about 5 minutes...

I think 1.1 is a double constant (2 cells on the stack) and would be
added with D+ (IIRC).

To add floats I believe you need F+ and to print them F.

Regards,

-- Paul.

Yahoo! Groups Links
--- In l..., "Paul Curtis" wrote:
>
> Hi,
> > Is floating point actually included? The example in section
> > 13.7 of the manual comes back as undefined:
> >
> > 1.234 FCONSTANT CON1 is undefined
> > 1.234 FCONSTANT CON1
> > ^
> >
> > Direct evaluation of integers works:
> > 1 2 + . 3 ok
> >
> > No so with floating point:
> > 1.1 2.2 + . is undefined
> > 1.1 2.2 + .
> > ^
> >
> > But, then, I have been working with Forth for about 5 minutes...
>
> I think 1.1 is a double constant (2 cells on the stack) and would be
> added with D+ (IIRC).
>
> To add floats I believe you need F+ and to print them F.
>
> Regards,
>
> -- Paul.
>

It seems to me that it doesn't parse the input for the first constant
much less get to the point of doing the addition. So, I ordered a
couple of books... I have been using Alibris to find and purchase
used books. FWIW, I am very happy with their service - a distributed
seller network.

Richard

Yahoo! Groups Links
> From: "rtstofer"
> Is floating point actually included? The example in section 13.7 of
> the manual comes back as undefined:
>
> 1.234 FCONSTANT CON1 is undefined
> 1.234 FCONSTANT CON1
> ^

Two things:
1) bug, fixed, new version going up in ten minutes!
2) The format of floats requires numbers like
1.234e0
and you need F+ to add and F. to display. I've amended the
documentation as well.

If you need books there are free books on Forth at
http://www.mpeforth.com/books.htm

Stephen
--
Stephen Pelc, s...@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

Yahoo! Groups Links
> From: "rtstofer"

Forgot:
3) You must use REALS to enable floating point.

Which leads to:
a) I really must read our manuals more thoroughly, even though
they are derived from the source code itself.
b) I get more of a kick working on tons of machinery than in
dealing with floating point.

Stephen
--
Stephen Pelc, s...@mpeforth.com
MicroProcessor Engineering Ltd - More Real, Less Time
133 Hill Lane, Southampton SO15 5AF, England
tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
web: http://www.mpeforth.com - free VFX Forth downloads

Yahoo! Groups Links
--- In l..., "Stephen Pelc" wrote:
>
> > From: "rtstofer" Forgot:
> 3) You must use REALS to enable floating point.
>
> Which leads to:
> a) I really must read our manuals more thoroughly, even though
> they are derived from the source code itself.
> b) I get more of a kick working on tons of machinery than in
> dealing with floating point.
>
> Stephen
> --
> Stephen Pelc, stephen@...
> MicroProcessor Engineering Ltd - More Real, Less Time
> 133 Hill Lane, Southampton SO15 5AF, England
> tel: +44 (0)23 8063 1441, fax: +44 (0)23 8033 9691
> web: http://www.mpeforth.com - free VFX Forth downloads
>

In the early days of Bill Gates' Basic (and many other varieties,
before and after) it was common to use the interpreter as a command
line calculator. Lacking any real experience with Forth, trying the
floating point multiply was the only thing I could come up with.

I have installed the updated version and started through the online
book: Starting Forth. So far, so good.

Thanks
Richard

Yahoo! Groups Links
--- In l..., "Stephen Pelc" wrote:
>
> With the rising interest in Forth, we have decided to make a
> demo system for Philips LPC2xxx CPUs.
...
> http://www.mpeforth.com/arena/lpcforth.zip

Wow, your documentation is the best I've seen for any Forth system.

I'm sorry that I don't have time to try it now, but judging from the
manual I'm sure it's great!

You've even got floating point routines...

Eric

Yahoo! Groups Links