A nuclear spectrometer optimizes energy resolution and throughput with asymmetrical leading and trailing weighting functions. Photon detector current is amplified, converted to a voltage step, and fed to a fast analog-to-digital converter (ADC) for pile-up rejection using another pair of leading and trailing weighting functions with sharp rising and falling edges respectively, and to a slow ADC whose output is examined for low-energy pile-up, slope corrected, and buffered for photon energy measurement. Digital triangular shaping locates the step. The triangle response is tested for asymmetry to reject very low energy pile-up missed by the fast ADC, and the signal noise near the step is tested against treshold. Valid steps are asymmetrically weighted by equal-area cusp functions where the leading function peaks at the step gap and the trailing function peaks slightly after the step gap.