827d99dde3
* lib: add heatshrink compress library * canvas: new icons format * scripts: add icons compression to assets generation script * assets: update assets * furi-hal: introduce furi-hal-compress * canvas: rework icon drawing with furi-hal-compress * lib: rework heatshrink lib for dynamic buffer allocation API * furi-hal-compress: add encode and decode API * furi-hal-compress: working decode * furi-hal-compress: support f6 target * scripts: format sources * furi-hal-compress: fix incorrect encoder reset * furi-hal: add compress initialization to f6 target Co-authored-by: あく <alleteam@gmail.com>
29 lines
786 B
C
29 lines
786 B
C
#ifndef HEATSHRINK_CONFIG_H
|
|
#define HEATSHRINK_CONFIG_H
|
|
|
|
#include <furi.h>
|
|
|
|
/* Should functionality assuming dynamic allocation be used? */
|
|
#ifndef HEATSHRINK_DYNAMIC_ALLOC
|
|
#define HEATSHRINK_DYNAMIC_ALLOC 1
|
|
#endif
|
|
|
|
#if HEATSHRINK_DYNAMIC_ALLOC
|
|
/* Optional replacement of malloc/free */
|
|
#define HEATSHRINK_MALLOC(SZ) furi_alloc(SZ)
|
|
#define HEATSHRINK_FREE(P, SZ) free(P)
|
|
#else
|
|
/* Required parameters for static configuration */
|
|
#define HEATSHRINK_STATIC_INPUT_BUFFER_SIZE 1024
|
|
#define HEATSHRINK_STATIC_WINDOW_BITS 8
|
|
#define HEATSHRINK_STATIC_LOOKAHEAD_BITS 4
|
|
#endif
|
|
|
|
/* Turn on logging for debugging. */
|
|
#define HEATSHRINK_DEBUGGING_LOGS 0
|
|
|
|
/* Use indexing for faster compression. (This requires additional space.) */
|
|
#define HEATSHRINK_USE_INDEX 1
|
|
|
|
#endif
|