> 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.