I'll try turning off the fog hack, thanks Def. Never lagged when I had it on before though. 
So when you played without no fog did you lag?
Only other thing I can think of is don't run any other programmes at the same time as you play Battlefield 1942.
I played with no fog and didn't lag. Now I'm lagging even without it.