diff options
-rw-r--r-- | firmware/system.c | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/firmware/system.c b/firmware/system.c index de45c3785a..bb541493fa 100644 --- a/firmware/system.c +++ b/firmware/system.c | |||
@@ -141,16 +141,9 @@ default_interrupt (TEI1, 107); | |||
141 | reserve_interrupt ( 108); | 141 | reserve_interrupt ( 108); |
142 | default_interrupt (ADITI, 109); | 142 | default_interrupt (ADITI, 109); |
143 | 143 | ||
144 | void (*vbr[]) (void) __attribute__ ((section (".sram.vbr"))) = | 144 | /* reset vectors are handled in crt0.S */ |
145 | void (*vbr[]) (void) __attribute__ ((section (".vectors"))) = | ||
145 | { | 146 | { |
146 | /*** 0-1 Power-on Reset ***/ | ||
147 | |||
148 | reset_pc,reset_sp, | ||
149 | |||
150 | /*** 2-3 Manual Reset ***/ | ||
151 | |||
152 | reset_pc,reset_sp, | ||
153 | |||
154 | /*** 4 General Illegal Instruction ***/ | 147 | /*** 4 General Illegal Instruction ***/ |
155 | 148 | ||
156 | GII, | 149 | GII, |
@@ -305,9 +298,14 @@ void system_reboot (void) | |||
305 | 298 | ||
306 | void UIE (unsigned int pc) /* Unexpected Interrupt or Exception */ | 299 | void UIE (unsigned int pc) /* Unexpected Interrupt or Exception */ |
307 | { | 300 | { |
308 | unsigned int i,n; | 301 | unsigned int i; |
302 | |||
303 | #if 0 | ||
304 | unsigned int n; | ||
305 | |||
309 | lcd_stop (); | 306 | lcd_stop (); |
310 | asm volatile ("sts\tpr,%0" : "=r"(n)); | 307 | asm volatile ("sts\tpr,%0" : "=r"(n)); |
308 | |||
311 | n = (n - (unsigned)UIE0 - 4)>>2; // get exception or interrupt number | 309 | n = (n - (unsigned)UIE0 - 4)>>2; // get exception or interrupt number |
312 | lcd_start (); | 310 | lcd_start (); |
313 | lcd_goto (0,0); lcd_puts ("** UIE00 **"); | 311 | lcd_goto (0,0); lcd_puts ("** UIE00 **"); |
@@ -315,6 +313,7 @@ void UIE (unsigned int pc) /* Unexpected Interrupt or Exception */ | |||
315 | lcd_goto (6,0); lcd_puthex (n,2); | 313 | lcd_goto (6,0); lcd_puthex (n,2); |
316 | lcd_goto (3,1); lcd_puthex (pc,8); /* or pc - 4 !? */ | 314 | lcd_goto (3,1); lcd_puthex (pc,8); /* or pc - 4 !? */ |
317 | lcd_stop (); | 315 | lcd_stop (); |
316 | #endif | ||
318 | 317 | ||
319 | while (1) | 318 | while (1) |
320 | { | 319 | { |