The x86 "flags" register, which holds condition codes and other processor status bits, has several reserved bits with fixed values, but these fixed values are not all the same. In particular, bit #1 (the twos place, considering the register as holding a number) always reads as 1, whereas bits #3 and #5 read as 0. According to Bit one of the Intel 8080's Flags register this has been true since the 8080 (which did not technically have a flags register, but did have a "push all the status bits onto the stack" instruction, that wrote these bits to memory as shown).
Normally, I expect reserved bits to be uniformly wired to either zero or one, with zero being more common. So, the question: Does anyone know of the original reason, whether documented, leaked, rumored, reverse-engineered, or otherwise, why the 8080's "push the status bits" instruction wrote one of the three reserved bits as 1 and the other two as 0?