RG351MPでプログラム!

RG351MPというマシンをご存知だろうか?

f:id:PocketGriffon:20220118224634j:plain

中国のANBERNIC社が販売している機械で、多分…ゲーム機なんだと思う(^^;;

各種エミュレータが最初からセットアップされていて、イメージデータを自前で用意すれば簡単に遊べるというマシンだ。本来の使い方は、ゲームで遊ぶんだと思う。

 

しかしゲームをほぼやらない私から見たら、キーボードの付いてない普通のLinuxマシンだ。

以前からANBERNIC社が出しているゲーム機には注目していたが、RG351MPになって画面解像度が640x480ドットになったことから気持ちが盛り上がった!

これで何か自前プログラムを動かせないかなぁ…なんて思ってしまったら、もう止められない!(^^)

 

CPUにARMクワッドコア1.5GHz、メモリは1GB。少し重みのある筐体にカッコ良いフォルム!お値段は少し張るけれど、基板むき出しのRaspberryPi4が1万円近くすることを考えたら、でっかい液晶がついてパッケージングされた状態で16000円くらいなのは、まぁ許せる範囲だろう(^^)

 

どんなマシンなのかを詳しく知りたい方は、ぜひ「RG351MP」で検索して欲しい。

ここのブログでちゃんとした本来の使い方を書ける自信がない(^-^;;

 

このRG351MP、本来はシステムが入って送られてくるらしいけど、私の手元に来た時からシステムSDが壊れていた。そのため、一度もデフォルトのOSが起動した画面を見たことがない(^^;;

 

復旧させようと調べていたら、ArkOS(https://github.com/christianhaitian/arkos/wiki)というカスタムファームウェアっぽいソフトをインストール出来るということが分かった。

 

「OS」という名前が付いているので誤解されやすいが、実際はLinuxディストリビューションと考えたら良さそう。大雑把にドキュメントを読む限り、RG351MP用に用意されたArkOSは、エミュレータの実行に最適化されているらしい。

 

ArkOSのインストール→ビルドしてみる!

ArkOSのインストールについてはネット上に情報がたくさんあるので、そちらを参照してもらいたいが、1文で書くのであれば「イメージをダウンロードしてddして挿し込んで起動」だ。特に難しい事はなくRaspberryPiのOSインストールを経験している方であれば、悩める箇所はない。

f:id:PocketGriffon:20220119070848j:plain

RG351MPにArkOSのイメージを書いたSDカードを挿し込んで起動すると、本体側へのインストールが開始される。インストール中、2度ほどOKを押すように即されるが、5分程度でワリとあっけなくインストールが終了する。

f:id:PocketGriffon:20220119070949j:plain

 

このRG351MP、本体にネットワーク機能が無い。

無線LANに接続するためには、付属の無線LANアダプタをUSBに挿し込む。

f:id:PocketGriffon:20220119071825j:plainf:id:PocketGriffon:20220119071843j:plain

無線LAN付きの機材を国内で販売するためには技適マークを取得する必要があるようで、それに意外な時間が掛かるらしい。M5Stack界隈を見ていると、たまに「技適マークの取得が…」という話題を目にする事がある。

 

その機能を外部ハードに任せるというのは、ある意味英断だと思う。なるほどって感じ(^^)

無線LANを使う時は↑写真のようにアダプタをおっ立てる。これが本来の使い方だ。

 

さて、ここからが本来ではない?使い方の設定をしていってみよう。

まずはssh経由でRG351MPへログイン出来るようにしてみる。

 

ArkOSが起動したら、OPTIONS→WIFI(メニューを下にスクロールさせると出てくる)を選んで、無線LANの設定をする。

正しく設定出来たかは、同じくOPTIONS→NETWORK INFOで見る事が出来る。

ここで何も表示されずにメニューに戻ってしまうようならば設定に失敗してる。

 

次にOPTIONS→ENABLE REMOTE SERVICESを選択してsshでのログインを許可する。

この設定は保存されず、RG351MPを起動するたびに行う必要がある。セキュリティ的な問題もあるので、私は面倒を気にせず毎回行っている(^^)

 

これでRG351MPへログイン出来るようになっているので、MacWindowsからログインしてみよう。

 ssh ark@IPアドレス

ユーザー名、パスワード共にarkだ。

IPアドレスの部分はOPTIONS→NETWORK INFOで表示されたアドレスを入れよう。

f:id:PocketGriffon:20220119073817j:plain

ほら、これでログイン出来るようになった!(^-^)

 

f:id:PocketGriffon:20220119074135j:plain

ディスク、メモリ、CPUはこんな感じ。

apt list --installied とすればインストールされてるパッケージ一覧が見られる。

ソレを見ると、なんとgccも入っているらしい!

f:id:PocketGriffon:20220119081230j:plain

バージョンは9.2.1。いいねいいね!申し分ないね!(^-^)


試しにHelloWorldでも動かしてみるかーと思って試してみたら、なんとヘッダーファイルがなかった! /usr/include以下がフォルダごと無い…orz

 

あれこれ見てみたが、どうやらダイナミックリンクされるライブラリ群は存在するようだったので、ヘッダーファイルだけなんとかすれば良いのかも??

DevTermにインストールされているgcc(バージョン10)からヘッダーファイルだけコピーしてみた!(大胆かつおバカ的発想…)

これで問題なくセルフビルド出来るようになった!(^-^)

#多分、もっとキレイな解決方法があるはずです…汗

 

いくつかの自作エミュレータをコピーしてビルドしてみたが、DevTermで動いていたソース(Mac上で動いてたソース)が無変更で動いてしまった!

純粋なLinuxマシンとしては「そりゃそうだ」なんだけど、ちょっとうれしい(^^)

f:id:PocketGriffon:20220119082253j:plain

f:id:PocketGriffon:20220119082308j:plain

ちなみにFM-7エミュレータのビルドに掛かる時間は約8秒。

DevTermでビルドすると約7秒なので、似たような速度だと思う(^^)

 

f:id:PocketGriffon:20220119083039j:plain

並べてみるとこんな感じ!

いいねぇ!なんだかニヤニヤしちゃうね!(^^)

 

RG351MPからFM-7エミュレータを動かすのは、OPTIONS→FILE MANAGERを利用した。

まだxtermなどの端末を起動させられていない(実行しようとしてもすぐに終了してしまう)ので、当面は面倒な方法で実行させないといけないのかも。

 

とりあえず終わり

RG351MPをLinuxマシンとして使ってみる試みをしてみた。

ゲーム機としてとても優れているというレビューは沢山見るが、Linuxマシンとして使っている記事をあまり見たことがない。そりゃそうか!(^^;;

 

USB端子にハブを接続してキーボードとかHDDなどの機器を繋げてみたい…とか、試してみたい事が沢山ある(^^) あるけど…そこまでする?ってのも気持ちとしてある(^^;;

 

MC68000エミュレータも放置している状態なので、脱線しまくらない程度に遊んでいってみたい!

ではまた次回!(^-^)ノ