From 458fcb51a8522fae330f86344be58a8b549a7b98 Mon Sep 17 00:00:00 2001
From: danukeru <danukeru@foulab.org>
Date: Thu, 22 Aug 2019 11:50:51 -0400
Subject: [PATCH] Fix #104 - Add error message to update write fail to flash.
 Added bootloader specific error splash page function, for seamless reporting.

---
 bootloader/bootloader-display.c | 15 +++++++++++++++
 bootloader/bootloader.h         |  1 +
 2 files changed, 16 insertions(+)

diff --git a/bootloader/bootloader-display.c b/bootloader/bootloader-display.c
index 7bdbc4e18..8c13116d7 100644
--- a/bootloader/bootloader-display.c
+++ b/bootloader/bootloader-display.c
@@ -55,6 +55,21 @@ void bootloader_display_header(void)
 	bootloader_display_line(2, CARD10_VERSION, white);
 }
 
+void bootloader_display_error(char *errtype, char *line1, char *line2)
+{
+	gfx_clear(&display_screen);
+
+	Color red    = gfx_color(&display_screen, RED);
+	Color yellow = gfx_color(&display_screen, YELLOW);
+	Color white  = gfx_color(&display_screen, WHITE);
+
+	bootloader_display_line(0, "[FATAL ERROR]", red);
+	bootloader_display_line(1, errtype, yellow);
+	bootloader_display_line(2, CARD10_VERSION, white);
+	bootloader_display_line(3, line1, white);
+	bootloader_display_line(4, line2, white);
+}
+
 /*
  * Display a line of text on the display.
  */
diff --git a/bootloader/bootloader.h b/bootloader/bootloader.h
index 45631ea65..ac3ca3d79 100644
--- a/bootloader/bootloader.h
+++ b/bootloader/bootloader.h
@@ -5,6 +5,7 @@
 /* Display */
 void bootloader_display_init(void);
 void bootloader_display_header(void);
+void bootloader_display_error(char *errtype, char *line1, char *line2);
 void bootloader_display_line(int line, char *string, uint16_t color);
 
 /* USB */
-- 
GitLab