Run result 3 means that it is taking too long to start Asterisk/FreePBX and something is wrong, so HAAst gives up.

In your case there are two compounding factors. First the old hardware is probably slowing started, but to an acceptable level. Second, FreePBX's startup script can be very slow as it resets permissions on lots files, etc. If you start the FreePBX service manually you will even see a warning message about slow startup (and a link to their wiki on how to speed it up).

Your choices are to speedup the FreePBX start (as outlined by Sangoma on their website), or, increase the amount of time HAAst will wait. To do the latter, edit the maxstoptime key in the [asterisk] stanza of the haast.conf file