I added a table driven, more compact, assembler for the Atmega and Arduino.
It is still under verification, so updates and changes are probable.
Not all instructions are supported.
See
avr/forth/asm2.txt
avr/forth/asm2test.txt
Changed WORDS to accept an optional filter.
ok<#,ram>
words key
'key? 'key key? key turnkey
ok<#,ram>
Added latest code for the Atmega as a zip file in the files section.
New words:
The assembler in asm.txt
LOAD+ Activate the load indicator led
LOAD- Deactivate the load indicator led
Removed words that did nothing:
LOAD U1+ U1- CWD
An assembler for the Atmega has been committeed to git.
Files: asm.txt asmtest.txt
There is an example of how to compile a FF project with C-code.
The word C4+ is implemented in C and called from FF.
Works only with MPLABX.
Any suggestions or improvements are welcome.
The Interrupt handling was broken at some stage.
This version has a working interrupt system.
Note that INT! takes now the address of the interrupt routine
and the interrupt vector number is input parameters.
FF has been updated to work also on the Atmega 2560.
FF 2.10.2013 has now been verified on
- Arduino Mega 2560 R3 (Atmega 2560)
- Arduino Uno R3 (Atmega 328p)
- Atmega128
There are now 4 Arduino an Atmega boards online accesible via Telnet
Words for triple and quad precision math words have been added into GIT for PIC18.
These are useful for instance for scaling 32 bit values via a 48- or 64-bit
intermediate result.
TRY FlashForth via TELNET now !
You can try now four different FF boards via Telnet !
Look in the FF Web page for details !
A FlashForth Tutorial and Reference Card have been made available
on the FF web page.
Excellent work by Peter Jacobs.
FlashForth 4.7 for the 16-bit PICs 24, 30 and 33
is now available in the download section.
I pushed an alpha release of FF4.7 to the git repository.
Please pull it and test it.
It supports now all 16-bit devices with enough memory.
I have run it in the simulator with some different PIC types.
There it starts and goes into ACCEPT.
On dsPIC30F it has been run on target on a 30F4012.
FlashForth v4.6
---------------
- Added SM/REM /MOD MOD M* */MOD */
- Added compile option for ctrl-o. Ctrl-o warm starts FF.
The walsh transform and fast walsh transform
has been updated to compile and run on
both PIC18F and dsPIC30F.
FlashForth v4.5
---------------
- Optimised NEXT
- Added tail call optimisation and tail looping.
- >BODY made visible
- UART RX now ignores XON/XOFF, earlier these went into the RX FIFO.
- TO defined in core.fth
- IDUMP. Dumps also the high byte of each instruction word.
In this release the interrupts are finally working.
There is a simple RTC for testing a Timer 2 based Real Time Clock.
The debug output after reset is now only printed
after a software reset caused by addressing error, stack overflow, or math error.
CMOVE has been enhanced with a faster move using the REPEAT dsPIC HW support.
Two FlashForth application downloads have been added.
One is for controlling a graphics LCD.
The other is for doing Walsh transforms.
Anybody wanting to publish FF application code on this website can email to me(oh2aun), and I will add them as a package to download.
FlashForth 3.3 is now available.
It includes some minor changes.
FlashForth 3.2 for the PIC18Fxxxx series has been released
It includes better integration in MPLAB, direct selection of processortype from MPLAB,
and configuration files for all PIC18Fxxxx capable of running FlashForth.
Programmers can now write interrupt routines in Forth or assembler.
Other improvements are inlining of assembler primitives, values and defer vectors, faster compilation, fewer writes to EEPROM during compilation and a servo control application.