Ответ:
#define soft_reset() ( *( void( ** )()) 0xfffe )() // "мягкая" перезагрузка - переход по вектору в адресе 0xfffe
А где надо, пишете
soft_reset();
можно конечно написать сразу
( *( void( ** )()) 0xfffe )();
но, мое ИМХО, так не очень красиво...