Просто регулярно всплывает вопрос.
Я ещё не видел С-компилятора, который бы не брал такое, совершенно стандартное:
typedef struct {
int a,b;
} stru;#define ext_stru *((volatile stru*)0xDEAD)
ext_stru.a = 5;
while( ext_stru.b == 0 ) ;
// или такое
#define pext_stru ((volatile stru*)0xDEAD)
pext_stru->a = 5;
while( pext_stru->b == 0 ) ;