以前、Leiaでレトロゲームの環境を構築しようとしたが失敗。
コントローラをキーボードに出来ずに諦めたのだが。
Matrixでは対応される旨がネットの掲示板に記されていたはず。

ラズパイ3 + Matrixの動く環境が出来た今、この件どうなったのかを確認してみた。

使用するのはlibretroを用いたもの。
コアモジュールは、game.libretro
エミュレータは、game.libretro.mame2000

windowsでは既に試している。
いずれもリポジトリから落すだけなので試すのには手軽で丁度良い。
Leiaの場合と同じにしようと思ったが、game.libretro.mame2003_plusが見つからなかった。
よって、代りにgame.libretro.mame2000を使用した。

結果、ゲームは動作するようだが、Leia同様でキーボードが使用できない。
認識されているコントローラはデフォルトとsnesタイプのものだけ。
ちなみにキーボードのコントローラアドオンを用意したが選べずにダメだった。

ということで、本題であるラズパイ3 + Matrix + libretroを試してみる。
まずはコアとなる game.libretroアドオンをインストールする。
kodiのソース上からバイナリアドオンとしてビルドする。

cd kodi-source
sudo make -C tools/depends/target/binary-addon ADDONS="game.libretro"


次にエミュレータとして game.libretro.mame2000 アドオンを作成する。

まずは mame2000 のエミュレータモジュールを用意。
モジュールはビルド済みのものを落す。

http://buildbot.libretro.com/nightly/linux/armhf/latest/mame2000_libretro.so.zip

そして game.libretro.mame2000 のエミュレータアドオンをビルド。
cmakeする前に、CMakeList.txt内のfind_library、又はモジュール配置を調整するのを忘れずに。
問題無ければビルドする。

https://codeload.github.com/kodi-game/game.libretro.mame2000/zip/refs/heads/master

これで準備は完了。

そして結果は...
windows同様にラズパイでもキーボードが使用できない。

ネット情報を見間違えたのか?
使用するエミュレータによって違うのか?
それとも、足りてない要素が有るのか?
いずれにしても、この方法ではお手上げ。

往生際が悪いが別の手を探ってみた。
そして見つけたのがkodiからRetroArchに切り換えるGamestarterアドオン。
ランチャーを含む、複数のアドオンが含まれている。

https://github.com/bite-your-idols/Gamestarter/release/tag/3.0

RetroArchはレトロゲームを実行するソフト。
多少の問題は有ったが、ラズパイ3でも動作するのは確認済み。
RetroPlayerのようにシームレスではないかもしれないが、動けはキーボード問題は解決できそうである。

早速インストールを試みるが、libreELEC用のものであるらしく手順通りにしても弾かれた。
ちなみに、自身の環境はkodiソースからインストールしたものなので違いがあるのかもしれない。
試しに、RatroArchを実行するアドオン game.retroarch だけを取り出しインストールしてみた。
しかし、kodiからRetroArchにスイッチすると画面がブラックアウト。
まぁ、そもそもが無理矢理だったので、この時点で諦めた。

もうこうなれば、コントローラを買ってみるかな。
いやいや、それは妥協できん。
kodiのリモコンで麻雀ゲームをするのが目標なのに...。