I recently bought a '99 GMC Sonoma for my son. The previous owner told me that the heater control didn't work correctly. Specifically, it wouldn't change between the defroster, upper, or lower vents. It didn't matter what setting on the control was used, the air would basically come out of all vents (including the defroster vents) equally. The temperature was fine- it would blow cold air for a/c settings, and warm/hot air when you changed the temperature to full hot, but you could not change the location of the air discharge. I had the lower dash panels off to troubleshoot a headlight problem anyway, so I started messing around with the heater problem. For those of you who don't know (I didn't know this until I started troubleshooting the system), the actuators that direct the airflow to the various ports (defrost vents, upper vents, lower vents, or a combination of these) are controlled by vacuum pressure from the engine, and they are all located behind the dash panels. The vacuum is supplied directly to the control head, which ports the air pressure to the appropriate actuator, based upon the HVAC control position. Anyway, I pulled off the HVAC control head to check the vacuum lines. This is very easy to do- just pull the retaining screws on either side of the panel, and then release the clips on either side of the panel- it will pop right out. Then disconnect the electrical connectors and vacuum connector. The vacuum lines seemed ok, and I knew the engine vacuum lines were good, so I continued to troubleshoot. My next step was to make sure I had good vacuum to the control head from the engine. Oh, by the way, the vacuum lines are all color-coded, so you know exactly which line goes to which actuator. When I was preparing to check the suction line from the engine, I pulled on the collective group of vacuum lines, and, to my surprise, they simply all came right out of the front of the dash! This was a nice discovery, because it let me know that something had come loose further back in the system. The vacuum lines are routed behind the glove box, so the next step is to lower the glove box out of the way. To do this, simply open the glove box, locate the spring-loaded stop that prevents the glove box from tipping down any further than the normal "open" position, and push up on that spring until the back of the glove box clears it. The glove box will then drop straight down and be out of your way. Make sure you unload it first, or everything that was in it will hit the floor! Behind the glove box, there is a junction connection that looks like this: You can see the junction block in the background. The group of vacuum hoses was disconnected from this junction block, and therefore no vacuum pressure could get to the control head, let alone get to the control actuators. I reconnected this connection, and the system works as advertised. Here is another picture with the connection properly in place. Notice one of the acutators in the background to the right (not sure exactly which actuator this is, but could probably figure it out based upon the color of the vacuum hose): Hopefully this will help people who have a similar problem. Remember to work from the source out, and you should be able to isolate your problem pretty easily.