PICO-8で遊んでみる!その1

f:id:PocketGriffon:20220417080353p:plain

PICO-8……

何度となく名前は見たことあったけれど、それが何なのかは良く分かってなかった。

なんとなく「レトロな画面で動くレトロな環境」くらいのイメージ??

今まではあんまり調べようと思ってなかったのもあったけど!(^^;

 

そんな時、流れてきたツイートに目を奪われた。

え…これ、すごくない???

PICO-8ってこんなのが動いちゃうんだ!

そうと分かったら興味津々!

ぜひ手元で動くようにしてみたいと思った!(^-^)

 

まずは動かしてみる

そういえばFunkey Sであれこれ動かそうと調べていた時に、PICO-8らしき文字を見た覚えがあったと思い出す → もう一度調べてみる事に。

List of third-party OPK applications - The FunKey Wiki

あったあった、これこれ!

PICO-8のエミュレータでその名もFAKE 08…。

……その名前でいいの??(T-T)

 

このFunkey SのFAKE 08で、PICO-8の事を初めて見る私。

…困ったことに…言葉(PICO-8特有の言葉)がさっぱり分からない!(TOT)

CARTSってなに?(T^T)

一番最初に物事を覚えようとすると大変だよね…。そのうち、こういうのが覚えられなくて何も出来なくなっていくのかな…(寂

ともかく、何かプログラムを動かしてみよう!

 

PICO-8の公式ページに移動してみる。

www.lexaloffle.com

ここの右側にある「MORE CARTS」をクリックして、なにか適当なゲームを選ぶ。

f:id:PocketGriffon:20220417081709j:plain

試しにこのゲームを選択!

これはあのゲームですな、懐かしい!(^-^)

 

f:id:PocketGriffon:20220417081822j:plain

この画像のここにあるCartをクリック。

 

f:id:PocketGriffon:20220417081847j:plain

表示される画像をファイルとしてダウンロードする。

これでプログラムやキャラクタデータ等も含めてダウンロードされる!

これは賢い!!(^-^)

PNGファイルをコピーすれば、プログラムもデータもサムネイル!も、まるっとコピー出来るのはとても便利だ。

 

気になったのでPNGファイルのバイナリを覗いてみたけれど、多分IDATチャンク(イメージデータ)の中にプログラムやデータも含まれているんだろう…と思うけど、細かく解析出来てない(^^;;

 

f:id:PocketGriffon:20220417084245j:plain

f:id:PocketGriffon:20220417084259j:plainf:id:PocketGriffon:20220417084314j:plainf:id:PocketGriffon:20220417084328j:plain

紆余曲折ありまくったけど、Funkey SでなんとかFAKE 08を動かす事が出来た!

このサイズで動くと、PICO-8画面のドット数(128x128)が気にならないのがすごい(^^;;

これは楽しいぞ、PICO-8!

 

PICO-8は有料ソフト

PICO-8についてもう少し詳しく調べてみると、どうやらPICO-8本体は有料のソフトウェアらしい。そうか、動かすだけなら互換ソフトを使う事が出来るけれど、プログラムを作ったりするには正規品が必要って事か(^-^)

 

そしてLua言語を使ってプログラムしていくという。

うむむ…Lua…いろいろと思い出が蘇るw

 

今から15年ほど前、海外のプロジェクトに協力する事があった。実際にその国へ出向き、1年弱ほど仕事をしていた。

言葉も文化も理解できないけど、プログラムだったら世界共通じゃん!大丈夫だよ…とか思ったが、ソースに書かれたコメントもそっちの文字で…しまったコレは盲点!!(^^;;

Emacsが多国語言語対応でマジで救われたw

 

で、そこの環境で使われていたのがC/C++/Luaだった。私はシステム担当だったのでLua自体はほぼ覚えなかったが、ソースの大枠は見ていたので、今回もなんとかなるでしょ!

 

イマドキ風の開発?

PICO-8を起動すると良い感じの画面が出てくる!

初期はフルスクリーンで起動するので、でっかい画面に荒いドット画面が…(^^;;

f:id:PocketGriffon:20220417091736p:plain

私的にはこの粗さがタマラン画面なのですが、他の人から見たらどうなんだろう?(^^;;

 

ここでESCキーを押すとテキストエディタが起動する。

f:id:PocketGriffon:20220417091835p:plain

ホントだったらこの画面でプログラムを書いていくのだけど……生産性の面でこれは厳しいかも??慣れたら十分行けるのかも知れないけど!(^^;

なんとかしてMacで編集→PICO-8に取り込むことは出来ないだろうか?(T^T)

f:id:PocketGriffon:20220417092115p:plain

編集画面で全選択→コピー、Emacsでペーストすることが出来た!

おお、これならばEmacs編集が出来るね!(^-^)

 

何度か運用してみたけど、意外にEmacs←→PICO-8のやりとりが面倒くさい。

もう少し良い方法がないかな…と思い調べてみたら、FOLDER というコマンドがあった。

試してみると、ふつーにフォルダが開く。

場所を見てみると、Macの場合は$HOME/Library/Application Support/pico-8/cartsだった。

この場所にテキスト形式としてセーブされるようだ!

このファイルを直接編集→PICO-8でLOADすれば良い事が分かった!

こっちの方が便利だ!!(^-^)

 

しかもグラフィックデータも含めてテキストになっているので、簡単な画像編集だったらEmacsで行えるのも便利!

f:id:PocketGriffon:20220417093001j:plain

↑なんとなく画面下の方にうさぎがいるのが見えるだろうか(^^)

 

よし、なんとなくプログラミングする準備が整った気がする!

 

この先はLua言語の話になっていくと大変なのでどどーと割愛すると思うけど、大雑把に遊んだこととか書いてこうと思う!(^^)

 

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