Rearrange the defines
Add the simple support for halt