2022年12月11日日曜日

TOPPERS/ASP - RL78版 その4

前回からの続きです。

このテーマを最初からご覧になる場合はこちらからどうぞ。


プロジェクトの作成

前々回までの作業で、開発環境をインストールし、RL78版TOPPERS/ASPのソースコードをダウンロードし、それをコマンドラインでビルドするまでを行いました。

そして、前回ではルネサスエレクトロニクスのIDEである「e2 studio」のインストールを行いました。

そこで、今回はこのIDE上でビルドが行えるようにプロジェクトを作成しましょう。

前回閉じてしまった「e2 studio」を立ち上げて下さい。

そして、画面左上のメニューから「File」→「新規」→「Makefile Project with Existing Code」の順にクリックしていきましょう。

「e2 studio」 - 1


以下のダイアログが表示されたら必要事項を入力します。

ここでは、以下の通り。


プロジェクト名:<任意のプロジェクト名(ここでは「asp_1.9.2」)>

既存のコードの場所:C:\cygwin64\home\<ユーザ名>\asp_1.9.2

インデクサー設定に対するtoolchain:<なし>


入力が終わったら「終了」ボタンをクリックします。

「新規プロジェクト」ダイアログ

その後は元の画面に戻ります。

何の変化もないようですが、画面右上の「-」マーク(マウスのカーソルを置くと「最小化」と表示されます)をクリックしてみてください。

「e2 studio」 - 2

以下のように表示が変化し、そのうち左側の「プロジェクト・エクスプローラー」というタブの中には先程入力したプロジェクト名のディレクトリが表示されているはずです。

「e2 studio」 - 3


次に、画面上部のメニューから「ウィンドウ」→「ビューの表示」→「ビルドターゲット」の順にクリックしていきましょう。

「e2 studio」 - 4


これにより、画面下右側のウィンドウに「ビルドターゲット」タブが追加されたはずです。

「e2 studio」 - 5


以降の作業は、このページ(TOPPERS/ASPのビルドからデバッグまで~サンプルプロジェクトのデバッグ)の「プロジェクトのクリーンとビルド」の項目を参考に続行してください。

この「e2 studio」は、Eclipseベースなので、上記のページと同じ方法で作業を続行できます、

但し、文中の「Makeターゲット」タブは、先程表示させた「ビルドターゲット」タブに置き換えてお読みください。

名称は違いますが、これらのタブは同じ働きをするものです。

「e2 studio」の画面右側に以下のようなアイコンが表示されて、これらをダブルクリックすることによりビルドができるまでを確認してください。

「e2 studio」 - 6

「realclean」や「all」など、アイコンをダブルクリックすることにより、その操作に応じたメッセージが画面下部の「コンソール」タブ内に表示されるはずです。

「e2 studio」 - 7


次回はいよいよ実機「RL78/G14 Fast Prototyping Board」評価ボードへプログラムを転送して、実行/デバッグを行っていきますね~。


<続く>

2022年12月8日木曜日

伝説の名機!モバイルギアII(MC/R330)

今までの人生で、様々なモバイル機器を使い倒してきました。

その中で、最も使用頻度が高く長い期間愛用した製品は何か?

おそらく、それはこのNEC製の「モバイルギアII(MC/R330)」でしょう。

モバイルギアII(MC/R330) - 1


発売は1999年終わり頃。

パソコンは、Windows 98が爆発的な普及を見せていた時代です。

このモバイルギアに搭載されているOSは「Windows CE」という組み込み機器向けのWindowsです。

Windowsを名乗ってはいますが、この「Windows CE」上ではWindows 98のアプリケーションがそのまま動くわけではありませんでした。

パソコンが搭載しているIntel x86系統のCPUが搭載されているわけでもなく、モバイルギアには、MIPS系のCPUが搭載されているので、そもそもバイナリレベルで互換性はありません。

しかしながら、パソコンで専用のVisual C++やVisual Basicで作ったアプリケーションをモバイルギアIIに転送し、実行することは可能でした。

APIも本家Windowsのサブセットが実装されており、必要最低限のものは同じ使い勝手で使用できました。

この時代、この「Windows CE」を搭載した機器には2つの流れがありました。

いわゆる「PDA」と呼ばれる、今のスマートフォンのご先祖さまのような電子手帳。

そして「ハンドヘルドPC」と呼ばれる、ノートPCよりも更に小型のモバイル端末。

モバイルギアは、後者のカテゴリーに属します。

各社挙って「Windows CE」を搭載した「ハンドヘルドPC」を発売していたわけですが、とりわけNECのモバイルギアが優れていたのは、キーボードの質感の良さにあったと思います。

モバイル端末だからキーは小さいですが、さりとて実用に耐えられないほどは小さ過ぎず、メンブレンではなくパンタグラフ式を採用したことにより、適度なストロークの深さもあります。

何より、キーをストロークする度にパチパチと電子音が鳴るという小技付き。

これが小気味良く、使う者の心理に地味な高揚感を与えてくれます。

(音を鳴らすだけバッテリーの無駄じゃん!…と思って無音設定にすると、途端に得も言われぬ寂しさに襲われる。)

モバイルギアIIのキーボード


NECのモバイルギア・シリーズには多くの機種がラインナップされていました。

最初期には、そもそも「Windows CE」ではなく、MS-DOSのようなOSを搭載した機種。

フルカラーTFT液晶とバックライトを搭載した高級機種などなど…。

今回ご紹介する「モバイルギアII(MC/R330)」という機種は、その中でもエントリーモデルであり、モノクロ4階調STN液晶で単3乾電池で動作するモデルです。

このMC/R330こそ、エントリーモデルとはいえ、おそらく最も評価の高いモデルであったと思います。

その最たる要因は、電源が充電式の内蔵バッテリーではなく単3乾電池二本であり、それでいて25時間という連続駆動時間を実現していたことでしょう。

今の日本、単3乾電池は何処でも買えますよね。

また、充電式の内蔵バッテリーは部品点数が多くなり、バッテリーそのものを含めて経年劣化による不具合が発生しやすい部分ですが、乾電池駆動であれば電源回路がシンプルなので、こうして何年経とうが元気に動いてくれます。

単3乾電池二本とバックアップ用のボタン電池


組み込みOSである「Windows CE」の起動は1秒も掛かりません。

思い立ったら、蓋を開いてすぐに文書入力!

それに加え、キーボードの質の高さと、電源の取り回しの良さ、そしてハードウェアの屈強さから、特にライターさん、物書きの方に愛用者が非常に多く、私の他に今でも現役で使用している方も沢山いるほどです。

オークションサイトなどで、他の高級機種よりもエントリーモデルのはずのMC/R330に高値が付いているのは、このような理由からだと思います。

モバイルギアII(MC/R330) - 2


搭載されているアプリケーションは、当時のパソコン用のOfficeのサブセットや、NECオリジナルのエディッターなどの出来の良いソフトウェアがインストールされています。

インストールされているアプリケーション


LANは、有線/無線問わずインターフェースは内蔵していません。

その代わりモデムは内蔵していますので「Internet Explorer」といったブラウザや、メーラーは用意されています。

更に、今では全く見かけなくなったPCカードスロットを搭載していますので、イザとなれば有線LANカードや、WiFiカードを挿入して使用することができます。

(WiFiカードを使うと電池の消耗が激しいので、あまり使いません。)

PCカードスロット


さて、このモバイルギアII、近年では流石に出番は減っていました。

元々私の場合、プログラマーのクセに文書を書く時は紙と鉛筆派です。

プログラマーであるが故に、電子データの危うさを知っているからですかね?

なので、出先で報告書などの、どうせ後で電子文書にしなければならない要件を認(したた)める際には大いに活躍をしてくれましたが、それもいつしか報告書を書く立場から、それを承認する立場になってしまいました。

ところが、このブログを始めてからというもの、電子文章を書く機会が大幅に増えました。

そのために、数年ぶりにこの愛機の復活と相成りました。

この記事のテキストもモバイルギアIIで書いています。

とはいえ、かなりのロートル機。

そろそろ後継機が欲しいところですが、もはや新品で手に入るはずもなく…。

キングジムさんの「ポメラ DM250」なんて良さそうですね。

ポメラ DM250


でもこれ、乾電池じゃないんだ…。

そこが重要なのに。


部品取り用にオークションサイトなどで何台か購入しておきましょうかね。

とにかく今ある一台を大切に使いたいと思います。

2022年12月5日月曜日

TOPPERS/ASP - RL78版 その3

前回からの続きです。

このテーマを最初からご覧になる場合はこちらからどうぞ。


開発環境の構築(IDE編)

続きまして、RL78用のIDEのインストールを行います。

IDEは、ルネサスエレクトロニクス社純正の「e2 studio」というものを使用します。

以下のページでダウンロードします。


https://www.renesas.com/jp/ja/software-tool/e-studio

統合開発環境 e2 studio 2022-10 Windows用インストーラ」という項目をクリックすると…

「e2 studio」ダウンロードページ - 1


以下のようなポップアップが表示されます。

ここでは難しく考えずに「Confirm」をクリックします。

「e2 studio」ダウンロードページ - 2


すると以下のページが開きます。

なんと!インストールのためにはユーザー登録が必要!?

マーケティング的には重要なのはわかりますが、個人情報に気を使わなければならない時代、ただ試しにチョットだけ使ってみたい人だっているのだから、もうちょっと寛大でも良いと思うのですが…。

そのスジの方なら「My Renesas」のアカウントを持っている方もいるとは思いますが、そうでない方は「登録」をクリックして、アカウントの作成とログインをお願いします。

(私は、こういう面倒な作業で心が折れるタイプ…。)

「e2 studio」ダウンロードページ - 3


はい、一度ログインしてしまえばダウンロードできます。

トップページに戻って「統合開発環境 e2 studio 2022-10 Windows用インストーラ」という項目をクリックです。

「e2 studio」ダウンロードページ - 4


以下のようなページが表示されますので「同意します」をクリック。

ダウンロードが始まります。

「e2 studio」ダウンロードページ - 5


ダウンロードが完了すると「setup_e2_studio_20xx-xx.zip」というファイルが生成されますので、これを解凍します。

解凍されて生成された「setup_e2_studio_20xx-xx.exe」というファイル、これがインストーラー本体ですので、ダブルクリック!

すぐに以下のポップアップが表示されますので、「All Users」をクリックします。
「e2 studio」インストーラー - 1


以下の表示では「Next」をクリック!

「e2 studio」インストーラー - 2


次の表示ではお目当ての「RL78」のみにチェックを入れて「Next」をクリックします。

「e2 studio」インストーラー - 3


次の表示ではニッポンジンなら「Japanese Language Support」のみにチェックを入れて「Next」をクリックします。

多分IDEの日本語表示化のオプションでしょう。

「e2 studio」インストーラー - 4


以下2つの画面では「Next」連打!

「e2 studio」インストーラー - 5


「e2 studio」インストーラー - 6


出ました!ライセンスの同意。

同意しなければ、そこで試合終了だよ…。

ソフトウェア契約の条件に同意します。」を選択した後に「Next」をクリックです。

「e2 studio」インストーラー - 7


以下の画面も「Next」をクリック…。

「e2 studio」インストーラー - 8


これで最後かな?

インストール」をクリックしてください。

「e2 studio」インストーラー - 9


インストールが始まりましたが、間髪入れずVisual C++のランタイム(だと思う…)のインストールが開始されます。

これは、放っておけば勝手に終わります。

「e2 studio」インストーラー - 10


Visual C++のランタイムが勝手に終了すると、メインのインストーラーに処理が戻りますが、その後以下のようなポップアップが3回ほど表示されます。

これは多分、デバッガーのデバイスドライバのインストール許可なので、全て「インストール」ボタンをクリックしてインストールしましょう。

「e2 studio」インストーラー - 11


しばらくすると、ルネサス純正の「RL78」コンパイラのインストールが始まります。

前回「GCC」コンパイラをインストールしたので、コチラは使わないんですけど、一応インストールしてあげましょう。

ちなみに、GCCよりも純正コンパイラの方がパフォーマンスが良いという噂があります。

そのうち純正コンパイラに対応したカーネルも作りましょうかね?

以下、赤丸の順にクリックしていって下さい。

ルネサス純正の「RL78」コンパイラのインストーラー - 1


ルネサス純正の「RL78」コンパイラのインストーラー - 2


ルネサス純正の「RL78」コンパイラのインストーラー - 3


ルネサス純正の「RL78」コンパイラのインストーラー - 4


インストール作業が始まります。

ルネサス純正の「RL78」コンパイラのインストーラー - 5


以下の画面が表示されると少なくともルネサス純正の「RL78」コンパイラのインストール作業は終了です。

完了」をクリックしましょう。

ルネサス純正の「RL78」コンパイラのインストーラー - 6


この後、ルネサス純正の「RL78」コンパイラと同様、以下のソフトウェアのインストールが始まります。


●SMSアセンブラ

●ルネサスMCUツール・ライセンスマネージャ

●LLVM「RL78」コンパイラ


要領は一緒なので、インストールを続行しましょう。

…ゆっくりとコーヒー飲んでる暇もないなぁ…。


さて、最後の「LLVM「RL78」コンパイラ」のインストールが終了すると以下の画面が表示されます。

ここでは「Launch e2 studio?」にチェックを入れてから「OK」をクリックして下さい。

これにより「OK」をクリックすると「e2 studio」が自動的に起動するはずです。

「e2 studio」インストーラー - 12


以下のようなスプラッシュスクリーンが表示されます。

初回起動には、相当な時間がかかりますのでお覚悟を。

「e2 studio」のスプラッシュスクリーン


以下の表示が現れます。

あ~これ、絶対「Eclipse」ですわ…。

前回のMSP430版で使用したTIのIDEである「Code Composer Studio」もEclipseベースでしたが、ルネサスよ、オマエもか~。

まあ、Eclipse使い慣れている人にとっては何の問題もありませんが、若干古臭いんだよなぁ…。

ここは、デフォルトのワークスペースの場所で「起動」をクリックしましょう。

e2 studioランチャー


次に、以下の表示が出たら「登録」をクリックして下さい。

「Toolchain Integration」ダイアログ


以下のポップアップも「OK」をクリック。

「コード生成COMコンポーネントの登録」ポップアップ - 1


すると、以下のポップアップが表示されます。

これも「OK」をクリック。

あとで再起動しないとダメらしい…。

「コード生成COMコンポーネントの登録」ポップアップ - 2


以下のダイアログが表示されますが、これの入力はお好みに応じて。

面倒くさかったら別に「キャンセル」でも支障はないようです。

「My Renesasログイン」ダイアログ


以下も「いいえ」で良いでしょう。

「セキュアストレージ」ポップアップ


はい、そうすると以下の画面が残ります。

これが「e2 studio」です!

「e2 studio」


以上で「e2 studio」のインストールは完了です。

「コード生成を使用するには再起動してね!」って言われているので、一旦「e2 studio」を終了させておきましょう。


たかがIDEのインストール作業の割には、面倒くさかった忙しかったですね!

次回は、実際にこの「e2 studio」を使っていきましょう!


<続く>

2022年12月1日木曜日

TOPPERS/ASP - RL78版 その2

前回からの続きです。


開発環境の構築(コンパイラ編)

コレがなくちゃ始まらない!

まずはRL78用のコンパイラのインストールを行いましょう。

以下のページでダウンロードします。


https://llvm-gcc-renesas.com/ja/rl78/rl78-download-toolchains/

上の方には「LLVM」というコンパイラが並んでいますね。

今回使用するのは「GCC」ですので下にスクロールします。

コンパイラダウンロードサイト


GCC」ありましたね?

早速ダウンロードしましょう!

GCCコンパイラのダウンロード


すると、以下のようにログインを要求されます。

すでに「Open Source Tools for Renesas」のアカウントをお持ちの方は、入力してログインしてください…って、ほとんどの方は持っていないですよね?

その場合は面倒ですけど「登録」をクリックしてアカウントを作成後にログインしてください。

アカウントを作成したからと言って、広告メールがバンバン来るようになるとか、そんなことはありません。

まあ、年に数回更新の情報がメールで来るくらいです。

ログイン要求ページ


どうにかこうにかログインに成功したら、以下の画面に戻り、もう一度ダウンロードを試みましょう。

今度はダウンロードできるはずです。

再度GCCコンパイラのダウンロード


ダウンロードが完了すると「gcc-x.x.x.20xxxx-GNURL78-ELF.exe」というファイルが生成されますので、これをダブルクリック!

程なくして、以下の表示が出ます。

「推奨」とありますので「すべてのユーザー用にインストール」をクリックしましょう。

「インストールモードの選択」ポップアップ


インストーラーが起動します。

ここは「次へ」ボタンをクリックします。

インストーラー - 1


同意せざるを得ない!

同意する」を選択して「次へ」ボタンをクリックします。

インストーラー - 2


しばらくは「次へ」ボタンを連打です。

インストーラー - 3


インストーラー - 4


インストーラー - 5


インストーラー - 6


これで最後か?

インストール」ボタンをクリックしましょう。

インストーラー - 7


やっとこさインストールが始まります。

インストーラー - 8


インストールが終了すると以下の画面になります。

これも「次へ」をクリック!

インストーラー - 9


インストールはこれで完了!

完了」ボタンをクリックしてください。

インストーラー - 10


インストールしたツールチェーンの環境変数の確認を行います。

ツールチェーンは、先程のインストール作業により既に以下のディレクトリにセットアップされているはずです。

「ProgramData」以下だなんて、ちょっと変わった所にインストールされますね…。

ツールチェインのディレクトリ


環境変数の確認方法は、このページ(TOPPERS/ASPのビルドからデバッグまで~GNUツールチェーンの導入)の「環境変数の設定」の項目を御覧ください。

多分、最近のバージョンならインストール時に自動的に設定されていると思います。

確認して、もしパスが設定されていないようならば、上記を参考に改めて設定してあげてください。

ただし、パスは…


C:\Program Files (x86)\GNU Tools ARM Embedded\7 2017-q4-major\bin


…となっているところを…


C:\ProgramData\GCC for Renesas RL78 4.9.2.202201-GNURL78-ELF\rl78-elf\rl78-elf\bin


に置き換えてください。

インストーラーが自動的に設定するバージョンでは、一番上に入れられちゃうんですね。

特に問題はないけど…不躾な!

こんな感じ…。

「環境変数名の編集」ダイアログ


また、このページの「パスの確認」の項目で打ち込むコマンドも、以下のように変わります。


> rl78-elf-gcc --version

コマンドプロンプト


続きまして「Cygwin」のインストールを行います。

このページ(TOPPERS/ASPのビルドからデバッグまで~Cygwinの導入)を参考にしてください。


「Cygwin」がインストールできたら、ここまでの作業が上手くいっているかどうか確認しておきましょう。

次のページ(TOPPERS/ASPのビルドからデバッグまで~サンプルプロジェクトのビルド)を参照してください。

ただし、今回使用するソースコードはこのページの冒頭の「NUCLEO-F401RE STM32 Nucleo-64」開発ボード用のTOPPERS/ASPカーネル簡易パッケージではなく、「RL78」用のものを使います。

ソースコードのダウンロードはこちらからどうぞ。

また、「Github」を使いたい方は以下のコマンドでソースコードのクローンを行います。


$ git clone https://github.com/RyutaroMorita/asp_rl78_gcc.git

Cygwinターミナル


ダウンロードとGithub、いずれの場合も「asp_rl78_gcc」というディレクトリの名前を「asp_1.9.2」などと改名すると、上記のページと同じ状況になります。

また、今回は「OBJ」ディレクトリを作成する必要はありません。

これは既に用意されていますので、そのまま「OBJ」ディレクトリに移動し「make~」コマンドを実行してください。


コマンドライン環境で正しくビルドができることを確認したら、次回はルネサスエレクトロニクスのIDEである「e2 studio」のインストールを行っていきます。


<続く>

BSD 2-Clause License

OSSライセンスのメインページは こちら からどうぞ。 ライセンスの目次は こちら です。 名称:「二条項BSDライセンス」(BSD-2-clause) タイプ: ・コピーレフト…× ・ライセンス文の掲示…〇 ・コピーライト(著作権)の掲示…〇 ・その他… × 原文: Cop...