1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-05-12 03:48:45 +00:00

embed/extmod/modtrezorui: introduce frame numbering to display.save

This commit is contained in:
Pavol Rusnak 2018-02-27 19:05:40 +01:00
parent fa056518f1
commit c1f097f2b4
No known key found for this signature in database
GPG Key ID: 91F3B339B9A02A3D
4 changed files with 15 additions and 11 deletions

View File

@ -271,6 +271,6 @@ void display_refresh(void)
while (GPIO_PIN_SET == HAL_GPIO_ReadPin(GPIOD, GPIO_PIN_12)) { } while (GPIO_PIN_SET == HAL_GPIO_ReadPin(GPIOD, GPIO_PIN_12)) { }
} }
void display_save(const char *filename) void display_save(const char *prefix)
{ {
} }

View File

@ -153,12 +153,16 @@ static void display_set_backlight(int val)
display_refresh(); display_refresh();
} }
void display_save(const char *filename) void display_save(const char *prefix)
{ {
#ifndef TREZOR_NOUI #ifndef TREZOR_NOUI
if (!RENDERER) { if (!RENDERER) {
display_init(); display_init();
} }
IMG_SavePNG(BUFFER, filename); static uint32_t cnt = 0;
char fname[256];
snprintf(fname, sizeof(fname), "%s%08d.png", prefix, cnt);
IMG_SavePNG(BUFFER, fname);
cnt++;
#endif #endif
} }

View File

@ -54,7 +54,7 @@
void display_init(void); void display_init(void);
void display_refresh(void); void display_refresh(void);
void display_save(const char *filename); void display_save(const char *prefix);
// provided by common // provided by common

View File

@ -414,15 +414,15 @@ STATIC mp_obj_t mod_trezorui_Display_offset(size_t n_args, const mp_obj_t *args)
} }
STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mod_trezorui_Display_offset_obj, 1, 2, mod_trezorui_Display_offset); STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(mod_trezorui_Display_offset_obj, 1, 2, mod_trezorui_Display_offset);
/// def save(self, filename: str) -> None: /// def save(self, prefix: str) -> None:
/// ''' /// '''
/// Saves current display contents to file filename. /// Saves current display contents to PNG file with given prefix.
/// ''' /// '''
STATIC mp_obj_t mod_trezorui_Display_save(mp_obj_t self, mp_obj_t filename) { STATIC mp_obj_t mod_trezorui_Display_save(mp_obj_t self, mp_obj_t prefix) {
mp_buffer_info_t fn; mp_buffer_info_t pfx;
mp_get_buffer_raise(filename, &fn, MP_BUFFER_READ); mp_get_buffer_raise(prefix, &pfx, MP_BUFFER_READ);
if (fn.len > 0) { if (pfx.len > 0) {
display_save(fn.buf); display_save(pfx.buf);
} }
return mp_const_none; return mp_const_none;
} }