In earlier papers the author developed upper bounds for A(n, d), the maximum number of binary words of length n, each pair of words being at a Hamming distance of at least d apart. These sphere packing bounds for A(n, d) depend directly on a related bound for constant weight codes where each word has the same number of 1's. Improving bounds on constant weight codes would therefore improve the bounds on A(n, d). This was the motivation of this report, but constant weight codes are interesting in their own right. By combining special techniques from several sources, a new upper bound for constant weight codes is developed which gives significantly improved results.