Thread: [Flashforth-devel] draft of revised tutorial guide for FF5
Brought to you by:
oh2aun
From: Peter J. <pe...@me...> - 2014-05-04 13:01:28
|
Mike, Pete, I've put a first full draft of the tutorial document for FF5 at http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-04.pdf Comments most welcome. Towards the end, I've tried out the bit manipulation words and, when inlined, they do achieve full machine speed on the PIC18 and PIC24. They're a little slower on the ATmega328, however, they do work nicely. Along the way I fell over the way the AVR version of FF doesn't like tab characters in leading whitespace (indentation). The PIC18 seems to be insensitive to whether there is tab character or space characters for that indentation. It took me a while to realize that the compiler was upset by the tab character since the message was that it didn't know my word (that had been defined and used earlier). Cheers, Peter J. |
From: Mikael N. <mik...@pp...> - 2014-05-05 03:39:49
|
Peter, After a quick scan through, I just noticed some small things. Abstract has wrong PIC18 number 3.2 has the wrong filename and USB filename complaint. I have changed the filename in FF5.0 References is missing the FF site. On Atmega the there is also the BIO0: BIO1: words that produce faster code (1 cycle) for IO adressess below $20. The BIT0: and BIT1: words use memory adressing (IO address + $20) I think I will merge these words so that the BIT words compile optimal code also for IO adressess below $20. BR Mike |
From: Peter J. <pe...@me...> - 2014-05-05 13:48:36
|
Thanks. A new version: http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-05.pdf with section 3.2 a bit more detailed. I will have a go at using the bio0: and bio1: words tomorrow. It's a bit late at night to get any more done (with reasonable quality). Cheers, Peter J. On 05/05/14 13:39, Mikael Nordman wrote: > Peter, > After a quick scan through, I just noticed some small things. > > Abstract has wrong PIC18 number > > 3.2 has the wrong filename and USB filename complaint. > I have changed the filename in FF5.0 > > References is missing the FF site. > > On Atmega the there is also the BIO0: BIO1: words that produce > faster code (1 cycle) for IO adressess below $20. > The BIT0: and BIT1: words use memory adressing (IO address + $20) > I think I will merge these words so that the BIT words compile > optimal code also for IO adressess below $20. > > BR Mike > > ------------------------------------------------------------------------------ > Is your legacy SCM system holding you back? Join Perforce May 7 to find out: > • 3 signs your SCM is hindering your productivity > • Requirements for releasing software faster > • Expert tips and advice for migrating your SCM now > http://p.sf.net/sfu/perforce > _______________________________________________ > Flashforth-devel mailing list > Fla...@li... > https://lists.sourceforge.net/lists/listinfo/flashforth-devel |
From: Peter J. <pe...@me...> - 2014-05-06 00:28:23
|
http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-06.pdf Added the example with bit words that manipulate bits from IO-space. Full speed, as you said. Also refined a little the description of building for the PIC18F microcontrollers and interaction via gtkterm. I have yet to print it on paper and then check it for errors and inconsistencies but it should be close to final form. Cheers, Peter J. On 05/05/14 23:48, Peter Jacobs wrote: > Thanks. A new version: > http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-05.pdf > with section 3.2 a bit more detailed. > > I will have a go at using the bio0: and bio1: words tomorrow. It's a bit > late at night to get any more done (with reasonable quality). > Cheers, > Peter J. > > > On 05/05/14 13:39, Mikael Nordman wrote: >> Peter, >> After a quick scan through, I just noticed some small things. >> >> Abstract has wrong PIC18 number >> >> 3.2 has the wrong filename and USB filename complaint. >> I have changed the filename in FF5.0 >> >> References is missing the FF site. >> >> On Atmega the there is also the BIO0: BIO1: words that produce >> faster code (1 cycle) for IO adressess below $20. >> The BIT0: and BIT1: words use memory adressing (IO address + $20) >> I think I will merge these words so that the BIT words compile >> optimal code also for IO adressess below $20. >> >> BR Mike >> >> ------------------------------------------------------------------------------ >> Is your legacy SCM system holding you back? Join Perforce May 7 to find out: >> • 3 signs your SCM is hindering your productivity >> • Requirements for releasing software faster >> • Expert tips and advice for migrating your SCM now >> http://p.sf.net/sfu/perforce >> _______________________________________________ >> Flashforth-devel mailing list >> Fla...@li... >> https://lists.sourceforge.net/lists/listinfo/flashforth-devel > > ------------------------------------------------------------------------------ > Is your legacy SCM system holding you back? Join Perforce May 7 to find out: > • 3 signs your SCM is hindering your productivity > • Requirements for releasing software faster > • Expert tips and advice for migrating your SCM now > http://p.sf.net/sfu/perforce > _______________________________________________ > Flashforth-devel mailing list > Fla...@li... > https://lists.sourceforge.net/lists/listinfo/flashforth-devel |
From: Pete Z. <pza...@pz...> - 2014-05-06 01:16:25
|
Hi Peter, Still trying to review the tutorial guide properly....things got busy here. I did notice that in this latest release "The Hitchhiker's...." got changed to "The Hitchkiker's..." on page 14. Will try to finish review tomorrow. Might even have some technical comments...... Definitely appreciate your work for the FlashForth effort. Pete On 5/5/2014 8:28 PM, Peter Jacobs wrote: > http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-06.pdf > > Added the example with bit words that manipulate bits from IO-space. > Full speed, as you said. Also refined a little the description of > building for the PIC18F microcontrollers and interaction via gtkterm. > > I have yet to print it on paper and then check it for errors and > inconsistencies but it should be close to final form. > Cheers, > Peter J. > > > |
From: Peter J. <pe...@me...> - 2014-05-06 12:29:06
|
Thanks Pete. My quality control takes a dive when I work on programs and documents late at night :) On 06/05/14 11:17, Pete Zawasky wrote: > Hi Peter, > > Still trying to review the tutorial guide properly....things got busy here. > > I did notice that in this latest release "The Hitchhiker's...." got > changed to "The Hitchkiker's..." on page 14. > > Will try to finish review tomorrow. Might even have some technical > comments...... > Definitely appreciate your work for the FlashForth effort. > > Pete > > On 5/5/2014 8:28 PM, Peter Jacobs wrote: >> http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-06.pdf >> >> Added the example with bit words that manipulate bits from IO-space. >> Full speed, as you said. Also refined a little the description of >> building for the PIC18F microcontrollers and interaction via gtkterm. >> >> I have yet to print it on paper and then check it for errors and >> inconsistencies but it should be close to final form. >> Cheers, >> Peter J. >> >> >> > > ------------------------------------------------------------------------------ > Is your legacy SCM system holding you back? Join Perforce May 7 to find out: > • 3 signs your SCM is hindering your productivity > • Requirements for releasing software faster > • Expert tips and advice for migrating your SCM now > http://p.sf.net/sfu/perforce > _______________________________________________ > Flashforth-devel mailing list > Fla...@li... > https://lists.sourceforge.net/lists/listinfo/flashforth-devel |
From: Peter J. <pe...@me...> - 2014-05-10 05:03:00
|
http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-10.pdf Edits in this version mainly refine the description of building FF for the PIC18Fx6K22. Small edits otherwise on the early sections. Cheers, Peter J. |
From: Peter J. <pe...@me...> - 2014-05-12 13:19:04
|
Another revision with small edits: http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-12.pdf Added note about resetting the watchdog timer in the push-button example. First draft of the cheat sheet ported to FF5. http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/flash-forth-5-sheet-2014-05-12.pdf Just finished the AVR assembler notes and it's late at night here, so there could be quite a few corrections to be made... tomorrow. Regards, Peter J. On 10/05/14 15:02, Peter Jacobs wrote: > http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-10.pdf > > Edits in this version mainly refine the description of building FF for > the PIC18Fx6K22. Small edits otherwise on the early sections. > Cheers, > Peter J. > > |
From: Pete Z. <pza...@pz...> - 2014-05-12 14:33:18
|
Hi Peter, Ver. May 12, 2014 Page 18 Section 5.1 *********************************************** Consider: *********************************************** Is: Notes on this program: Line 1 records the state of the dictionary so that we can reset it to it's state before the code was compiled, simply by executing the word -flash-led. If the file is loaded multiple times, line 2 resets the dictionary state, else the inter- preter signals that it can't find the word and continues interpreting the file. Should be: Notes on this program: If the word -flash-led has been previously defined with the word marker, line 1 resets the dictionary stateand continues interpreting the file, else the interpreter signals that it can't find the word and continues interpreting the file. Line 2 records the state of the dictionary and defines the word -flash-led so that we can reset the dictionary to it's state before the code was compiled, simply by executing the word -flash-led. ***************************************** Pete On 5/12/2014 9:18 AM, Peter Jacobs wrote: > Another revision with small edits: > http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-12.pdf > Added note about resetting the watchdog timer in the push-button example. > > First draft of the cheat sheet ported to FF5. > http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/flash-forth-5-sheet-2014-05-12.pdf > Just finished the AVR assembler notes and it's late at night here, so > there could be > quite a few corrections to be made... tomorrow. > > Regards, > Peter J. > > |
From: Peter J. <pe...@me...> - 2014-05-13 12:26:28
|
Thanks Pete. Your rewrite is better. Today's exercise was to put in an interrupt example (to count button presses). http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-13.pdf Peter J. On 13/05/14 00:34, Pete Zawasky wrote: > Hi Peter, > Ver. May 12, 2014 > Page 18 Section 5.1 > *********************************************** > Consider: > *********************************************** > Is: > > Notes on this program: > > Line 1 records the state of the dictionary so that we can reset it to > it's state before the code was compiled, simply by executing the word > -flash-led. > > If the file is loaded multiple times, line 2 resets the dictionary > state, else the inter- > preter signals that it can't find the word and continues interpreting > the file. > > Should be: > > Notes on this program: > > If the word -flash-led has been previously defined with the word > marker, line 1 resets the dictionary stateand continues interpreting > the file, else the interpreter signals that it can't find the word > and continues interpreting the file. > > Line 2 records the state of the dictionary and defines the word > -flash-led so that we can reset the dictionary to it's state before > the code was compiled, simply by executing the word -flash-led. > > ***************************************** > > Pete > > > On 5/12/2014 9:18 AM, Peter Jacobs wrote: >> Another revision with small edits: >> http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/ff5-tutorial-guide-2014-05-12.pdf >> Added note about resetting the watchdog timer in the push-button example. >> >> First draft of the cheat sheet ported to FF5. >> http://dropbox.eait.uq.edu.au/e4pjacob/flash-forth/flash-forth-5-sheet-2014-05-12.pdf >> Just finished the AVR assembler notes and it's late at night here, so >> there could be >> quite a few corrections to be made... tomorrow. >> >> Regards, >> Peter J. >> >> > |