はじめに
SimulIDE
Arduinoと電子回路をPC上でシミュレーションできるツールです。
https://sourceforge.net/projects/simulide/
GAMEBUINO
Arduinoで作られた携帯用ゲーム機です。
http://legacy.gamebuino.com/wiki/index.php?title=Getting_started
SimulIDEを使ったデモとして、SimulIDE上でGAMEBUINOを動かしてみます。![]()
準備するもの
ハードウエア
シミュレータ上での実行のため、部品購入や電子工作は不要です。![]()
ソフトウエア
-
SimulIDE
WindowsとLinuxに対応しています。以下よりダウンロードできます。(2019.8時点のバージョン:SimulIDE_0.3.10)
https://sourceforge.net/projects/simulide/ -
Arduino IDE
https://www.arduino.cc/en/Main/software -
GAMUBUINO
以下のサイトにあるゲームの中から、BLOCKSBUINOというゲームを試してみます。
http://legacy.gamebuino.com/wiki/index.php?title=Games

実機では、SDファイルにhexファイルを入れてソフトを入れ替えできるようです。
SimulIDEでSDカードをエミュレートできないため、以下のソースコードをダウンロードし、ビルドを行います。
https://github.com/frthery/BlocksBuino
SimulIDEの編集
SimulIDEでArduino Unoとボタン、液晶(PCD8544)を配置し、結線します。
| Button | Arduino pin |
|---|---|
| Right Button | D7 |
| Left Button | D8 |
| Down Button | D6 |
| Up Button | D9 |
| A Button | D4 |
| B Button | D2 |
| C Button | A3 |
| PCD8544 | Arduino pin |
|---|---|
| RST | A0 |
| SC | A1 |
| DC | A2 |
| DIN | D11 |
| CLK | D13 |
ソースコードのビルド
-
事前にArduino IDEより、BlocksBuinoをビルドするのに必要なライブラリ(Gamebuino Classic)をインクルードしておきます。
参考 http://legacy.gamebuino.com/wiki/index.php?title=Getting_started#Software_setup -
SimulIDEより、BlocksBuino.inoを開きます。
-
SimulIDEのCompiler PathをArduino IDEのインストール先に設定しておきます。
-
SimulIDEのコンパイルボタンを押し、ビルドします。
仮想Arduinoの実行
- SimulIDEのPower Circuitボタンを押しシミュレーションを開始します。
- Aボタンでゲームがスタートします。
※液晶画面の表示にチラツキが発生してしまうようです。![]()
シミュレータのCircuit設定 NoLinStepを調整したところ、少し改善しました。![]()
さいごに
- GAMEBUINOは、液晶表示をSPI通信で行っており、動きの早いゲームなど、リアルタイム性を完全再現するのは難しいですが、Arduinoエミュレータでも一応動作しました。
- SimulIDEは、シリアル通信もシミュレーションすることができます。(デバッグに便利)
- SimulIDEは、Aruduinoエミュレータの一つで、まだベータ版ですが、開発、教育などいろいろな場面で使えそうです。


