Pull your gearknob off, remove the dash (do a search for explicit instructions) remove your stereo and any guages you have mounted in the dash.
I would thoroughly clean all the plastic vents and passages with a damp cloth, then spray with a eucalyptus (sp?) oil/water mixture (being ashmatic you may know all about inhaling eucalyptus vapours etc). This kind of mixture will help you clean grime off and will not only mask the smell of smoke, but also get rid of it. If you spray freshener everywhere, chances are it will f**k with you even worse then just the smoke). With the dash off you should be able to get a fair amount of it clean. Also get rid of ALL dust you can get the vac to.
Remove all the matts, vacum them. Then vacum car.
Once this is done I would bust out the Britex from Woolworths (Safeway). Usually around $25 for a night. This does wonders for your car. Just use cheap wool wash don't buy the Britex detegent crap.
Now cut sick on you car with the Britex. Change the water often. Don't forget the roof, back seats, the back of the front seats, the matts you vacumed etc. If you are getting a bad smell, I would let it air overnight, then do it again in the morning.
Not only will you get rid of +90% of the smell, you're fabric will looks outstanding and it will feel a lot nicer. This also has been known to generate around 15nose kw, so watch out for the extra power.
Also with cleaning out the aircon, once you remove your dash, you should be able to work out which vent to spray that can into.
Just remember that you need to take it nice and slow, do it right the first time so you don't need to get the britex out again.