久しぶりにsqueakネタです。
今度のロボカップジャパンオープンで帝京科学大学の斉藤研究室と合同チームを組みました。最初の計画では別のシステムでやる予定だったのですが、時間的な余裕がないということでDefartを使うことになりました。
ところがDefartを組み込んだAIBOを起動しても、肝心のSqueak側のDefartが反応しません。コマンド送出は問題ないものの、AIBOと通信できていることを示すブルーのランプが表示されないのです。
すったもんだ調べたあげく、ビーコン(2色の筒)を認識するために追加したコードのせいで、PC側に送るUDPパケットが大きくなり、それをPC側で受け取れなくなっていました。
buf := String new: 200.
のようにバッファを確保しており、それ以上のデータが流れてきていたのです。次のバージョンのこともあるので、場当たり的なコード修正にとどめ、サイズを増やすことで解決しました。
ちなみにこれはWindows版のことで、UNIX版のSqueakでは特に問題なく受信できていました。そっち側がどうなっているのか中を見てないので心配(不思議?)です。