Just to stick this in at the beginning, I am in no way endorsing the use of spirit2pwn or anything like it. In fact, I highly recommend you stay as far away from them as humanly possible. Basically, this is the culmination of 12 hours of me scratching my head and hoping that I hadn't completely bricked my 3GS. I used spirit2pwn, to see whether it actually would work on my old bootrom device, big mistake. I was thrown into a DFU loop, with error 28 popping up every time I tried to restore. This is how to fix it, and I know it may sound drastic but it does work, I've had to do it myself. 1) Open up the iPhone (I said it sounded drastic) 2) Disconnect all the ribbons 3) Leave it for 30m-1h 4) Connect them all up again 5) Try the restore again, it should work without errors. Apparently you can also let the battery completely deplete and it has the same outcome, but seeing as its in DFU mode, I had no idea when it would be empty so I chose this way. Its quite risky but if you follow a tutorial like this, you should be alright. Oh and remember, this will void your warranty altogether.