The queen cannot move horizontally. She can move diagonally. The bishop sub provides for this. The rook sub will not allow the rook to move horizontally. Since the Queen uses that sub-routine, her horizontal movement is also not functioning.
Other fixes look good. The A.I I don't have a lot of hope for but I think some more work could get the basic movements for white working. There is a lot to test though, after that is bullet-proof.
Thanks for replying,