USBファームウェアGR-ROSEのUSBファームウェアです。出荷時に書き込まれることを想定したものです。ファームのバイナリ(mot)と、プロジェクトを掲載します。WRITE/READ時に返す論理ブロック数が間違っていたのを修正しました。UbuntuでWebコンパイラから出力される400k以上のbin書き込みで、プログラムが正常に書き込めない問題は残っています。Ubuntuマシンでもbinを書き込めるように修正。原因としては、基本的にOSからのクラスタサイズは64セクター単位(32Kバイト)を期待しているが、Windowsでは64セクター単位になるものの、Ubuntuでは途中に48セクターや50セクターになったりするため、RX65Nでの消去単位である32Kバイトに合っていなかった。このため、ストレージとして認識された瞬間に全消去し、書き込み時は消去することなく実行することで回避した。zipを解凍するとmotファイルがあります。Programmer(RFP)を使ってmotを書き込めます。GR-ROSEのスライドスイッチをボード外側に切り替えた後、USB電源を入れるとUSBブートモードになります(リセットボタンでもモード切替されます)。この状態でRFPでmotファイルを書き込みます。以下は、プロジェクトファイルです。CC-RXでビルドしてます。ソースを見れば動作は分かるのですが、簡単に記載します。・0xFFE00000→ユーザー領域:binを書き込んだときにジャンプするアドレス・0xFFF00000→ストレージ領域:PCからUSBマスストレージで書き込まれる領域です。FAT12ですが、BootやFAT、RootはUSBファーム上にあります。・0xFFFF0000→USBファーム:USBマスストレージとして動作し、binの検索やユーザー領域へのコピー、ジャンプまで行います。以降の0xFFFFFFFFまでの64KがUSBファームです。21:26V3でUbuntuマシンでもbinが書き込めるようにしました。Yuuki:割り込みを使ったタイマが動いたままユーザー領域へジャンプしています。自前のプログラムの作りやタイミングによってはジャンプして暫くすると昇天する等の挙動を繰り返してまして、原因が分からずに悩んでしまいました。ついでなのですが、他に使っているペリフェラルもリセット直後と同じになっているとうれしい今日この頃です。