hx8347d LCD dirver
[hackover2013-badge-firmware.git] / ChangeLog.txt
index 4e95f7e..a625b35 100644 (file)
-v1.0.0 - Ongoing
-================
+v1.1.2 - ongoing
+==============================================================================
+NEW FEATURES
+------------------------------------------------------------------------------
+- Cleaned up /tools/testfirmware to include more recent blinky, etc.
+- Added basic TEA5767 drive
+- Added core/cmd/ansi.h (rediscover the joy of ANSI graphics codes :)
+- Added fastHLine and fastVLine to lcdProperties_t for all lcd drivers (to
+  known whether an accelerated vertical or horizontal line drawing function
+  is present in the driver or not)
+- Updated all LCD drivers to include the fastHLine and fastVLine flags
+- Added PWM command to CLI (thanks Miceuz)
+- Added optional callback in 32-bit timer ISR (thanks again Miceuz)
+
+BUG FIXES/OPTIMISATIONS/ETC.
+------------------------------------------------------------------------------
+- Minor accuracy improvement to pwm.c (off by 1 error)
+- Fixed typos in cmd_pwm.c and cmd_tbl.h
+
+v1.1.1 - 14 April 2012
+==============================================================================
+NEW FEATURES
+------------------------------------------------------------------------------
+- Added drawRoundedRectangle to drawing.c
+- Added ability to select filled or empty rounded rectangles to the 'R' CLI
+  command
+BUG FIXES/OPTIMISATION/ETC.
+------------------------------------------------------------------------------
+- Fixed Crossworks Project (missing dependencies)
+
+
+v1.1.0 - 9 April 2012
+==============================================================================
+BREAKING CHANGES
+------------------------------------------------------------------------------
+- Rewrote corner and rounded rectangle code.  Only one corner enum is now used
+  (drawCorners_t)
+- Renamed drawRectangleRounded to drawRoundedRectangleFilled
+- Removed drawProgressBar and drawButton from drawing.c, since drawing should
+  only contain drawing primitives
+- Reorganised a lot of the TFT drawing library to support external controls,
+  and dynamically switch between bitmap and anti-aliased fonts.  In the future
+  everything that isn't a basic drawing primitive will be placed in it's own
+  control.  The main benefit of this is that it's much easier to customize the
+  look and feel of your UI without having to modify drawing.c and the basic
+  drawing primitives, and to be able to switch from bitmap to anti-aliased
+  fonts depending on how much flash space you have free, etc.
+- Removed bmp_error_t drawBitmapImage(uint16_t x, uint16_t y, char *filename)
+  to keep better seperation of primitives and more complex features, and
+  reduce external dependencies in drawing.c.  Call bmpDrawImage (bmp.c)
+  directly instead.
+
+NEW FEATURES
+------------------------------------------------------------------------------
+- Added drawCorner to drawing.c
+- Added new 'controls/' folder to the GFX library, and added a number of
+  controls that will render correctly with the theme settings, as well as
+  using bitmap or anti-aliased fonts, depending on projectconfig.h
+- New controls:
+  - button
+  - hsbchart (Hue/saturation/brightness chart for color pickers)
+  - huechart (Hue selection gradient for color pickers)
+  - label
+  - labelcentered
+  - progressbar
+- Added theme.h to try to define all of the color and font settings used by
+  the controls in one location to make it easier to update or modify
+- Added aafontsCenterString to aafonts.c
+
+BUG FIXES/OPTIMISATION/ETC.
+------------------------------------------------------------------------------
+- Updated Crossworks Project to use LPC1000 Lib 1.19 (uses CMSIS 3.0)
+- Some performance improvements to core/gpio/gpio.c (thanks Tom for the
+  suggestion)
+- Fixed alpha blending when alpha = 100%
+- Change gpioSetValue to be inline (should optimise to a single operation)
+
+v1.0.0 - 23 March 2012
+===========================================================
+- Added support for LPCXpresso IDE
 - *** Moved '/drivers/chibi' to '/drivers/rf/chibi' ***
 - *** Moved '/drivers/sensors/pn532' to '/drivers/rf/pn532' ***
 - *** Renamed '/drivers/spiflash' to '/drivers/storage/spiflash' ***
 - *** Renamed '/drivers/eeprom' to '/drivers/storage/eeprom' ***
 - *** Renamed '/drivers/lcd' to '/drivers/display' ***
+- Added I2C support to the SSD1306 driver
+- Moved all color conversion and manipulation functions
+  to '/drivers/displays/tft/colors.c', and added a
+  few new functions: colorsDim(), etc.
+- Added code to render antialiased fonts, based on
+  lookup tables (fast) or alpha-blending (mixed color
+  backgrounds).  Support for AA2 (2-bit) and AA4
+  (4-bit) anti-aliased fonts included.  Alpha-blending
+  only possible on displays where pixels can be read
+  back.
+- Added drawGradient() to drawing.c
 - Removed height parameter from drawButton.  It's now
   calculated based on the font height, and centered.
 - Added bell to CLI when backspace is pressed beyond
   the starting position (cosmetic, but still useful)
 - Removed dependency on /core/libc files in Crossworks
   when redirecting printf (added printf replacement
-  to sysinit.c)
+  to sysinit.c instead)
 - Added basic AS1115 driver for segment displays
 - Added driver for HX8340-B based LCDs
 - Added flag to projectconfig.h to disable the default
-  GPIO IRQ Handler functions in code/gpio/gpio.c
+  GPIO IRQ Handler functions in code/gpio/gpio.c (in
+  case you want to make your own ISR elsewhere)
 - Added driver for Samsung VFD displays from Adafruit
-- Added average sampling option to projectconfig.h.
+- Added ADC average sampling option to projectconfig.h.
   This allows you to take several readings from the
-  ADC and return the average.  Helps reduces one-off
-  peaks and valleys in the ADC at the expense of
-  slower reads.
+  ADC and return the average.  Helps reduces peaks and
+  valleys in the ADC due to noisen but at the expense
+  of slower reads.
   See: "tools/validation/adctest" for more info
 - Added I2C driver for PN532
-- Updated and added PN532 examples at
+- Updated and added PN532 examples to
   /tools/examples/sensors/PN532
 - updated touchscreen.h to be a bit clearer during
   calibration, though it can still be much better
This page took 0.022995 seconds and 4 git commands to generate.