Commit Graph

26 Commits

Author SHA1 Message Date
Phil Howard 1b0b783a2f Pico Scroll: Add support for PicoGraphics. 2023-03-16 16:59:31 +00:00
Phil Howard f2751ba6e9 Pico Unicorn: Add support for PicoGraphics. 2023-03-16 15:02:28 +00:00
Phil Howard aed14aca22 PicoGraphics: Expose line thickness support. 2023-03-08 12:08:47 +00:00
Gee Bartlett 9bc616690e Cosmic Unicorn: MicroPython bindings.
started on MP driver

removed duplacte audio_i2s.pio

disabled GU lib options

bug fixes

bringing Picographics into line

Update picographics.cpp

fixing naming Cosmic to cosmic fixed H and W
2023-02-21 12:52:44 +00:00
Phil Howard 88e50891d1 Inky 7.3: Add to PicoGraphics. 2023-02-20 12:29:59 +00:00
Phil Howard c3ad87765d PicoGraphics: Extremely cursed thickness support for 1bit pens.
Experimental. There must be less cursed way to do this.
2023-02-10 22:15:07 +00:00
Philip Howard c4decc5003
PicoGraphics: HSV Pen (#665)
Co-authored-by: Gee Bartlett <122281230+ageeandakeyboard@users.noreply.github.com>
2023-02-09 16:13:37 +00:00
Phil Howard 77a5edc83f MicroPython: Update to support new slots mp_obj_type_t.
Follows the lead from: 662b9761b3

Update to support MP_DEFINE_CONST_OBJ_TYPE with backwards compatibility.
2023-01-11 09:46:45 +00:00
Gee Bartlett 104c819412
Hub75: Update to use Picographics (#601)
* have a basic pg working needs optimizing

* working well ported some examples from GU

* started on micropython module

* Fixes to get new Hub75 compiling in MP

* stripped down for faster compilling

* Update hub75.cmake

* added hub75 to galatic and eviro as it is needed for picographics

* Update picographics.c

* added hu75 update

* added _ModPicoGraphics_obj_t

* Update hub75.cpp

* update bindings

* some examples needs linting

* added other panel sizes and linted

* Update picographics.cpp

* Update picographics.c

* fixing gc memory allocation

* Update hub75.cpp

* Update interstate75_balls_demo.cpp

* review

* broke

* working with built in panel defs

* still borked

* not much change needs review

* Update hub75.cpp

* reverted alot of things

* adding i75 lib

* lots of updates ready to test compile mp

* Update picographics.h

* little tweaks

* an inability to count fixed!

* fixed some readme's

* lots of tiding

* fixed linting and removed experimental code

* Minor formatting

* Minor formatting and cmake tidy

* Removed unneeded parts of examples

* Final tidy

* tidy examples and adding more

* updated to new library

* documentation tweaks

* fixed inclusion of interstate75 module

* syncing some stuff

* fixed linting

Co-authored-by: ZodiusInfuser <christopher.parrott2@gmail.com>
2022-12-16 20:53:16 +00:00
Gee Bartlett 9085c48a62 mp working 2022-11-03 13:30:07 +00:00
ZodiusInfuser 7fd175abc5 Galactic Unicorn: More MicroPython bringup. 2022-10-13 13:26:41 +01:00
Phil Howard c1816ae9d6 PicoGraphics: MicroPython support for Inky Frame 4.0 2022-09-29 14:04:56 +01:00
Phil Howard 16aae0b1f2 PicoGraphics: Partial update/speed support. Tidyup. 2022-06-27 17:32:30 +01:00
Phil Howard b497b87c95 UC8159: Port to PicoGraphics/DisplayDriver. 2022-06-24 11:03:29 +01:00
Phil Howard e3f98d56cf PicoGraphics: UC8151 Support for Inky Pack. 2022-06-23 15:48:45 +01:00
Phil Howard 76715e45f8 ST7789: Convert Parallel IO to PIO + DMA.
Make display updates around 4x faster. Requires a PIO + SM to run Tufty 2040.
2022-06-17 11:03:55 +01:00
Phil Howard 1657a970bd PicoGraphics: Add SH1107 support to MMicroPython. 2022-06-16 09:23:29 +01:00
Phil Howard b9ca8ec779 PicoGraphics: Add load_spritesheet. 2022-06-14 14:15:27 +01:00
Phil Howard eb303ae811 PicoGraphics: Integer sprite scaling. 2022-06-14 13:28:27 +01:00
Phil Howard 6a3ba0d421 MicroPython: Shim MP_REGISTER_MODULE for >1.18 compat.
MicroPython has changed MP_REGISTER_MODULE to use only *two* args and now runs the preprocessing stage on files before running makemoduledefs.py.

This change avoids the build exploding, since the new regex matches the last two args as a single argument and generates a malformed module defs include.

The pattern here exploits the fact that 1.18 and below do not preprocess files, so *both* MP_REGISTER_MODULE lines are included in the source, but *only* the three arg version is matched by regex.

In >1.18 the files will be processed and the three arg version removed before makemoduledefs.py processes it.
2022-06-14 12:08:47 +01:00
Phil Howard 5d7113e8c9 PicoGraphics: Basic 128x128 RGB332 spritesheet support. 2022-06-13 20:12:03 +01:00
Phil Howard 602d1b41dd PicoGraphics: Attempt at dither and scanline interrupts.
Currently both unused and both very slow.

Dither may only be feasible for <=8 colour displays.

JPEGDEC will dither to 4-bit greyscale quite happily.
2022-06-13 20:12:03 +01:00
Phil Howard 1a9ebb7b6e PicoGraphics: More pen conversion, better names. 2022-06-13 20:12:03 +01:00
Phil Howard 4500497e3c PicoGraphics: Add get_buffer_size.
Take the guesswork out of correctly sizing a bytearray. Accepts a display and pen type.
2022-06-13 20:12:03 +01:00
Phil Howard b13470b4fb PicoGraphics: Add set_palette and set_font. 2022-06-13 20:12:03 +01:00
Phil Howard 67f1331b23 ST7789 -> PicoGraphics
* Absorb ST7735 support into the generic ST7789 driver and rename to PicoGraphics
* Delete obsolete MicroPython modules
* Refactor PicoGraphics to inherited class for each pen type
* Refactor ST7789 and ST7735 to derive from DisplayDriver
* Allow user to set pen_type in MicroPython constructor for RGB565, RGB332, P8 and P4 modes
2022-06-13 20:11:49 +01:00