I tried this #define SIMCR (( volatile unsigned short *)0Xfffa00) This creates a 'volatile pointer' to short. Everytime the register (SIMCR) is accessed, the pointer is reloaded. What is the syntax to create a pointer to a 'volatile short'. Sorry for the simple question, but I couldn't find an answer anywhere else.