MPE Forth 7.x Cortex Target Code Release Notes: Cortex/Release.kerCortex.txt Copyright (c) 2010-2016, 2017, 2019 MicroProcessor Engineering 133 Hill Lane Southampton SO15 5AF England tel: +44 (0)23 8063 1441 fax: +44 (0)23 8033 9691 net: mpe@mpeforth.com tech-support@mpeforth.com web: www.mpeforth.com From North America, our telephone and fax numbers are: 011 44 23 8063 1441 011 44 23 8033 9691 28 February 2019 ================ Added support for the STM32F103 Blue Pill. The example control file is for a generic Blue Pill from TaoBao. Supports serial, ticker, easy I/O and reflash. Added support for the TI TM4C12xx parts. The example control file is for the EL-TM4C1294XL Launchpad. Supports serial, ticker, easy I/O and reflash. Corrected D2/ in CodeM0lite.fth and CodeM0M1-AAPCS.fth. Thanks to Reinhard Vogg. 14 December 2018 ================ Added CodeM0M1-AAPCS.fth which permits direct interworking of Forth code with C code using very simple shims. Thanks, Robert. Updated SysTickCMx.fth, where x=0, 3 and 4. This update improves startup and sets SysTick interrupt priority to lowest. Updated serial drivers for STM32F0. Updated USB code for STM32F0. 21 June 2018 ============ Updated USB code for latest hosts. Retested target on: Windows 7 macOS 10.13 High Sierra Linux Mint 64 Cinnamon Raspberry Pi B3, Debian Jessie 3 March 2018 ============ Updated the Lib/USB folder to include support for STM32F0x2 CPUs. Added the control file Cortex/Hardware/STM32F0/STM32F072discoUSB.ctl which adds CDC (Virtual Serial) support for the STM32F072 Discovery board. 17 October 2017 =============== Corrected (OF) in CodeM0M1.fth. 26 July 2017 ============ Fixed event handler code in MultiCM0.fth. Added alpha version of 64 bit IEEE VFP floating point pack in VFP64SX.fth using R8 as the floating point stack pointer. Updated VFP32SX.fth to use R8 as the floating point stack pointer. 12 March 2017 ============= Added control files for STM32F042 and STM32F051. Updated Drivers\SerSTM32F0xxp.fth to use the OVRDIS bit. This change prevents lock-up if the serial line is not read fast enough. Corrected some files that abused [IF] and [THEN]. The cross compiler now checks for imbalance at the end of the file. 25 May 2016 =========== In the Professional version, Lib/Sockpuppet contains the C demo code for the STM32F429I Discovery board. The code has been updated to v4.0 of the Sockpuppet release. 22 March 2016 ============= Added (Z") to CodeCortex.fth to support zero-terminated strings. Updated sfrLPC40xx.fth. 14 January 2016 =============== Corrected F>D and D>F in VFP32SX. Corrected and updated sfrSTM32F4xx.fth ADC values. 18 December 2015 ================ The multitasker in MultiCortex.fth now has options to put the CPU to sleep and to perform lazy register saves. These are a big win for power-saving but may require more care in use. Added target code for the Infineon XMC1xxx parts in Cortex/Hardware/XMC1xxx. The default hardware is the tiny XMC2Go package. Added target code for the STM32F031 in Cortex/Hardware/STM32F0. The default hardware is ST STM32F031K6 Nucleo-32 board in a DIP package ideal for prototyping. Added a target for the LPC1114FN28, which is in a DIP package, using the internal osciallator. 10 November 2015 ================ Added hardware floating point compilation to Cortex/Hardware/RDB4078.ctl Added software floating point compilation to Cortex/Hardware/RDB4078sfp.ctl 14 July 2015 ============ Added Cortex/VFP32SX.fth which contains a floating point pack for 32 bit VFP hardware as on the Cortex-M4F and M7 families. The pack uses a separate floating point pack. Available in the Professional edition only. Note that is an additional compiler for the VFP version - xArmCortexHfpDev. Added drivers for LPC40xx family. The supported board is the Code Red RBD4078. 22 November 2014 ================ The multitaskers in MultiCortex.fth and MultiCM0.fth have been modified to reduce the number of registers saved and so to reduce the task switching time. As a result they can only be used with the obvious one of the CPU register usages. Minor changes incorporated from the Lite target. 16 July 2014 ============ The Professional edition of the distribution now includes PowerNet. See Lib/PowerNet. Renamed the Freescale directories in the Hardware folder. Added support for the Freescale Kinetis KL14/15/24/25 family. See Hardware/KinetisKL20 Hardware/KinetisK60 Updated Cortex/Drivers/RebootCM0. Added drivers and code for NXP LPC1788 devices. Updated the STM32F0 code. 10 April 2014 ============= Added Umbilical example for STM32F0. See Cortex/Hardware/STM32F0/STM32F072uf.ctl Updated MinM0M1.fth with SETMASK and INITIO. 11 February 2014 ================ Fixed C_MRK_BRANCH< in CodeCortex.fth and CodeM0M1.fth. Added the folder Hardware\STM32F0 for the STM32F072B-DISCO board (STM32F072RB CPU). Renamed the Hardware\STM32 folder to Hardware\STM32F1 to reflect the supported devices. Corrected FM/MOD overflow issue in CodeM0M1.fth and MinM0M1.fth. 11 November 2013 ================ Updated LPC1114 Umbilical Forth files to use J-Link for programming and the Umbilical Forth link. Updated STM32F4 folder file STM32-E407.ctl to use J-Link for programming. Added Cortex/Drivers/serPSUART.fth which provides a comms link through a Segger J-Link. 8 October 2013 ============== Added support for the Olimex STM32-E407 board in the Cortex/Hardware/STM32F4 directory. See STM32-E407.ctl. Hardware specifics of the STM32F4 Ethernet driver have been moved to separate files for supported boards. 22 February 2013 ================ Updated the STM32F4xx SDIO drivers to support both 4-bit and 1-bit data bus widths. Updated the PowerView code for the MB785 16-bit QVGA colour LCD supplied on many STM32 evaluation boards from ST. Added UPC to CodeCortex.fth. 17 December 2012 ================ Added STM32F107 SPI3 SD card drivers - non-DMA and DMA versions. The test board is the Olimex STM32-P107. Very similar code should also work on other STM32 devices. See Cortex/Hardware/STM32/spiSD-P107.fth Cortex/Hardware/STM32/spiSD-P107dma.fth Added DMA unit to STM32F1xxC special function register file. 29 October 2012 =============== Corrected Cortex version of (TO-DO) and moved it to CodeCortex.fth. The version in Common\Kernel62.fth is now conditionally compiled. 24 July 2012 ============ Added FSMC support for STM32F4. 26 March 2012 ============= Added support for the STM32F107 on the Olimex STM32-P107 board. Updated serial drivers for STM32. Added RTC driver for STM32. 15 February 2012 ================ Added STM32F4 drivers for I2C, RTC and Ethernet. Added additional hardware support for the STM3240G-EVAL board including PowerNet. Added I2C driver for NUC1xx parts. Thanks to Bill Codington. 5 December 2011 =============== Added the Cortex/Hardware/STM32F4 directory to the distribution. This contains CPU and hardware support for the STM32F4 family. Cortex/Drivers contains the drivers: gpioSTM32F4xx.fth serSTM32F4xxp.fth serSTM32F4xxqi.fth Added the Cortex/Hardware/Kinetis directory to the distribution. This contains CPU and hardware support for the Freescale Kinetis family. Cortex/Drivers contains the drivers: EtherK60.fth gpioK60.fth rtcK60.fth serK60p.fth serK60qi.fth Added generic Cortex-M4 drivers in Cortex/Drivers: rebootCM4.fth SysTickCM4.fth 24 August 2011 ============== Added Cortex/Hardware/LPC11xx to the Stamp version of the compiler. Corrected /MOD in CodeCortex.fth. Added drivers for LPC17xx in the Cortex/Drivers/ directory. adcLPC17xx.fth dacLPC17xx.fth EtherLPC17xx.fth rtcLPC17xx.fth spiLPC17xxhard.fth uses SSP1, ideal for SD card. Added target support for Cortex-M0 devices. Files specific to Cortex-M0 and/or Cortex-M1 devices include "CM0" or "M0M1" in the source file names. Hardware support is provided for NXP LPC11xx and Nuvoton NUC1xx devices in the directories: Cortex/Hardware/LPC11xx/ Cortex/Hardware/NUC1xx/ The required chip drivers are in: Cortex/Drivers/ The "easy" GPIO access files have been renamed gpioXXX.fth and moved to the Cortex/Drivers directory. Fixed 2@ and 2! in CodeCortex.fth. 27 October 2010 =============== Added LPC-FIO.fth which provides convenient GPIO access words. Corrected installation script for Stamp version. 27 April 2010 ============= Corrected ROLL. Added Luminary device support. 4 March 2010 ============ First release with support for LPC17xx and STM32 devices.