gbasys
diff src/intr.h @ 8:047c61960005
- added bg2 matrix support
- changed some stupid const pointers to register addresses to hardcoded compile-time defines
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sun, 22 Jun 2014 06:26:11 +0300 |
parents | e3dc7705ad9c |
children | 85f219fcdc82 |
line diff
1.1 --- a/src/intr.h Tue Sep 04 05:05:50 2012 +0300 1.2 +++ b/src/intr.h Sun Jun 22 06:26:11 2014 +0300 1.3 @@ -39,20 +39,21 @@ 1.4 INTR_GPAK 1.5 }; 1.6 1.7 -extern unsigned short *reg_int_master; 1.8 -extern unsigned short *reg_int_mask; 1.9 +#define REG_INTR_MASTER (*(unsigned short*)0x4000208) 1.10 +#define REG_INTR_MASK (*(unsigned short*)0x4000200) 1.11 +#define REG_INTR (*(unsigned short*)0x4000202) 1.12 1.13 void intr_init(void); 1.14 1.15 /* set/clear interrupts */ 1.16 -#define set_int() do {*reg_int_master = 1;} while(0) 1.17 -#define clr_int() do {*reg_int_master = 0;} while(0) 1.18 +#define set_int() do {REG_INTR_MASTER = 1;} while(0) 1.19 +#define clr_int() do {REG_INTR_MASTER = 0;} while(0) 1.20 1.21 /* set an interrupt handler */ 1.22 void interrupt(int intr, void (*handler)(void)); 1.23 1.24 /* mask/unmask an interrupt */ 1.25 -#define mask(intr) do {*reg_int_mask ^= 1 << (intr);} while(0) 1.26 -#define unmask(intr) do {*reg_int_mask |= 1 << (intr);} while(0) 1.27 +#define mask(intr) do {REG_INTR_MASK ^= 1 << (intr);} while(0) 1.28 +#define unmask(intr) do {REG_INTR_MASK |= 1 << (intr);} while(0) 1.29 1.30 #endif /* _INTR_H_ */