Thread: Re: [Flashforth-devel] compiling for 18F2xK22
Brought to you by:
oh2aun
From: Mikael N. <mik...@pp...> - 2014-03-18 16:15:08
|
You can go here and click on the Download ZIP button to get a snapshot of the latest FF. https://github.com/oh2aun/flashforth BR Mike |
From: craig b. <dab...@ya...> - 2014-03-18 17:45:37
|
Many thanks, Mike. Hopefully I'll get time soon to work with the Git-Preview I downloaded and make peace with it (grin). Meanwhile, the ms word that the turnkey pause calls appears to have an infinite loop. Turnkey does do its job and not hang if I NOP that "bz ms1" instruction out and re-assemble... Industrial hot-patch, but effective. craig bair ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |
From: Mikael N. <mik...@pp...> - 2014-03-18 18:14:39
|
Craig, Probably you have managed to stop the system clock from incrementing the ticks counter. So MS will not work either. Mike |
From: craig b. <dab...@ya...> - 2014-03-18 18:39:40
|
... actually, circua line #5204 there's a call ZEROLESS followed by movf Sminus,W,A; iorwf Sminus,W,A; bz MS1... looks odd... The unmodified source hangs there, too... Dunnknow, I'm probably missing something. Didn't take the time to scrape it for side-effects. I'll look closer after I get the server/client handling on the host BeagleBone figured out (It CAN keep up with the baudrate AND shovel ethernet to the world). Thanks again for the assist, craig ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |
From: Mikael N. <mik...@pp...> - 2014-03-18 19:14:36
|
On 03/18/2014 08:36 PM, craig bair wrote: > ... actually, circua line #5204 there's a call ZEROLESS followed by > movf Sminus,W,A; iorwf Sminus,W,A; bz MS1... looks odd... > > The unmodified source hangs there, too... Dunnknow, I'm probably > missing something. Yes, you are missing that the system clock is not counting. Say TICKS a few times and you'll see that the it is not incrementing. Mike |
From: craig b. <dab...@ya...> - 2014-03-20 01:14:50
|
Just got my first chance to test the 5.0 code on my 18F26K22-s and I must admit to being duely impressed. Tweaked the configs for no idle, cpu usage, or multitasking and full-bore 64Mhz on the intosc. Popped right up on the treminal at right baud-rate with no arguement. TICKS and MS work just fine and TURNKEY behaves as advertised (although the host for these little guys won't want to wait 2 secs if it chucks a hardware reset at them). Easy config, running code, looks great so far. I'll load one up with the telemetry slave program tomorrow and torture-test it beside one of the 3.8-based chips tomorrow and see if the BeagleBone can tell them apart (grin). Seems a first-class piece of work so far, my complements, sir. craig bair ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |
From: craig b. <dab...@ya...> - 2014-03-20 11:21:43
|
"con" depricated in 5.0?... well, so much for porting from 3.8... still possible, but annoying. oh well, it'll have to wait its turn. craig bair ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |
From: Mikael N. <mik...@pp...> - 2014-03-20 16:27:33
|
I have removed some standard Forth incompatibilites from FF 5.0 CON was one of those. Maybe it was the only one... You can always define: : con constant ; Mike On 03/20/2014 01:18 PM, craig bair wrote: > "con" depricated in 5.0?... well, so much for porting from 3.8... > still possible, but annoying. oh well, it'll have to wait its turn. > > |
From: craig b. <dab...@ya...> - 2014-03-21 01:06:23
|
Actually, I didn't start using CON rather than CONSTANT until reading somebody's doc/commentary that con compiled code in while constant passed the value to a call... I'ld use it for urgent code when I needed speed more than space. Never got time to run down the actual implamentation, though. I haven't thoroughly dismembered a forth package since re-writing the 6502 forth core to run from the language card on an Apple ][ and extend the dictionary up from the top of the text screen memory (yeah, it's been a while...). I'll see if there are enough changes to warrant writing something to convert the old text files for the new version, but it'll be a least a month till I've got time to turn around to sneeze... Love it on the Pic18 XLP cores, though! "Very tasty that, Mr. Pepperman." Hack away, craig bair ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |
From: Peter J. <pe...@me...> - 2014-03-21 02:00:15
|
I should update some tutorial documents to reflect the new goodies in version 5. The documents that I had prepared over the past couple of years were for version 3.8. Suggestions for changes to the tutorials are most welcome. Peter J. On 03/21/2014 11:06 AM, craig bair wrote: > Actually, I didn't start using CON rather than CONSTANT until reading somebody's doc/commentary that con compiled code in while constant passed the value to a call... I'ld use it for urgent code when I needed speed more than space. Never got time to run down the actual implamentation, though. I haven't thoroughly dismembered a forth package since re-writing the 6502 forth core to run from the language card on an Apple ][ and extend the dictionary up from the top of the text screen memory (yeah, it's been a while...). I'll see if there are enough changes to warrant writing something to convert the old text files for the new version, but it'll be a least a month till I've got time to turn around to sneeze... Love it on the Pic18 XLP cores, though! "Very tasty that, Mr. Pepperman." > > > Hack away, > craig bair > > ...averaging may or may not help clarify data. > If Bill Gates walks into a bar, > the average patron becomes a millionaire... > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech > _______________________________________________ > Flashforth-devel mailing list > Fla...@li... > https://lists.sourceforge.net/lists/listinfo/flashforth-devel |
From: Mikael N. <mik...@pp...> - 2014-03-21 05:10:06
|
As you see in my previous answer to Craig the changes are not that big. The biggest addition is the possibility to use DO LOOP though I have never really felt the need for that myself. At least it can be used as a demo for extending Forth. Then there is the new directory structure and MPLABX support. The really big addition is of course the Atmega implementation which I hope is now at the same level as the PIC implementations. I printed your tutorials yesterday, since there is a plan to have a hands on programming intro for kids up to 12 years old. These are Finnish kids so I'll pick some stuff and rewrite it in Finnish. BR Mikael On 03/21/2014 03:41 AM, Peter Jacobs wrote: > I should update some tutorial documents to reflect the new goodies in > version 5. The documents that I had prepared over the past couple of > years were for version 3.8. Suggestions for changes to the tutorials are > most welcome. > Peter J. > |
From: Mikael N. <mik...@pp...> - 2014-03-21 04:55:25
|
The rewrite you have to do is really small. 1. Change CON to CONSTANT The 5.0 CONSTANT is identical to the 3.8 CON The speed is the same. 2. Change 3.8 LEAVE to 5.0 ENDIT The 5.0 LEAVE is for DO LOOP 3. Change 3.8 ' WORD IS INT to 5.0 ' WORD 0 INT! That is all. Should not take more than 5 minutes. The 5.0 VARIABLE is faster. It generates the same code as CONSTANT and compiles the VARIABLE address as a inline literal. BR Mike On 03/21/2014 03:06 AM, craig bair wrote: > Actually, I didn't start using CON rather than CONSTANT until reading somebody's doc/commentary that con compiled code in while constant passed the value to a call... I'ld use it for urgent code when I needed speed more than space. Never got time to run down the actual implamentation, though. I haven't thoroughly dismembered a forth package since re-writing the 6502 forth core to run from the language card on an Apple ][ and extend the dictionary up from the top of the text screen memory (yeah, it's been a while...). I'll see if there are enough changes to warrant writing something to convert the old text files for the new version, but it'll be a least a month till I've got time to turn around to sneeze... Love it on the Pic18 XLP cores, though! "Very tasty that, Mr. Pepperman." > > > Hack away, > craig bair > > ...averaging may or may not help clarify data. > If Bill Gates walks into a bar, > the average patron becomes a millionaire... > > ------------------------------------------------------------------------------ > Learn Graph Databases - Download FREE O'Reilly Book > "Graph Databases" is the definitive new guide to graph databases and their > applications. Written by three acclaimed leaders in the field, > this first edition is now available. Download your free book today! > http://p.sf.net/sfu/13534_NeoTech > _______________________________________________ > Flashforth-devel mailing list > Fla...@li... > https://lists.sourceforge.net/lists/listinfo/flashforth-devel > |
From: craig b. <dab...@ya...> - 2014-03-21 11:33:12
|
I did sit down and DIFF the wordlists last night and decided that CON was the only fix needed for anything that I'ld written, so far... Interesting to have DO and CASE onboard and nice extensions for the multiple usarts. One small offense to my sense of symetry, though. Constant compiles in, 2constant doesn't. 2literal compiles in but literal doesn't seem to exist. (grin) Not actually a problem, just inconsistant and the latent physicist in me nags from time to time (quiet down there!...grumble grumble). Arguably, consistant rules are easier to learn. Those arithmetic words can be a nightmare to keep straight. with amusement, craig ...averaging may or may not help clarify data. If Bill Gates walks into a bar, the average patron becomes a millionaire... |