前回の投稿で、ポケットステーションのメモリ管理ソフトMemcardRexをWindowsのVisual Studioでコンパイルして利用しました。このソフトウェアのソースコードをみるとMonoでコンパイルできるようです。
そこでUbuntuにMonoDevelopをインストールしてコンパイルしてみたところ、Windows同様に動作させることができました。手順は以下のようになります。
- MonoDevelopのサイトの情報にしたがってインストールを行います。
- MonoDevelopを起動したら、メニューの「ファイル」→「開く」から展開済みのMemcardRexフォルダー内のMemcardRex.slnを読み込みます。
- 画面左のソリューションでHardwareフォルダーのMemCARDduino.csを選択し、42行目を OpenedPort.RtsEnable = true; と書き換えます。
- 左上のビルド構成(▶ボタンの右側)からGTKsharp releaseかWinForms releaseどちらでも好きな方を選んで、メニューの「ビルド」→「全てリビルド」でコンパイルします。
コンパイルしたMemcardRex.exeファイルは展開済みのMemcardRexのフォルダーのMemcardRex/binの下、GTKsharp releaseまたはReleaseの中にあります。(場所は選択したビルド構成によります。)
起動はファイルマネージャーの設定が正しければマウスクリックで起動できます。コマンドラインからの起動は、実行権をつけれはMemcardRex.exeと入力し、なけれはmono MemcardRex.exeと入力します。
ポケットステーションやメモリカードを読み込んだ直後は画面表示がバグってメモリ内容が表示さませんが、新しいタブを開いてからもとのタブを選択しなおせば画面がリフレッシュされて正しく表示されます。
もう一点補足を。
ポケットステーションのメモリの読み書きに使用したマルチタップとArduinoは「プレイステーションのマルチタップをUSB化して複数コントローラーを接続」で作成したものの配線を替えてしまったので、プレイステーションのコントローラーを使うときに以前のスケッチでは動きません。もしコントローラー用のスケッチPlaystationMultiPad.inoを利用する方がいらっしゃるなら、ポートの定義を以下のように変更してご利用下さい。
#define DATA 14
#define CMD 16
#define ATT 10
#define CLK 15
※コメント投稿者のブログIDはブログ作成者のみに通知されます