can;t do anythng nasty on on_halt as it may be from interrupt