summaryrefslogtreecommitdiffstatshomepage
path: root/lib/utils/stdout_helpers.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-07-22 19:56:27 +0300
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2016-07-22 19:56:27 +0300
commit43473372e6baa105e9facf13925f5eb750112e61 (patch)
tree8947219b5323593510400144f0c6724f5e938079 /lib/utils/stdout_helpers.c
parentb652ee705b7378211250bebb478a3894836350bb (diff)
downloadmicropython-43473372e6baa105e9facf13925f5eb750112e61.tar.gz
micropython-43473372e6baa105e9facf13925f5eb750112e61.zip
lib/utils/stdout_helpers: Move from minimal/uart_extra.c for reuse.
Diffstat (limited to 'lib/utils/stdout_helpers.c')
-rw-r--r--lib/utils/stdout_helpers.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/utils/stdout_helpers.c b/lib/utils/stdout_helpers.c
new file mode 100644
index 0000000000..6efe10b92c
--- /dev/null
+++ b/lib/utils/stdout_helpers.c
@@ -0,0 +1,26 @@
+#include <string.h>
+#include <unistd.h>
+#include "py/mpconfig.h"
+#include "py/mphal.h"
+
+/*
+ * Extra stdout functions
+ * These can be either optimized for a particular port, or reference
+ * implementation below can be used.
+ */
+
+// Send "cooked" string of given length, where every occurance of
+// LF character is replaced with CR LF.
+void mp_hal_stdout_tx_strn_cooked(const char *str, mp_uint_t len) {
+ while (len--) {
+ if (*str == '\n') {
+ mp_hal_stdout_tx_strn("\r", 1);
+ }
+ mp_hal_stdout_tx_strn(str++, 1);
+ }
+}
+
+// Send zero-terminated string
+void mp_hal_stdout_tx_str(const char *str) {
+ mp_hal_stdout_tx_strn(str, strlen(str));
+}