Gamebuino ライブラリの移植

個人的に入手したArduboy 1.0を使ってGamebuinoを1つ移植してみました。
@inajobさんのライブラリを使ったのでとても簡単です。

音も鳴るようにしましたが電源OFF/ONするとなぜか無効化されます。
また、一部の縦ラインの表示がおかしくなります。

追記:
デバッグ済みのプロジェクトを置いときます。

4 Likes

Oh nice, you got your Gamebuino.

i will get PocketCHIP too :slight_smile:

ライブラリが充実してるみたいなのでアリですよね
http://gamebuino.com/wiki/index.php?title=Reference

2 Likes

同意見です。gamebuinoのゲーム資産もかっこいいですし
pacmanと101 Starshipsというシューティングゲームは移植できればなあと思っています。

1 Like

使っていただきありがとうございます!

自分で作るほうが好きなタイプでして、 実物のArduboyでは動かせずにいました。
どうやら動くようでうれしいです!

GamebuinoはSDカードからゲームをロードできるのが素晴らしく、Arduboyは有機ELのディスプレイと超薄型のボディがいい感じですねー

Gamebuinoのゲームは標準のライブラリを使っているものがほとんどなので、ライブラリさえ移植できれば大半動くと思います。

(音周りの移植がまだよくわかってなくて、手付けずだったはず・・)

2 Likes

The next thing that I am going to buy is a pocketchip

1 Like

ご無沙汰しています。

pre-orderではないのですけど、ようやくArduboy 1.0を入手できました。
ほんと長い待ち時間でした。

ちなみにライブラリは一発で動きました。
手直しはゲーム側のソースコードを1つのinoファイルにしたのが大部分です。
音は出ないように設定されていましたのでdefine、タイマーなどを書き換えてあります(4,5か所のみ)。

アドバイスありがとうございます。ガッツリ盗めるかと思うと、今から笑いが止まりません。(^^;

2 Likes

一部の縦ラインの表示がおかしくなるのは、Arduboyの画面が壊れていた為です(泣。
Hello worldのサンプルを動かしても同じ結果でした。初期不良です。。orz
お騒がせしました。

音について、Arduboy Libraryの初期化コードを引っ張ってきたら上手くいきました。
電源OFF/ONしてもOKです。

void Sound::begin() {
    // 中略・・・

    pinMode(5, OUTPUT);     // 追加
    pinMode(13, OUTPUT);    // 追加

    analogWrite(5, 1); //lazy version to get the right register settings for PWM (hem)
    TCCR3B = (TCCR3B & B11111000) | 1; //set timer 2 prescaler to 1 -> 30kHz PWM on pin 5

移植作業お疲れ様でした。

互換性がなくなっちゃいますが、画面サイズとかが違うのでArduboy用のモードとか設定で変更できるようにすると、だいぶライブラリの整備が進みますよね。

うーん、どうしようか考え中です。

とりあえずArduboyの画面に合わせてバッファを拡張しようと思います。
Arduboy用のモード(ifdefマクロ)でオリジナル版と分けて、という流れになりそうです。

1 Like