Perform PCA on columns of different length
According to my understanding PCA requires that you have the column of equal length, so you either need to

shorten the longer columns (basically just skip the incomplete observations) or

fill in the gaps in the shorter columns.


If you choose the second option, you'll need to learn about the concept of imputation (see the following link for reference Missing data imputation).
Please note, that you need to get rid of the dummy values representing missing response (666s) in your data before performig PCA, because these values are arbitrary (they also could be 9999 or -1) and would have significant impact on the results.
Furthermore, it's arguable whether PCA can be applied to binary data, see e.g. discussion under related SE question.