Commit Graph

8 Commits

Author SHA1 Message Date
Phil Howard c9a8d5ef49 PicoVector: Move polygon drawing to a new home. 2023-08-22 09:32:28 +01:00
Phil Howard 1630ddbbb2 PicoGraphics: Add support for PNG decoding. 2023-07-19 16:04:05 +01:00
Phil Howard 0148e5f5e7 MicroPython: Move boot.py to modules_py.cmake.
The cppmem module *must* be switched into MicroPython heap mode or C++ code will inevitably run out of RAM.

Thus boot.py needs to be included in every build.
2023-03-27 10:41:16 +01:00
Phil Howard 2c0310ca9a MicroPython: Switch C++ allocation mode in boot.py. 2023-03-24 20:37:26 +00:00
Phil Howard 667faf70d1 MicroPython: Magic C++ allocator module.
This module redirects all pre-init object memory allocations into a static, fixed-sized, linear, non-freeing memory pool.

It then auto-switches into "MICROPYTHON" mode, whereupon all C++ `new` and `delete` calls are remapped to `m_malloc` and `m_free` respectively.
2023-03-24 15:11:07 +00:00
Phil Howard 375df60ff3 PicoGraphics: Switch to string_view.
MicroPython's GET_STR_DATA_LEN macro returns a const byte array and len, which std::string would copy into heap.

Using string_view lets us wrap the existing const values.
2023-03-16 13:25:19 +00:00
Phil Howard 13599b55a1 MicroPython: Tidy up CMake files for our boards.
* Feature parity between Badger 2040 and Tufty 2040.
* Add ulab to Tufty 2040.
* Don't include modules_py modules for boards that don't use/need them.
* Tweak modules_py.cmake so modules can be copied by parent CMake files.
* Simplify copy_module function to avoid repetition.
2023-03-09 11:36:55 +00:00
Phil Howard 122e57aa9a CI: Build Tufty 2040 + Board fixups.
Add board fixups including Pico SDK board .h and MicroPython board dir since these are not yet upstream.
2022-06-17 11:38:19 +01:00