write()を使うと、256以上のときread()でうまく動作しないそうです。 1バイト=00~FF(255)なので、 write(trunc(スコア/256); write(スコア%256); で読み込むときは ハイスコア=read()*256+read() でどうでしょうか。