http://www.computing.net/answers/windows-xp/very-slow-9minute-boot/170618.html
http://winhlp.com/node/10
Apparently, when XP registers 6 failures over the time on hard drives, it shifts hard drive access mode from DMA to PIO. PIO is extremely slow compared to DMA. So, you suddenly start experiencing this delay. A quick fix mentioned below solved the issue for me.
-------------------
I have resolved the problem with a fast boot time. It now takes 2 minutes.
I did the registry fix for the DMA and it worked;
1. Open RegEdit
Find the following KEY: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\
Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\000x --- where x is a variable for 1,2,3 etc...
Under each subkey [0001, etc] delete all occurences of the following values:
MasterIdDataChecksum
OR
SlaveIdDataChecksum
Reboot the computer. Windows will now redetect DMA settings.
-------------------