OSC仙台 での販売ですが、以下になります。超お得な価格です。


1.「12ステップで作る 組込みOS自作入門」

2.H8/3069Fマイコンボードのセット(ボード本体+電源アダプタ+シリアルケーブル)


1+2の販売 定価9,110円(税込)→8,000円(超お得!)

1のみの販売 定価4,410円(税込)→4,000円(これも超お得!)


今回の割引販売は出版元のカットシステム 様のご好意によるものです。感謝!

なお今回の販売は、書籍+ボードのセットか、書籍のみとさせてください。

秋月のボードを秋月よりも安く売るわけにはいかないので。。。


#5000円くらいでだれでも始められると言っておきながら、本が4000円以上もしてしまっているところが心痛いところですがご容赦。。。


「12ステップで作る!組込みOS自作入門」ですが、秋葉原の書泉ブックタワーでは本日月曜より販売されているそうです。ただしこれは見本本の先行販売なので、品切れになったらそこまでだと思います。多分。


各書店での販売は21日(金)以降になるそうです。21日にというわけでなく、あくまで「以降」です。あと物流次第となるため、地方は多少遅れると思います。あと、それなりにでかい本屋でないと扱っていないかもしれません。まあ当初のとおり、24日くらいになればだいたい出てくると思います。


ということなので、すぐにでも読みたいという人は秋葉原にダッシュ!(秋月にも寄れて一石二鳥だ!)


(もしくはOSC仙台に来てください!)

以下で書いた「ビルド後の実行形式とかがどこに出力されるのかがわからない」ですが、千秋ゼミ掲示板 を見ていたら、答えがありました。


arduinoのIDEでShiftを押しながらビルド開始することで、詳細なログが表示されます。ボードへのUpload時も同様。


これで、どのような手順でビルドされてボードにUploadされるのかが確認できます。千秋さんに感謝!


ちょっと時間ができたので、KOZOSのarduinoへの移植のためにarduinoの調査を進めている。

以下、自分のメモがてら書いておこう。


まずarduinoはブートローダーを持っていて、これは普通のHEXファイルをブートできるようなので、gccとかでビルドしたファームをブートすることも可能なようだ。avrdudeというツールでできるらしい。


作成したスケッチは、IDEからavrdudeが起動され、フラッシュROMに書き込まれる。このためいったん電源を切っても、ダウンロードしたスケッチは残っているので起動できる。ただスケッチのソースをビルドして書き込み用のHEXファイルをIDEで作成する際に、HEXファイルがどこのディレクトリに作成されるのかが不明...ビルド後のファームウエアを解析してメモリマッピングとか調査したいとこなんだけど、誰か場所知ってたら教えて。


ブートローダーのソースコードはarduinoのサイトで参照することができるが、arduinoのIDEをダウンロードして展開すると、そこにソースも含まれているのでそれを参考にできる。非常に簡単なソースコードだし、シリアル送受信も持っているので、これはとりあえずのとっかかりを作るためのサンプルになる。


ブートローダーを上書きしてしまうと、当然だがarduinoのIDEからの利用ができなくなる。ROMライタは秋月で4000円くらいで売られているものを利用できそうだ。arduinoのIDEにブートローダーの書き込みメニューがあるので、IDEからブートローダーを書き込むことができそうだ。ブートローダーのHEXファイルはIDEに付属しているみたい。ROMライタ無しでも回路作ればフラッシュROM書き込みできるようなのだが、いろいろ頑張る必要がありそうなので、はじめはまあ無難にROMライタ使ったほうがいいだろう。


なのでKOZOSの移植では、ブートローダーから自作するか、ブートローダーはarduinoのものをそのまま使ってOSだけ自作する、という2通りの方法がある。開発はいつもどおりクロスのgccでできそうだ。


ブートローダーから自作してもいいけどROMライタが必要になってしまって「なるべく安価なターゲットで」というKOZOSのポリシーとしては都合が悪い。でもOSだけの自作だと、標準のブートローダーになにかと縛られてめんどくさいのと、AVRはRAMがとても少ないのでROM上で動作させることになりそうなのだけど、ブートローダーを自作してライブラリ関係はブートローダーにBIOSのように持たせてしまえば、OS部分はコンパクトにできてRAM動作もできるんでないかなーという思惑もある。


ちなみにarduinoはハード+開発環境でarduinoなので、このようにIDEのスケッチを利用しない場合には、「arduino上で動作するOS」というのはちょっとおかしいだろう。「arduino用のマイコンボード上で動作するOS」というのが正しいだろう。


arduinoの内部構造などに関しては、千秋ゼミ で詳しく説明してある。ここはとても参考になっています。この場を借りて感謝いたします。


雑感だが、arduinoは非常にツール類が充実していてとても便利で、初心者向けということを非常によく考えられていると思う。それも、開発環境だけでなく、初心者向けということを総合的に考えてあるように思う(ボードが安いとか、回路図も公開とか)。


で、それはすばらしいことなのだが、ただその反面、それらのツールを使うのが前提の説明しかなく、内部構造を知りたいとかツールから離れてなんかやりたい(ぼくのように、OSを作りたいとか)というための資料が少ないなあ、と思う。まあだからよくないということではなく、だから自分がそーいう資料を書かなきゃならんなあっていうことなのだが。


やっと休日なのだが、OSC仙台で配布する資料の準備とか印刷とかセミナーの準備とかPCの準備とかついでに部屋の片付けとかしてたら土曜は終わってしまった。。。


ちなみに仙台での販売ですが、それほど数を持っていくわけではないのでなくなったらおしまいです。確実にほしい!というかたは、メールで前もって連絡いただければとっておきます。


また当日は私ひとりで設営、説明、セミナー、販売、片付けとすべてこなさなければならないので、ちょっとバタバタしてしまうかもしれませんがご容赦。


さて、そろそろ夕食たべないと。。。