diff options
Diffstat (limited to 'firmware/target/sh/system-sh.c')
-rw-r--r-- | firmware/target/sh/system-sh.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/firmware/target/sh/system-sh.c b/firmware/target/sh/system-sh.c index 24821095e8..e054801b57 100644 --- a/firmware/target/sh/system-sh.c +++ b/firmware/target/sh/system-sh.c | |||
@@ -299,10 +299,18 @@ void UIE (unsigned int pc) /* Unexpected Interrupt or Exception */ | |||
299 | asm volatile ("sts\tpr,%0" : "=r"(n)); | 299 | asm volatile ("sts\tpr,%0" : "=r"(n)); |
300 | 300 | ||
301 | /* clear screen */ | 301 | /* clear screen */ |
302 | lcd_clear_display(); | ||
303 | #ifdef HAVE_LCD_BITMAP | 302 | #ifdef HAVE_LCD_BITMAP |
303 | #if LCD_DEPTH > 1 | ||
304 | lcd_set_backdrop(NULL); | ||
305 | lcd_set_drawmode(DRMODE_SOLID); | ||
306 | lcd_set_foreground(LCD_BLACK); | ||
307 | lcd_set_background(LCD_WHITE); | ||
308 | #endif | ||
304 | lcd_setfont(FONT_SYSFIXED); | 309 | lcd_setfont(FONT_SYSFIXED); |
310 | lcd_set_viewport(NULL); | ||
305 | #endif | 311 | #endif |
312 | |||
313 | lcd_clear_display(); | ||
306 | /* output exception */ | 314 | /* output exception */ |
307 | n = (n - (unsigned)UIE4 + 12)>>2; /* get exception or interrupt number */ | 315 | n = (n - (unsigned)UIE4 + 12)>>2; /* get exception or interrupt number */ |
308 | lcd_putsf(0, 0, "I%02x:%s", n, irqname[n]); | 316 | lcd_putsf(0, 0, "I%02x:%s", n, irqname[n]); |