1. The heater core gets it heat from the engine coolant that is pumped through the engine, and the heater blower fan blows on the heater core and pushes the hot air into the cabin. So until the engine coolant is warmed up to normal op temp, you won't get any heat. This should take about 10 minutes of normal driving or idling depending on how cold (or freaking cold) the engine is.
2. Forever is a long time. if it takes more than 10 minutes for your engine to reach normal operating temperature, the following is most likely to blame:
A. Your radiator is clogged full of rust/dirt. The coolant is not flowing very well. I don't think this is your problem. If it was, you'd be overheating in hot weather or in traffic. Could be an expensive repair, up to $500. See a mechanic and he can diagnose.
B. Your engine's thermostat ($5 part) is stuck in the open position. When this happens, the coolant runs around the engine / heater core so fast it never gets hot enough or takes a long long time to get hot. Have a mechanic install new thermostat ($100-$150 labor, possibly less)
C. Your heater core is clogged full of rust/dirt/gunk. The heater core is nothing more than a small radiator, just like the big one in your engine compartment (see A above). If your car is almost 20 years old then this is a very real poss that the core is clogged When was the last time you had your coolant system flushed by a mechanic? Make sure you direct the shop to BACK FLUSH your cooling system. It cam make HUGE difference.
Answers
2. Forever is a long time. if it takes more than 10 minutes for your engine to reach normal operating temperature, the following is most likely to blame:
A. Your radiator is clogged full of rust/dirt. The coolant is not flowing very well. I don't think this is your problem. If it was, you'd be overheating in hot weather or in traffic. Could be an expensive repair, up to $500. See a mechanic and he can diagnose.
B. Your engine's thermostat ($5 part) is stuck in the open position. When this happens, the coolant runs around the engine / heater core so fast it never gets hot enough or takes a long long time to get hot. Have a mechanic install new thermostat ($100-$150 labor, possibly less)
C. Your heater core is clogged full of rust/dirt/gunk. The heater core is nothing more than a small radiator, just like the big one in your engine compartment (see A above). If your car is almost 20 years old then this is a very real poss that the core is clogged When was the last time you had your coolant system flushed by a mechanic? Make sure you direct the shop to BACK FLUSH your cooling system. It cam make HUGE difference.
Good luck!