Ok! I think I got that....just one register to store the location of any piece...then there should be a table with location value of the whole board...table of 64 entries! correct!?The structure in post 117 might be nice to have, but probably not required. I think you would only need one register to store the location of a piece that has been lifted by the human, eg. if the rook moved from D5 to H5, the scan would notice that D5 is no longer present and store 0x45 in the register and maybe set a flag to say that it is waiting for it to be put down, then the scan would notice a magnet at H5, then you send the ASCII string "24585".
.....
time to post some code now...