Index: kernel/generic/src/console/chardev.c
===================================================================
--- kernel/generic/src/console/chardev.c	(revision 5a5269df4bb8693ab8e38af0622b7fa6365b9535)
+++ kernel/generic/src/console/chardev.c	(revision 28a5ebdea900783081bd23e40f685b6b0479c63d)
@@ -65,5 +65,5 @@
  *
  */
-void indev_push_character(indev_t *indev, wchar_t ch)
+void indev_push_character(indev_t *indev, char32_t ch)
 {
 	assert(indev);
@@ -92,5 +92,5 @@
  *
  */
-wchar_t indev_pop_character(indev_t *indev)
+char32_t indev_pop_character(indev_t *indev)
 {
 	if (atomic_load(&haltstate)) {
@@ -117,5 +117,5 @@
 	waitq_sleep(&indev->wq);
 	irq_spinlock_lock(&indev->lock, true);
-	wchar_t ch = indev->buffer[(indev->index - indev->counter) %
+	char32_t ch = indev->buffer[(indev->index - indev->counter) %
 	    INDEV_BUFLEN];
 	indev->counter--;
Index: kernel/generic/src/console/console.c
===================================================================
--- kernel/generic/src/console/console.c	(revision 5a5269df4bb8693ab8e38af0622b7fa6365b9535)
+++ kernel/generic/src/console/console.c	(revision 28a5ebdea900783081bd23e40f685b6b0479c63d)
@@ -59,8 +59,8 @@
 
 #define KIO_PAGES    8
-#define KIO_LENGTH   (KIO_PAGES * PAGE_SIZE / sizeof(wchar_t))
+#define KIO_LENGTH   (KIO_PAGES * PAGE_SIZE / sizeof(char32_t))
 
 /** Kernel log cyclic buffer */
-wchar_t kio[KIO_LENGTH] __attribute__((aligned(PAGE_SIZE)));
+char32_t kio[KIO_LENGTH] __attribute__((aligned(PAGE_SIZE)));
 
 /** Kernel log initialized */
@@ -95,5 +95,5 @@
 };
 
-static void stdout_write(outdev_t *, wchar_t);
+static void stdout_write(outdev_t *, char32_t);
 static void stdout_redraw(outdev_t *);
 static void stdout_scroll_up(outdev_t *);
@@ -148,5 +148,5 @@
 }
 
-static void stdout_write(outdev_t *dev, wchar_t ch)
+static void stdout_write(outdev_t *dev, char32_t ch)
 {
 	list_foreach(dev->list, link, outdev_t, sink) {
@@ -261,12 +261,12 @@
 	buf[offset] = 0;
 
-	wchar_t ch;
+	char32_t ch;
 	while ((ch = indev_pop_character(indev)) != '\n') {
 		if (ch == '\b') {
 			if (count > 0) {
 				/* Space, backspace, space */
-				putwchar('\b');
-				putwchar(' ');
-				putwchar('\b');
+				putuchar('\b');
+				putuchar(' ');
+				putuchar('\b');
 
 				count--;
@@ -277,5 +277,5 @@
 
 		if (chr_encode(ch, buf, &offset, buflen - 1) == EOK) {
-			putwchar(ch);
+			putuchar(ch);
 			count++;
 			buf[offset] = 0;
@@ -287,8 +287,8 @@
 
 /** Get character from input device & echo it to screen */
-wchar_t getc(indev_t *indev)
-{
-	wchar_t ch = indev_pop_character(indev);
-	putwchar(ch);
+char32_t getc(indev_t *indev)
+{
+	char32_t ch = indev_pop_character(indev);
+	putuchar(ch);
 	return ch;
 }
@@ -324,5 +324,5 @@
 	/* Print characters that weren't printed earlier */
 	while (kio_stored > 0) {
-		wchar_t tmp = kio[(kio_start + kio_len - kio_stored) % KIO_LENGTH];
+		char32_t tmp = kio[(kio_start + kio_len - kio_stored) % KIO_LENGTH];
 		kio_stored--;
 
@@ -344,5 +344,5 @@
  * The caller is required to hold kio_lock
  */
-void kio_push_char(const wchar_t ch)
+void kio_push_char(const char32_t ch)
 {
 	kio[(kio_start + kio_len) % KIO_LENGTH] = ch;
@@ -360,5 +360,5 @@
 }
 
-void putwchar(const wchar_t ch)
+void putuchar(const char32_t ch)
 {
 	bool ordy = ((stdout) && (stdout->op->write));
@@ -377,10 +377,10 @@
 		 * for possible future output.
 		 *
-		 * The early_putwchar() function is used to output
+		 * The early_putuchar() function is used to output
 		 * the character for low-level debugging purposes.
 		 * Note that the early_putc() function might be
 		 * a no-op on certain hardware configurations.
 		 */
-		early_putwchar(ch);
+		early_putuchar(ch);
 	}
 
Index: kernel/generic/src/console/kconsole.c
===================================================================
--- kernel/generic/src/console/kconsole.c	(revision 5a5269df4bb8693ab8e38af0622b7fa6365b9535)
+++ kernel/generic/src/console/kconsole.c	(revision 28a5ebdea900783081bd23e40f685b6b0479c63d)
@@ -86,5 +86,5 @@
 LIST_INITIALIZE(cmd_list);      /**< Command list. */
 
-static wchar_t history[KCONSOLE_HISTORY][MAX_CMDLINE] = { };
+static char32_t history[KCONSOLE_HISTORY][MAX_CMDLINE] = { };
 static size_t history_pos = 0;
 
@@ -156,9 +156,9 @@
 
 /** Print count times a character */
-_NO_TRACE static void print_cc(wchar_t ch, size_t count)
+_NO_TRACE static void print_cc(char32_t ch, size_t count)
 {
 	size_t i;
 	for (i = 0; i < count; i++)
-		putwchar(ch);
+		putuchar(ch);
 }
 
@@ -290,5 +290,5 @@
 }
 
-_NO_TRACE static cmd_info_t *parse_cmd(const wchar_t *cmdline)
+_NO_TRACE static cmd_info_t *parse_cmd(const char32_t *cmdline)
 {
 	size_t start = 0;
@@ -331,5 +331,5 @@
 }
 
-_NO_TRACE static wchar_t *clever_readline(const char *prompt, indev_t *indev,
+_NO_TRACE static char32_t *clever_readline(const char *prompt, indev_t *indev,
     char *tmp)
 {
@@ -337,13 +337,13 @@
 
 	size_t position = 0;
-	wchar_t *current = history[history_pos];
+	char32_t *current = history[history_pos];
 	current[0] = 0;
 
 	while (true) {
-		wchar_t ch = indev_pop_character(indev);
+		char32_t ch = indev_pop_character(indev);
 
 		if (ch == '\n') {
 			/* Enter */
-			putwchar(ch);
+			putuchar(ch);
 			break;
 		}
@@ -356,5 +356,5 @@
 			if (wstr_remove(current, position - 1)) {
 				position--;
-				putwchar('\b');
+				putuchar('\b');
 				printf("%ls ", current + position);
 				print_cc('\b', wstr_length(current) - position + 1);
@@ -369,5 +369,5 @@
 			for (; (current[position] != 0) && (!isspace(current[position]));
 			    position++)
-				putwchar(current[position]);
+				putuchar(current[position]);
 
 			/*
@@ -464,5 +464,5 @@
 			/* Left */
 			if (position > 0) {
-				putwchar('\b');
+				putuchar('\b');
 				position--;
 			}
@@ -473,5 +473,5 @@
 			/* Right */
 			if (position < wstr_length(current)) {
-				putwchar(current[position]);
+				putuchar(current[position]);
 				position++;
 			}
@@ -646,5 +646,5 @@
 	size_t offset = *start;
 	size_t prev = *start;
-	wchar_t ch;
+	char32_t ch;
 
 	while ((ch = str_decode(cmdline, &offset, size)) != 0) {
@@ -825,5 +825,5 @@
 
 	while (true) {
-		wchar_t *tmp = clever_readline((char *) prompt, stdin, buffer);
+		char32_t *tmp = clever_readline((char *) prompt, stdin, buffer);
 		size_t len = wstr_length(tmp);
 		if (!len)
Index: kernel/generic/src/console/prompt.c
===================================================================
--- kernel/generic/src/console/prompt.c	(revision 5a5269df4bb8693ab8e38af0622b7fa6365b9535)
+++ kernel/generic/src/console/prompt.c	(revision 28a5ebdea900783081bd23e40f685b6b0479c63d)
@@ -56,5 +56,5 @@
 
 	while (true) {
-		wchar_t answer = indev_pop_character(indev);
+		char32_t answer = indev_pop_character(indev);
 
 		if ((answer == 'y') || (answer == 'Y')) {
@@ -87,5 +87,5 @@
 	printf("--More--");
 	while (true) {
-		wchar_t continue_showing_hints = indev_pop_character(indev);
+		char32_t continue_showing_hints = indev_pop_character(indev);
 		/* Display a full page again? */
 		if ((continue_showing_hints == 'y') ||
