summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--py/runtime.c5
-rw-r--r--windows/Makefile1
-rw-r--r--windows/init.c5
-rw-r--r--windows/init.h1
-rw-r--r--windows/mpconfigport.h2
5 files changed, 14 insertions, 0 deletions
diff --git a/py/runtime.c b/py/runtime.c
index 2928de8a72..ba78ec40f3 100644
--- a/py/runtime.c
+++ b/py/runtime.c
@@ -42,6 +42,11 @@ const mp_obj_module_t mp_module___main__ = {
};
void mp_init(void) {
+ // call port specific initialization if any
+#ifdef MICROPY_PORT_INIT_FUNC
+ MICROPY_PORT_INIT_FUNC;
+#endif
+
mp_emit_glue_init();
// init global module stuff
diff --git a/windows/Makefile b/windows/Makefile
index 351aad6f1a..ce75a60985 100644
--- a/windows/Makefile
+++ b/windows/Makefile
@@ -31,6 +31,7 @@ SRC_C = \
unix/main.c \
unix/file.c \
realpath.c \
+ init.c \
OBJ = $(PY_O) $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
diff --git a/windows/init.c b/windows/init.c
new file mode 100644
index 0000000000..78b8738f77
--- /dev/null
+++ b/windows/init.c
@@ -0,0 +1,5 @@
+#include <stdlib.h>
+
+void init() {
+ putenv("PRINTF_EXPONENT_DIGITS=2");
+}
diff --git a/windows/init.h b/windows/init.h
new file mode 100644
index 0000000000..70e535e495
--- /dev/null
+++ b/windows/init.h
@@ -0,0 +1 @@
+void init(void);
diff --git a/windows/mpconfigport.h b/windows/mpconfigport.h
index d27c59cb31..94b3334007 100644
--- a/windows/mpconfigport.h
+++ b/windows/mpconfigport.h
@@ -15,6 +15,7 @@
#define MICROPY_MOD_SYS_STDFILES (1)
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE)
#define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_MPZ)
+#define MICROPY_PORT_INIT_FUNC init()
// type definitions for the specific machine
@@ -38,3 +39,4 @@ extern const struct _mp_obj_fun_native_t mp_builtin_open_obj;
{ MP_OBJ_NEW_QSTR(MP_QSTR_open), (mp_obj_t)&mp_builtin_open_obj },
#include "realpath.h"
+#include "init.h"