Ken Van Hoeylandt 7ea8c346b0
Various improvements (#673)
Graphics & rendering

- Implement `binfont-module` to generate bitmap fonts on the device itself
- Remove lodepng support from LVGL library and create `Modules/lodepng-module` to make the feature re-usable in non-LVGL apps too. Add binding functions for LVGL support.
- Implement large icons for boot screen (Tactility and USB logos)
- Remove unused asset files in `Data/`

Boot

- Split up `Tactility.cpp` and its `run()` function into various `Init*.cpp` files.
- Re-implement `Boot.cpp` app as non-LVGL app
- Boot app now has a `BootSequence.cpp` for the init code.
- LVGL is now started when the Boot app finishes
- Move more init logic into Boot app

BLE

- Don't allocate scan result buffers unless BLE is on
- Allocate scan results in external memory if possible

UX & UI

- USB Settings app: remove border from the button container
2026-10-04 18:09:21 +02:00

26 lines
674 B
C

// SPDX-License-Identifier: Apache-2.0
#pragma once
// The C++ wrapper is not compiled: callers use the C API from C and C++ alike
#define LODEPNG_NO_COMPILE_CPP
// Allocations go through the kernel's memory API (see lodepng_malloc() below)
#define LODEPNG_NO_COMPILE_ALLOCATORS
#ifdef __cplusplus
extern "C" {
#endif
#include <lodepng/lodepng_upstream.h>
/** Allocates memory, preferring external memory (PSRAM) */
void* lodepng_malloc(size_t size);
void* lodepng_realloc(void* ptr, size_t new_size);
/** Releases memory from lodepng_malloc(), including images returned by the decode and encode functions */
void lodepng_free(void* ptr);
#ifdef __cplusplus
}
#endif