M1000まとめサイト
OPL:M1000上で開発する方法
最終更新:
Bot(ページ名リンク)
-
view
<<OPLで開発
M1000で開発する方法
開発手順は以下の通りになります。
- ランタイムと開発環境のインストール
- 「Program」の起動
- コーディング
- コード変換
- 実行
ランタイムと開発環境のインストール
まずM1000上でOPLの開発を行うには「OPLランタイム」と「エディタ」と「OPXライブラリパック」をインストールする必要があります。これらは「http://opl-dev.sourceforge.net/:opl-dev project」で入手する事ができます。
- opl-dev projectに行く。
- 左のメニューから「OPL developers」を選択する。
- ページ中段の「UIQ functionality」から「UIQ-OPL-DevPack-xxxx-xx-xx.zip」をダウンロードする。(xはバージョンによって数字が変わる。)
- ダウンロードしたファイルを解凍して「OPL-UIQ-xxx.sis(OPLランタイム)」「Texted-UIQ-xxx.sis(エディタ)」「OPX-UIQ-xxx.sis(OPXライブラリパック)」の3つのファイルをM1000へインストールします。それぞれ以下のフォルダに存在します。
- OPLランタイム:\dev\binaries\sisfiles\target\other\OPL-UIQ-xxx.sis
- エディタ:\dev\binaries\sisfiles\target\other\Texted-UIQ-xxx.sis
- OPXライブラリパック:\dev\binaries\sisfiles\target\opx\OPX-UIQ-xxx.sis
- OPXを利用する場合は、「\binaries\pc\epoc32\winscw\c\system\opl\」をoplフォルダごと、実機内の「\system\」にコピーする必要があります。この操作を行わないと、OPXのヘッダファイル(*.oxh)をインクルードした時にコード変換できません。
あと、OPLで作成されたアプリが実行中にバックグラウンドに移動するとフォワードに持ってくることができません。このときにプロセスを殺す必要があるので「SMan」等のシステムマネージャソフトをインストールしておくと後々便利です。
「Program」の起動
インストールが終了するとアプリケーションランチャに「Proguram」というアプリケーションが増えています(実態はTexted-UIQ-xxx.sis)のでタップして起動しましょう。
(画面を表示)
このアプリケーション上でコーディング及びデバッグ等を行う事になります。ちなみにカーソルはバーチャルキーボードを起動していないと利きません。あと余談ですがM1000上でコーディングする時はBluetoothキーボードがあると非常に便利です(OPL実行時にイベント取得コマンドでキーコードを取得する事も可能です)。
コーディング
サンプルコードとして「Hello World」プログラムを載せておきます。
PROC main: gSETWIN 0,25,208,275 PRINT "Hello World!" GET ENDP
- 各行の説明
- プロシージャの先端コマンドです。OPLはソースコードの先頭にあるプロシージャをまず実行し始め、終端のENDPまで実行すると終了します。mainと付いていますが最初に実行されるプロシージャでも名前は任意で付けれます。
- グラフィックウィンドウのサイズを変更します。これが無いとフルスクリーンで実行され、上下のアイコンが隠れてしまいます。
- テキストウィンドウ上に指定文字列を表示します。
- キーイベントを待ちます。この行が無いと一瞬でアプリが終了します。M1000にはキーボードがないので、ナビキーやゲームキー押下がキーイベントにあたります。ちなみにタップはキーイベントとして認識されません。
- プロシージャの終端コマンドです。もしサブルーチンを記述する場合はこの行移行に記述する事になります。サブルーチンは呼ばれない限り実行されることはありません。
※実行中にホームキー押下等でプログラムがバックグラウンドに移動してしまったら、タスクマネージャ
コード変換
コードが記述できたらOPLランタイムが実行できる形(*.opo)に変換する必要があります。コード変換はメニューの「Build→Translate」で実行できます。
この段階で書式等にエラーがあると、エラーメッセージと共にエラー行にカーソルが移動します。しかし、エラー検知はあまり優秀ではないので実際のエラー行からかなり離れた所を示す場合も多々あるので注意が必要です(大抵、その場合はスペルミスや記号の付け忘れ)。
実行
コード変換に成功すると実行するかどうか聞いてきます。またメニューの「Build→Run Program」からでも実行できます。ちなみに実行中にバックグラウンドに行ったらSMan等のタスクマネージャからプロセスをキルしましょう。
(実行画面)
動作が確認できたらコーディングは完了です。他のM1000上で動作させたい場合はソースをコピーしてもいいですが、M1000アプリ(*.sis)化した方が親切だと思います。M1000アプリ化の方法は「M1000アプリ化から配布まで」を参考にして下さい。