This is an adjustable circuit that can be set to charge any of several types of batteries with high quality and high reliability. The charger must provide both output current and voltage limits that are set for specific battery types. The voltage limits must compensate for measured temperature, according to published battery characteristics. The charger must display status, shut off automatically when finished, and intelligently charge old or otherwise damaged batteries. Example mode: normal car battery charging -- current limit of 10 A, voltage limit of 14.7 V, shuts off when current goes below 0.1 A. Example mode: 8-cell nicad charger -- current limit of 3 A, voltage limit of 12.8 V, shuts off when output voltage begins to fall and temperature begins to increase.