![]() |
Forum Index : Microcontroller and PC projects : FANF shell for PIC32
Author | Message | ||||
kiiid Guru ![]() Joined: 11/05/2013 Location: United KingdomPosts: 671 |
I started this project some while ago and after a few months of excited work finally have something to announce. You can download the initial revision of FANF for Microkite/PIC32MX170 from GitHub Unlike the 'mites I have released it in completely free license - free to modify, share and use without restrictions, so everyone interested is welcome to update the sources. The FANF shell supports a FAT filesystem on SD card, multitasking, dynamic resizing of data containers and other things that people who try it will discover. As of now I have ported it to my Microkite module only, but it can be used with a bare PIC32MX170 as well thus providing about 45k of RAM to the user. The library of words can be stored (and is automatically restored) from the internal flash memory with the words store/restore. Use 'help" or 'words' as a starting point. Running on a bare MX170 works perfectly fine, but if you are going to use files on a SD card, you will need to connect the SD to the same port as in the Microkite. The console is on the same port as in MMbasic. In general this is a Forth-descendant language with some borrowed concepts from a few other modern languages. The execution speed is quite decent and higher than MMbasic. FANF runs a bytecode virtual machine and executes compiled pseudocode similar to what Java does. The current port is fully functional except for the I2C fin and fout words because I don't have anything I2C to test with right now. Moving house and it is a huge chaos around me, so maybe in some time from now I will update that too. The only other non-functioning word is cpuclk (due to the same reason as above). I have plans to add a number of other words to match the uM functionality (as a bare minimum), but it will take some time to catch up. Also, right now it still lacks a full-screen editor so editing of previously written words is quite difficult by using the insrc and resrc words. I am planning to get that significantly improved soon as well by adding a decent full-scale editor in the shell. Well, there is a lot more to describe and explain, but again - it will take some time and if anyone has a question, please ask. This is not another Basic, but something completely different, but I hope some people still might like it. Kon http://rittle.org -------------- |
||||
halldave![]() Senior Member ![]() Joined: 04/05/2014 Location: AustraliaPosts: 121 |
very interesting language and syntax,,,, documentation here https://github.com/knivd/FANF/blob/master/doc/FANF.pdf |
||||
kiiid Guru ![]() Joined: 11/05/2013 Location: United KingdomPosts: 671 |
Thanks, the same documentation can be downloaded also from my site http://rittle.org -------------- |
||||
G8JCF![]() Guru ![]() Joined: 15/05/2014 Location: United KingdomPosts: 676 |
@kiiid Very interesting indeed. I really had thought that Forth was as extinct as a Dodo but perhaps you've resurrected it ! I use HP RPN calculators all the time - HP 15C, and I have a spare '170F lying around, so I might just give FANF a try out ![]() Thanks for daring to be different, Charlie Moore would have been proud of you. 73 Peter The only Konstant is Change |
||||
kiiid Guru ![]() Joined: 11/05/2013 Location: United KingdomPosts: 671 |
Thank you Peter. Any suggestions based on your test will be welcome. There are some "hidden" features that can be done with FANF. The PMO is particularly interesting one because it gives the chance to have up to 32 low-speed UART outputs, generate various waveforms and switching patterns without even bothering to control them from program. I will try to reveal some of those little hidden things through some hints, but it all takes time. It is the very first revision after all and on top of that I am in the middle of a relocation. Which reminds me: I won't be able to ship any order for about two weeks now. I have disabled the purchasing on the website until finish with the relocation. Sorry about that, it will be only temporary for short time. Kon http://rittle.org -------------- |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6223 |
Yes, very interesting. I played with forth on my Z80 'microbee' and still have the 'starting forth' books. I don't have any processors to use but will keep it in mind for a future order. Jim VK7JH MMedit |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |