Hi,
As mentionned by H. Baskaran, you should use spec instead of bdiag (bdiag is for block-diagonalisation).
You will get the eigenvalues, but, probably, in a different order. There is nothing wrong with that: use gsort to sort your eigenvalues on output of "spec" and this function will consistently provide the same output.
Notice also that, if x is an eigenvector for the eigenvalue s, then -x is an eigenvector for the same eigenvalue. Hence, the sign of the components may be changed without changing the result. A different normalization will lead to the same result.
These two changes (the order and the normalization) explains all the changes in your results. Notice that running the same software (e.g. Matlab) on different systems may lead to the same types of changes.
Best regards,
Michaël Baudin