PIC32MXで高解像度グラフィック版「パッ○マン」 ― 2013/12/20 23:59:59
以前、PICでパックマンを作った方の紹介をしたが、更に高解像度版が公開されていた。
前回はテキスト版であったので、32KBのPICマイコンで動かしていたのだが、今回は動きの滑らかさが売りなのでメモリーが大幅に必要なため128KBのPICマイコンを使用している。
→PIC32MX150F128B-I/SP
→PIC32MX220F032B-I/SP
前回とハードウェアは全く同じであり、PICマイコンを差し替えてプログラムするだけで動作する。
動作検証ということで、USB付きの上位PICマイコンPIC32MX250B128を使用してみた。
PICkit3と3.3Vの電源を接続。
書き込みツールはMPLABXをインストールすると付いてくるMPLAB IPEとPICkit3の組み合わせ。
作者のページからZIPをダウンロードし、HEXファイルのまま問題なく書き込めた。
※ソースファイル一式はページ中央あたりにあります
では、テレビに接続。コンポジットのみの対応。
普通に出たー。 キャラクターがヌルヌル動くよ。
前回の動きと違って、動作がとってもスムーズ。こちらのゲーム性の方がエキサイティングだ。
これはもう専用基板を後ほど作りたいと思う。
こちらが動画。簡単なハードでのビデオ入力なので、にじみはあるが、この滑らかな動きには、実際に作って動画以上に感動した。
コメント
_ ケンケン ― 2013/12/22 02:17:16
_ air_variable ― 2013/12/23 18:34:24
今回のグラフィック版は、ゲームに夢中になるほど、とてもよく出来ていてます。ソースを拝見させていただきましたが、ビデオRAM部分は、ほぼアセンブラで動いているんですね。恐れ入りました。
今回はPIC32MX250F128Bでも動作をすることを確認できました。
PIC32MX位の高度なマイコンになると、USBやSDカードなどのアクセスができるようになりますが、反面、扱うレジスタやファンクションの増大、数学的解釈の必要などがあるので、扱う人が少なくなってしまうのかなとも思いました。PIC16のお手本となる本はいっぱいありますが、PIC32MXを使ったホビーの本があれば売れる気がします。どうですか?書いてみませんか?w
今回はPIC32MX250F128Bでも動作をすることを確認できました。
PIC32MX位の高度なマイコンになると、USBやSDカードなどのアクセスができるようになりますが、反面、扱うレジスタやファンクションの増大、数学的解釈の必要などがあるので、扱う人が少なくなってしまうのかなとも思いました。PIC16のお手本となる本はいっぱいありますが、PIC32MXを使ったホビーの本があれば売れる気がします。どうですか?書いてみませんか?w
_ ケンケン ― 2013/12/25 02:01:40
カラーのコンポジットビデオ信号は、1クロックでもずれると色が正しく出ないので、
アセンブラじゃないと無理なんです。
ソースをじっくり見るとわかるのですが、リアルタイムで信号生成するために、
信号の出力と出力の間に次の信号データを作り始めるということをひたすら
やっています。なので、とても読みにくくなってしまっています。
PIC32MXの解説本は確かに少ないですが、PIC32MX1xx/2xxについては
PIC24シリーズと似ているところが多く、コストパフォーマンスもよいので、もっと活用
されてもいいのにと思います。
MIPSの命令群はとっつきにくいですが、PIC16等とは違って、Cで組むことがほぼ前提
となっているので、そんなに敷居は高くないはずなんですが。
アセンブラじゃないと無理なんです。
ソースをじっくり見るとわかるのですが、リアルタイムで信号生成するために、
信号の出力と出力の間に次の信号データを作り始めるということをひたすら
やっています。なので、とても読みにくくなってしまっています。
PIC32MXの解説本は確かに少ないですが、PIC32MX1xx/2xxについては
PIC24シリーズと似ているところが多く、コストパフォーマンスもよいので、もっと活用
されてもいいのにと思います。
MIPSの命令群はとっつきにくいですが、PIC16等とは違って、Cで組むことがほぼ前提
となっているので、そんなに敷居は高くないはずなんですが。
_ air_variable ― 2013/12/25 07:26:38
PIC32MXマイコンが32KBのものでも220円、今回買った128KBが4ドルしませんので、シリコンプロセスの進化は大きいですね。
開示頂いているソースコードは、表示エンジン部分以外は、とてもきれいに纏まって勉強になります。
開示頂いているソースコードは、表示エンジン部分以外は、とてもきれいに纏まって勉強になります。
_ かわぶた大王 ― 2015/05/20 20:07:52
パックマン
時々
『うめぇうめぇうめぇうめぇ』
って言ってるように聞こえる
時々
『うめぇうめぇうめぇうめぇ』
って言ってるように聞こえる
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※投稿には管理者が設定した質問に答える必要があります。
またまた紹介していただいて、ありがとうございます。
今回のパックマンは、音がチープなことを除いて、いい感じにできあがりました。
このシンプルなハードでここまでできるというのが、技術の進歩を感じさせます。
特にこのチップはフラッシュもRAMも大きいので、とても気に入っています。
難点は国内の店舗で扱っていないことですね。
秋月で400円くらいで売れば、結構人気が出ると思うのですが。