See the next post for the huge number of new capabilities, chips supported, fixes and improves since the v0.97.01 release. The upcoming release is an increment to the release number as we have implemented major changes that in include 'IF-THEN-ELSE IF-END IF', Array support and PPS.
Looking towards v1.00. Complete the USB driver for AVR and Microchip and Pointers.
Apart from floats which would be post v1.00 what else need to be on the roadmap?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Forgive the format but this is the Release note tracker and to reformat would take hours.
Changes to Great Cow Basic and Great Cow Graphical Basic since v0.97.01 Release
337 Fix Timers Changed to support timers 3 / 5 for chips with TxCLK register. Previous release only supported Timer1 [568]
338 Fix Timers Changed timer.h to include AVR support [569]
339 Fix GLCD Improved INIT of GLCD devices to support I2C [570]
340 Fix GLCD Speed improvements by optimising write byte code
341 New Demos New MPU6050 - 6 Axis sensor demonstration
342 Fix Demos Improved various demonstrations as needed.
343 New PPSTool Updated to v0.0.5.5 and 1.36.1 of XML [R8]
344 New SPI Added FastHWSPITransfer ( byte_variable ) to support methods. Updated Help.
345 Fix Compiler Fix for 18f large config buffer issue. [571]
355 New GLCD New driver for GLCD SSD1306 displays with 128*32 pixels. Use #define GLCD_TYPE GLCD_TYPE_SSD1306_32 [578][579]
356 Fix Compiler Fixed compiler bug: Incorrect error generated when #option explicit used with unary operators on any microcontroller or rotate command on AVR.[572]
357 Fix system.h Corrected a typo is system.h that impacted 18f only when using ansel8. Was setting ansel8 now now ansel9
358 Fix IDE Updated IDE Helpers to include LCD reserved words
359 Fix ADC Updated ADC library to further improve quality and improve consistent usage across the commands. [573/4]
360 Fix Help Updated ReadAD, ReadAD10 and ReadAD12 to improve Information provided
361 Fix Compiler Fixed compiler bug: Incorrect error generated when #option explicit used with unary operators on any microcontroller or rotate command on AVR.[572]
362 Fix GLCD Updated GLCD SSD1306 to improve performance within PSET method and corrected errors with variable usage
363 Fix Help Updated #define USART_TX_BLOCKING examples
Updated Conditions page with the known constraints of using functions as test conditions
Updated SPI section, adding FastHWSPITransfer method
364 Fix InitSys 18F ADC initialization error - obscure typo within INITSYS routine.
365 New Demos A set of demos to show how to config and create interrupt timer routines for the AVR suite, includes timers calculation tools/software
365 New Demos A set of demos to show how to config and create interrupt timer routines for the AVR suite, includes timers calculation tools/software
366 New GLCD New GLCD Driver for the ILI9348L. New library and an update to GLCD.H
367 Fix GLCD Fixed to FilledCircle to handle byte overrun in larger GLCD screen.
368 Fix Compiler Fix for non-number (includes decimals)type of var in table [575] & [576]
Fix for issue when additional comma is specified when creating an array
Fix for leading 0 in table entries
Errors 1 and 2 now create message log entry to ensure user see and resolves the errors.
Updated message file to support new messages
369 Fix Help Updated many sections. See Help change log
370 Fix Timers Update DS1XXX.h libraries to remove If error condition[577]
371 Fix SDD1306 Added delay to allow display to power up fully befor initalization
Clear display before DisplayON to hide garbage at POR / initalization
372 Fix HWI2C Revised to improve 18f SEN support
373 Fix Standard Revised DecToBcd_GCB and BcdToDec_GCB to prevent overwriting of system variables.[578]
374 New 74XXX_EERAM Added new library for Microchip EERAM - (47XXX) [581]
375 New PWM Added support for PWM3 and PWM5 modules.
376 Fix DAT 22 chip files updated for PWM Timer.
16F1614, 16F1615, 16F1618 , 16F1619 , 16F1704 , 16F1705 , 16F1708 , 16F1709 , 16F1713 , 16F1716 , 16F1717 , 16F1718 , 16F1719 , 16F1768 , 16F1769 , 16F1773 , 16F1776 , 16F1777 , 16F1778 , 16F1779
377 New Compiler New compiler features [584]
All items from [ChipData] section of chip data files are now added to program as constants (with Chip added to the name - so Pins=28 in the chip data file creates a constant with the name ChipPins and the value 28 in the user program)
Invalid items in a data table will cause an error message with the error location
Else If implemented
378 New PWM Added command HPWMUPdate and another set of improvements in the library
379 Fix PWM New constants for user use PRxPeriodRegister and TimerXprescaleselectValue
Support for 8bit call to 10bit PWM (non-CCP) method
Memory improvements in terms of program size
Support for HPWM_Fast within 10bit PWM (non-CCP) method
Removal of script to calculate PR2Temp. Replaced with Sub-routine this reduces code size
Removal of complexity by removal of FnLSL in calculateDuty method
Added support for HPWMOff ( channel, PWMHardware ). Turns of 10bit PWM (non-CCP) channel
Improved documentation
380 Fix Compiler Core fixes to Else If implementation [589]. Fixed Else If bug: constant only conditions were not being removed correctly
381 Fix GCGB Updated GCGB to support Else If implementation and new Array capabilities.
382 Fix HWI2C Added support for PIC chips with bit "SEN_SSP1CON2"
382 New PWM All new PWM for ATMEL AVR miccontrollers. Full range supported.
Proven on mega2560 (mega board), mega328p (uno), tiny85, tiny44v and tiny2313a
Includes:
- PWMON and PWMOFF for channel 2 default, and check defined alternate frequency and duty cycle.
- 8-bit duty cycle for all channels.
- Frequency supprt across all channels with optimisation of code
- Demonstration code shows the simple four step process to setup and use a PWM channel
383 Fix PPSTOOL [0.0.5.8] Fixed crash when the PIC doens't have a PDIP package
Fixed incorrect pinout on some chips
Minor updates to help
Manifest file that comes with the XML files is no longer used by default
Added option to read list of PIC numbers from the manifest file or the XML file names
Fixed crash when peripherals defined twice in XML file
The pinout diagram for the 16LF19197, 16LF19195 and 16LF19196 at the moment they don't come in a DIP package.
384 New GLCD New ILI9481L 16 Bit GLCD driver.
385 New SMT Added SMT Timer capability. This is a 24-bit timer capability!!
386 Fix Timer.h These corrections & changes as shown below:
Added specific INITTIMER 2/4/6/8 support for chips with TxCLKCON register
93 chips including 16F188xx, 16F177x, 16F153xx, 16F16xx & 18FxxK40.
Added overload subs for Inittimer 2//4/6/8 for the chips above
InittimerX (TMRSource,TMRPres, TMRPost)
Source can be one of the below: (same as timer1 on these chips)
Constants kept for compatibility
OSC Equates to 1 'FOSC/4
EXT Equates to 0 'T1CKIPPS
EXTOSC Equates 6 ' SOSC
'Some Aditional Clock Sources
SOSC Equates to 6
MFINTOSC Equates to 5
LFINTOSCEquates to 4
HFINTOSCEquates to 3
FOSCEquates to 2
FOSC4Equates to 1
TxCKIPPSEquates 0
Several other sources may be available but can vary from chip to chip
These can be included manually per the specific chip's Datasheet
The original Initiimer 2/4/6 Subs (no source) also now works,
with these chips but will default to FOSC/4 as the source. To
use any clock source other than FOSC/4 the xlock souurce MUST be
specified in the Inittimer2/4/6/8 sub.
Added Generic Postscale constants for chips as they are all the same.
PostScales can be:
POST_1 Equates to 0
POST_2 Equates to 1
POST_3 Equates to 2
POST_4 Equates to 3
POST_5 Equates to 4
POST_6 Equates to 5
POST_7 Equates to 6
POST_8 Equates to 7
POST_9 Equates to 8
POST_10 Equates to 9
POST_11 Equates to 10
POST_12 Equates to 11
POST_13 Equates to 12
POST_14 Equates to 13
POST_15 Equates to 14
POST_16 Equates to 15
Corrected multiple typos in PIC inittimer 5/7 where the wrong bits/registers were selected
387 Fix EEPROM Corrected EEPROM support for 18FxxK40/42. Sses a different method to point to the NVMADRH:NVMADRL Registers. They also have different bit names as well as one different register name.
The changes in methods NVMADDR_EPWRITE & NVMADDR_EPREAD
388 Fix PPSTool Updated to v0.0.5.9
Program now uses the release number of the chipdata rather than the creation date of the manifest.txt file.
When changing the location of the XML files, the dialog box defaults to the last used location.
389 New PPSTool XML 1.45 - added 26 new devices and latest release of the tool.
390 New Chips Support for PIC16(L)F15313,PIC16(L)F15323, PIC16(L)F15324, PIC16(L)F15344 released
400 New Chips Support for 16(l)f19155, 16(l)f19156, 16(l)f19175, 16(l)f19176, 16(l)f19185, 16(l)f19186, 18f24q10, 18f25q10, 18(l)f26k42, 18(l)f45k42, 18(l)f46k42, 18(l)f55k42, 18(l)f56k42
401 Fix System.h Fixed issue with some chips with respect to bit protection on ICF2
402 New GLCD Support for SSD1036 in text only mode to support low memory microcontrollers. Use the constant GLCD_TYPE_SSD1306_CHARACTER_MODE_ONLY to use the low memory, no graphics model of operation.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello,
Just curious what other features are being worked on for GCB Rev 1.0+++
Best Regards.
Nick
O Curious One. :-)
See the next post for the huge number of new capabilities, chips supported, fixes and improves since the v0.97.01 release. The upcoming release is an increment to the release number as we have implemented major changes that in include 'IF-THEN-ELSE IF-END IF', Array support and PPS.
Looking towards v1.00. Complete the USB driver for AVR and Microchip and Pointers.
Apart from floats which would be post v1.00 what else need to be on the roadmap?
Forgive the format but this is the Release note tracker and to reformat would take hours.
Changes to Great Cow Basic and Great Cow Graphical Basic since v0.97.01 Release
337 Fix Timers Changed to support timers 3 / 5 for chips with TxCLK register. Previous release only supported Timer1 [568]
338 Fix Timers Changed timer.h to include AVR support [569]
339 Fix GLCD Improved INIT of GLCD devices to support I2C [570]
340 Fix GLCD Speed improvements by optimising write byte code
341 New Demos New MPU6050 - 6 Axis sensor demonstration
342 Fix Demos Improved various demonstrations as needed.
343 New PPSTool Updated to v0.0.5.5 and 1.36.1 of XML [R8]
344 New SPI Added FastHWSPITransfer ( byte_variable ) to support methods. Updated Help.
345 Fix Compiler Fix for 18f large config buffer issue. [571]
355 New GLCD New driver for GLCD SSD1306 displays with 128*32 pixels. Use #define GLCD_TYPE GLCD_TYPE_SSD1306_32 [578][579]
356 Fix Compiler Fixed compiler bug: Incorrect error generated when #option explicit used with unary operators on any microcontroller or rotate command on AVR.[572]
357 Fix system.h Corrected a typo is system.h that impacted 18f only when using ansel8. Was setting ansel8 now now ansel9
358 Fix IDE Updated IDE Helpers to include LCD reserved words
359 Fix ADC Updated ADC library to further improve quality and improve consistent usage across the commands. [573/4]
360 Fix Help Updated ReadAD, ReadAD10 and ReadAD12 to improve Information provided
361 Fix Compiler Fixed compiler bug: Incorrect error generated when #option explicit used with unary operators on any microcontroller or rotate command on AVR.[572]
362 Fix GLCD Updated GLCD SSD1306 to improve performance within PSET method and corrected errors with variable usage
363 Fix Help Updated #define USART_TX_BLOCKING examples
Updated Conditions page with the known constraints of using functions as test conditions
Updated SPI section, adding FastHWSPITransfer method
364 Fix InitSys 18F ADC initialization error - obscure typo within INITSYS routine.
365 New Demos A set of demos to show how to config and create interrupt timer routines for the AVR suite, includes timers calculation tools/software
365 New Demos A set of demos to show how to config and create interrupt timer routines for the AVR suite, includes timers calculation tools/software
366 New GLCD New GLCD Driver for the ILI9348L. New library and an update to GLCD.H
367 Fix GLCD Fixed to FilledCircle to handle byte overrun in larger GLCD screen.
368 Fix Compiler Fix for non-number (includes decimals)type of var in table [575] & [576]
Fix for issue when additional comma is specified when creating an array
Fix for leading 0 in table entries
Errors 1 and 2 now create message log entry to ensure user see and resolves the errors.
Updated message file to support new messages
369 Fix Help Updated many sections. See Help change log
370 Fix Timers Update DS1XXX.h libraries to remove If error condition[577]
371 Fix SDD1306 Added delay to allow display to power up fully befor initalization
Clear display before DisplayON to hide garbage at POR / initalization
372 Fix HWI2C Revised to improve 18f SEN support
373 Fix Standard Revised DecToBcd_GCB and BcdToDec_GCB to prevent overwriting of system variables.[578]
374 New 74XXX_EERAM Added new library for Microchip EERAM - (47XXX) [581]
375 New PWM Added support for PWM3 and PWM5 modules.
376 Fix DAT 22 chip files updated for PWM Timer.
16F1614, 16F1615, 16F1618 , 16F1619 , 16F1704 , 16F1705 , 16F1708 , 16F1709 , 16F1713 , 16F1716 , 16F1717 , 16F1718 , 16F1719 , 16F1768 , 16F1769 , 16F1773 , 16F1776 , 16F1777 , 16F1778 , 16F1779
377 New Compiler New compiler features [584]
All items from [ChipData] section of chip data files are now added to program as constants (with Chip added to the name - so Pins=28 in the chip data file creates a constant with the name ChipPins and the value 28 in the user program)
Invalid items in a data table will cause an error message with the error location
Else If implemented
378 New PWM Added command HPWMUPdate and another set of improvements in the library
379 Fix PWM New constants for user use PRxPeriodRegister and TimerXprescaleselectValue
Support for 8bit call to 10bit PWM (non-CCP) method
Memory improvements in terms of program size
Support for HPWM_Fast within 10bit PWM (non-CCP) method
Removal of script to calculate PR2Temp. Replaced with Sub-routine this reduces code size
Removal of complexity by removal of FnLSL in calculateDuty method
Added support for HPWMOff ( channel, PWMHardware ). Turns of 10bit PWM (non-CCP) channel
Improved documentation
380 Fix Compiler Core fixes to Else If implementation [589]. Fixed Else If bug: constant only conditions were not being removed correctly
381 Fix GCGB Updated GCGB to support Else If implementation and new Array capabilities.
382 Fix HWI2C Added support for PIC chips with bit "SEN_SSP1CON2"
382 New PWM All new PWM for ATMEL AVR miccontrollers. Full range supported.
Proven on mega2560 (mega board), mega328p (uno), tiny85, tiny44v and tiny2313a
Includes:
- PWMON and PWMOFF for channel 2 default, and check defined alternate frequency and duty cycle.
- 8-bit duty cycle for all channels.
- Frequency supprt across all channels with optimisation of code
- Demonstration code shows the simple four step process to setup and use a PWM channel
383 Fix PPSTOOL [0.0.5.8] Fixed crash when the PIC doens't have a PDIP package
Fixed incorrect pinout on some chips
Minor updates to help
Manifest file that comes with the XML files is no longer used by default
Added option to read list of PIC numbers from the manifest file or the XML file names
Fixed crash when peripherals defined twice in XML file
The pinout diagram for the 16LF19197, 16LF19195 and 16LF19196 at the moment they don't come in a DIP package.
384 New GLCD New ILI9481L 16 Bit GLCD driver.
385 New SMT Added SMT Timer capability. This is a 24-bit timer capability!!
386 Fix Timer.h These corrections & changes as shown below:
Added specific INITTIMER 2/4/6/8 support for chips with TxCLKCON register
93 chips including 16F188xx, 16F177x, 16F153xx, 16F16xx & 18FxxK40.
Added overload subs for Inittimer 2//4/6/8 for the chips above
InittimerX (TMRSource,TMRPres, TMRPost)
Source can be one of the below: (same as timer1 on these chips)
Constants kept for compatibility
OSC Equates to 1 'FOSC/4
EXT Equates to 0 'T1CKIPPS
EXTOSC Equates 6 ' SOSC
387 Fix EEPROM Corrected EEPROM support for 18FxxK40/42. Sses a different method to point to the NVMADRH:NVMADRL Registers. They also have different bit names as well as one different register name.
The changes in methods NVMADDR_EPWRITE & NVMADDR_EPREAD
388 Fix PPSTool Updated to v0.0.5.9
Program now uses the release number of the chipdata rather than the creation date of the manifest.txt file.
When changing the location of the XML files, the dialog box defaults to the last used location.
389 New PPSTool XML 1.45 - added 26 new devices and latest release of the tool.
390 New Chips Support for PIC16(L)F15313,PIC16(L)F15323, PIC16(L)F15324, PIC16(L)F15344 released
400 New Chips Support for 16(l)f19155, 16(l)f19156, 16(l)f19175, 16(l)f19176, 16(l)f19185, 16(l)f19186, 18f24q10, 18f25q10, 18(l)f26k42, 18(l)f45k42, 18(l)f46k42, 18(l)f55k42, 18(l)f56k42
401 Fix System.h Fixed issue with some chips with respect to bit protection on ICF2
402 New GLCD Support for SSD1036 in text only mode to support low memory microcontrollers. Use the constant GLCD_TYPE_SSD1306_CHARACTER_MODE_ONLY to use the low memory, no graphics model of operation.