Skip to content

Commit 8b0efde

Browse files
committed
examples/natmod/framebuf: Enable FrameBuffer.poly method.
Signed-off-by: Damien George <[email protected]>
1 parent d2276f0 commit 8b0efde

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

examples/natmod/framebuf/framebuf.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#define MICROPY_PY_ARRAY (1)
12
#define MICROPY_PY_FRAMEBUF (1)
23

34
#include "py/dynruntime.h"
@@ -12,7 +13,7 @@ mp_obj_full_type_t mp_type_framebuf;
1213

1314
#include "extmod/modframebuf.c"
1415

15-
mp_map_elem_t framebuf_locals_dict_table[11];
16+
mp_map_elem_t framebuf_locals_dict_table[12];
1617
static MP_DEFINE_CONST_DICT(framebuf_locals_dict, framebuf_locals_dict_table);
1718

1819
mp_obj_t mpy_init(mp_obj_fun_bc_t *self, size_t n_args, size_t n_kw, mp_obj_t *args) {
@@ -30,9 +31,10 @@ mp_obj_t mpy_init(mp_obj_fun_bc_t *self, size_t n_args, size_t n_kw, mp_obj_t *a
3031
framebuf_locals_dict_table[5] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_rect), MP_OBJ_FROM_PTR(&framebuf_rect_obj) };
3132
framebuf_locals_dict_table[6] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_line), MP_OBJ_FROM_PTR(&framebuf_line_obj) };
3233
framebuf_locals_dict_table[7] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_ellipse), MP_OBJ_FROM_PTR(&framebuf_ellipse_obj) };
33-
framebuf_locals_dict_table[8] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_blit), MP_OBJ_FROM_PTR(&framebuf_blit_obj) };
34-
framebuf_locals_dict_table[9] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_scroll), MP_OBJ_FROM_PTR(&framebuf_scroll_obj) };
35-
framebuf_locals_dict_table[10] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_text), MP_OBJ_FROM_PTR(&framebuf_text_obj) };
34+
framebuf_locals_dict_table[8] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_poly), MP_OBJ_FROM_PTR(&framebuf_poly_obj) };
35+
framebuf_locals_dict_table[9] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_blit), MP_OBJ_FROM_PTR(&framebuf_blit_obj) };
36+
framebuf_locals_dict_table[10] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_scroll), MP_OBJ_FROM_PTR(&framebuf_scroll_obj) };
37+
framebuf_locals_dict_table[11] = (mp_map_elem_t){ MP_OBJ_NEW_QSTR(MP_QSTR_text), MP_OBJ_FROM_PTR(&framebuf_text_obj) };
3638
MP_OBJ_TYPE_SET_SLOT(&mp_type_framebuf, locals_dict, (void*)&framebuf_locals_dict, 2);
3739

3840
mp_store_global(MP_QSTR_FrameBuffer, MP_OBJ_FROM_PTR(&mp_type_framebuf));

extmod/modframebuf.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -577,9 +577,7 @@ static mp_obj_t framebuf_ellipse(size_t n_args, const mp_obj_t *args_in) {
577577
}
578578
static MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(framebuf_ellipse_obj, 6, 8, framebuf_ellipse);
579579

580-
#if MICROPY_PY_ARRAY && !MICROPY_ENABLE_DYNRUNTIME
581-
// TODO: poly needs mp_binary_get_size & mp_binary_get_val_array which aren't
582-
// available in dynruntime.h yet.
580+
#if MICROPY_PY_ARRAY
583581

584582
static mp_int_t poly_int(mp_buffer_info_t *bufinfo, size_t index) {
585583
return mp_obj_get_int(mp_binary_get_val_array(bufinfo->typecode, bufinfo->buf, index));
@@ -696,7 +694,8 @@ static mp_obj_t framebuf_poly(size_t n_args, const mp_obj_t *args_in) {
696694
return mp_const_none;
697695
}
698696
static MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(framebuf_poly_obj, 5, 6, framebuf_poly);
699-
#endif // MICROPY_PY_ARRAY && !MICROPY_ENABLE_DYNRUNTIME
697+
698+
#endif // MICROPY_PY_ARRAY
700699

701700
static mp_obj_t framebuf_blit(size_t n_args, const mp_obj_t *args_in) {
702701
mp_obj_framebuf_t *self = MP_OBJ_TO_PTR(args_in[0]);

0 commit comments

Comments
 (0)