The Swindle

Here is a 'lost' game which I somehow managed win using time to my advantage.

I tried playing good chess but failed miserably! (AGAIN)

Mr Fritz has me (white) -5.15 down. I could hear the fat lady warming up, the only thing in my favour was time, as I'd played quickly and badly to reach this awful position. The simple 23...h6 or h5 to keep a grip of the position would suffice but... Time Trouble caused 23...Qe4?? allowing 24.Bxg5 Re8 25.Qd2 Rb8 26.Bh6 f2+ 27.Qxf2 (diagram) (attacking f7) 27...Qg6 (...Qb1+ 28.Rxb1 etc was the best try leaving black a pawn down and still fighting) 28.Qe3 played instantly in the knowledge that my opponent may slip up under the pressure 28...Qf6?? (diagram) and there it is! 29.Rxb8+ 1-0 29...Bxb8 30.Qe8#. or 29...Bf8 30.Rxf8#