FreeCalypso > hg > fc-selenite
diff src/cs/drivers/drv_app/ffs/board/drv.c @ 46:559a8b3ef10b
FFS code: first attempt at non-invasive gcc support
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Thu, 19 Jul 2018 00:35:33 +0000 |
parents | b6a5e36de839 |
children | 8019491a67a9 |
line wrap: on
line diff
--- a/src/cs/drivers/drv_app/ffs/board/drv.c Tue Jul 17 18:17:27 2018 +0000 +++ b/src/cs/drivers/drv_app/ffs/board/drv.c Thu Jul 19 00:35:33 2018 +0000 @@ -1423,6 +1423,9 @@ uint32 int_disable(void) { +#ifdef __GNUC__ + return NU_Control_Interrupts(0xC0); +#else asm(" .state16"); asm(" mov A1, #0xC0"); asm(" ldr A2, tct_disable"); @@ -1430,16 +1433,21 @@ asm("tct_disable .field _TCT_Control_Interrupts+0,32"); asm(" .global _TCT_Control_Interrupts"); +#endif } void int_enable(uint32 cpsr) { +#ifdef __GNUC__ + return NU_Control_Interrupts(cpsr); +#else asm(" .state16"); asm(" ldr A2, tct_enable"); asm(" bx A2 "); asm("tct_enable .field _TCT_Control_Interrupts+0,32"); asm(" .global _TCT_Control_Interrupts"); +#endif } #else