X-Git-Url: https://hackdaworld.org/gitweb/?p=my-code%2Farm.git;a=blobdiff_plain;f=betty%2Finterrupts.c;h=49ea0cdc488a81017170096921be0bea8aee2481;hp=a96cc2f2a60581e2e9f3c936f7afe4b943279f9d;hb=a409cb5b36482767f766ec9efc5dbecaa2274660;hpb=26e5d8a9fcb9ff98019259619d7256a50220b8e9 diff --git a/betty/interrupts.c b/betty/interrupts.c index a96cc2f..49ea0cd 100644 --- a/betty/interrupts.c +++ b/betty/interrupts.c @@ -7,10 +7,7 @@ #include "interrupts.h" -/* - * module static interrupt variable - */ - +// 'module global' interrupt variable static t_interrupt interrupt; /* @@ -25,9 +22,9 @@ void interrupt_init(void) { VICDefVectAddr=0; } -void interrupt_set_default_callback(void *callback) { +void interrupt_set_default_callback(u32 callback_addr) { - VICDefVectAddr=(u32)callback; + VICDefVectAddr=callback_addr; } void interrupt_set_soft_callback(void (*callback)(void)) { @@ -80,21 +77,34 @@ int interrupt_enable(u8 src_number,u8 mode,u8 priority,u32 callback_addr) { VICIntEnable=(1<3) + return; + + if(wakeup) + EXTWAKE=(EXTWAKE&0xf)|(1<