Commit Graph

13412 Commits

Author SHA1 Message Date
Scott Shawcroft d2ec43113e
Update BusDevice to save space. 2019-06-12 14:22:57 -07:00
Scott Shawcroft 0b1f605a9b
Turn off gc opt for more M0 boards 2019-06-12 13:20:21 -07:00
Scott Shawcroft a91ad05774
Change to one lto partition for ultimate optimization. 2019-06-12 11:37:46 -07:00
Scott Shawcroft a35d9b469d
Refactor deinit check to reduce code size. 2019-06-12 11:36:43 -07:00
Scott Shawcroft 6db4f45754
Update translations 2019-06-12 11:32:40 -07:00
Scott Shawcroft eb21fc3e31
Add partial display update support.
Different operations to the display tree have different costs. Be
aware of these costs when optimizing your code.
* Changing tiles indices in a TileGrid will update an area
covering them all.
* Changing a palette will refresh every object that references it.
* Moving a TileGrid will update both where it was and where it moved to.
* Adding something to a Group will refresh each individual area it
covers.
* Removing things from a Group will refresh one area that covers all
previous locations. (Not separate areas like add.)
* Setting a new top level Group will refresh the entire display.

Only TileGrid moves are optimized for overlap. All other overlaps
cause sending of duplicate pixels.

This also adds flip_x, flip_y and transpose_xy to TileGrid. They
change the direction of the pixels but not the location.

Fixes #1169. Fixes #1705. Fixes #1923.
2019-06-12 11:32:39 -07:00
Scott Shawcroft a06a97e2cb
Merge pull request #1934 from dhalbert/vm-computed-goto
Turn on MICROPY_OPT_COMPUTED_GOTO for 5x CPU-bound speedup
2019-06-12 11:25:43 -07:00
Dan Halbert ba1b36a800 Uncomment vm.c SUPEROPT (debugging typo); trim a few builds 2019-06-12 13:09:09 -04:00
Dan Halbert 1bb4fccc3b Turn off SUPEROPT on gc.c instead of trying to squueze inline limit so much; reorganize mpconfigboard.mk files 2019-06-12 11:08:22 -04:00
Dan Halbert 0b3f29780a shrink a bunch of builds to fit 2019-06-11 18:46:06 -04:00
Dan Halbert aa3316b619 Merge remote-tracking branch 'adafruit/master' into vm-computed-goto 2019-06-11 18:01:04 -04:00
Dan Halbert 541c2a70ac
Merge pull request #1938 from dhalbert/4.0.x-merge-to-master-2019-06-11
Merge latest 4.0.x changes to master
2019-06-11 17:43:22 -04:00
Dan Halbert 4fc189b60c Merge latest 4.0.x fixes into master 2019-06-11 16:16:29 -04:00
Dan Halbert 036e7a332b
Merge pull request #1936 from dhalbert/git-checkout-latest-tag.sh
forgot tools/git-checkout-latest-tag.sh in PR #1909
2019-06-11 16:11:56 -04:00
Dan Halbert 5164a6eb26 forgot tools/git-checkout-latest-tag.sh in PR #1909 2019-06-11 15:22:32 -04:00
Dan Halbert ea760c042b Turn on MICROPY_OPT_COMPUTED_GOTO for 5x CPU-bound speedup 2019-06-11 12:43:48 -04:00
Scott Shawcroft c85e111675
Merge pull request #1931 from LOGre/master
Added pin for SD CS
2019-06-10 16:41:03 -07:00
shazz 9c49af0597 Added pin for SD CS 2019-06-08 12:04:27 -04:00
sommersoft 9e4396bdcd
Merge pull request #1920 from tannewt/fix_rst
Improve rST consistency for rst2pyi use
2019-06-07 23:41:00 -05:00
Scott Shawcroft fecd3f835b
Merge pull request #1928 from dhalbert/gc-display-objects
Include display objects in gc
2019-06-06 15:47:10 -07:00
Dan Halbert 62de2506e4 Include display objects in gc. 2019-06-06 17:49:32 -04:00
Scott Shawcroft 84e89146d0
Merge pull request #1893 from elvis-epx/ps2
Add PS/2 support with ps2io module
2019-06-06 10:24:04 -07:00
Scott Shawcroft a6ad332436
Merge pull request #1927 from baorepo/patch-1
This __init__.h should be redundant. I deleted it for you
2019-06-06 08:36:01 -07:00
Baozhu Zuo f45daae09c
This __init__.h should be redundant. I deleted it for you 2019-06-06 15:44:29 +08:00
Scott Shawcroft 8f57841593
Merge pull request #1926 from C47D/fix_wav_samplerate
[shared-module/audioio/WaveFile.h] Change sample_rate from uint16_t t…
2019-06-05 10:07:08 -07:00
Carlos 671178c8c4 [shared-module/audioio/WaveFile.h] Change sample_rate from uint16_t to uint32_t so it matches the sample rate type parsed from the WAV header format, fix #1922 2019-06-04 21:31:30 -05:00
Elvis Pfützenreuter 1da8d4b4da Add PS/2 support -- ps2io module 2019-06-04 18:05:46 -03:00
Scott Shawcroft c90ce2b9fa
Merge pull request #1907 from ntavish/blip_support
boards: add support for Electronut labs Blip
2019-06-04 13:32:27 -07:00
Tavish Naruka 4a7122d354 boards: add support for Electronut labs Blip
Signed-off-by: Tavish Naruka <tavishnaruka@gmail.com>
2019-06-05 00:49:29 +05:30
Scott Shawcroft c5a4e19d6f
Merge pull request #1915 from jreese/rst2pyi
Use rst2pyi to generate type stubs and package
2019-06-04 11:39:03 -07:00
John Reese e8521c8379 Clean up egg-info directory as well 2019-06-02 15:12:29 -07:00
John Reese f831d84435 Update maintainer/email for stub package, bump rst2pyi dep 2019-06-02 15:08:48 -07:00
Dan Halbert bcda5e133d
Merge pull request #1903 from tannewt/get_area
Rework the pixel computation to use areas
2019-05-31 21:27:06 -04:00
Scott Shawcroft 5d0791cafb
Fix off-by-one error
It caused the bottom and right edges to be one pixel short.
2019-05-31 15:50:55 -07:00
Scott Shawcroft cfe24b8532
Improve rST consistency for rst2pyi use 2019-05-30 19:02:47 -07:00
Scott Shawcroft cbb102f541
Merge pull request #1909 from dhalbert/update-frozen-4.0.x
Update frozen libs; implement clean builds for translations which need it
2019-05-30 13:51:12 -07:00
Dan Halbert 812a31c78f
Merge pull request #1916 from jpecor/patch-2
Removed warning box regarding SAMD21 builds
2019-05-28 09:16:34 -04:00
Dan Halbert 71c7aca29c Add top-level Makefile target to update frozen libs easily; Update CPX lib 2019-05-28 09:09:00 -04:00
Jason Pecor a9a2227167
Removed warning box regarding SAMD21 builds
The support matrix shows that pulseio is supported for all SAMD21/SAMD51 variants. Removing warning to avoid confusion.
2019-05-27 14:08:19 -05:00
John Reese 7f7665c1c0 Use rst2pyi to generate type stubs and package 2019-05-25 21:32:06 -07:00
Dan Halbert 4e85c1ef91 Implement forced clean builds for boards so designated.
Mark boards that set CFLAGS_INLINE_LIMIT for particular langauges as needing clean builds.

Fixes #1910.
2019-05-24 15:32:24 -04:00
Dan Halbert e84f3b1c6a make crickit cpx pinyin build fit 2019-05-23 21:22:50 -04:00
Dan Halbert b5fc646e3d Update frozen libs 2019-05-23 16:16:14 -04:00
Scott Shawcroft 63b253c33a
Merge pull request #1906 from adafruit/4.0.x
Merge in all bug fixes from 4.0.1 into master
2019-05-22 15:23:24 -07:00
Scott Shawcroft 7a117f52ed
Make point 2 in areas exclusive and simplify full_coverage. 2019-05-22 15:00:47 -07:00
Scott Shawcroft 32b0f1c78e
Merge pull request #1904 from pewpew-game/4.0.x
Bump circuitpython-stage to 1.0.2
2019-05-22 12:54:16 -07:00
Radomir Dopieralski 9ae3d92179 Bump circuitpython-stage to 1.0.2
This fixes an OverflowError in the read_palette function.

(cherry picked from commit 4ebcca865c)
2019-05-22 18:58:09 +02:00
Scott Shawcroft 3fad7de8db
Rework the pixel computation to use areas
This changes the displayio pixel computation from per-pixel to
per-area. This is precursor work to updating portions of the screen
(#1169). It should provide mild speedups because bounds checks are
done once per area rather than once per pixel. Filling by area also
allows TileGrid to maintain a row-associative fill pattern even when
the display's refresh is orthogonal to it.
2019-05-21 17:41:06 -07:00
Scott Shawcroft 70e0b5c0d0
Merge pull request #1896 from dhalbert/round-int-4.0.x
Enable MICROPY_PY_BUILTINS_ROUND_INT; make round() work better when flag is disabled
2019-05-21 13:55:38 -07:00
Dan Halbert 0199d9810b Make pinyin fit on cpx 2019-05-21 15:18:56 -04:00