let's place the cursor at the beginning of the line before/after, so we
know it's the first char we overwrite, and we return to the front again
right after.
ST->ConIn->Reset(ST->ConIn, false);
ST->ConOut->EnableCursor(ST->ConOut, false);
- /* draw a single character to make ClearScreen work on some firmware */
- ST->ConOut->OutputString(ST->ConOut, (char16_t *) u" ");
+ /* Draw a single character to the beginning of a line, in order to make ClearScreen() work on certain
+ * broken firmware. And let's immediately move back to the beginning of the line. */
+ printf("\r \r");
err = console_set_mode(config->console_mode_efivar != CONSOLE_MODE_KEEP ?
config->console_mode_efivar : config->console_mode);