> Forth comes in lots of different flavors:  The tiniest one I ever used 
> (for a 6502-based industrial air pollution monitoring device) was 
> cross-compiled on a minicomputer to generate 8-bit tokens for the program 
> ROM.  So each “call” of a Forth function just took a single byte!  
>  
> The ARM/PRU combination is a perfect fit for a cross-compiled Forth.  All 
> of the compilation functions (“immediate words” in Forth) run on the ARM 
> but lay down code in PRU-space.  PRU-resident native code or lists of Forth 
> function calls would just be the PRU application itself, plus the tiny bit 
> of code needed to implement the Forth interpreter.  Should be interesting 
> to see what John has implemented.
>   
>
Your description is very close to the way it works.   In this case it has 
16-bit addresses so instructions cost 2 bytes.  The "compiler" doesn't run 
on the ARM however.  I considered that but it was far easier to implement 
it on the host computer.  Among the reasons is that I would have had to 
implement a PRU assembler in Forth.  Not* too *terribly difficult but still 
more work, and it would take up ARM program space.  Against that I didn't 
see any advantage to having a full forth interpreter on the ARM.  Most 
times a headerless forth is just fine on an embedded processor and that is 
the way I saw this project.  (Sorry for the Forth jargon.)

Before I started this I saw mentions of a C compiler but all the links 
appeared to be dead.  I guess I should have asked here!



 

>  *From:* l...@ansync.com <javascript:> 
> *Sent:* Monday, April 14, 2014 5:17 PM
> *To:* beagl...@googlegroups.com <javascript:> 
> *Subject:* Re: [beagleboard] High(er) level language for PRU programming 
> available.
>  
>  Forth is awesome. Last time I had a paying gig in Forth was about 1985, 
> I think. It was to control a big lighted display board (and garage 
> heater!). So it was basically a 160 x 32 monochrome graphics editor with 
> fonts and wipe effects, done on an Apple II (8-bit 6502 processor, 1 MHz, 
> 32k of RAM). No other language squeezes into tight spots like that. 
>
>
> On Monday, April 14, 2014 3:15:37 PM UTC-7, William Hermans wrote: 
>>
>>  Nice job John, although I have to admit I have never heard of Forth( 
>> and have been programming since the early 90's ). Nice to learn something 
>> new, and I will have to give the Language a look-see to see if I like it. 
>>
>> Jason, if you're paying attention I would also like a copy of the C 
>> compiler. I am based in the US, and do have an account on TI.com.
>>
>>
>> On Mon, Apr 14, 2014 at 2:23 PM, Sungjin Chun <chu...@gmail.com> wrote:
>>
>>> I also am interested in C compiler for PRU.
>>> Can you let me know how to contact Jason Kridner?
>>>
>>> Sent from my iPhone
>>>  
>>> > On Apr 15, 2014, at 5:39 AM, Charles Steinkuehler <
>>> cha...@steinkuehler.net> wrote:
>>> >
>>> >> On 4/14/2014 3:34 PM, John Silvia wrote:
>>> >>
>>> >> I've implemented a forth language for the PRU to facilitate one of my 
>>> own
>>> >> projects.  It is available for others to use on github in hopes that
>>> >> someone may find it useful.
>>> >>
>>> >> https://github.com/biocode3D/prufh
>>> >
>>> > You are my hero!  I love Forth and figured the PRU would be perfect for
>>> > a small Forth environment!  :)
>>> >
>>> >> Yes, of course, a C compiler would be useful to more people; but I'm 
>>> not
>>> >> capable of writing a C compiler in ~500 lines of perl ;-)
>>> >
>>> > ...and there's already a C compiler available.  You just have to e-mail
>>> > Jason Kridner and ask to get the "beta" copy since it hasn't been
>>> > officially released for some reason.
>>> >
>>> > --
>>> > Charles Steinkuehler
>>> > cha...@steinkuehler.net
>>> >
>>> > --
>>> > For more options, visit http://beagleboard.org/discuss
>>> > ---
>>> > You received this message because you are subscribed to the Google 
>>> Groups "BeagleBoard" group.
>>> > To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to beagleboard...@googlegroups.com.
>>> > For more options, visit https://groups.google.com/d/optout.
>>>
>>> --
>>> For more options, visit http://beagleboard.org/discuss
>>> ---
>>> You received this message because you are subscribed to the Google 
>>> Groups "BeagleBoard" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to beagleboard...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>  
>>
> -- 
> For more options, visit http://beagleboard.org/discuss
> --- 
> You received this message because you are subscribed to the Google Groups 
> "BeagleBoard" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to beagleboard...@googlegroups.com <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to