Commit Graph

154 Commits

Author SHA1 Message Date
Jerome Lambourg
9b591d1480 Refactor and fix the bitmap layers.
This commit provides the following fixes:
* pure LTDC mode: fix the 'copy_back' function when swapping the double
  buffered layers.
* fix the 'swapped' mode, when buffer's internal representation has swapped
  x/y values.

This commit enhances the efficiency of the graphical primitives, by
* better organizing the potentially hardware-optimized primitives
* constantly redirecting the other ones to those hardware-optimized when
  appropriate
* optimize the software-rendered copy_rect
* use direct fields access for values that are used very often (width, height,
  color_mode)
* provide a mean to easily know if a bitmap is a memory buffer or a device
* adds finer control over the potentially DMA-accelerated Fill_Rect primitive.
* add direct access to DMA2D buffers, to prevent too much dispatching
2017-05-02 14:28:53 +02:00
Jerome Lambourg
3bccd9de5c examples/common/common.gpr: Do not specify the stack size
This is the responsibility of the final application.
2017-04-24 15:49:10 +02:00
Jerome Lambourg
ef2b3d3da0 Fix examples after changes in config.gpr 2017-04-23 17:47:31 +02:00
Jerome Lambourg
1fa76dc605 Further refactor the board projects.
This commit in particular removes the need for aggregate projects.
2017-04-23 15:50:27 +02:00
Jerome Lambourg
29381c9f63 Fix the examples. 2017-04-21 10:12:07 +02:00
Jerome Lambourg
e21e7a5837 Remove the dependency over embedded-runtimes.
This build dependency won't work anymore with the next GNAT release as
runtimes will now require being installed into the compiler.

This commit also now generates automatically the board projects, to ease
the addition of new boards and runtimes, as well as taking into account
modifications refactoring of the library.
2017-04-21 10:11:53 +02:00
Fabien Chouteau
3675e6cbb9 Micro:Bit: Switch README instructions to DAPLink + pyOCD instead or JLink
Works out of the box. Less things to install.
2017-04-07 20:26:46 +02:00
Fabien Chouteau
36887d6189 STM32.Setup: Allow different AF values for SCL and SDA
Required for the STM32F769.
2017-03-09 18:22:24 +01:00
Fabien Chouteau
7ef128685b MicroBit: Add a simple delay 2017-02-23 14:39:26 +01:00
Fabien Chouteau
0a804815ae HAL: Make UInt8|16|32 derived from Interfaces types rather than subtypes
This remove the dependency on the Interfaces package which simplify the
use of HAL types.

Also remove Byte and Bit subtype.
2017-02-13 21:18:34 +01:00
Fabien Chouteau
31a2fdf660 HiFive1: Add example and board README 2017-02-12 11:18:26 +01:00
Fabien Chouteau
3bf7852999 HiFive1: Add LEDs support and blinky example 2017-02-12 11:07:43 +01:00
Fabien Chouteau
23c5f2c10c HiFive1: Start an example project 2017-02-12 11:07:42 +01:00
pat-rogers
e03dbb0b1d change STM32.Boards' LED names to disambiguate from color names 2017-02-07 18:42:05 -06:00
Fabien Chouteau
3192aed728 STM32_Common: Fix LCD_STD_Out and use it in the draw example
This package should be made platform independent and moved to the
middleware.
2017-02-01 11:40:54 +01:00
Fabien Chouteau
f81e408d79 examples/draw: Add a bitmap drawing primitive demo
Pressing the blue button shows some of the primitives in action.
2017-01-21 19:50:50 +01:00
Fabien Chouteau
f645d76a3f HAL.Bitmap: Move Draw_Line and Cubic_Bezier with the other drawing primitives 2017-01-21 19:50:50 +01:00
Fabien Chouteau
d44d8f9388 HAL.Bitmap: Finish cleanup of interface 2017-01-21 16:35:53 +01:00
Fabien Chouteau
fdc3ef6e47 HAL.Bitmap: Unify drawing API by using Point and Rect types 2017-01-21 12:49:56 +01:00
Fabien Chouteau
f76a004acb HAL.Bitmap: Move Draw/Fill_Rect with the other drawing primitives 2017-01-21 11:54:14 +01:00
Fabien Chouteau
94fa1bfc31 HAL.Bitmap: Move Draw_Circle and Fill_Circle with the other drawing primitives 2017-01-21 11:54:04 +01:00
Fabien Chouteau
75f13b8382 HAL.Framebuffer Refactoring: Remove Get_ and Is_ prefixes 2017-01-21 11:11:46 +01:00
Fabien Chouteau
80f15f741b HAL.Bitmap Refactoring: Fix function name Get_Pixel to Pixel 2017-01-21 11:11:15 +01:00
Fabien Chouteau
fc24e56b27 HAL.Bitmap: Fix parameter access
Modifying the bitmap requires write access. As consequence,
framebuffer.Get_Hidden_Buffer has to return a not null access.
2017-01-21 10:51:01 +01:00
Fabien Chouteau
d5ce0963f2 Micro:Bit: Add README to document development setup 2017-01-16 01:09:30 +01:00